Hello,

Am 10.12.23 um 13:44 schrieb to...@tuxteam.de:
> On Sun, Nov 26, 2023 at 09:59:58PM +0100, Erik Grun wrote:
>> Hello, Guile-Devel,
>>
>> I just can't get the Network Socket Examples[1] to work. I am using Guile
>> 3.0.7.
>>
>> An obvious mistake seems to be, that the docs use different ports for client >> (80) and server (2904), but even if I use the same port (2904), I only get
>> this error message:
>>
>> Backtrace:
>> In ice-9/boot-9.scm:
>>     1752:10  6 (with-exception-handler _ _ #:unwind? _ # _)
>> In unknown file:
>>              5 (apply-smob/0 #<thunk 7f5e06560f60>)
>> In ice-9/boot-9.scm:
>> 724:2 4 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
>> In ice-9/eval.scm:
>>       619:8  3 (_ #(#(#<directory (guile-user) 7f5e06559c80>)))
>> In ice-9/boot-9.scm:
>>      2835:4  2 (save-module-excursion _)
>>     4380:12  1 (_)
>> In /home/egnun/client.scm:
>>        7:14  0 (_)
>>
>> /home/egnun/client.scm:7:14: Unbound variable: read-line
>>
>> After some research I found out, that I need to include this line.
>>       (use-modules (ice-9 rdelim))
>
> Yes, I'd consider both of the above as downright doc bugs: the missing
> of (ice-9 rdelim) in the client code and letting the client aim at a
> different port the server is set up to listen to.

Agreed.

> As for the third...
>
>> When I do that, it seems to kinda work?
>>
>> Hello client
>> Backtrace:
>
> [...]
>
>> ERROR: In procedure %read-line:
>> In procedure fport_read: Connection was reset by peer
>
> ... it is working "as it is supposed to": the server closes the
> connection after sending the reply -- the client isn't set up
> to expect this and complains (note that it dutifully prints the
> server's answer "Hello client" before).

It is working, but not really.
Because the client is also supposed to print this line:
>  (display "GET / HTTP/1.0\r\n\r\n" s) ; with s being some socket.

Also removing the "(close client)" from the server script, seems to resolve the "Connection reset by peer" error (until I Ctrl-C the server).
> So this one is confusing, but we'd need a bit more of discussion
> on how to "fix" it without complicating the examples too much.

Definitely.

The errors are also in the current Guile docs. Just if anyone was wondering…

https://www.gnu.org/software/guile/manual/html_node/Internet-Socket-Examples.html

Best regards,

Erik

--
pub   rsa4096/C02662E2370D6F27 2016-05-27 [SCA] [verfällt: 2024-05-01]
  Schl.-Fingerabdruck = 7E0E 8A9E EAEE 075D E689  F32F C026 62E2 370D 6F27
uid              [ ultimativ ] Erik Grun <eg...@posteo.de>
uid              [ ultimativ ] Erik Grun <eg...@fsfe.org>
sub   rsa4096/1DF94895FA78155E 2016-05-27 [E] [verfällt: 2024-05-01]

You are wondering, what this signature means?
Visit *emailselfdefense.fsf.org/en/infographic.html*
to find out how YOU can securely encrypt your e-mails.

Attachment: OpenPGP_0xC02662E2370D6F27.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to