From: Jean-Marc Pigeon (Delson) Date: Mon, 30 Jun 2025 02:17:30 +0000 (-0400) Subject: Need to improve session when doing a warning message X-Git-Tag: tag-0.11~12 X-Git-Url: https://jmp-git.ovh.safe.ca/?a=commitdiff_plain;h=aeb5a8e5ae4b6a65bd4937127ccca05533f2113a;p=jmp%2Fmailleur Need to improve session when doing a warning message --- diff --git a/data-feed/feed02.tst b/data-feed/feed02.tst index d6e11fd..e9f180e 100644 --- a/data-feed/feed02.tst +++ b/data-feed/feed02.tst @@ -3,8 +3,8 @@ R:220 mailleur.example.com, ESMTP (cleartext) mailleur... #==================================================== S:HELO example.com R:250 mailleur.example.com, link (cleartext) ready,... -S:MAIL FROM: -R:250 2.1.3 postmaster@example.com.. sender ok +S:MAIL FROM: +R:250 2.1.3 trouble@mailref1.example.com.. sender ok S:RCPT TO: R:250 2.6.4 Address accepted S:RCPT TO: diff --git a/lib/devsql.c b/lib/devsql.c index 084c23d..42ac1a9 100644 --- a/lib/devsql.c +++ b/lib/devsql.c @@ -253,7 +253,6 @@ 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); @@ -825,23 +824,27 @@ PUBLIC _Bool sql_mngact(SQLPTR *sqlptr,SQLENUM action,ACTTYP *act) { #define OPEP "devsql.c:sql_mngact," #define DELACT "DELETE FROM "ACTIONS" WHERE sessid=%s AND rcptto=%s" -#define INACT "INSERT INTO "ACTIONS" (%s) VALUES(%s,%s,%d,%s)" +#define INACT "INSERT INTO "ACTIONS" (%s) VALUES(%s,%s,%s,%d,%s)" _Bool isok; isok=false; if (act!=(ACTTYP *)0) { + char strcode[10]; char *goodid; char *goodrcpt; + char *goodcode; - (void) rou_alert(0,"%s Entering!",OPEP); + (void) memset(strcode,'\000',sizeof(strcode)); + strcode[0]=act->code; goodid=sql_gooddata(sqlptr,act->sessid); goodrcpt=sql_gooddata(sqlptr,act->rcptto); - (void) rou_alert(0,"JMPDBG %s %s code='%c'",act->sessid,act->rcptto,act->code); + goodcode=sql_gooddata(sqlptr,strcode); + (void) rou_alert(0,"%s JMPDBG code='%c' rcptto=<%s>",OPEP,act->code,act->rcptto); if (act->resp!=(char **)0) { char *field; - field="sessid,rcptto,numline,info"; + field="code,sessid,rcptto,numline,info"; (void) sqlrequest(sqlptr,DELACT,goodid,goodrcpt); if (act->resp!=(char **)0) { char **resp; @@ -853,17 +856,17 @@ if (act!=(ACTTYP *)0) { char *goodinfo; goodinfo=sql_gooddata(sqlptr,*resp); - (void) sqlrequest(sqlptr,INACT,field,goodid,goodrcpt,num,goodinfo); + (void) sqlrequest(sqlptr,INACT,field,goodcode,goodid,goodrcpt,num,goodinfo); goodinfo=rou_freestr(goodinfo); resp++; num++; } } } + goodcode=rou_freestr(goodcode); goodrcpt=rou_freestr(goodrcpt); goodid=rou_freestr(goodid); isok=true; - (void) rou_alert(0,"%s Exiting!",OPEP); } return isok; diff --git a/sql/mailleur.sql b/sql/mailleur.sql index 5e9791c..c4da08f 100644 --- a/sql/mailleur.sql +++ b/sql/mailleur.sql @@ -86,6 +86,7 @@ GRANT SELECT ON sessions TO mailapache; CREATE TABLE actions ( creation DBTIMESTAMP //record creation DFLT NOW(), + code SHORTTEXT, //action status (one char) sessid TEXT, //Session id rcptto text, //Recipient status numline INTEGER, //status line