Bug 1283773

Summary: Seg fault in rate_add_rate
Product: Red Hat Enterprise Linux 7 Reporter: Dr. David Alan Gilbert <dgilbert>
Component: iptraf-ngAssignee: Phil Cameron <pcameron>
Status: CLOSED ERRATA QA Contact: Vaclav Danek <vdanek>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 7.1CC: jscotka, pcameron, rkhan, tlavigne, vdanek
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Cause: Adding an interface while iprtaf-ng is running does not add a rate struct. Consequence: Segfault on reference to the missing struct Fix: Allocate the rate struct when device is set up. Result: Fixed
Story Points: ---
Clone Of:
: 1332208 (view as bug list) Environment:
Last Closed: 2016-11-04 04:58:39 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1332208    

Description Dr. David Alan Gilbert 2015-11-19 19:57:05 UTC
Description of problem:
iptraf-ng seg'd on me - I think this was probably at the time a VM was starting in the background; it's possible this is the same as bz 1079945.

Version-Release number of selected component (if applicable):
iptraf-ng-1.1.4-4.el7.x86_64
(The machine started off as 7.0 and has slowly had random bits upgraded, it's a dev box)

How reproducible:
unclear

Steps to Reproduce:
1. run iptraf-ng
2. bring an interface up in the background????
3.

Actual results:
seg

Expected results:
no seg

Additional info:
Program terminated with signal 11, Segmentation fault.
#0  rate_add_rate (rate=rate@entry=0x128a3f0, bytes=216, msecs=msecs@entry=1011) at src/rate.c:48
48		rate->rates[rate->index] = bytes * 1000ULL / msecs;
(gdb) where
#0  rate_add_rate (rate=rate@entry=0x128a3f0, bytes=216, msecs=msecs@entry=1011) at src/rate.c:48
#1  0x0000000000417d23 in updaterates (table=0x7ffd6d8ee820, msecs=1011) at src/ifstats.c:262
#2  ifstats (facilitytime=facilitytime@entry=0) at src/ifstats.c:525
#3  0x00000000004039c4 in program_interface () at src/iptraf.c:193
#4  main (argc=1, argv=<optimized out>) at src/iptraf.c:532
(gdb) p rate
$1 = (struct rate *) 0x128a3f0
(gdb) p rate->index
$2 = 0
(gdb) p rate
$3 = (struct rate *) 0x128a3f0
(gdb) p rate->rates
$4 = (unsigned long long *) 0x0
(gdb) where
#0  rate_add_rate (rate=rate@entry=0x128a3f0, bytes=216, msecs=msecs@entry=1011) at src/rate.c:48
#1  0x0000000000417d23 in updaterates (table=0x7ffd6d8ee820, msecs=1011) at src/ifstats.c:262
#2  ifstats (facilitytime=facilitytime@entry=0) at src/ifstats.c:525
#3  0x00000000004039c4 in program_interface () at src/iptraf.c:193
#4  main (argc=1, argv=<optimized out>) at src/iptraf.c:532
(gdb) bt full
#0  rate_add_rate (rate=rate@entry=0x128a3f0, bytes=216, msecs=msecs@entry=1011) at src/rate.c:48
        sum = <optimized out>
#1  0x0000000000417d23 in updaterates (table=0x7ffd6d8ee820, msecs=1011) at src/ifstats.c:262
        ptmp = 0x128a3a0
        rate = <optimized out>
#2  ifstats (facilitytime=facilitytime@entry=0) at src/ifstats.c:525
        logging = 0
        table = {head = 0x1214400, tail = 0x7f7ef886b0c6 <_nc_flush+86>, firstvisible = 0x1214400, 
          lastvisible = 0x128a3a0, borderwin = 0x1213da0, borderpanel = 0x1213ed0, statwin = 0x1213f10, 
          statpanel = 0x1214040}
        pkt_result = <optimized out>
        ptmp = <optimized out>
        logfile = 0x0
        ch = -1
        fd = 4
        tv = {tv_sec = 1447961860, tv_usec = 38339}
        starttime = <optimized out>
        statbegin = 1447961853
        now = 1447961860
        start_tv = <optimized out>
        startlog = 1447961853
        updtime = {tv_sec = 1447961859, tv_usec = 976072}
        promisc = {next = 0x7ffd6d8ee810, prev = 0x7ffd6d8ee810}
        pkt = {pkt_bufsize = 96, pkt_payload = 0x0, pkt_caplen = 66, pkt_len = 0, pkt_ifindex = 2, 
          pkt_protocol = 2048, pkt_hatype = 1, pkt_pkttype = 0 '\000', pkt_halen = 88 'X', 
          pkt_addr = "\251\370~\177\000\000\000", ethhdr = 0x0, fddihdr = 0x0, iphdr = 0x0, ip6_hdr = 0x0, 
          pkt_buf = "Data removed for good luck"}
#3  0x00000000004039c4 in program_interface () at src/iptraf.c:193
        endloop = 0
        aborted = 0
        break_aborted = 32638
        ifname = "29197\n\000\000\001\000\000\000\000\000\000"
        ifptr = <optimized out>
        menu = {itemlist = 0x1213540, selecteditem = 0x7ffd6d8eeba8, lastitem = 0x1213cc0, itemcount = 13, 
          postn = 0, x1 = 35, y1 = 15, x2 = 40, y2 = 26, menu_maxx = 33, menuwin = 0x120d3d0, 
          menupanel = 0x1211890, descwin = 0x1213da0, descpanel = 0x1213d60, borderattr = 768, 
          normalattr = 2100736, highattr = 2097920, barnormalattr = 2100992, barhighattr = 2099968, 
          descriptionattr = 512, shortcuts = "MSDBL^F^O^A^X", '\000' <repeats 11 times>, " "}
        break_menu = {itemlist = 0x0, selecteditem = 0x7f7ef8eda560, lastitem = 0x7ffd6d8eeaf0, 
          itemcount = 1838082784, postn = 32765, x1 = -163754450, y1 = 0, x2 = 4200133, y2 = 0, 
          menu_maxx = 4294967295, menuwin = 0x7f7ef82c6f08 <__GI_bsearch+88>, menupanel = 0x7f7ef82a0138, 
          descwin = 0x7f7ef8ec74c8, descpanel = 0x0, borderattr = 118, normalattr = 0, highattr = 1838082880, 
          barnormalattr = 32765, barhighattr = 194, descriptionattr = 0, 
          shortcuts = "\240\353\216m\375\177\000\000\260\353\216m\375\177\000\000\t\000\000\000\000\000\000", <incomplete sequence \326>}
        row = 2
        break_row = 1
#4  main (argc=1, argv=<optimized out>) at src/iptraf.c:532
        commands = {{cmd = 0x4212da "capture", fn = 0x41e830 <cmd_capture>, help = 0x4212e2 "capture packet"}, {
            cmd = 0x0, fn = 0x0, help = 0x0}}
        internal_argv = <optimized out>
        command = <optimized out>
        pidfile_created = 1
(gdb) q

Comment 3 Fedora Update System 2016-04-18 01:49:44 UTC
iptraf-ng-1.1.4-12.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-4e7a97abe1

Comment 4 Fedora Update System 2016-04-18 01:49:49 UTC
iptraf-ng-1.1.4-4.el6 has been submitted as an update to Fedora EPEL 6. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-5fd2b493f6

Comment 5 Fedora Update System 2016-04-18 01:49:54 UTC
iptraf-ng-1.1.4-12.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-9712e86eb8

Comment 6 Fedora Update System 2016-04-18 01:49:59 UTC
iptraf-ng-1.1.4-12.fc22 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2016-223915fe7a

Comment 7 Fedora Update System 2016-04-18 18:51:37 UTC
iptraf-ng-1.1.4-12.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-9712e86eb8

Comment 8 Fedora Update System 2016-04-19 01:48:10 UTC
iptraf-ng-1.1.4-4.el6 has been pushed to the Fedora EPEL 6 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-5fd2b493f6

Comment 9 Fedora Update System 2016-04-19 02:20:23 UTC
iptraf-ng-1.1.4-12.fc22 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-223915fe7a

Comment 10 Fedora Update System 2016-04-19 02:23:40 UTC
iptraf-ng-1.1.4-12.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-4e7a97abe1

Comment 11 Dr. David Alan Gilbert 2016-04-20 08:51:54 UTC
Thanks for fixing this!

Comment 13 Fedora Update System 2016-04-26 20:54:04 UTC
iptraf-ng-1.1.4-12.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2016-04-27 22:20:43 UTC
iptraf-ng-1.1.4-12.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.

Comment 15 Fedora Update System 2016-05-03 16:35:37 UTC
iptraf-ng-1.1.4-4.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.

Comment 17 Phil Cameron 2016-05-05 13:28:09 UTC
This fixes a customer reported segfault in iptraf-ng. We should not have to wait until 7.4 for this fix.

Is there any way we can get this into 7.3?

Comment 20 Fedora Update System 2016-05-07 12:07:39 UTC
iptraf-ng-1.1.4-12.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.

Comment 25 errata-xmlrpc 2016-11-04 04:58:39 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2381.html