[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SIGLOST in recvfrom()
From: |
Pino Toscano |
Subject: |
SIGLOST in recvfrom() |
Date: |
Wed, 23 Nov 2011 16:42:41 +0100 |
User-agent: |
KMail/1.13.7 (Linux/3.1.0-1-amd64; KDE/4.6.5; x86_64; ; ) |
Hi,
with the attached test source, I get SIGLOST in recvfrom().
Basically what happens in recvfrom() is the following:
- the __socket_recv() RPC returns a MACH_PORT_NULL 'addrport'
- execution goes inside the "if (addr != NULL)"
- the __socket_whatis_address() RPC fails because of the null port (I
presume), so err is MACH_SEND_INVALID_DEST
- the generic "if (err)" is followed, and then __hurd_sockfail() raises
SIGLOST
The question is: is __socket_recv() supposed to actually return an
addrport in this case, or should recvfrom() just being able to
gracefully cope with this situation?
On Linux the address length is set to 0 by recvfrom(), so I guess that
this kind of sockets have no address?
--
Pino Toscano
sp2.c
Description: Text Data
signature.asc
Description: This is a digitally signed message part.
- SIGLOST in recvfrom(),
Pino Toscano <=