diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2016-02-21 15:40:59 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2016-02-21 15:40:59 +0200 |
commit | 722533c595a0976e50cca45dca7f28ff7e599970 (patch) | |
tree | 6534bb0f16d74e75237497f3838034ffe7c84509 /src | |
parent | 599a468169078449b68e7c0ef711c14fb746f0ea (diff) | |
download | pies-722533c595a0976e50cca45dca7f28ff7e599970.tar.gz pies-722533c595a0976e50cca45dca7f28ff7e599970.tar.bz2 |
Fix memory leaks when reconfiguring
* grecs: Upgrade.
* src/acl.c (_acl_common_section_parser): Free old value.
* src/pies.c: Mark statically initialized keywords with
GRECS_CONST.
Diffstat (limited to 'src')
-rw-r--r-- | src/acl.c | 5 | ||||
-rw-r--r-- | src/pies.c | 16 |
2 files changed, 12 insertions, 9 deletions
@@ -537,3 +537,6 @@ _acl_common_section_parser (enum grecs_callback_command cmd, if (pacl) - *pacl = acl; + { + pies_acl_free (*pacl); + *pacl = acl; + } break; @@ -1296,3 +1296,3 @@ struct grecs_keyword control_keywords[] = { N_("Authentication realm name"), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &control.realm, 0, @@ -1380,3 +1380,3 @@ struct grecs_keyword pies_keywords[] = { N_("Full file name of the program state directory."), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &statedir, 0, NULL}, @@ -1385,3 +1385,3 @@ struct grecs_keyword pies_keywords[] = { N_("Write PID to this file."), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &pidfile, 0, @@ -1406,3 +1406,3 @@ struct grecs_keyword pies_keywords[] = { N_("Set location of the QOTD file."), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &qotdfile, 0, @@ -1412,3 +1412,3 @@ struct grecs_keyword pies_keywords[] = { N_("Run with this user privileges."), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &pies_privs.user, 0, @@ -1490,3 +1490,3 @@ struct grecs_keyword pies_keywords[] = { N_("Set the name of MeTA1 queue directory (default /var/spool/meta1)."), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &meta1_queue_dir, 0, @@ -1497,3 +1497,3 @@ struct grecs_keyword pies_keywords[] = { N_("Full path to the mailer binary."), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &mailer_program, 0, @@ -1504,3 +1504,3 @@ struct grecs_keyword pies_keywords[] = { N_("Mailer command line (without recipient addresses)."), - grecs_type_string, GRECS_DFLT, + grecs_type_string, GRECS_CONST, &mailer_command_line, 0, |