From: Jean-Marc Pigeon (Delson) Date: Fri, 4 Jul 2025 10:09:06 +0000 (-0400) Subject: Adjusting socpurge execution sequence (before starttls) X-Git-Tag: tag-0.12~33 X-Git-Url: https://jmp-git.ovh.safe.ca/?a=commitdiff_plain;h=75a364180da9079e6cfb007d464fda66f7a7086c;p=jmp%2Fmailleur Adjusting socpurge execution sequence (before starttls) --- diff --git a/Makefile.dbg b/Makefile.dbg index e130466..6b8b472 100644 --- a/Makefile.dbg +++ b/Makefile.dbg @@ -43,7 +43,7 @@ digest : clean debug -r $(TESTDIR) \ -c ./conf/$(APPNAME).conf.dvl \ -d 9 \ - "|192.219.254.70|1025|1" + "|127.127.10.25|1025|1" onercvr : clean debug @ \ diff --git a/lib/devsoc.c b/lib/devsoc.c index 7da7ef4..98aeeb3 100644 --- a/lib/devsoc.c +++ b/lib/devsoc.c @@ -386,6 +386,7 @@ while (proceed==true) { phase=999; //No char,no need to check for line break; case 1 : //do we have a buffer full; + //(void) rou_alert(0,"%s capile=<%s>",OPEP,soc->carpile); if (soc->carin>=(soc->maxcarin)-1) { //Overload! trying to overcome by extending carpile an adding an EOL soc->carpile=(char *)realloc(soc->carpile,(soc->carin+5)*sizeof(char)); @@ -1521,26 +1522,25 @@ SOCTYP *soc; ok=false; soc=(SOCTYP *)socptr; if ((soc!=(SOCTYP *)0)&&(soc->modtls==false)) { + char *peerip; + peerip=(char *)0; + switch (server) { + case true : + peerip=soc_getaddrinfo(socptr,false,false); + (void) socpurge(soc,peerip); + peerip=rou_freestr(peerip); + break; + case false : + break; + } soc->tls=tls_opentls(soc->handle,server); if (soc->tls!=(TLSTYP *)0) { - char *peerip; - - peerip=(char *)0; soc->proto=pro_smtps; soc->modtls=true; ok=true; - switch (server) { - case true : - peerip=soc_getaddrinfo(socptr,false,false); - (void) socpurge(soc,peerip); - break; - case false : - break; - } (void) tls_verify(soc->tls); soc->cipherid=tls_getcipherid(soc->tls); - peerip=rou_freestr(peerip); } } return ok;