rc.63 threads no matter ...
Peter Van Epp
vanepp at sfu.ca
Fri Nov 16 17:33:45 EST 2007
It appears that removing .threads no longer disables threads in rc.63:
...
gcc -g -Wall -Wmissing-prototypes -Wstrict-prototypes -I. -I../include -I../common -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DHAVE_VFPRINTF=1 -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRFTIME=1 -DHAVE_SETLINEBUF=1 -DHAVE_SETENV=1 -DHAVE_ALARM=1 -DHAVE_GETADDRINFO=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_BITYPES_H=1 -DHAVE_INTTYPES_H=1 -DARGUSDEBUG=1 -D_FILE_OFFSET_BITS=64 -DHAVE_TCP_WRAPPER=1 -DHAVE_STRING_H=1 -DHAVE_FCNTL_H=1 -DHAVE_SYS_FILE_H=1 -DHAVE_SYSLOG_H=1 -DHAVE_ETHER_HOSTTON=1 -DHAVE_STRERROR=1 -DHAVE_STRTOF=1 -DARGUS_CURSES=1 -DARGUS_NCURSES_H=1 -D
STDC_HEADERS=1 -c ./gmpls.c
gcc -g -Wall -Wmissing-prototypes -Wstrict-prototypes -o ../bin/radump radump.o print-aodv.o print-arp.o print-beep.o print-bfd.o print-bgp.o print-bootp.o print-domain.o print-krb.o print-ldp.o print-l2tp.o print-lmp.o print-msdp.o print-ntp.o print-pim.o print-pptp.o print-snmp.o print-syslog.o print-rip.o print-telnet.o print-tftp.o print-isoclns.o print-ether.o print-timed.o print-radius.o print-rx.o print-smb.o print-stp.o print-isakmp.o smbutil.o gmpls.o ../lib/argus_parse.a ../lib/argus_common.a ../lib/argus_client.a -lm -lpthread
make[1]: Leaving directory `/usr/local/src/argus/argus-clients-3.0.0.rc.63/radump'
ARGUS_THREADS doesn't appear to be defined but the thread library is
on the link line and apparantly (according to gdb) is active:
vanepp at sniffer1:/spare> gdb ra3
GNU gdb 6.5
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "ppc-suse-linux"...Using host libthread_db library "/lib/power5+/libthread_db.so.1".
(gdb) l
111
112 #if defined(ARGUS_THREADS)
113 pthread_attr_t attr;
114 int thread_policy;
115 struct sched_param thread_param;
116 int status, rr_min_priority, rr_max_priority;
117 size_t stacksize;
118 #endif
119
120 for (i = 0, cc = 0; i < argc; i++)
(gdb) l
121 cc += strlen(argv[i]);
122
123 if (strchr (argv[0], '/'))
124 argv[0] = strrchr(argv[0], '/') + 1;
125
126 if ((ArgusParser = ArgusNewParser(argv[0])) == NULL)
127 ArgusLog (LOG_ERR, "ArgusNewParser failed %s", strerror(errno));
128
129 ArgusMainInit (ArgusParser, argc, argv);
130 ArgusClientInit (ArgusParser);
(gdb) b 126
Breakpoint 1 at 0x10002f98: file ./argus_main.c, line 126.
(gdb) c
The program is not being run.
(gdb) r -C -S192.75.244.195:1025 -n
Starting program: /usr/local/bin/ra3 -C -S192.75.244.195:1025 -n
[Thread debugging using libthread_db enabled]
[New Thread -134574080 (LWP 30496)]
[Switching to Thread -134574080 (LWP 30496)]
Breakpoint 1, main (argc=4, argv=0xffe9b3a4) at ./argus_main.c:126
126 if ((ArgusParser = ArgusNewParser(argv[0])) == NULL)
(gdb) s
ArgusNewParser (progname=0xffe9b581 "ra3") at ./argus_parser.c:72
72 struct ArgusParserStruct *retn = NULL;
Peter Van Epp / Operations and Technical Support
Simon Fraser University, Burnaby, B.C. Canada
More information about the argus
mailing list