<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>Thanks for the response explaining what the problem was. While I'd love to help with this problem, I'm not much of a C/C++ programmer (haven't coded in that language in near 10 years). The best I could probably do is test and help debug stuff. But I might still consider checking out the code and seeing if I can make sense of it and if so I will post back. But thanks again.<br></span></div><div><br></div> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"> <font face="Arial" size="2"> <hr size="1"> <b><span style="font-weight:bold;">From:</span></b> Tomasz Mrugalski <email@example.com><br> <b><span style="font-weight: bold;">To:</span></b>
firstname.lastname@example.org <br> <b><span style="font-weight: bold;">Sent:</span></b> Wednesday, August 29, 2012 7:44 PM<br> <b><span style="font-weight: bold;">Subject:</span></b> Re: [Dibbler] Hello quick question about dibbler and openbsd<br> </font> </div> <br>On 28.08.2012 23:27, Sly Midnight wrote:<br>> I just have a quick question about running dibbler client on OpenBSD 5.1<br>> i386. I downloaded and compiled dibbler-0.8.2 on my OpenBSD 5.1 router<br>> I use for my Comcast connection in the hopes of being able to use the<br>> dibbler-client to help obtain DHCPv6 info from my upstream comcast router.<br>The support for OpenBSD was never really tested with the reason being<br>plain old lack of time.<br><br>I just reproduced the problem on OpenBSD 4.8 with Dibbler 0.8.3RC1 and<br>debugged it at bit. It seems that getifaddrs() function does not return<br>link-local addresses correctly on OpenBSD (or rather the dibbler code<br>does not
process OpenBSD's version of getifaddrs() correctly). For some<br>reason, on fourth byte there is a non-zero value returned. For example,<br>if your link-local address is fe80::a:b:c:d on 7th interface, the<br>address returned will be fe80:7::a:b:c:d. Dibbler then binds that<br>address (which is successful) and sends the data (which magically have<br>fe80::a:b:c:d over wire). Server responds and dibbler receives that<br>data. Then it compares the address that is bound (fe80:7::a:b:c:d) vs.<br>destination address (fe80::a:b:c:d) and then decides that this packet is<br>not really for us and drops it.<br><br>This code is used on FreeBSD, NetBSD and Mac OS. I'm not sure about Free<br>and Net, but the code works reliably ok on Mac OS.<br><br>Assuming that OpenBSD's getifaddrs() function works as expected, the bug<br>is somewhere in the if_list_get() in Port-bsd/lowlevel-bsd.c. I'm<br>unlikely to have time in a near future to debug it thoroughly.
Anyone<br>willing to help?<br><br>Tomek<br><br>_______________________________________________<br><a href="http://klub.com.pl/cgi-bin/mailman/listinfo/dibbler" target="_blank">http://klub.com.pl/cgi-bin/mailman/listinfo/dibbler</a><br><br><br> </div> </div> </div></body></html>