diff lib-src/movemail.c @ 20418:7e1538a45702

Allow messages retrieved from the POP server to contain embedded nulls.
author Karl Heuer <kwzh@gnu.org>
date Thu, 04 Dec 1997 06:44:56 +0000
parents 4c524f5214ce
children 4f1f4b226cb0
line wrap: on
line diff
--- a/lib-src/movemail.c	Thu Dec 04 06:14:04 1997 +0000
+++ b/lib-src/movemail.c	Thu Dec 04 06:44:56 1997 +0000
@@ -795,12 +795,12 @@
       return (NOTOK);
     }
 
-  while (! (ret = pop_retrieve_next (server, &line)))
+  while ((ret = pop_retrieve_next (server, &line)) >= 0)
     {
       if (! line)
 	break;
 
-      if (mbx_write (line, arg) != OK)
+      if (mbx_write (line, ret, arg) != OK)
 	{
 	  strcpy (Errmsg, strerror (errno));
 	  pop_close (server);
@@ -826,8 +826,9 @@
 			 && (a[4] == ' '))
 
 int
-mbx_write (line, mbf)
+mbx_write (line, len, mbf)
      char *line;
+     int len;
      FILE *mbf;
 {
 #ifdef MOVEMAIL_QUOTE_POP_FROM_LINES
@@ -844,7 +845,7 @@
       line++;
       len--;
     }
-  if (fputs (line, mbf) == EOF) 
+  if (fwrite (line, 1, len, mbf) != len) 
     return (NOTOK);
   if (fputc (0x0a, mbf) == EOF)
     return (NOTOK);