changeset 587:6b0125b34bb1 HEAD

More password clearing.
author Timo Sirainen <tss@iki.fi>
date Wed, 06 Nov 2002 08:23:49 +0200
parents 50bb42557703
children d7eb0bfd3eb5
files src/login/client.c
diffstat 1 files changed, 12 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/login/client.c	Wed Nov 06 08:00:58 2002 +0200
+++ b/src/login/client.c	Wed Nov 06 08:23:49 2002 +0200
@@ -147,6 +147,7 @@
 static int client_command_execute(Client *client, char *line)
 {
 	char *cmd;
+	int ret;
 
 	cmd = get_next_arg(&line);
 	str_ucase(cmd);
@@ -156,10 +157,18 @@
 
 		user = get_next_arg(&line);
 		pass = get_next_arg(&line);
-		return cmd_login(client, user, pass);
+		ret = cmd_login(client, user, pass);
+
+		memset(pass, 0, strlen(pass));
+		return ret;
 	}
-	if (strcmp(cmd, "AUTHENTICATE") == 0)
-		return cmd_authenticate(client, get_next_arg(&line));
+	if (strcmp(cmd, "AUTHENTICATE") == 0) {
+		char *data = get_next_arg(&line);
+
+		ret = cmd_authenticate(client, data);
+		memset(data, 0, strlen(data));
+		return ret;
+	}
 	if (strcmp(cmd, "CAPABILITY") == 0)
 		return cmd_capability(client);
 	if (strcmp(cmd, "STARTTLS") == 0)