arm listen failed (because IPv6 support is optional in kernels)

Issue #326 new
Former user created an issue

It's seems that the protocol in arm doesn't work normally.

pi@raspberrypi ~/inferno $ ./Linux/arm/bin/emu fs: fsqid: top-bit dev: 0xb302 ; svc/auth Key: listen: failed to announce on 'tcp!!inflogin': Address family not supported by protocol listen: failed to announce on 'tcp!!infkey': Address family not supported by protocol listen: failed to announce on 'tcp!!infsigner': Address family not supported by protocol listen: failed to announce on 'tcp!!infcsigner': Address family not supported by protocol

Comments (5)

  1. Charles Forsyth

    There are two things there. The "top-bit dev" is something else that needs looking at, although I know roughly what that is (finally having to address some very early laziness!). It might not matter much at the moment.

    The main problem is the "address family". I wonder if it's because it's trying to use IPv6 interfaces but your kernel hasn't got them configured. No wonder adoption of ipv6 is slow. I don't know why Linux doesn't simply allow ipv6 addressing families but restrict the targets to ipv4 space. Anyway, having looked at the emu code I suspect that's the cause.

    If so, change the line in emu/Linux/emu from ip ipif6-posix ipaux to ip ipif-posix ipaux and remake emu.

  2. Charles Forsyth

    The top-bit dev message is to let someone know that it's happened. It then compensates. I've just changed devfs-posix.c to suppress the message since it's no longer needed.

  3. Charles Forsyth

    It should probably work out at run-time whether IPv6 is available and use the older calls if not.

  4. Log in to comment