first shot at actually doing the SMTP upload as well, not doing the proper
end-of-body treatment
diff --git a/lib/smtp.c b/lib/smtp.c
index 074d9e7..44e405e 100644
--- a/lib/smtp.c
+++ b/lib/smtp.c
@@ -321,7 +321,7 @@
   struct SessionHandle *data = conn->data;
 
   /* send MAIL */
-  result = Curl_pp_sendf(&conn->proto.smtpc.pp, "MAIL FROM:<%s>",
+  result = Curl_pp_sendf(&conn->proto.smtpc.pp, "MAIL FROM:%s",
                          data->set.str[STRING_MAIL_FROM]);
   if(result)
     return result;
@@ -346,7 +346,7 @@
   }
   else {
     /* send RCPT TO */
-    result = Curl_pp_sendf(&conn->proto.smtpc.pp, "RCPT TO:<%s>",
+    result = Curl_pp_sendf(&conn->proto.smtpc.pp, "RCPT TO:%s",
                            data->set.str[STRING_MAIL_RCPT]);
     if(result)
       return result;
@@ -392,15 +392,14 @@
 
   (void)instate; /* no use for this yet */
 
-  if(smtpcode/100 != 2) {
+  if(smtpcode != 354) {
     state(conn, SMTP_STOP);
     return CURLE_RECV_ERROR;
   }
 
   /* SMTP upload */
-  result=Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE,
-                             smtp->bytecountp,
-                             -1, NULL); /* no upload here */
+  result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, /* no download */
+                               FIRSTSOCKET, smtp->bytecountp);
 
   state(conn, SMTP_STOP);
   return result;