From e173906cdf5e56b90e4d56037a85d48e1bb28a87 Mon Sep 17 00:00:00 2001 From: Jonathan Santis Date: Mon, 16 Sep 2024 09:51:17 +0200 Subject: [PATCH] asdf --- config.c | 2 -- main.c | 45 +++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 41 insertions(+), 6 deletions(-) diff --git a/config.c b/config.c index 9012e1e..372776b 100644 --- a/config.c +++ b/config.c @@ -2,12 +2,10 @@ #include #include #include -#include int loadConfig(char *file, char **str_entry,int size) { int i=0; - bool terminate=false; FILE *f_config; char temp_str[256]; diff --git a/main.c b/main.c index 1164e7e..ae17b02 100644 --- a/main.c +++ b/main.c @@ -5,6 +5,7 @@ #include #include #include +#include #include"config.h" @@ -27,7 +28,7 @@ typedef struct service { char *name; char *targetPath; - bool alert; + bool alerted; int priority; } Service; @@ -78,9 +79,8 @@ int main(int argc,char *argv[]) } else if(strcmp(argv[1],"config")==0) { - if(argc>2) + if(argc==3) { - Service service1[64]; char *str_entry[64]={'\0'}; int i=0; @@ -91,9 +91,46 @@ int main(int argc,char *argv[]) GetSendStatus(connection,str_entry[i]); } } + else if(argc==4 && strcmp(argv[3],"-d")==0) + { + printf("Running as a daemon\n"); + char *str_entry[64]={'\0'}; + int i=0; + Service services[64]; + char *ptr_name=NULL; + + loadConfig(argv[2],str_entry,64); + for(i=0;str_entry[i];i++) + { + services[i].targetPath = strdup(str_entry[i]); + ptr_name = strrchr(services[i].targetPath,'/'); + if(ptr_name!=NULL) + { + printf("strrchr:%s\n",ptr_name); + services[i].name = strdup(ptr_name); + services[i].name = services[i].name + 1; + } + else{ + fprintf(stderr,"does not seem to be a valid target\n"); + services[i].name = strdup("Undefined"); + } + services[i].alerted = false; + services[i].priority = 6; + printf("Name:%s\ntarget:%s\n",services[i].name,services[i].targetPath); + } + while(true) + { + for(i=0;str_entry[i];i++) + { + printf("entry in config:%s\n",str_entry[i]); + GetSendStatus(connection,str_entry[i]); + } + sleep(10); + } + } else { - fprintf(stderr,"config requires a config file as argument\n"); + fprintf(stderr,"config requires a config file as argument\nAppend -d for daemonizing\n"); } } else