Skip Menu |
 

From: raeburn@mit.edu
Subject: SVN Commit
As Denis Vlasenko pointed out in ticket 3306, using IP(V6)_PKTINFO to
get or set the local address in UDP communications instead of
allocating one socket for each address seen at startup will behave
better in environments where the addresses may change while the KDC is
running, or in certain unusual network configurations.

The patch from Denis was specific to Linux (didn't do IPV6_PKTINFO if
IP_PKTINFO wasn't defined). I've reworked it a fair amount, and
tested the results briefly on Mac OS X (which has IPV6_PKTINFO but not
IP_PKTINFO) and Linux (which has both).

With this change, on systems like Linux supporting both socket
options, the KDC should be able to use just two UDP sockets, one for
IPv4 and one for IPv6. (And if we turned off IPV6_V6ONLY, we might do
with one.)

Filed as a separate ticket, because Denis's complaint and patch in
3306 cover the RPC code as well.

Commit By: raeburn



Revision: 19408
Changed Files:
U trunk/src/kdc/network.c
From: raeburn@mit.edu
Subject: SVN Commit
Missed part of last checkin.
Check for cmsghdr and pktinfo structures.

Commit By: raeburn



Revision: 19411
Changed Files:
U trunk/src/configure.in
To: rt@krbdev.mit.edu
Subject: Re: [krbdev.mit.edu #5517] SVN Commit
From: Tom Yu <tlyu@MIT.EDU>
Date: Fri, 20 Apr 2007 00:20:18 -0400
RT-Send-Cc:
It looks like these changes don't work on Solaris because many of the
referenced macros and struct fields only get defined under _XPG_4_2.
From: Ken Raeburn <raeburn@MIT.EDU>
Subject: Re: [krbdev.mit.edu #5517] SVN Commit
Date: Fri, 20 Apr 2007 04:07:19 -0400
To: rt-comment@krbdev.mit.edu
RT-Send-Cc:
On Apr 20, 2007, at 00:20, Tom Yu via RT wrote:
Show quoted text
> It looks like these changes don't work on Solaris because many of the
> referenced macros and struct fields only get defined under _XPG_4_2.

I just checked in a change that seems to fix it. (Revision 19510, I
forgot to put the RT headers on.)

Ken