diff options
| author | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2023-01-21 14:36:23 +0000 |
|---|---|---|
| committer | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2023-01-21 14:58:19 +0000 |
| commit | 0079d177ab69168df5e103128a2b15bd8e74d4eb (patch) | |
| tree | 637005c7076fad657447ca379e0aaa7b0b3b7c26 /sys/netlink/netlink_domain.c | |
| parent | 03a1b75950c95cd9360e5c283219b886d36afb53 (diff) | |
Diffstat (limited to 'sys/netlink/netlink_domain.c')
| -rw-r--r-- | sys/netlink/netlink_domain.c | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/sys/netlink/netlink_domain.c b/sys/netlink/netlink_domain.c index f35cc7f09991..4d34fd381c39 100644 --- a/sys/netlink/netlink_domain.c +++ b/sys/netlink/netlink_domain.c @@ -698,31 +698,39 @@ nl_setsbopt(struct socket *so, struct sockopt *sopt) return (result ? 0 : ENOBUFS); } -static struct protosw netlinksw = { - .pr_type = SOCK_RAW, - .pr_flags = PR_ATOMIC | PR_ADDR | PR_WANTRCVD, - .pr_ctloutput = nl_ctloutput, - .pr_setsbopt = nl_setsbopt, - .pr_abort = nl_pru_abort, - .pr_attach = nl_pru_attach, - .pr_bind = nl_pru_bind, - .pr_connect = nl_pru_connect, - .pr_detach = nl_pru_detach, - .pr_disconnect = nl_pru_disconnect, - .pr_peeraddr = nl_pru_peeraddr, - .pr_send = nl_pru_send, - .pr_rcvd = nl_pru_rcvd, - .pr_shutdown = nl_pru_shutdown, - .pr_sockaddr = nl_pru_sockaddr, +#define NETLINK_PROTOSW \ + .pr_flags = PR_ATOMIC | PR_ADDR | PR_WANTRCVD, \ + .pr_ctloutput = nl_ctloutput, \ + .pr_setsbopt = nl_setsbopt, \ + .pr_abort = nl_pru_abort, \ + .pr_attach = nl_pru_attach, \ + .pr_bind = nl_pru_bind, \ + .pr_connect = nl_pru_connect, \ + .pr_detach = nl_pru_detach, \ + .pr_disconnect = nl_pru_disconnect, \ + .pr_peeraddr = nl_pru_peeraddr, \ + .pr_send = nl_pru_send, \ + .pr_rcvd = nl_pru_rcvd, \ + .pr_shutdown = nl_pru_shutdown, \ + .pr_sockaddr = nl_pru_sockaddr, \ .pr_close = nl_pru_close + +static struct protosw netlink_raw_sw = { + .pr_type = SOCK_RAW, + NETLINK_PROTOSW +}; + +static struct protosw netlink_dgram_sw = { + .pr_type = SOCK_DGRAM, + NETLINK_PROTOSW }; static struct domain netlinkdomain = { .dom_family = PF_NETLINK, .dom_name = "netlink", .dom_flags = DOMF_UNLOADABLE, - .dom_nprotosw = 1, - .dom_protosw = { &netlinksw }, + .dom_nprotosw = 2, + .dom_protosw = { &netlink_raw_sw, &netlink_dgram_sw }, }; DOMAIN_SET(netlink); |
