forked from openvswitch/ovs
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
lib/netlink-socket.c: add support for nl_transact() on Windows
In this patch, we add support for nl_transact() on Windows using the OVS_IOCTL_TRANSACT ioctl that sends down the request and gets the reply in the same call to the kernel. This is obviously a digression from the way it is implemented in Linux where all the sends are done at once using sendmsg() and replies are received one at a time. Initial implementation was in the Linux way using multiple writes followed by reads, but decided against it since it is not efficient and also it complicates the state machine in the kernel. The Windows implementation has equivalent code for handling corner cases and error coditions similar to Linux. Some of it is not applicable yet. Eg. the Windows kernel does not embed an error in the netlink message itself. There's userspace code nevertheless for this. Signed-off-by: Nithin Raju <[email protected]> Acked-by: Samuel Ghinet <[email protected]> Acked-by: Eitan Eliahu <[email protected]> Signed-off-by: Ben Pfaff <[email protected]>
- Loading branch information
1 parent
824c061
commit 0fd22ae
Showing
1 changed file
with
81 additions
and
20 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters