]> SAFE projects GIT repository - jmp/mailleur/commitdiff
Working on ehlo/helo command
authorJean-Marc Pigeon (Delson) <jmp@safe.ca>
Sun, 8 Jun 2025 08:52:51 +0000 (04:52 -0400)
committerJean-Marc Pigeon (Delson) <jmp@safe.ca>
Sun, 8 Jun 2025 08:52:51 +0000 (04:52 -0400)
lib/lvleml.c

index 8e01a6af919a7eaa0fb6c99b02fa79d4721a269e..4a65ec2371cce7f267130909a46e71583996557e 100644 (file)
@@ -740,15 +740,26 @@ done=false;
 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;