Re: select for UNIX sockets?

Valdis.Kletnieks@vt.edu
Thu, 05 Jun 2003 20:28:46 -0400


--==_Exmh_-228961070P
Content-Type: text/plain; charset=us-ascii

On Wed, 04 Jun 2003 14:19:34 +0200, Petr Vandrovec said:

> > > FD_ZERO(&set);
> > > FD_SET(fd, &set);
> > > select(FD_SETSIZE, NULL, &set, NULL, NULL); <<<<<<< for writing
> > >
> > > if (FD_ISSET(fd, &set))
> > > sendto(fd, &datagram, 1, 0, ...);

> Besides that select() on unconnected socket is nonsense... If you'll
> change code to do connect(), select(), send(), then it should work,
> unless I missed something.

We FD_SET the bit, ignore the return value of select, and test if the bit is
still set. Plenty of programming bad karma there. However, one would vaguely
hope that the kernel would notice that the socket isn't connected and -ENOTCONN
rather than blocking....

--==_Exmh_-228961070P
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Exmh version 2.5 07/13/2001

iD8DBQE+3+A9cC3lWbTT17ARAuJXAKDKQ7nMgh3TpZxAo1kQVteyBf25BQCg9ZZD
nUYReLkzpAI42z+8boIQb8E=
=6Ob2
-----END PGP SIGNATURE-----

--==_Exmh_-228961070P--
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/