]> SAFE projects GIT repository - jmp/mailleur/commitdiff
Added an ehlo after TLS when sending email
authorJean-Marc Pigeon (Delson) <jmp@safe.ca>
Thu, 19 Jun 2025 23:01:37 +0000 (19:01 -0400)
committerJean-Marc Pigeon (Delson) <jmp@safe.ca>
Thu, 19 Jun 2025 23:01:37 +0000 (19:01 -0400)
lib/lvleml.c

index 3ac0e7d66774d7080866e25dfa440a6c810ac912..a283d87a1e53dee25b5a0b38d1262514fa281a3b 100644 (file)
@@ -281,8 +281,11 @@ while (proceed==true) {
         phase=999;      //no parameter
       break;
     case 1      :       //seems to be a good fqdn
-      contact->fqdn=rou_freestr(contact->fqdn);
+      char *ptr;
+
+      ptr=contact->fqdn;        //parameter could be the SAME!
       contact->fqdn=strdup(parameter);
+      ptr=rou_freestr(ptr);
       done=true; 
       break;
     default     :       //SAFE guard
@@ -823,7 +826,24 @@ return true;
 */
 /********************************************************/
 /*                                                      */
-/*     Procedure to to send ehlo (or helo) to remote   */
+/*     Procedure to send a confirmation ehlo on the    */
+/*      crypted link.                                   */
+/*                                                      */
+/********************************************************/
+_Bool sendehlo(RMTTYP *rmt)
+
+{
+_Bool done;
+
+done=false;
+return done;
+}
+/*
+^L
+*/
+/********************************************************/
+/*                                                      */
+/*     Procedure to send ehlo (or helo) to remote      */
 /*      MX server.                                      */
 /*      Return true if succesfull                       */
 /*                                                      */
@@ -866,6 +886,15 @@ while (proceed==true) {
           switch (done) {
             case true   :
               (void) log_fprintlog(rmt->logptr,false,"crypted link is now set");
+              rspcode=simple_smtp_command(rmt,"EHLO %s",rmt->orgdomain);
+              switch (rspcode) {
+                case CMDOK      :
+                  break;
+                default         :
+                  (void) log_fprintlog(rmt->logptr,false,"No server confirmation");
+                  done=false;
+                  break;
+                }
               break;
             case false  :
               (void) log_fprintlog(rmt->logptr,false,"Unable to set crypted link");