nlk->module = module; 
static int netlink_create(struct socket *sock, int protocol){	struct sock *sk;	struct netlink_sock *nlk;	sock->state = SS_UNCONNECTED;	if (sock->type != SOCK_RAW && sock->type != SOCK_DGRAM)		return -ESOCKTNOSUPPORT;	if (protocol<0 || protocol >= MAX_LINKS)		return -EPROTONOSUPPORT;	netlink_table_grab();	if (!nl_table[protocol].hash.entries) {#ifdef CONFIG_KMOD		/* We do 'best effort'.  If we find a matching module,		 * it is loaded.  If not, we don't return an error to		 * allow pure userspace<->userspace communication. -HW		 */		netlink_table_ungrab();		request_module("net-pf-%d-proto-%d", PF_NETLINK, protocol);		netlink_table_grab();#endif	}	netlink_table_ungrab();	sock->ops = nl_table[protocol].p_ops;	sk = sk_alloc(PF_NETLINK, GFP_KERNEL, &netlink_proto, 1);	if (!sk)		return -ENOMEM;	sock_init_data(sock, sk);	nlk = nlk_sk(sk);	spin_lock_init(&nlk->cb_lock);	init_waitqueue_head(&nlk->wait);	sk->sk_destruct = netlink_sock_destruct;	sk->sk_protocol = protocol;	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/77247bbb3094246be9d057e7be442cc708f123a8/af_netlink.c/clean/net/netlink/af_netlink.c