aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
authorDavid M. Syzdek <david.syzdek@acsalaska.com>2020-01-30 12:06:08 -0900
committerDavid M. Syzdek <david.syzdek@acsalaska.com>2020-01-30 12:06:08 -0900
commitc0332a7fd3e4dd696191ec33cd81b3f0d2db931b (patch)
treea00599c0b3ade84eac96ab6c0b5b1ff00a0b46de /src
parentbda9b6fbd13f98dc8db499c3ded40a8576a1c29e (diff)
downloadakcom-udpecho-c0332a7fd3e4dd696191ec33cd81b3f0d2db931b.tar.gz
akcom-udpecho-c0332a7fd3e4dd696191ec33cd81b3f0d2db931b.tar.bz2
akcom-udpecho-c0332a7fd3e4dd696191ec33cd81b3f0d2db931b.tar.xz
akcom-udpecho-c0332a7fd3e4dd696191ec33cd81b3f0d2db931b.zip
Adding connection counter
Diffstat (limited to 'src')
-rw-r--r--src/akcom-udpechod.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/akcom-udpechod.c b/src/akcom-udpechod.c
index cf04948..828b040 100644
--- a/src/akcom-udpechod.c
+++ b/src/akcom-udpechod.c
@@ -166,7 +166,7 @@ int main(int argc, char * argv[]);
166int my_daemonize(void); 166int my_daemonize(void);
167 167
168// main loop 168// main loop
169int my_loop(int s); 169int my_loop(int s, size_t * connp);
170 170
171// signal handler 171// signal handler
172void my_sighandler(int signum); 172void my_sighandler(int signum);
@@ -194,6 +194,7 @@ int main(int argc, char * argv[])
194 int s; 194 int s;
195 unsigned seed; 195 unsigned seed;
196 struct timespec ts; 196 struct timespec ts;
197 size_t conn;
197 198
198 // determines program name 199 // determines program name
199 cnf.prog_name = argv[0]; 200 cnf.prog_name = argv[0];
@@ -323,8 +324,9 @@ int main(int argc, char * argv[])
323 }; 324 };
324 325
325 // loops 326 // loops
327 conn = 0;
326 while(!(should_stop)) 328 while(!(should_stop))
327 my_loop(s); 329 my_loop(s, &conn);
328 330
329 // close syslog 331 // close syslog
330 syslog(LOG_NOTICE, "daemon stopping"); 332 syslog(LOG_NOTICE, "daemon stopping");
@@ -462,7 +464,7 @@ int my_daemonize(void)
462 464
463 465
464// main loop 466// main loop
465int my_loop(int s) 467int my_loop(int s, size_t * connp)
466{ 468{
467 socklen_t sinlen; 469 socklen_t sinlen;
468 ssize_t ssize; 470 ssize_t ssize;
@@ -492,6 +494,9 @@ int my_loop(int s)
492 if ((poll(fds, 1, 1)) < 1) 494 if ((poll(fds, 1, 1)) < 1)
493 return(0); 495 return(0);
494 496
497 // increment connection counter
498 (*connp)++;
499
495 // read data 500 // read data
496 sinlen = sizeof(struct sockaddr_storage); 501 sinlen = sizeof(struct sockaddr_storage);
497 if ((ssize = recvfrom(s, udpbuff.bytes, sizeof(udpbuff), 0, &sin.sa, &sinlen)) == -1) 502 if ((ssize = recvfrom(s, udpbuff.bytes, sizeof(udpbuff), 0, &sin.sa, &sinlen)) == -1)