[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20071209.222018.238869829.davem@davemloft.net>
Date: Sun, 09 Dec 2007 22:20:18 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: dlstevens@...ibm.com
Cc: yoshfuji@...ux-ipv6.org, netdev@...r.kernel.org
Subject: Re: all is not right with the world...
From: David Stevens <dlstevens@...ibm.com>
Date: Sun, 9 Dec 2007 16:19:12 -0800
> I don't know if you've fixed it already, but I was writing some
> UDPv6 tests in 2.6.23.9 and was getting EDESTADDRREQ unexpectedly. When
> I looked at the kernel code, I found:
>
> gerrit/wscott 1.115 | int udpv6_sendmsg(struct kiocb *iocb,
> struct sock *sk,
> shemminger 1.57 | struct
> msghdr *msg, size_t len)
> torvalds 1.1 | {
> ...
>
> yoshfuji 1.53 | } else if (!up->pending)
> {
> yoshfuji 1.53 | if
> (sk->sk_state != TCP_ESTABLISHED)
> yoshfuji 1.53 | return -EDESTADDRREQ;
> yoshfuji 1.53 | daddr =
> &np->daddr;
>
> I wouldn't expect a UDP socket to be setting
> sk_state to TCP_ESTABLISHED...
It does when you connect() it.
UDP reuses the TCP state values out of convenience.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists