summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorEric Seppanen <eric@purestorage.com>2013-11-21 14:49:56 -0800
committerNicholas Bellinger <nab@linux-iscsi.org>2013-12-11 10:59:33 -0800
commit2306bfb208b9c403592a0513b08f2e6ad53056d5 (patch)
treebffa17764e7eb86a91620996562c92dfa3b557f6 /drivers
parent374b105797c3d4f29c685f3be535c35f5689b30e (diff)
downloadlinux-stable-2306bfb208b9c403592a0513b08f2e6ad53056d5.tar.gz
linux-stable-2306bfb208b9c403592a0513b08f2e6ad53056d5.tar.bz2
linux-stable-2306bfb208b9c403592a0513b08f2e6ad53056d5.zip
iscsi-target: return -EINVAL on oversized configfs parameter
The iSCSI CHAP auth parameters are already copied with respect for the destination buffer size. Return -EINVAL instead of silently truncating the input. Signed-off-by: Eric Seppanen <eric@purestorage.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/target/iscsi/iscsi_target_configfs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/target/iscsi/iscsi_target_configfs.c b/drivers/target/iscsi/iscsi_target_configfs.c
index e3318edb233d..1c0088fe9e99 100644
--- a/drivers/target/iscsi/iscsi_target_configfs.c
+++ b/drivers/target/iscsi/iscsi_target_configfs.c
@@ -474,7 +474,8 @@ static ssize_t __iscsi_##prefix##_store_##name( \
\
if (!capable(CAP_SYS_ADMIN)) \
return -EPERM; \
- \
+ if (count >= sizeof(auth->name)) \
+ return -EINVAL; \
snprintf(auth->name, sizeof(auth->name), "%s", page); \
if (!strncmp("NULL", auth->name, 4)) \
auth->naf_flags &= ~flags; \