On 2023-04-03 04:56, Corinna Vinschen via Cygwin wrote: > On Apr 2 00:19, Chance via Cygwin wrote: >> I've used cygwin in the past few years using the MSG_MORE flag when using >> some socket functions > > I have no idea how you did that. MSG_MORE was never actually supported > by Cygwin, and the (more or less) equivalent MSG_PARTIAL flag was never > exposed into Cygwin user space. > >> but now it's not defined in cygwin\socket.h and > > It never was! I checked the history back until the year 2000. > >> MSG_EOR is using the value of MSG_MORE (0x8000). Above that in the socket.h >> file there is a comment /* MSG_EOR is not supported. We use the >> MSG_PARTIAL flag here */. I understand this as meaning MSG_EOR now works as >> MSG_MORE would and that MSG_EOR is not usable. Just want some clarification >> on this. > > It just means we're using the bit value of MSG_PARTIAL to expose > a MSG_EOR flag into user space. It was introduced in 2019 because > of POSIX header file compatibility, but it's unsupported and always > results in sedn/recv returning EOPNOTSUPP. > > I'm still puzzled where you got the MSG_MORE definition from, though Ah yes, my memory was foggy, but I've recalled now that I did some work with sockets on a Linux system and had to change this flag in my own source code when I would work on a cygwin platform. It's been a while; sorry for the confusement! On Mon, Apr 3, 2023 at 11:05 AM Brian Inglis wrote: > On 2023-04-03 04:56, Corinna Vinschen via Cygwin wrote: > > On Apr 2 00:19, Chance via Cygwin wrote: > >> I've used cygwin in the past few years using the MSG_MORE flag when > using > >> some socket functions > > > > I have no idea how you did that. MSG_MORE was never actually supported > > by Cygwin, and the (more or less) equivalent MSG_PARTIAL flag was never > > exposed into Cygwin user space. > > > >> but now it's not defined in cygwin\socket.h and > > > > It never was! I checked the history back until the year 2000. > > > >> MSG_EOR is using the value of MSG_MORE (0x8000). Above that in the > socket.h > >> file there is a comment /* MSG_EOR is not supported. We use the > >> MSG_PARTIAL flag here */. I understand this as meaning MSG_EOR now > works as > >> MSG_MORE would and that MSG_EOR is not usable. Just want some > clarification > >> on this. > > > > It just means we're using the bit value of MSG_PARTIAL to expose > > a MSG_EOR flag into user space. It was introduced in 2019 because > > of POSIX header file compatibility, but it's unsupported and always > > results in sedn/recv returning EOPNOTSUPP. > > > > I'm still puzzled where you got the MSG_MORE definition from, though. > > Not on BSD likely Linux: > > https://github.com/torvalds/linux/blob/master/include/linux/socket.h#L298 > > check for symlinks on poster's system? > > -- > Take care. Thanks, Brian Inglis Calgary, Alberta, Canada > > La perfection est atteinte Perfection is achieved > non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to > add > mais lorsqu'il n'y a plus rien à retirer but when there is no more to > cut > -- Antoine de Saint-Exupéry >