]> SAFE projects GIT repository - jmp/mailleur/commitdiff
Able to debug scarmt (dbgscar)
authorJean-Marc Pigeon (Delson) <jmp@safe.ca>
Sun, 13 Jul 2025 09:41:29 +0000 (05:41 -0400)
committerJean-Marc Pigeon (Delson) <jmp@safe.ca>
Sun, 13 Jul 2025 09:41:29 +0000 (05:41 -0400)
Makefile
Makefile.dbg
app/Makefile
app/scarmt.c
bin [deleted symlink]
lib/gessql.c
lib/gessql.h

index 4ee2faf254bc32f9ad51afa1d8f9e8f6ea2552dd..63cb1e2450dcfcae3db53af5821c338d32863b90 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -28,6 +28,7 @@ clean :  cleanrpm
               $(MAKE) -s -C $$i $@ ;                   \
               done
           @ - rm -fr $(APPNAME)-*
+          @ - rm -fr bin
 
 posql  :  clean debug newtest
           @ ln -nsf bin-posql bin
index 981daefe80225037d9898ab92bea28b66cbf94db..25abf78a0b026ddf2c69b7166a66e6d71426ac84 100644 (file)
@@ -1,4 +1,4 @@
-#====================================================================
+#===================================================================
 #debug area definition
 SBINDIR        =       usr/sbin
 DATATST        =       data-feed
@@ -68,6 +68,13 @@ onercvr      :  clean debug
                -f                                      \
                $(EMLPAR)$(TESTITER)
 
+onescar:  clean debug
+         @ echo "Starting scanner"
+         @                                             \
+           bin/scarmt                                  \
+               -f                                      \
+               $(DBGPAR)
+
 onefeed        :  debug
           @                                            \
                 bin/feeder                             \
@@ -163,6 +170,15 @@ dbgsortr:  clean debug
                   -c ./conf/mailleur.conf.dvl          \
                   -r $(TESTDIR) 
 
+dbgscar:  clean debug
+         @                                             \
+           gdb                                         \
+               --args                                  \
+               bin/scarmt                              \
+                  -f                                   \
+                  $(DBGPAR)
+
+onefeed        :  debug
 TODO   =  `basename -a                                 \
           $(TESTDIR)/var/spool/$(APPNAME)/queue/*.todo|\
            tr '\\n' ' ' `
index 897e7d10c3a420508d7468f9669b1f69a3128d8c..c428eb1033df3c1ece9cd1186f16132e48eaa97a 100644 (file)
@@ -117,6 +117,7 @@ sorter.o:  sorter.c                                 \
 
 scarmt.o:  scarmt.c                                    \
           ../lib/devsql.h                              \
+          ../lib/gessql.h                              \
           ../lib/unipar.h                              \
           ../lib/uniprc.h                              \
           ../lib/unisig.h                              \
index d3870a6b10b003cd836e208f3f0b7a8e21cb224c..c987e715113d7524833ecf42f1f5cdb279ca854a 100644 (file)
@@ -14,6 +14,7 @@
 #include        <unistd.h>
 
 #include        "devsql.h"
+#include        "gessql.h"
 #include        "unipar.h"
 #include        "uniprc.h"
 #include        "unisig.h"
@@ -35,11 +36,13 @@ static void doscanning()
 #define OPEP    "scarmt.c:doscanning,"
 
 SQLPTR *sqlptr;
+char **rmtip;
 int delay;
 int phase;
 _Bool proceed;
 
 sqlptr=(SQLPTR *)0;
+rmtip=(char **)0;
 delay=10;       //10 second sleeping time
 phase=0;
 proceed=true;
@@ -48,20 +51,28 @@ while (proceed==true) {
     case 0      :       //opening database
       if ((sqlptr=sql_opensql())==(SQLPTR *)0) {
         (void) rou_alert(0,"%s Unable to open database (Config?)",OPEP);
+        phase=999;      //Trouble trouble
         }
       break;
     case 1      :       //check about signal
+      sleep(delay);
       if ((hangup==true)||((reload==true))) {
         (void) rou_alert(0,"%s got hangup or reload signal",OPEP);
         phase=999;
         }
       break;
     case 2      :       //check for new entry
+      if ((rmtip=sql_getnewrmtip(sqlptr))==(char **)0)
+        phase=0;        //nothing to be done
       break;
     case 3      :       //check entries
+      for (int i=0;rmtip[i]!=(char *)0;i++) {
+        if ((hangup==true)||((reload==true))) 
+          break;        //No need to check other remote
+        }
+      rmtip=(char **)rou_freelist((void **)rmtip,(genfree_t)rou_freestr);
       break;
     case 4      :       //let continue
-      sleep(delay);
       phase=0;          //looping the job again
       break;
     default     :       //SAFE Guard
diff --git a/bin b/bin
deleted file mode 120000 (symlink)
index 48018e1..0000000
--- a/bin
+++ /dev/null
@@ -1 +0,0 @@
-bin-mysql
\ No newline at end of file
index ac893cc2ad8d6f8f8bff518304f4398b2acf15ba..8dda6a62b7356855170d6b862189054aabc2a0f1 100644 (file)
@@ -699,3 +699,20 @@ return isok;
 #undef  OPEP
 }
 
+/*
+\f
+*/
+/********************************************************/
+/*                                                      */
+/*      Procedure to retreive a list of newly connected */
+/*      remote IP to be scanned to establish credibilty.*/
+/*                                                      */
+/********************************************************/
+PUBLIC char **sql_getnewrmtip(SQLPTR *sqlptr)
+
+{
+char **rmtip;
+
+rmtip=(char **)0;
+return rmtip;
+}
index 7c85752c54bd77f26c80701705a14614c11faae5..87937c18346f5acd461611732848b9c5d7f5a62c 100644 (file)
@@ -29,4 +29,7 @@ extern _Bool sql_newconnect(SQLPTR *sqlptr,char *rmtip,int delta);
 
 //procedure to extract the information about remotes server
 extern _Bool sql_mngremote(SQLPTR *sqlptr,SQLENUM action,char *key,SRVTYP **srv);
+
+//procedure to collect a list of "to be checked" remote IP
+extern char **sql_getnewrmtip(SQLPTR *sqlptr);
 #endif