|
@@ -220,8 +220,7 @@ static int __sock_diag_cmd(struct sk_buff *skb, struct nlmsghdr *nlh)
|
|
|
return -EINVAL;
|
|
|
|
|
|
if (sock_diag_handlers[req->sdiag_family] == NULL)
|
|
|
- request_module("net-pf-%d-proto-%d-type-%d", PF_NETLINK,
|
|
|
- NETLINK_SOCK_DIAG, req->sdiag_family);
|
|
|
+ sock_load_diag_module(req->sdiag_family, 0);
|
|
|
|
|
|
mutex_lock(&sock_diag_table_mutex);
|
|
|
hndl = sock_diag_handlers[req->sdiag_family];
|
|
@@ -247,8 +246,7 @@ static int sock_diag_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh,
|
|
|
case TCPDIAG_GETSOCK:
|
|
|
case DCCPDIAG_GETSOCK:
|
|
|
if (inet_rcv_compat == NULL)
|
|
|
- request_module("net-pf-%d-proto-%d-type-%d", PF_NETLINK,
|
|
|
- NETLINK_SOCK_DIAG, AF_INET);
|
|
|
+ sock_load_diag_module(AF_INET, 0);
|
|
|
|
|
|
mutex_lock(&sock_diag_table_mutex);
|
|
|
if (inet_rcv_compat != NULL)
|
|
@@ -281,14 +279,12 @@ static int sock_diag_bind(struct net *net, int group)
|
|
|
case SKNLGRP_INET_TCP_DESTROY:
|
|
|
case SKNLGRP_INET_UDP_DESTROY:
|
|
|
if (!sock_diag_handlers[AF_INET])
|
|
|
- request_module("net-pf-%d-proto-%d-type-%d", PF_NETLINK,
|
|
|
- NETLINK_SOCK_DIAG, AF_INET);
|
|
|
+ sock_load_diag_module(AF_INET, 0);
|
|
|
break;
|
|
|
case SKNLGRP_INET6_TCP_DESTROY:
|
|
|
case SKNLGRP_INET6_UDP_DESTROY:
|
|
|
if (!sock_diag_handlers[AF_INET6])
|
|
|
- request_module("net-pf-%d-proto-%d-type-%d", PF_NETLINK,
|
|
|
- NETLINK_SOCK_DIAG, AF_INET6);
|
|
|
+ sock_load_diag_module(AF_INET6, 0);
|
|
|
break;
|
|
|
}
|
|
|
return 0;
|