aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pop3.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/pop3.c b/pop3.c
index e3b06656..961692a5 100644
--- a/pop3.c
+++ b/pop3.c
@@ -640,8 +640,12 @@ static int pop3_getauth(int sock, struct query *ctl, char *greeting)
break;
case P_RPOP:
- if ((ok = gen_transact(sock,"USER %s", ctl->remotename)) == 0)
+ if ((ok = gen_transact(sock,"USER %s", ctl->remotename)) == 0) {
+ strlcpy(shroud, ctl->password, sizeof(shroud));
ok = gen_transact(sock, "RPOP %s", ctl->password);
+ memset(shroud, 0x55, sizeof(shroud));
+ shroud[0] = '\0';
+ }
break;
default: