From 14faa4f1001a2d23a5c63fed28d6e5f8d684949b Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Fri, 6 Nov 2015 15:08:05 +0100 Subject: [PATCH] ocpasswd: ensure there are no leaks --- src/ocpasswd/ocpasswd.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ocpasswd/ocpasswd.c b/src/ocpasswd/ocpasswd.c index 37537837..c7af1d31 100644 --- a/src/ocpasswd/ocpasswd.c +++ b/src/ocpasswd/ocpasswd.c @@ -355,6 +355,7 @@ int main(int argc, char **argv) int ret, optct; const char *username, *groupname, *fpasswd; char* passwd; + unsigned free_passwd = 0; size_t l, i; if ((ret = gnutls_global_init()) < 0) { @@ -425,11 +426,14 @@ int main(int argc, char **argv) exit(1); } + free_passwd = 1; if (passwd[l-1] == '\n') passwd[l-1] = 0; } crypt_int(fpasswd, username, groupname, passwd); + if (free_passwd) + free(passwd); } gnutls_global_deinit();