Re: [PATCH 08/10] nfs-utils: add IPv6 support to nfssvc_setfds

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chuck Lever wrote:
> 
> On Jun 3, 2009, at 3:52 PM, Jeff Layton wrote:
> 
>> Allow nfssvc_setfds to properly deal with AF_INET6.
>>
>> IPv6 sockets for knfsd can't be allowed to accept IPv4 packets. Set the
>> correct option to prevent that from occurring on IPv6 sockets.
>>
>> Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx>
>> ---
>> support/nfs/nfssvc.c |   14 ++++++++++++++
>> 1 files changed, 14 insertions(+), 0 deletions(-)
>>
>> diff --git a/support/nfs/nfssvc.c b/support/nfs/nfssvc.c
>> index 89fb5be..19f1a4c 100644
>> --- a/support/nfs/nfssvc.c
>> +++ b/support/nfs/nfssvc.c
>> @@ -76,6 +76,11 @@ nfssvc_setfds(const struct addrinfo *hints, const
>> char *node, const char *port)
>>     case AF_INET:
>>         family = "inet";
>>         break;
>> +#ifdef IPV6_SUPPORTED
>> +    case AF_INET6:
>> +        family = "inet6";
>> +        break;
>> +#endif /* IPV6_SUPPORTED */
>>     default:
>>         xlog(L_ERROR, "Unknown address family specified: %d\n",
>>                 hints->ai_family);
>> @@ -123,6 +128,15 @@ nfssvc_setfds(const struct addrinfo *hints, const
>> char *node, const char *port)
>>             rc = errno;
>>             goto error;
>>         }
>> +#ifdef IPV6_SUPPORTED
>> +        if (addr->ai_family == AF_INET6 &&
>> +            setsockopt(sockfd, IPPROTO_IPV6, IPV6_V6ONLY, &on,
>> sizeof(on))) {
>> +            xlog(L_ERROR, "unable to set IPV6_V6ONLY: "
>> +                "errno %d (%s)\n", errno, strerror(errno));
> 
> I'm still looking at the other patches, but I notice you could use %m
> here too.
I kinda like having both... the errno *and* the error string...

steved.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux