]> granicus.if.org Git - sudo/commitdiff
Zero out sd_un for each entry in sudo_defs_table in init_defaults.
authorTodd C. Miller <Todd.Miller@courtesan.com>
Sun, 21 Nov 2004 19:09:47 +0000 (19:09 +0000)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Sun, 21 Nov 2004 19:09:47 +0000 (19:09 +0000)
defaults.c

index 93295a618c94cee3e36e219b0e7942f02b5cff16..df8ae5db89003da9042201ea53d6c2bdc1d634d7 100644 (file)
@@ -360,9 +360,9 @@ init_defaults()
     static int firsttime = 1;
     struct sudo_defs_types *def;
 
-    /* Free any strings that were set. */
+    /* Clear any old settings. */
     if (!firsttime) {
-       for (def = sudo_defs_table; def->name; def++)
+       for (def = sudo_defs_table; def->name; def++) {
            switch (def->type & T_MASK) {
                case T_STR:
                    if (def->sd_un.str) {
@@ -374,6 +374,8 @@ init_defaults()
                    list_op(NULL, 0, def, freeall);
                    break;
            }
+           memset(&def->sd_un, 0, sizeof(def->sd_un));
+       }
     }
 
     /* First initialize the flags. */