Bug 1277094 - ip neighbour segfaults if bad mac address is used
ip neighbour segfaults if bad mac address is used
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: iproute (Show other bugs)
7.2
Unspecified Unspecified
medium Severity medium
: rc
: ---
Assigned To: Phil Sutter
Jaroslav Aster
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-11-02 05:42 EST by Jaroslav Aster
Modified: 2016-11-03 19:36 EDT (History)
2 users (show)

See Also:
Fixed In Version: iproute-3.10.0-57.el7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1277102 (view as bug list)
Environment:
Last Closed: 2016-11-03 19:36:44 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Jaroslav Aster 2015-11-02 05:42:16 EST
Description of problem:

ip neighbour segfaults if bad mac address is used.

Version-Release number of selected component (if applicable):

iproute-3.10.0-54.el7

How reproducible:

100%

Steps to Reproduce:

# ip link add test-iface type dummy
# ip link set test-iface up
# ip neigh add 192.168.100.3 lladdr 00:c0:7b:7d:00:c10 dev test-iface nud reachable
"c10" is invalid lladdr.
Segmentation fault
# ip link del test-iface

Actual results:

There is segfaults.

Expected results:

No segfaults.

Additional info:
Comment 5 Jaroslav Aster 2016-05-17 11:29:44 EDT
Hi Phil,

bug seems to be fixed, but there is some a difference in the return code between RHEL-6 and RHEL-7. Is it ok?

RHEL-6:

:: [  BEGIN   ] :: Running 'ip neigh add 192.168.100.11 lladdr 00:c0:7b:7d:00:c16 dev test-iface nud permanent'
"c16" is invalid lladdr.
:: [   PASS   ] :: Command 'ip neigh add 192.168.100.11 lladdr 00:c0:7b:7d:00:c16 dev test-iface nud permanent' (Expected 255, got 255)

RHEL-7:

:: [  BEGIN   ] :: Running 'ip neigh add 192.168.100.11 lladdr 00:c0:7b:7d:00:c16 dev test-iface nud permanent'
"c16" is invalid lladdr.
:: [   FAIL   ] :: Command 'ip neigh add 192.168.100.11 lladdr 00:c0:7b:7d:00:c16 dev test-iface nud permanent' (Expected 255, got 1)

On RHEL-6 the return code is 255 and on RHEL-7 the return code is 1 (and I have expected 255).
Comment 6 Phil Sutter 2016-05-17 13:42:31 EDT
Hi Jaroslav,

(In reply to Jaroslav Aster from comment #5) 
> bug seems to be fixed, but there is some a difference in the return code
> between RHEL-6 and RHEL-7. Is it ok?

Yes, this is OK. The reason is iproute2 since version 3.1 contains commit 7397944de6c11 ("ip: fix exit codes"), which changes the behaviour. The internal error code returned is -1, which previously was cast to unsigned (255) and now is inverted (1).

Cheers, Phil
Comment 9 errata-xmlrpc 2016-11-03 19:36:44 EDT
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/RHEA-2016-2162.html

Note You need to log in before you can comment on or make changes to this bug.