summaryrefslogtreecommitdiff
path: root/sys-apps/dog/files/dog-1.7-check-ctime.diff
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-apps/dog/files/dog-1.7-check-ctime.diff
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-apps/dog/files/dog-1.7-check-ctime.diff')
-rw-r--r--sys-apps/dog/files/dog-1.7-check-ctime.diff53
1 files changed, 53 insertions, 0 deletions
diff --git a/sys-apps/dog/files/dog-1.7-check-ctime.diff b/sys-apps/dog/files/dog-1.7-check-ctime.diff
new file mode 100644
index 000000000000..03442b8e45d5
--- /dev/null
+++ b/sys-apps/dog/files/dog-1.7-check-ctime.diff
@@ -0,0 +1,53 @@
+diff --exclude='*~' --exclude='.*' -I '# $Id$
+--- a/dog.c 2005-05-13 08:01:37.000000000 -0400
++++ b/dog.c 2005-05-13 08:30:38.000000000 -0400
+@@ -36,6 +36,7 @@
+ #include <string.h>
+ #include "getopt.h"
+ #include <limits.h>
++#include <time.h>
+ #include <netdb.h>
+
+ // this is fun
+@@ -1321,26 +1322,35 @@
+ InetSockAddr sa;
+ int newsock;
+ uint32 ipAddr;
+- int k;
++ socklen_t k;
+ time_t curr_time;
+ char curr_date[64];
+
+ k = sizeof(sa);
+ while ((newsock=accept(sock,(struct sockaddr*)&sa,&k)) != -1) {
+ if (!no_bind_header) {
++ char *result = NULL;
+ ipAddr = ntohl(sa.addr);
+ time(&curr_time);
+- strcpy(curr_date,ctime(&curr_time));
++ if (!(result = ctime(&curr_time))) {
++ perror("ctime");
++ goto done;
++ }
++ strncpy(curr_date, result, sizeof(curr_date) - 1);
+ while (!isalnum(curr_date[strlen(curr_date)-1])) {
+ curr_date[strlen(curr_date)-1] = 0;
+ }
+ printf("# %s from %d.%d.%d.%d:%d\n",curr_date,(int)ipAddr>>24,(int)(ipAddr>>16)&0xff,(int)(ipAddr>>8)&0xff,(int)ipAddr&0xff,ntohs(sa.port));
+ }
+- straight_dump = newsock;
+- DumpThings(argc,argv,hang_up_bind ? -1 : newsock);
+- if (hang_up_bind) {
++
++ goto done;
++
++ done:
++ straight_dump = newsock;
++ DumpThings(argc,argv,hang_up_bind ? -1 : newsock);
++ if (hang_up_bind) {
+ close(newsock);
+- }
++ }
+ }
+ }
+