summaryrefslogtreecommitdiffstats
path: root/lib/param/loadparm.c
diff options
context:
space:
mode:
authorGarming Sam <garming@catalyst.net.nz>2014-02-26 12:31:03 +1300
committerJeremy Allison <jra@samba.org>2014-05-07 19:49:18 +0200
commitfa48d527b565838b3d29b567ae5bc9be8395d8dc (patch)
tree716a7b546a5f595ffe033b95b5b1e61eec837a0c /lib/param/loadparm.c
parentb2ce4e75496dca9cc51dd858b569ee2b7e80eed2 (diff)
downloadsamba-fa48d527b565838b3d29b567ae5bc9be8395d8dc.tar.gz
samba-fa48d527b565838b3d29b567ae5bc9be8395d8dc.tar.xz
samba-fa48d527b565838b3d29b567ae5bc9be8395d8dc.zip
param: replace P_OCTAL variable setting with s3 version which uses sscanf
Signed-off-by: Garming Sam <garming@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'lib/param/loadparm.c')
-rw-r--r--lib/param/loadparm.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/param/loadparm.c b/lib/param/loadparm.c
index 33960da2a7b..bf0cbc0e9d9 100644
--- a/lib/param/loadparm.c
+++ b/lib/param/loadparm.c
@@ -1449,7 +1449,11 @@ static bool set_variable(TALLOC_CTX *mem_ctx, int parmnum, void *parm_ptr,
break;
case P_OCTAL:
- *(int *)parm_ptr = strtol(pszParmValue, NULL, 8);
+ i = sscanf(pszParmValue, "%o", (int *)parm_ptr);
+ if ( i != 1 ) {
+ DEBUG ( 0, ("Invalid octal number %s\n", pszParmName ));
+ return false;
+ }
break;
case P_BYTES: