Binary files iplog-2.2.3/.DS_Store and iplog-2.2.3p/.DS_Store differ Only in iplog-2.2.3p/src: .DS_Store Binary files iplog-2.2.3/src/getopt.o and iplog-2.2.3p/src/getopt.o differ Binary files iplog-2.2.3/src/getopt1.o and iplog-2.2.3p/src/getopt1.o differ Binary files iplog-2.2.3/src/iplog and iplog-2.2.3p/src/iplog differ diff -cr iplog-2.2.3/src/iplog.c iplog-2.2.3p/src/iplog.c *** iplog-2.2.3/src/iplog.c Tue Jan 2 04:39:07 2001 --- iplog-2.2.3p/src/iplog.c Thu Mar 20 19:26:17 2003 *************** *** 174,195 **** myopenlog("iplog", LOG_PID | LOG_NDELAY); if (!opt_enabled(NO_FORK)) ! fork_to_back(); ! ! write_lockfile(lockfile); ! ! if (opt_enabled(DNS_CACHE)) ! init_dns_table(opt_enabled(PROMISC) ? DNS_MAXSIZE_P : DNS_MAXSIZE_N); ! ! if (opt_enabled(ANY_SCAN)) ! init_scan_table(opt_enabled(PROMISC) ? SCAN_TSIZE_P : SCAN_TSIZE_N); ! ! init_frag_table(FRAG_TSIZE); #ifdef HAVE_PTHREAD_CANCEL sigsetjmp(jmpbuf, 1); #endif ! if (plist == NULL && setup_pcap(&plist, ifstring) == -1) fatal("Couldn't initialize interfaces."); --- 174,186 ---- myopenlog("iplog", LOG_PID | LOG_NDELAY); if (!opt_enabled(NO_FORK)) ! fork_to_back(); #ifdef HAVE_PTHREAD_CANCEL sigsetjmp(jmpbuf, 1); #endif ! write_lockfile(lockfile); ! if (plist == NULL && setup_pcap(&plist, ifstring) == -1) fatal("Couldn't initialize interfaces."); *************** *** 197,202 **** --- 188,202 ---- dropped = true; drop_privs(user, group); } + + + if (opt_enabled(DNS_CACHE)) + init_dns_table(opt_enabled(PROMISC) ? DNS_MAXSIZE_P : DNS_MAXSIZE_N); + + if (opt_enabled(ANY_SCAN)) + init_scan_table(opt_enabled(PROMISC) ? SCAN_TSIZE_P : SCAN_TSIZE_N); + + init_frag_table(FRAG_TSIZE); memset(&rtemp, 0, sizeof(rtemp)); pthread_create(&rtemp.pt, NULL, queue_manager, NULL); Binary files iplog-2.2.3/src/iplog.o and iplog-2.2.3p/src/iplog.o differ Binary files iplog-2.2.3/src/iplog_config.o and iplog-2.2.3p/src/iplog_config.o differ Binary files iplog-2.2.3/src/iplog_dns.o and iplog-2.2.3p/src/iplog_dns.o differ Binary files iplog-2.2.3/src/iplog_icmp.o and iplog-2.2.3p/src/iplog_icmp.o differ Binary files iplog-2.2.3/src/iplog_ident.o and iplog-2.2.3p/src/iplog_ident.o differ Binary files iplog-2.2.3/src/iplog_input.o and iplog-2.2.3p/src/iplog_input.o differ Binary files iplog-2.2.3/src/iplog_lockfile.o and iplog-2.2.3p/src/iplog_lockfile.o differ Binary files iplog-2.2.3/src/iplog_options.o and iplog-2.2.3p/src/iplog_options.o differ Binary files iplog-2.2.3/src/iplog_pcap.o and iplog-2.2.3p/src/iplog_pcap.o differ diff -cr iplog-2.2.3/src/iplog_scan.h iplog-2.2.3p/src/iplog_scan.h *** iplog-2.2.3/src/iplog_scan.h Tue Jan 2 01:02:14 2001 --- iplog-2.2.3p/src/iplog_scan.h Sat Mar 8 20:06:12 2003 *************** *** 38,57 **** ** This must be a power of 2. */ ! #define SCAN_TSIZE_P 256 /* ** Size of the scan table when promisc mode is not enabled. ** This must be a power of 2 */ ! #define SCAN_TSIZE_N 128 /* ** Maximum number of entries for each hash. */ ! #define SCAN_MAXENT 4 /* ** Number of packets that must be received to trigger each of --- 38,57 ---- ** This must be a power of 2. */ ! #define SCAN_TSIZE_P 512 /* ** Size of the scan table when promisc mode is not enabled. ** This must be a power of 2 */ ! #define SCAN_TSIZE_N 256 /* ** Maximum number of entries for each hash. */ ! #define SCAN_MAXENT 8 /* ** Number of packets that must be received to trigger each of Binary files iplog-2.2.3/src/iplog_scan.o and iplog-2.2.3p/src/iplog_scan.o differ Binary files iplog-2.2.3/src/iplog_syslog.o and iplog-2.2.3p/src/iplog_syslog.o differ Binary files iplog-2.2.3/src/iplog_tcp.o and iplog-2.2.3p/src/iplog_tcp.o differ Binary files iplog-2.2.3/src/iplog_udp.o and iplog-2.2.3p/src/iplog_udp.o differ diff -cr iplog-2.2.3/src/iplog_util.c iplog-2.2.3p/src/iplog_util.c *** iplog-2.2.3/src/iplog_util.c Tue Jan 2 01:02:14 2001 --- iplog-2.2.3p/src/iplog_util.c Sat Mar 8 07:45:12 2003 *************** *** 594,616 **** void drop_privs(const u_char *user, const u_char *group) { uid_t uid; gid_t gid; char *nptr; if (group != NULL) { struct group *gr = getgrnam(group); ! if (gr == NULL) { gid = strtoul(group, &nptr, 10); if (*nptr != '\0') fatal("Unknown group: \"%s\"", group); ! } else ! gid = gr->gr_gid; ! if (setgid(gid) != 0) fatal("setgid(%d): %s", gid, strerror(errno)); - if (setgroups(0, NULL) != 0) - fatal("setgroups(0, NULL): %s", strerror(errno)); } if (user != NULL) { --- 594,617 ---- void drop_privs(const u_char *user, const u_char *group) { uid_t uid; gid_t gid; + gid_t groups[2]; char *nptr; if (group != NULL) { struct group *gr = getgrnam(group); ! groups[0] = groups[1] = gr->gr_gid; ! if (gr == NULL) { gid = strtoul(group, &nptr, 10); if (*nptr != '\0') fatal("Unknown group: \"%s\"", group); ! } else gid = gr->gr_gid; ! ! if (setgroups(1, groups)) ! fatal("setgroups(1, %d): %s",groups, strerror(errno)); if (setgid(gid) != 0) fatal("setgid(%d): %s", gid, strerror(errno)); } if (user != NULL) { Binary files iplog-2.2.3/src/iplog_util.o and iplog-2.2.3p/src/iplog_util.o differ Binary files iplog-2.2.3/src/snprintf.o and iplog-2.2.3p/src/snprintf.o differ