Skip to content

Segmentation fault with IPv6 loopback but no other IPv6 interface #2

Open
@drscream

Description

@drscream

We detected a strange behavior (segmentation fault) if an IPv4 and IPv6 loopback device is on an SmartOS zone. This will only happen if a IPv4 address is set but no IPv6 is configured and IPv6 loopback interface is present.

lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
    inet 127.0.0.1 netmask ff000000 
net0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
    inet 80.190.131.157 netmask ffffff80 broadcast 80.190.131.255
    ether 22:8:3:8c:c4:c4 
lo0: flags=2002000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv6,VIRTUAL> mtu 8252 index 1
    inet6 ::1/128 

It gets stuck in the loop https://github.com/postwait/node-ife/blob/master/arpcache-dlpi.cc#L128-L130 because ip->ipNetToMediaEntrySize is 0. The workaround is to setup a real IPv6 interface with an valid address (or unplumb the v6 loopback).

I'm not sure if it's a illumos bug, because req->level might be 0x104 for the IPv6 loopback.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions