From: Lennart Poettering Date: Mon, 4 Jul 2011 16:59:54 +0000 (+0200) Subject: password-agent: make sure not to access unallocated memory X-Git-Tag: v30~60 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=9726f9ff11fa7b94dceed2972cd2453a08b9ee6a password-agent: make sure not to access unallocated memory Tracked down by Frederic Crozat --- diff --git a/src/tty-ask-password-agent.c b/src/tty-ask-password-agent.c index b620aa6ee..38442f66b 100644 --- a/src/tty-ask-password-agent.c +++ b/src/tty-ask-password-agent.c @@ -376,12 +376,14 @@ static int parse_password(const char *filename, char **wall) { release_terminal(); } - packet_length = 1+strlen(password)+1; - if (!(packet = new(char, packet_length))) - r = -ENOMEM; - else { - packet[0] = '+'; - strcpy(packet+1, password); + if (r >= 0) { + packet_length = 1+strlen(password)+1; + if (!(packet = new(char, packet_length))) + r = -ENOMEM; + else { + packet[0] = '+'; + strcpy(packet+1, password); + } } free(password);