diff options
author | Denys Vlasenko | 2017-08-22 15:53:16 +0200 |
---|---|---|
committer | Denys Vlasenko | 2017-08-22 15:53:16 +0200 |
commit | 3505e38bd1e5714fa1203e6752c573861aab8521 (patch) | |
tree | 6c77967c5594bed998a9781306719b49402ae9bc /mailutils/sendmail.c | |
parent | e837a0dbbebf4229306df98fe9ee3b9bb30630c4 (diff) | |
download | busybox-3505e38bd1e5714fa1203e6752c573861aab8521.zip busybox-3505e38bd1e5714fa1203e6752c573861aab8521.tar.gz |
sendmail: fix segfault if "To: email1,email2" is used
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'mailutils/sendmail.c')
-rw-r--r-- | mailutils/sendmail.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/mailutils/sendmail.c b/mailutils/sendmail.c index f440e63..defbd95 100644 --- a/mailutils/sendmail.c +++ b/mailutils/sendmail.c @@ -189,8 +189,9 @@ static void rcptto(const char *s) // send to a list of comma separated addresses static void rcptto_list(const char *list) { - char *str = xstrdup(list); - char *s = str; + char *free_me = xstrdup(list); + char *str = free_me; + char *s = free_me; char prev = 0; int in_quote = 0; @@ -208,7 +209,7 @@ static void rcptto_list(const char *list) } if (prev != ',') rcptto(angle_address(str)); - free(str); + free(free_me); } int sendmail_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; |