Hi Joel,

Wow, interesting. What OS are you running? What BGP capabilities
are enabled and which address families are you sending over? It
would help if you can run the daemon under gdb and collect 'bt'
information (send it directly to me). Post in the same email also
your config. We can take it from there.

Cheers,
Paolo

On Wed, Dec 04, 2013 at 04:18:42PM -0800, Joel Krauska wrote:
> I get a pretty repeatable buffer overflow when trying to use nfacctd with
> BGP enabled.
> (threaded)
> 
> It will run for a few moments and then bombs out.
> 
> *** buffer overflow detected ***: nfacctd: Core Process [default] terminated
> ======= Backtrace: =========
> /lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x7f56d4dd1f47]
> /lib/x86_64-linux-gnu/libc.so.6(+0x109e40)[0x7f56d4dd0e40]
> nfacctd: Core Process [default](bgp_nlri_parse+0x15f)[0x46b17f]
> nfacctd: Core Process [default](bgp_update_msg+0x3a7)[0x46bb87]
> nfacctd: Core Process [default](skinny_bgp_daemon+0xc1f)[0x46e84f]
> nfacctd: Core Process [default](thread_runner+0x5b)[0x45f72b]
> /lib/x86_64-linux-gnu/libpthread.so.0(+0x7e9a)[0x7f56d508ee9a]
> /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7f56d4dbb3fd]
> 
> ======= Memory map: ========
> 00400000-004ca000 r-xp 00000000 fd:01 270072
> /opt/pmacct/sbin/nfacctd
> 006c9000-006ca000 r--p 000c9000 fd:01 270072
> /opt/pmacct/sbin/nfacctd
> 006ca000-006cb000 rw-p 000ca000 fd:01 270072
> /opt/pmacct/sbin/nfacctd
> 006cb000-0074c000 rw-p 00000000 00:00 0
> 00ab9000-00ada000 rw-p 00000000 00:00 0
>  [heap]
> 7f56c4000000-7f56c6e8c000 rw-p 00000000 00:00 0
> 7f56c6e8c000-7f56c8000000 ---p 00000000 00:00 0
> 7f56cbde2000-7f56cbdf7000 r-xp 00000000 fd:01 390697
> /lib/x86_64-linux-gnu/libgcc_s.so.1
> 7f56cbdf7000-7f56cbff6000 ---p 00015000 fd:01 390697
> /lib/x86_64-linux-gnu/libgcc_s.so.1
> 7f56cbff6000-7f56cbff7000 r--p 00014000 fd:01 390697
> /lib/x86_64-linux-gnu/libgcc_s.so.1
> 7f56cbff7000-7f56cbff8000 rw-p 00015000 fd:01 390697
> /lib/x86_64-linux-gnu/libgcc_s.so.1
> 7f56cbfff000-7f56cc000000 rw-p 00000000 00:00 0
> 7f56cc000000-7f56d0000000 rw-p 00000000 00:00 0
> 7f56d3a00000-7f56d3fb3000 rw-s 00000000 00:04 10398639
> /dev/zero (deleted)
> 7f56d3fb3000-7f56d3fb4000 ---p 00000000 00:00 0
> 7f56d3fb4000-7f56d47b4000 rw-p 00000000 00:00 0
> 7f56d47b4000-7f56d48af000 r-xp 00000000 fd:01 394152
> /lib/x86_64-linux-gnu/libm-2.15.so
> 7f56d48af000-7f56d4aae000 ---p 000fb000 fd:01 394152
> /lib/x86_64-linux-gnu/libm-2.15.so
> 7f56d4aae000-7f56d4aaf000 r--p 000fa000 fd:01 394152
> /lib/x86_64-linux-gnu/libm-2.15.so
> 7f56d4aaf000-7f56d4ab0000 rw-p 000fb000 fd:01 394152
> /lib/x86_64-linux-gnu/libm-2.15.so
> 7f56d4ab0000-7f56d4ac6000 r-xp 00000000 fd:01 390743
> /lib/x86_64-linux-gnu/libz.so.1.2.3.4
> 7f56d4ac6000-7f56d4cc5000 ---p 00016000 fd:01 390743
> /lib/x86_64-linux-gnu/libz.so.1.2.3.4
> 7f56d4cc5000-7f56d4cc6000 r--p 00015000 fd:01 390743
> /lib/x86_64-linux-gnu/libz.so.1.2.3.4
> 7f56d4cc6000-7f56d4cc7000 rw-p 00016000 fd:01 390743
> /lib/x86_64-linux-gnu/libz.so.1.2.3.4
> 7f56d4cc7000-7f56d4e7c000 r-xp 00000000 fd:01 394141
> /lib/x86_64-linux-gnu/libc-2.15.so
> 7f56d4e7c000-7f56d507c000 ---p 001b5000 fd:01 394141
> /lib/x86_64-linux-gnu/libc-2.15.so
> 7f56d507c000-7f56d5080000 r--p 001b5000 fd:01 394141
> /lib/x86_64-linux-gnu/libc-2.15.so
> 7f56d5080000-7f56d5082000 rw-p 001b9000 fd:01 394141
> /lib/x86_64-linux-gnu/libc-2.15.so
> 7f56d5082000-7f56d5087000 rw-p 00000000 00:00 0
> 7f56d5087000-7f56d509f000 r-xp 00000000 fd:01 394150
> /lib/x86_64-linux-gnu/libpthread-2.15.so
> 7f56d509f000-7f56d529e000 ---p 00018000 fd:01 394150
> /lib/x86_64-linux-gnu/libpthread-2.15.so
> 7f56d529e000-7f56d529f000 r--p 00017000 fd:01 394150
> /lib/x86_64-linux-gnu/libpthread-2.15.so
> 7f56d529f000-7f56d52a0000 rw-p 00018000 fd:01 394150
> /lib/x86_64-linux-gnu/libpthread-2.15.so
> 7f56d52a0000-7f56d52a4000 rw-p 00000000 00:00 0
> 7f56d52a4000-7f56d52a6000 r-xp 00000000 fd:01 394156
> /lib/x86_64-linux-gnu/libdl-2.15.so
> 7f56d52a6000-7f56d54a6000 ---p 00002000 fd:01 394156
> /lib/x86_64-linux-gnu/libdl-2.15.so
> 7f56d54a6000-7f56d54a7000 r--p 00002000 fd:01 394156
> /lib/x86_64-linux-gnu/libdl-2.15.so
> 7f56d54a7000-7f56d54a8000 rw-p 00003000 fd:01 394156
> /lib/x86_64-linux-gnu/libdl-2.15.so
> 7f56d54a8000-7f56d54db000 r-xp 00000000 fd:01 131070
> /usr/lib/libGeoIP.so.1.4.8
> 7f56d54db000-7f56d56da000 ---p 00033000 fd:01 131070
> /usr/lib/libGeoIP.so.1.4.8
> 7f56d56da000-7f56d56db000 r--p 00032000 fd:01 131070
> /usr/lib/libGeoIP.so.1.4.8
> 7f56d56db000-7f56d56dd000 rw-p 00033000 fd:01 131070
> /usr/lib/libGeoIP.so.1.4.8
> 7f56d56dd000-7f56d5711000 r-xp 00000000 fd:01 135098
> /usr/lib/x86_64-linux-gnu/libpcap.so.1.1.1
> 7f56d5711000-7f56d5911000 ---p 00034000 fd:01 135098
> /usr/lib/x86_64-linux-gnu/libpcap.so.1.1.1
> 7f56d5911000-7f56d5912000 r--p 00034000 fd:01 135098
> /usr/lib/x86_64-linux-gnu/libpcap.so.1.1.1
> 7f56d5912000-7f56d5913000 rw-p 00035000 fd:01 135098
> /usr/lib/x86_64-linux-gnu/libpcap.so.1.1.1
> 7f56d5913000-7f56d5914000 rw-p 00000000 00:00 0
> 7f56d5914000-7f56d5bd2000 r-xp 00000000 fd:01 130807
> /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0
> 7f56d5bd2000-7f56d5dd1000 ---p 002be000 fd:01 130807
> /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0
> 7f56d5dd1000-7f56d5dd7000 r--p 002bd000 fd:01 130807
> /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0
> 7f56d5dd7000-7f56d5e55000 rw-p 002c3000 fd:01 130807
> /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0
> 7f56d5e55000-7f56d5e5a000 rw-p 00000000 00:00 0
> 7f56d5e5a000-7f56d5e7c000 r-xp 00000000 fd:01 394153
> /lib/x86_64-linux-gnu/ld-2.15.so
> 7f56d602d000-7f56d6073000 rw-p 00000000 00:00 0
> 7f56d6074000-7f56d6075000 rw-s 00000000 00:04 10398640
> /dev/zero (deleted)
> 7f56d6075000-7f56d6079000 rw-s 00000000 00:04 10398636
> /dev/zero (deleted)
> 7f56d6079000-7f56d607c000 rw-p 00000000 00:00 0
> 7f56d607c000-7f56d607d000 r--p 00022000 fd:01 394153
> /lib/x86_64-linux-gnu/ld-2.15.so
> 7f56d607d000-7f56d607f000 rw-p 00023000 fd:01 394153
> /lib/x86_64-linux-gnu/ld-2.15.so
> 7fff3a0b9000-7fff3a0da000 rw-p 00000000 00:00 0
>  [stack]
> 7fff3a0e8000-7fff3a0e9000 r-xp 00000000 00:00 0
>  [vdso]
> ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0
>  [vsyscall]
> ERROR ( testing/print ): Core process *seems* gone. Exiting.
> 
> It seems to occur shortly after the peer comes up.
> (WARNS filtered out due to warns)
> 
> #/opt/pmacct/sbin/nfacctd  -f /etc/pmacct/nfacctd.conf | grep -v WARN
> INFO ( default/core/BGP ): maximum BGP peers allowed: 2
> INFO ( default/core/BGP ): waiting for BGP data on 0.0.0.0:179
> INFO ( default/core ): waiting for NetFlow data on 0.0.0.0:6001
> INFO ( default/core/BGP ): BGP peers usage: 1/2
> 
> 
> Is there anything else I can provide to help debug?
> Corefile?

> _______________________________________________
> pmacct-discussion mailing list
> http://www.pmacct.net/#mailinglists


_______________________________________________
pmacct-discussion mailing list
http://www.pmacct.net/#mailinglists

Reply via email to