1eafb64f4SBobby Eshleman /* SPDX-License-Identifier: GPL-2.0 */ 2eafb64f4SBobby Eshleman #ifndef __NET_NET_NAMESPACE_VSOCK_H 3eafb64f4SBobby Eshleman #define __NET_NET_NAMESPACE_VSOCK_H 4eafb64f4SBobby Eshleman 5eafb64f4SBobby Eshleman #include <linux/types.h> 6eafb64f4SBobby Eshleman 7eafb64f4SBobby Eshleman enum vsock_net_mode { 8eafb64f4SBobby Eshleman VSOCK_NET_MODE_GLOBAL, 9eafb64f4SBobby Eshleman VSOCK_NET_MODE_LOCAL, 10eafb64f4SBobby Eshleman }; 11eafb64f4SBobby Eshleman 12eafb64f4SBobby Eshleman struct netns_vsock { 13eafb64f4SBobby Eshleman struct ctl_table_header *sysctl_hdr; 14eafb64f4SBobby Eshleman 15eafb64f4SBobby Eshleman /* protected by the vsock_table_lock in af_vsock.c */ 16eafb64f4SBobby Eshleman u32 port; 17eafb64f4SBobby Eshleman 18eafb64f4SBobby Eshleman enum vsock_net_mode mode; 19eafb64f4SBobby Eshleman enum vsock_net_mode child_ns_mode; 20*102eab95SBobby Eshleman 21*102eab95SBobby Eshleman /* 0 = unlocked, 1 = locked to global, 2 = locked to local */ 22*102eab95SBobby Eshleman int child_ns_mode_locked; 23eafb64f4SBobby Eshleman }; 24eafb64f4SBobby Eshleman #endif /* __NET_NET_NAMESPACE_VSOCK_H */ 25