[DragonFlyBSD - Bug #2965] read(2), etc. return EAFNOSUPPORT after UDP disconnect
bugtracker-admin at leaf.dragonflybsd.org
bugtracker-admin at leaf.dragonflybsd.org
Mon Nov 21 18:21:30 PST 2016
Issue #2965 has been updated by sepherosa.
OK, I see. I think the main issue is returning connect(2) error from
read(2) in async mode.
On Tue, Nov 22, 2016 at 9:29 AM,
<bugtracker-admin at leaf.dragonflybsd.org> wrote:
> Issue #2965 has been updated by cmusser.
>
>
> Turns out that the kern.ipc.soconnect_async sysctl flag affects this. When disabled, the behavior is similar to the other BSDs: disconnecting a connected UDP socket returns EAFNOSUPPORT from connect(2), not read(2). Not sure if the soconnect_async flag is supposed to affect UDP sockets, but it does.
>
> ----------------------------------------
> Bug #2965: read(2), etc. return EAFNOSUPPORT after UDP disconnect
> http://bugs.dragonflybsd.org/issues/2965#change-13034
>
> * Author: cmusser
> * Status: New
> * Priority: Normal
> * Assignee:
> * Category: Networking
> * Target version:
> ----------------------------------------
> I ran into an unexpected return code from read(2)-like functions after unconnecting a connected UDP socket.
>
> From what I've gleaned (from Stevens' "UNP", man pages, testing on other systems). unconnecting a connected UDP socket is done by passing a "null address" to connect(2). In response, it unconnects the socket and returns success (0) or EAFNOSUPPORT
>
> On DragonFly, connect(2) returns success and unconnects the socket, but then the next read from the socket returns EAFNOSUPPORT. It seems as if EAFNOSUPPORT should come from `connect(2) instead. Neither read(2), recvfrom(2) or recvmsg(2) are documented as returning EAFNOSUPPORT.
>
> I have a Github project at https://github.com/cmusser/udp_disconnect that demonstrates this behavior.
>
>
>
>
> --
> You have received this notification because you have either subscribed to it, or are involved in it.
> To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account
--
Tomorrow Will Never Die
----------------------------------------
Bug #2965: read(2), etc. return EAFNOSUPPORT after UDP disconnect
http://bugs.dragonflybsd.org/issues/2965#change-13035
* Author: cmusser
* Status: New
* Priority: Normal
* Assignee:
* Category: Networking
* Target version:
----------------------------------------
I ran into an unexpected return code from read(2)-like functions after unconnecting a connected UDP socket.
>From what I've gleaned (from Stevens' "UNP", man pages, testing on other systems). unconnecting a connected UDP socket is done by passing a "null address" to connect(2). In response, it unconnects the socket and returns success (0) or EAFNOSUPPORT
On DragonFly, connect(2) returns success and unconnects the socket, but then the next read from the socket returns EAFNOSUPPORT. It seems as if EAFNOSUPPORT should come from `connect(2) instead. Neither read(2), recvfrom(2) or recvmsg(2) are documented as returning EAFNOSUPPORT.
I have a Github project at https://github.com/cmusser/udp_disconnect that demonstrates this behavior.
--
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account
More information about the Bugs
mailing list