When trying to start relayd 4.6 on a host without INET6 in the kernel, relayd exits with an error that I'm sadly unable to recall.
The error may have been with check_icmp.c in function icmp_setup() starting at line 54:
icmp_setup(struct relayd *env, struct ctl_icmp_event *cie, int af)
int proto = IPPROTO_ICMP;
if (af == AF_INET6)
proto = IPPROTO_ICMPV6;
if ((cie->s = socket(af, SOCK_RAW, proto)) < 0)
cie->env = env;
cie->af = af;
This was present on 4.6, I can't confirm for 5.0 as the host now has INET6 compiled in the kernel.
Not sure if this is an actual bug, or intended.
How-To-Repeat: On a 8.2-RELEASE box, build a custom kernel without INET6 support (disable IPv6).
Build relayd, try to start.
Over to maintainer (via the GNATS Auto Assign Tool)
Is this PR still relevant?
Created attachment 147100 [details]
Created attachment 147101 [details]
Still doesn't work on 8.4-STABLE synched and built today 09/09/2014.
Removed INET6 from kernel, relayd won't start anymore.
Both /usr/local/etc/rc.d/relayd start and /usr/local/sbin/relayd exit with code 0 and no error message.
However, /var/log/messages reveals :
Sep 9 09:15:51 bsd8 relayd: fatal: icmp_setup: socket: Protocol not supported
"icmp_setup" seems to be referenced only in :
this is till valid for FreeBSD 10.1-STABLE #3 r274924M, probably needs to be fixed in the relayd itself.
Is this still relevant?
To be honest, unless check_icmp.c was changed, aye it is very likely still relevant.
Can test on 10-STABLE sometime next week if needed.
I give up maintaining this port.
*** Bug 192274 has been marked as a duplicate of this bug. ***