bug-prolog
[Top][All Lists]
Advanced

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

Re: Problem with select/5 on AF_INET sockets with Windows 7


From: Fx
Subject: Re: Problem with select/5 on AF_INET sockets with Windows 7
Date: Thu, 19 Feb 2015 20:11:57 +0100

:)) Paulo, you are right, if it can help. I won’t promise anything, but i can 
at least take a look, sure.

Can you help, and tell me where cans i found some infos:
- What are actually the tools (or info link )to compile under Windows (7,32b my 
office copmuter)
- What are actually the tools (or info link )to compile under Os X (this one is 
really rather a computer, my personnal(s) one(s)).

Dont’ they exists some kinda unit tests ? Prolog coded scenario ?  Or a Jenkins 
like for massive testing ?

Fx (shorter).


Le 19 févr. 2015 à 20:00, Paulo Moura <address@hidden> a écrit :

> 
>> On 19/02/2015, at 18:58, Fx <address@hidden> wrote:
>> 
>> Daniel,
>> 
>> Thank you very much for your answer, and this is a great news for 1.4.5 !!!
>> 
>> I’ll be patient and wait for the official distribution.
> 
> Don't be patient. Help instead beta-testing 1.4.5.
> 
> Cheers,
> 
> Paulo
> 
> 
>> Le 17 févr. 2015 à 13:32, Daniel Diaz <address@hidden> a écrit :
>> 
>>> Hi,
>>> 
>>> sorry for the late reply. Thank you for this bug report.
>>> 
>>> The bug is fixed in the last git version. Will be fixed in next 1.4.5
>>> 
>>> Daniel
>>> 
>>> 
>>> 
>>> Le 27/01/2015 12:44, address@hidden a écrit :
>>>> Dear Daniel,
>>>> 
>>>> I am working on a specific http server for gnu prolog (1.4.4), and i 
>>>> discovered
>>>> a strange comportment under windows 7 (32) with the select/5 predicate.
>>>> 
>>>> The simple test below works fine on a OSX (maybe all unix) system but will
>>>> return a system error under Windos 7 (32) , "Bad File Descriptor":
>>>> 
>>>> ERROR : Failed to start server : error(system_error(Bad file
>>>> descriptor),select/5)
>>>> 
>>>> To test, launch one of the two test cases and open an internet browser to
>>>> http://127.0.0.1:8080/ for example, or change the 127.0.0.1 by your IP.
>>>> 
>>>> %- Program Test with Select -----------------------------------
>>>> 
>>>> worker_run(Socket, Client, StreamIn, StreamOut):- write('i am a working 
>>>> worker
>>>> ...'), nl.
>>>> 
>>>> server_test_with_select:-
>>>>    socket('AF_INET', Socket),
>>>>    socket_bind(Socket, 'AF_INET'(Host, 8080)),
>>>>    socket_listen(Socket,10),
>>>>    catch(  server_loop_with_select(Socket),E,
>>>>             (      socket_close(Socket),
>>>>                    format( "ERROR : Failed to start server : ~w~n", [E] )
>>>>    )).
>>>> 
>>>> server_loop_with_select(Socket):-
>>>>    repeat,
>>>>            select([Socket],ReadyReads,[Socket],[],0),
>>>>            worker_run(Socket, Client, StreamIn, StreamOut),
>>>>    fail.
>>>> 
>>>> %- End of Program Test with Select -----------------------------------
>>>> 
>>>> When not using usefull select/5 and directly use the socket_accept/4 
>>>> predicate
>>>> the server works well.
>>>> 
>>>> 
>>>> %- Program Test without Select -----------------------------------
>>>> 
>>>> worker_run(Socket, Client, StreamIn, StreamOut):- write('i am a working 
>>>> worker
>>>> ...'), nl.
>>>> 
>>>> server_test_without_select:-
>>>>    socket('AF_INET', Socket),
>>>>    socket_bind(Socket, 'AF_INET'(Host, 8080)),
>>>>    socket_listen(Socket,10),
>>>>    catch(  server_loop_without_select(Socket),E,
>>>>             (      socket_close(Socket),
>>>>                    format( "ERROR : Failed to start server : ~w~n", [E] )
>>>>    )).
>>>> 
>>>> server_loop_without_select(Socket):-
>>>>    repeat,
>>>>            socket_accept(Socket, Client, StreamIn, StreamOut),
>>>>            worker_run(Socket, Client, StreamIn, StreamOut),
>>>>    fail.
>>>> 
>>>> %- End of Program Test without Select -----------------------------------
>>>> 
>>>> 
>>>> Is it a known bug and did you plan to fix it in a future version ?
>>>> 
>>>> 
>>>> Best Regards,
>>>> 
>>>> Fx NION.
>>>> 
>>>> 
>>>> _______________________________________________
>>>> Bug-prolog mailing list
>>>> address@hidden
>>>> https://lists.gnu.org/mailman/listinfo/bug-prolog
>>>> 
>>> 
>>> 
>>> -- 
>>> Ce message a ete verifie par MailScanner
>>> pour des virus ou des polluriels et rien de
>>> suspect n'a ete trouve.
>>> 
>> 
>> 
>> _______________________________________________
>> Bug-prolog mailing list
>> address@hidden
>> https://lists.gnu.org/mailman/listinfo/bug-prolog
> 
> -----------------------------------------------------------------
> Paulo Moura
> Logtalk developer
> 
> Email: <mailto:address@hidden>
> Web:   <http://logtalk.org/>
> -----------------------------------------------------------------
> 
> 
> 
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]