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