aboutsummaryrefslogtreecommitdiff
path: root/mail/imap-uw/files/patch-src_mtest_mtest.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/imap-uw/files/patch-src_mtest_mtest.c')
-rw-r--r--mail/imap-uw/files/patch-src_mtest_mtest.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/mail/imap-uw/files/patch-src_mtest_mtest.c b/mail/imap-uw/files/patch-src_mtest_mtest.c
new file mode 100644
index 000000000000..a3b490909a09
--- /dev/null
+++ b/mail/imap-uw/files/patch-src_mtest_mtest.c
@@ -0,0 +1,47 @@
+--- src/mtest/mtest.c.orig Sat May 29 08:07:06 1999
++++ src/mtest/mtest.c Sun Dec 19 15:29:29 1999
+@@ -95,6 +95,7 @@
+ void status (MAILSTREAM *stream);
+ void prompt (char *msg,char *txt);
+ void smtptest (long debug);
++char *safegets(char *buf);
+
+ /* Main program - initialization */
+
+@@ -528,7 +529,7 @@
+ void prompt (char *msg,char *txt)
+ {
+ printf ("%s",msg);
+- gets (txt);
++ safegets (txt);
+ }
+
+ /* Interfaces to C-client */
+@@ -713,7 +714,7 @@
+ puts (" Msg (end with a line with only a '.'):");
+ body->type = TYPETEXT;
+ *text = '\0';
+- while (gets (line)) {
++ while (safegets (line)) {
+ if (line[0] == '.') {
+ if (line[1] == '\0') break;
+ else strcat (text,".");
+@@ -744,4 +745,18 @@
+ else puts ("[Can't open connection to any server]");
+ mail_free_envelope (&msg);
+ mail_free_body (&body);
++}
++
++char *safegets(char *buf) {
++ char *p;
++
++ if (!fgets(buf, MAILTMPLEN, stdin)) {
++ return NULL;
++ }
++
++ if ((p = strchr(buf, '\n')) != NULL) {
++ *p = '\0';
++ }
++
++ return buf;
+ }