cregit-Linux how code gets into the kernel

Release 4.8 net/netlink/af_netlink.h

Directory: net/netlink
#ifndef _AF_NETLINK_H

#define _AF_NETLINK_H

#include <linux/rhashtable.h>
#include <linux/atomic.h>
#include <net/sock.h>

#define NLGRPSZ(x)	(ALIGN(x, sizeof(unsigned long) * 8) / 8)

#define NLGRPLONGS(x)	(NLGRPSZ(x)/sizeof(unsigned long))

struct netlink_sock {
	/* struct sock has to be the first member of netlink_sock */
struct sock		sk;
u32			portid;
u32			dst_portid;
u32			dst_group;
u32			flags;
u32			subscriptions;
u32			ngroups;
unsigned long		*groups;
unsigned long		state;
size_t			max_recvmsg_len;
wait_queue_head_t	wait;
bool			bound;
bool			cb_running;
struct netlink_callback	cb;
struct mutex		*cb_mutex;
struct mutex		cb_def_mutex;
void			(*netlink_rcv)(struct sk_buff *skb);
int			(*netlink_bind)(struct net *net, int group);
void			(*netlink_unbind)(struct net *net, int group);
struct module		*module;

struct rhash_head	node;
struct rcu_head		rcu;

static inline struct netlink_sock *nlk_sk(struct sock *sk) { return container_of(sk, struct netlink_sock, sk); }


andrey vaginandrey vagin25100.00%1100.00%

struct netlink_table { struct rhashtable hash; struct hlist_head mc_list; struct listeners __rcu *listeners; unsigned int flags; unsigned int groups; struct mutex *cb_mutex; struct module *module; int (*bind)(struct net *net, int group); void (*unbind)(struct net *net, int group); bool (*compare)(struct net *net, struct sock *sock); int registered; }; extern struct netlink_table *nl_table; extern rwlock_t nl_table_lock; #endif

Overall Contributors

andrey vaginandrey vagin18769.26%110.00%
johannes bergjohannes berg238.52%220.00%
richard guy briggsrichard guy briggs228.15%110.00%
gao fenggao feng176.30%110.00%
thomas grafthomas graf124.44%220.00%
herbert xuherbert xu31.11%110.00%
pravin b shelarpravin b shelar31.11%110.00%
eric dumazeteric dumazet31.11%110.00%
Directory: net/netlink
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.