summaryrefslogtreecommitdiff
path: root/source3/utils
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2007-06-29 12:30:41 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:23:42 -0500
commit20733036644c11a6b4fa7466f9a5b3aa1cae3916 (patch)
treefc815cf588f638d26d324e3de0b2d1dd745f9327 /source3/utils
parent96c4bf4a1c70e080107e954ea09dbe0a9709ae4f (diff)
downloadsamba-20733036644c11a6b4fa7466f9a5b3aa1cae3916.tar.gz
samba-20733036644c11a6b4fa7466f9a5b3aa1cae3916.tar.bz2
samba-20733036644c11a6b4fa7466f9a5b3aa1cae3916.zip
r23656: Add initial checking of the validity of a paramter
given to "net conf setparm". Add a utility function lp_parameter_valid() for this to loadparm.c. Michael (This used to be commit 639051e58d4da9fb1116c19f0790250640b6ac7a)
Diffstat (limited to 'source3/utils')
-rw-r--r--source3/utils/net_conf.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/source3/utils/net_conf.c b/source3/utils/net_conf.c
index 021ac0005d..5af2d6ccc5 100644
--- a/source3/utils/net_conf.c
+++ b/source3/utils/net_conf.c
@@ -167,6 +167,20 @@ static WERROR reg_setvalue_internal(struct registry_key *key,
else {
d_fprintf(stderr, "Only value types DWORD and SZ are"
"currently implemented for setting values.\n");
+ werr = WERR_INVALID_PARAM;
+ goto done;
+ }
+
+ if (!lp_parameter_valid(valname)) {
+ d_fprintf(stderr, "Invalid parameter '%s' given.\n", valname);
+ werr = WERR_INVALID_PARAM;
+ goto done;
+ }
+
+ if (registry_smbconf_valname_forbidden(valname)) {
+ d_fprintf(stderr, "Parameter '%s' not allowed in registry.\n",
+ valname);
+ werr = WERR_INVALID_PARAM;
goto done;
}