Lines Matching defs:wg
20 static int send4(struct wg_device *wg, struct sk_buff *skb,
27 .flowi4_mark = wg->fwmark,
35 skb->dev = wg->dev;
36 skb->mark = wg->fwmark;
39 sock = rcu_dereference_bh(wg->sock4);
77 wg->dev->name, &endpoint->addr, ret);
97 static int send6(struct wg_device *wg, struct sk_buff *skb,
105 .flowi6_mark = wg->fwmark,
115 skb->dev = wg->dev;
116 skb->mark = wg->fwmark;
119 sock = rcu_dereference_bh(wg->sock6);
144 wg->dev->name, &endpoint->addr, ret);
203 int wg_socket_send_buffer_as_reply_to_skb(struct wg_device *wg,
225 ret = send4(wg, skb, &endpoint, 0, NULL);
227 ret = send6(wg, skb, &endpoint, 0, NULL);
318 struct wg_device *wg;
322 wg = sk->sk_user_data;
323 if (unlikely(!wg))
326 wg_packet_receive(wg, skb);
349 int wg_socket_init(struct wg_device *wg, u16 port)
354 .sk_user_data = wg,
377 net = rcu_dereference(wg->creating_net);
389 pr_err("%s: Could not create IPv4 socket\n", wg->dev->name);
404 wg->dev->name);
412 wg_socket_reinit(wg, new4->sk, new6 ? new6->sk : NULL);
419 void wg_socket_reinit(struct wg_device *wg, struct sock *new4,
424 mutex_lock(&wg->socket_update_lock);
425 old4 = rcu_dereference_protected(wg->sock4,
426 lockdep_is_held(&wg->socket_update_lock));
427 old6 = rcu_dereference_protected(wg->sock6,
428 lockdep_is_held(&wg->socket_update_lock));
429 rcu_assign_pointer(wg->sock4, new4);
430 rcu_assign_pointer(wg->sock6, new6);
432 wg->incoming_port = ntohs(inet_sk(new4)->inet_sport);
433 mutex_unlock(&wg->socket_update_lock);