svn commit: r271418 - head/sbin/dhclient
Andriy Gapon
avg at FreeBSD.org
Thu Sep 11 08:57:58 UTC 2014
On 11/09/2014 11:11, Robert Watson wrote:
> A bit behind on commits, but: does this mean that an older userspace dhclient
> will no longer work with a newer kernel?
At least in my case it appeared to work. I guess this is because the broadcast
queries were not affected by the change.
> On Thu, 11 Sep 2014, Gleb Smirnoff wrote:
>
>> Author: glebius
>> Date: Thu Sep 11 05:48:39 2014
>> New Revision: 271418
>> URL: http://svnweb.freebsd.org/changeset/base/271418
>>
>> Log:
>> Since r270929 raw sockets expect network byte order.
>>
>> Submitted by: avg
>>
>> Modified:
>> head/sbin/dhclient/packet.c
>>
>> Modified: head/sbin/dhclient/packet.c
>> ==============================================================================
>> --- head/sbin/dhclient/packet.c Thu Sep 11 03:16:57 2014 (r271417)
>> +++ head/sbin/dhclient/packet.c Thu Sep 11 05:48:39 2014 (r271418)
>> @@ -127,17 +127,6 @@ assemble_udp_ip_header(unsigned char *bu
>> ip.ip_dst.s_addr = to;
>>
>> ip.ip_sum = wrapsum(checksum((unsigned char *)&ip, sizeof(ip), 0));
>> -
>> - /*
>> - * While the BPF -- used for broadcasts -- expects a "true" IP header
>> - * with all the bytes in network byte order, the raw socket interface
>> - * which is used for unicasts expects the ip_len field to be in host
>> - * byte order. In both cases, the checksum has to be correct, so this
>> - * is as good a place as any to turn the bytes around again.
>> - */
>> - if (to != INADDR_BROADCAST)
>> - ip.ip_len = ntohs(ip.ip_len);
>> -
>> memcpy(&buf[*bufix], &ip, sizeof(ip));
>> *bufix += sizeof(ip);
>>
>>
>>
>
--
Andriy Gapon
More information about the svn-src-all
mailing list