From: David Stevens <[EMAIL PROTECTED]>
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 [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to