phase=0;
proceed=true;
while (proceed==true) {
+ char cmt[100];
+
switch (phase) {
case 0 : //Sending EHLO
- char cmt[100];
-
(void) snprintf(cmt,sizeof(cmt),"EHLO %s",rmt->orgdomain);
(void) tcp_write(rmt->socptr,cmt);
(void) log_fprintlog(rmt->logptr,false,cmt);
+ switch (get_smtp_reply(rmt,WAITRMT)) {
+ case CMDOK : //So fare, so good
+ done=true;
+ phase=999;
+ break;
+ default : //Trouble
+ break;
+ }
break;
- case 1 : //waiting for ehlo reply
+ case 1 : //Sending HELO
+ (void) snprintf(cmt,sizeof(cmt),"HELO %s",rmt->orgdomain);
+ (void) tcp_write(rmt->socptr,cmt);
+ (void) log_fprintlog(rmt->logptr,false,cmt);
switch (get_smtp_reply(rmt,WAITRMT)) {
case CMDOK : //So fare, so good
done=true;