scala-native icon indicating copy to clipboard operation
scala-native copied to clipboard

Posix scatter/gather socket sendmsg/recvmsg routines are not implemented.

Open LeeTibbert opened this issue 4 years ago • 3 comments

Whilst studying Issue #2253, I discovered that Posix scatter/gather routines recvmsg() & sendmsg() are not implemented. Obviously there are not many current users of those routines. Scatter/gather is a useful technique, so it would be useful if Scala Native supported those two.

I tremble to say that anything is easy, but those two should be on the easy side. There are some data structures to consider so it will not be trivial. As usual, the hard part will be testing (but I think that is surmountable and the essential part can be done in unit-test).

Oh for a long, lazy summer weekend, just for hacking.

LeeTibbert avatar Apr 10 '21 20:04 LeeTibbert

An attempt to implement these two should almost certainly wait until after PR #2254 has been merged.

LeeTibbert avatar Apr 10 '21 20:04 LeeTibbert

PR #2254 has merged. Now waiting for merge of PR #2258.

Private proof-of-concept code works just fine.

LeeTibbert avatar May 01 '21 19:05 LeeTibbert

This Issue is focused on the posix socket.scala methods sendmsg & recvmsg.

I am creating a new Issue to capture the fact that similar posix sys/uio scatter/gather routines writev & readv would benefit from work. Although the concept is similar, I want to keep the two 'chunks' of work separated. This should help with both development and review.

LeeTibbert avatar Jul 19 '22 01:07 LeeTibbert