#include "snprintf.h"
#endif
+/* #define DEBUG */ /* uncomment to get protocol traces */
+
int serv_sock;
*/
buf[i] = 0;
strip_trailing_nonprint(buf);
+#ifdef DEBUG
+ printf("> %s\n", buf);
+#endif
}
*/
void serv_puts(char *buf)
{
- /* printf("< %s\n", buf); */
+#ifdef DEBUG
+ printf("< %s\n", buf);
+#endif
serv_write(buf, strlen(buf));
serv_write("\n", 1);
}
serv_puts("QUIT");
serv_gets(buf);
- fprintf(stderr, "%s\n", buf);
exit(exitcode);
}
}
strip_trailing_nonprint(fromline);
- sprintf(buf, "%d", SMTP_PORT);
serv_sock = uds_connectsock("smtp.socket");
serv_gets(buf);
- fprintf(stderr, "%s\n", buf);
if (buf[0]!='2') cleanup(1);
serv_puts("HELO localhost");
serv_gets(buf);
- fprintf(stderr, "%s\n", buf);
if (buf[0]!='2') cleanup(1);
sprintf(buf, "MAIL %s", fromline);
serv_puts(buf);
serv_gets(buf);
- fprintf(stderr, "%s\n", buf);
if (buf[0]!='2') cleanup(1);
sprintf(buf, "RCPT To: %s", argv[1]);
serv_puts(buf);
serv_gets(buf);
- fprintf(stderr, "%s\n", buf);
if (buf[0]!='2') cleanup(1);
serv_puts("DATA");
serv_gets(buf);
- fprintf(stderr, "%s\n", buf);
if (buf[0]!='3') cleanup(1);
rewind(fp);
}
serv_puts(".");
serv_gets(buf);
- fprintf(stderr, "%s\n", buf);
if (buf[0]!='2') cleanup(1);
else cleanup(0);
return(0);