diff options
Diffstat (limited to 'include/net')
61 files changed, 996 insertions, 1317 deletions
diff --git a/include/net/addrconf.h b/include/net/addrconf.h index 40be2a0d8ae1..84a6440f1f19 100644 --- a/include/net/addrconf.h +++ b/include/net/addrconf.h | |||
| @@ -199,6 +199,7 @@ extern bool ipv6_chk_acast_addr(struct net *net, struct net_device *dev, | |||
| 199 | /* Device notifier */ | 199 | /* Device notifier */ |
| 200 | extern int register_inet6addr_notifier(struct notifier_block *nb); | 200 | extern int register_inet6addr_notifier(struct notifier_block *nb); |
| 201 | extern int unregister_inet6addr_notifier(struct notifier_block *nb); | 201 | extern int unregister_inet6addr_notifier(struct notifier_block *nb); |
| 202 | extern int inet6addr_notifier_call_chain(unsigned long val, void *v); | ||
| 202 | 203 | ||
| 203 | extern void inet6_netconf_notify_devconf(struct net *net, int type, int ifindex, | 204 | extern void inet6_netconf_notify_devconf(struct net *net, int type, int ifindex, |
| 204 | struct ipv6_devconf *devconf); | 205 | struct ipv6_devconf *devconf); |
diff --git a/include/net/af_unix.h b/include/net/af_unix.h index 0a996a3517ed..dbdfd2b0f3b3 100644 --- a/include/net/af_unix.h +++ b/include/net/af_unix.h | |||
| @@ -29,7 +29,8 @@ struct unix_address { | |||
| 29 | 29 | ||
| 30 | struct unix_skb_parms { | 30 | struct unix_skb_parms { |
| 31 | struct pid *pid; /* Skb credentials */ | 31 | struct pid *pid; /* Skb credentials */ |
| 32 | const struct cred *cred; | 32 | kuid_t uid; |
| 33 | kgid_t gid; | ||
| 33 | struct scm_fp_list *fp; /* Passed files */ | 34 | struct scm_fp_list *fp; /* Passed files */ |
| 34 | #ifdef CONFIG_SECURITY_NETWORK | 35 | #ifdef CONFIG_SECURITY_NETWORK |
| 35 | u32 secid; /* Security ID */ | 36 | u32 secid; /* Security ID */ |
| @@ -56,9 +57,10 @@ struct unix_sock { | |||
| 56 | struct list_head link; | 57 | struct list_head link; |
| 57 | atomic_long_t inflight; | 58 | atomic_long_t inflight; |
| 58 | spinlock_t lock; | 59 | spinlock_t lock; |
| 59 | unsigned int gc_candidate : 1; | ||
| 60 | unsigned int gc_maybe_cycle : 1; | ||
| 61 | unsigned char recursion_level; | 60 | unsigned char recursion_level; |
| 61 | unsigned long gc_flags; | ||
| 62 | #define UNIX_GC_CANDIDATE 0 | ||
| 63 | #define UNIX_GC_MAYBE_CYCLE 1 | ||
| 62 | struct socket_wq peer_wq; | 64 | struct socket_wq peer_wq; |
| 63 | }; | 65 | }; |
| 64 | #define unix_sk(__sk) ((struct unix_sock *)__sk) | 66 | #define unix_sk(__sk) ((struct unix_sock *)__sk) |
diff --git a/include/net/bluetooth/bluetooth.h b/include/net/bluetooth/bluetooth.h index 9531beee09b5..10eb9b389014 100644 --- a/include/net/bluetooth/bluetooth.h +++ b/include/net/bluetooth/bluetooth.h | |||
| @@ -193,11 +193,11 @@ static inline bool bdaddr_type_is_le(__u8 type) | |||
| 193 | #define BDADDR_LOCAL (&(bdaddr_t) {{0, 0, 0, 0xff, 0xff, 0xff} }) | 193 | #define BDADDR_LOCAL (&(bdaddr_t) {{0, 0, 0, 0xff, 0xff, 0xff} }) |
| 194 | 194 | ||
| 195 | /* Copy, swap, convert BD Address */ | 195 | /* Copy, swap, convert BD Address */ |
| 196 | static inline int bacmp(bdaddr_t *ba1, bdaddr_t *ba2) | 196 | static inline int bacmp(const bdaddr_t *ba1, const bdaddr_t *ba2) |
| 197 | { | 197 | { |
| 198 | return memcmp(ba1, ba2, sizeof(bdaddr_t)); | 198 | return memcmp(ba1, ba2, sizeof(bdaddr_t)); |
| 199 | } | 199 | } |
| 200 | static inline void bacpy(bdaddr_t *dst, bdaddr_t *src) | 200 | static inline void bacpy(bdaddr_t *dst, const bdaddr_t *src) |
| 201 | { | 201 | { |
| 202 | memcpy(dst, src, sizeof(bdaddr_t)); | 202 | memcpy(dst, src, sizeof(bdaddr_t)); |
| 203 | } | 203 | } |
| @@ -226,13 +226,12 @@ struct bt_sock_list { | |||
| 226 | struct hlist_head head; | 226 | struct hlist_head head; |
| 227 | rwlock_t lock; | 227 | rwlock_t lock; |
| 228 | #ifdef CONFIG_PROC_FS | 228 | #ifdef CONFIG_PROC_FS |
| 229 | struct file_operations fops; | ||
| 230 | int (* custom_seq_show)(struct seq_file *, void *); | 229 | int (* custom_seq_show)(struct seq_file *, void *); |
| 231 | #endif | 230 | #endif |
| 232 | }; | 231 | }; |
| 233 | 232 | ||
| 234 | int bt_sock_register(int proto, const struct net_proto_family *ops); | 233 | int bt_sock_register(int proto, const struct net_proto_family *ops); |
| 235 | int bt_sock_unregister(int proto); | 234 | void bt_sock_unregister(int proto); |
| 236 | void bt_sock_link(struct bt_sock_list *l, struct sock *s); | 235 | void bt_sock_link(struct bt_sock_list *l, struct sock *s); |
| 237 | void bt_sock_unlink(struct bt_sock_list *l, struct sock *s); | 236 | void bt_sock_unlink(struct bt_sock_list *l, struct sock *s); |
| 238 | int bt_sock_recvmsg(struct kiocb *iocb, struct socket *sock, | 237 | int bt_sock_recvmsg(struct kiocb *iocb, struct socket *sock, |
| @@ -260,12 +259,23 @@ struct l2cap_ctrl { | |||
| 260 | __u8 retries; | 259 | __u8 retries; |
| 261 | }; | 260 | }; |
| 262 | 261 | ||
| 262 | struct hci_dev; | ||
| 263 | |||
| 264 | typedef void (*hci_req_complete_t)(struct hci_dev *hdev, u8 status); | ||
| 265 | |||
| 266 | struct hci_req_ctrl { | ||
| 267 | bool start; | ||
| 268 | u8 event; | ||
| 269 | hci_req_complete_t complete; | ||
| 270 | }; | ||
| 271 | |||
| 263 | struct bt_skb_cb { | 272 | struct bt_skb_cb { |
| 264 | __u8 pkt_type; | 273 | __u8 pkt_type; |
| 265 | __u8 incoming; | 274 | |
