From: Jean-Marc Pigeon (Delson) Date: Mon, 30 Jun 2025 01:52:41 +0000 (-0400) Subject: Problemen to recognize local email?? X-Git-Tag: tag-0.11~13 X-Git-Url: https://jmp-git.ovh.safe.ca/?a=commitdiff_plain;h=77cde61ab617902317734bf00fde19b208d590b7;p=jmp%2Fmailleur Problemen to recognize local email?? --- diff --git a/lib/devsql.c b/lib/devsql.c index dd340b1..084c23d 100644 --- a/lib/devsql.c +++ b/lib/devsql.c @@ -253,6 +253,7 @@ char *cmd; number=-1; va_start(args,fmt); if ((rou_vasprintf(&cmd,fmt,args))>0) { + (void) rou_alert(0,"%s JMPDBG rqst=<%s>",OPEP,cmd); switch(sql->sqldb) { case db_postgres : number=pos_request(sql->db.psql,cmd); @@ -836,12 +837,12 @@ if (act!=(ACTTYP *)0) { (void) rou_alert(0,"%s Entering!",OPEP); goodid=sql_gooddata(sqlptr,act->sessid); goodrcpt=sql_gooddata(sqlptr,act->rcptto); - if (act->resp==(char **)0) - (void) sqlrequest(sqlptr,DELACT,goodid,goodrcpt); - else { + (void) rou_alert(0,"JMPDBG %s %s code='%c'",act->sessid,act->rcptto,act->code); + if (act->resp!=(char **)0) { char *field; field="sessid,rcptto,numline,info"; + (void) sqlrequest(sqlptr,DELACT,goodid,goodrcpt); if (act->resp!=(char **)0) { char **resp; int num; @@ -853,7 +854,6 @@ if (act!=(ACTTYP *)0) { goodinfo=sql_gooddata(sqlptr,*resp); (void) sqlrequest(sqlptr,INACT,field,goodid,goodrcpt,num,goodinfo); - (void) rou_alert(0,INACT,field,goodid,goodrcpt,num,goodinfo); goodinfo=rou_freestr(goodinfo); resp++; num++; diff --git a/lib/geseml.c b/lib/geseml.c index 7920d99..15ff496 100644 --- a/lib/geseml.c +++ b/lib/geseml.c @@ -562,6 +562,7 @@ if (list!=(TRATYP **)0) { switch ((*ptr)->code) { case 'C' : //email completed toadd=false; + (void) eml_freetra_resp(*ptr); //no need to report actions if (eml_countqfile((*ptr)->sessid,-1)==0) { char fname[200]; @@ -1026,13 +1027,16 @@ if (tra!=(TRATYP **)0) { break; case 1 : //checking all transation while (*tra!=(TRATYP *)0) { - ACTTYP action; - - action.sessid=(*tra)->sessid; - action.rcptto=(*tra)->rcptto; - action.resp=(*tra)->resp; - (void) sql_mngact(sqlptr,sql_delete,&action); - num++; + if ((*tra)->resp!=(char **)0) { + ACTTYP action; + + action.sessid=(*tra)->sessid; + action.code=(*tra)->code; + action.rcptto=(*tra)->rcptto; + action.resp=(*tra)->resp; + (void) sql_mngact(sqlptr,sql_delete,&action); + num++; + } tra++; } break; diff --git a/lib/unisql.h b/lib/unisql.h index 30e8986..a858740 100644 --- a/lib/unisql.h +++ b/lib/unisql.h @@ -41,6 +41,7 @@ typedef struct { //Tructure about email action status (managing email) typedef struct { char *sessid; //session id + char code; //Email status code char *rcptto; //email recipient char **resp; //Multiline status }ACTTYP;