tar: support -T - and -X -
[oweals/busybox.git] / mailutils / popmaildir.c
index 1a72b87c58eaa43308e1a235993cda55a978bab9..6b733441f7939fccd094315ad62dcbc4c6d9b7c1 100644 (file)
@@ -7,16 +7,17 @@
  *
  * Copyright (C) 2008 by Vladimir Dronnikov <dronnikov@gmail.com>
  *
- * Licensed under GPLv2, see file LICENSE in this tarball for details.
+ * Licensed under GPLv2, see file LICENSE in this source tree.
  */
 #include "libbb.h"
 #include "mail.h"
 
 static void pop3_checkr(const char *fmt, const char *param, char **ret)
 {
-       const char *msg = command(fmt, param);
+       char *msg = send_mail_command(fmt, param);
        char *answer = xmalloc_fgetline(stdin);
        if (answer && '+' == answer[0]) {
+               free(msg);
                if (timeout)
                        alarm(0);
                if (ret) {
@@ -27,7 +28,7 @@ static void pop3_checkr(const char *fmt, const char *param, char **ret)
                        free(answer);
                return;
        }
-       bb_error_msg_and_die("%s failed: %s", msg, answer);
+       bb_error_msg_and_die("%s failed, reply was: %s", msg, answer);
 }
 
 static void pop3_check(const char *fmt, const char *param)
@@ -73,9 +74,9 @@ int popmaildir_main(int argc UNUSED_PARAM, char **argv)
        // parse options
        opt_complementary = "-1:dd:t+:R+:L+:H+";
        opts = getopt32(argv,
-               "bdmVcasTkt:" "R:Z:L:H:" USE_FEATURE_POPMAILDIR_DELIVERY("M:F:"),
+               "bdmVcasTkt:" "R:Z:L:H:" IF_FEATURE_POPMAILDIR_DELIVERY("M:F:"),
                &timeout, NULL, NULL, NULL, &opt_nlines
-               USE_FEATURE_POPMAILDIR_DELIVERY(, &delivery, &delivery) // we treat -M and -F the same
+               IF_FEATURE_POPMAILDIR_DELIVERY(, &delivery, &delivery) // we treat -M and -F the same
        );
        //argc -= optind;
        argv += optind;
@@ -109,9 +110,9 @@ int popmaildir_main(int argc UNUSED_PARAM, char **argv)
                                s[1] = '\0';
                        // get md5 sum of "<stamp>password" string
                        md5_begin(&md5.ctx);
-                       md5_hash(buf, strlen(buf), &md5.ctx);
-                       md5_hash(G.pass, strlen(G.pass), &md5.ctx);
-                       md5_end(res, &md5.ctx);
+                       md5_hash(&md5.ctx, buf, strlen(buf));
+                       md5_hash(&md5.ctx, G.pass, strlen(G.pass));
+                       md5_end(&md5.ctx, res);
                        *bin2hex(md5.hex, (char*)res, 16) = '\0';
                        // APOP
                        s = xasprintf("%s %s", G.user, md5.hex);