[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: |
Paulo Moura |
Subject: |
Re: Problem with select/5 on AF_INET sockets with Windows 7 |
Date: |
Thu, 19 Feb 2015 19:40:45 +0000 |
> On 19/02/2015, at 19:11, Fx <address@hidden> wrote:
>
> :)) 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)).
I cannot help you with building GNU Prolog on Windows but, on Mac OS X, just
follow the steps in the INTALL file.
> Dont’ they exists some kinda unit tests ? Prolog coded scenario ? Or a
> Jenkins like for massive testing ?
Logtalk includes a Prolog conformance test suite but it only tests, as it names
indicates, standards related stuff. The small number of conformance issues are
known (and some of them are really limitations in the standard). I cannot speak
for Daniel, of course, but testing of other (non-standard) features would like
be more useful. Specially stuff this might behave differently across different
operating-systems (like sockets :-).
Cheers,
Paulo
> 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/>
>> -----------------------------------------------------------------
>>
>>
>>
>>
>
-----------------------------------------------------------------
Paulo Moura
Logtalk developer
Email: <mailto:address@hidden>
Web: <http://logtalk.org/>
-----------------------------------------------------------------