> Add the datagram feature bit and packet type, and implement the common > virtio transport operations needed to bind, send, and receive > datagrams. > > Send each message as an OP_RW packet with a maximum 64 KiB payload, > including support for empty messages. Bound pending sends by the > socket send buffer instead of connection-oriented peer credits. Charge > pending payload bytes before handing the skb to the backend and > release that charge exactly once on completion, rejection, or queued > drops. > > Deliver incoming datagrams through the bound table without entering > the connection state machine. Validate the transport and connected > peer under the socket lock, including after shutdown, and silently > discard undeliverable messages. Use the socket datagram queue for > recvmsg(), including source addresses, peeking, and truncation > reporting based on the payload length after socket filtering. Reject > MSG_OOB and MSG_ERRQUEUE before accessing the receive queue. Reject > datagram sockmap admission until its receive callbacks support it. > > Signed-off-by: Sergio Lopez <[email protected]>
Sashiko has reviewed this patch and found no issues. -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=3
