diff options
author | Michael Adam <obnox@samba.org> | 2009-05-15 01:46:09 +0200 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2009-05-15 17:00:22 +0200 |
commit | 00297b74ac6320a23ba444647718680ddee37453 (patch) | |
tree | 0e9919ada9c9b44d3a976c0da026cb0c6f448c7d | |
parent | a62e72b825117dc45d434fd1b3645633b5d063d6 (diff) | |
download | samba-00297b74ac6320a23ba444647718680ddee37453.tar.gz samba-00297b74ac6320a23ba444647718680ddee37453.tar.bz2 samba-00297b74ac6320a23ba444647718680ddee37453.zip |
s3:param: prevent includes from being dumped in dump_*() functions.
This fixes bug #4271: testparm should not print includes.
Michael
-rw-r--r-- | source3/include/smb.h | 1 | ||||
-rw-r--r-- | source3/param/loadparm.c | 9 |
2 files changed, 7 insertions, 3 deletions
diff --git a/source3/include/smb.h b/source3/include/smb.h index 4be891d174..fed7468f3e 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -925,6 +925,7 @@ struct parm_struct { #define FLAG_DEPRECATED 0x1000 /* options that should no longer be used */ #define FLAG_HIDE 0x2000 /* options that should be hidden in SWAT */ #define FLAG_DOS_STRING 0x4000 /* convert from UNIX to DOS codepage when reading this string. */ +#define FLAG_META 0x8000 /* A meta directive - not a real parameter */ struct bitmap { uint32 *b; diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c index 2ea3a167b7..d422951428 100644 --- a/source3/param/loadparm.c +++ b/source3/param/loadparm.c @@ -1041,7 +1041,7 @@ static struct parm_struct parm_table[] = { .ptr = &Globals.ConfigBackend, .special = NULL, .enum_list = enum_config_backend, - .flags = FLAG_ADVANCED, + .flags = FLAG_ADVANCED|FLAG_META, }, {N_("Security Options"), P_SEP, P_SEPARATOR}, @@ -3753,7 +3753,7 @@ static struct parm_struct parm_table[] = { .ptr = &Globals.szConfigFile, .special = NULL, .enum_list = NULL, - .flags = FLAG_HIDE, + .flags = FLAG_HIDE|FLAG_META, }, { .label = "preload", @@ -4016,7 +4016,7 @@ static struct parm_struct parm_table[] = { .ptr = &sDefault.szInclude, .special = handle_include, .enum_list = NULL, - .flags = FLAG_HIDE, + .flags = FLAG_HIDE|FLAG_META, }, { .label = "preexec", @@ -7806,6 +7806,7 @@ static void dump_globals(FILE *f) for (i = 0; parm_table[i].label; i++) if (parm_table[i].p_class == P_GLOBAL && + !(parm_table[i].flags & FLAG_META) && parm_table[i].ptr && (i == 0 || (parm_table[i].ptr != parm_table[i - 1].ptr))) { if (defaults_saved && is_default(i)) @@ -7852,6 +7853,7 @@ static void dump_a_service(struct service *pService, FILE * f) for (i = 0; parm_table[i].label; i++) { if (parm_table[i].p_class == P_LOCAL && + !(parm_table[i].flags & FLAG_META) && parm_table[i].ptr && (*parm_table[i].label != '-') && (i == 0 || (parm_table[i].ptr != parm_table[i - 1].ptr))) @@ -7928,6 +7930,7 @@ bool dump_a_parameter(int snum, char *parm_name, FILE * f, bool isGlobal) for (i = 0; parm_table[i].label; i++) { if (strwicmp(parm_table[i].label, parm_name) == 0 && + !(parm_table[i].flags & FLAG_META) && (parm_table[i].p_class == p_class || parm_table[i].flags & flag) && parm_table[i].ptr && (*parm_table[i].label != '-') && |