[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: [ANNOUNCE]: LuaSocket 2.0 beta
- From: Daniel Quintela <danielq@...>
- Date: Sat, 19 Jun 2004 14:25:20 -0300
Diego:
I understood the message: if I am going to be dirty I must clean myself. :)
It sounds fair for me.
Thanks again,
Daniel
----- Original Message -----
From: <diego@tecgraf.puc-rio.br>
To: "Lua list" <lua@bazar2.conectiva.com.br>
Sent: Saturday, June 19, 2004 1:50 PM
Subject: Re: [ANNOUNCE]: LuaSocket 2.0 beta
> Hi,
>
> > I like very much the setfd method added in 2.0, but...
>
> I knew someone would notice the undocumented things before
> anyone noticed the new documented things. :o)
>
> > First problem can be worked around setting the fd to INVALID_SOCKET
before
> > skt:close( ).
> > But for the second problem, I suggest to add a socket_destroy ( in
tcp.c )
> > on the current OS fd before setting the new one.
>
> Since we are talking about being dirty, if I understood your problem,
> here is another undocumented ugly thing you can do:
>
> skt = socket.tcp()
> skt:close()
> skt:setfd(newfd)
>
> Please understand that this is "hacking" LuaSocket. Setting to a
> bogus file descriptor might crash LuaSocket and there is no way I can
> prevent it. All I am saying is that (unofficially) skt:close() doesn't
> do anything crazy. It just closes the fd.
>
> You can even create a tcp bject and leave it there just to call
>
> closeme:setfd(f1)
> closeme:close()
> closeme:setfd(f2)
> closeme:close()
> ...
>
> on every fd you have. (ewwwww)
>
> []s,
> Diego.