If rcvpack missed file argument, it prints to stdout; Removed unused code.
[mmh] / uip / rcvpack.c
index d6e1025..827373f 100644 (file)
@@ -65,10 +65,14 @@ main(int argc, char **argv)
                        file = cp;
        }
 
-       if (!file)
-               adios(NULL, "%s [switches] file", invo_name);
-
-       rewind(stdin);
+       /* copy stdin to stdout, converting rfc822 message to mbox */
+       if (!file) {
+               if (mbx_copy(fileno(stdout), fileno(stdin)) == NOTOK) {
+                       done(RCV_MBX);
+               }
+               done(RCV_MOK);
+               return 1;
+       }
 
        /* open and lock the file */
        if ((md = mbx_open(file, getuid(), getgid(), m_gmprot()))
@@ -76,7 +80,7 @@ main(int argc, char **argv)
                done(RCV_MBX);
 
        /* append the message */
-       if (mbx_copy(file, md, fileno(stdin), 0) == NOTOK) {
+       if (mbx_copy(md, fileno(stdin)) == NOTOK) {
                mbx_close(file, md);
                done(RCV_MBX);
        }