diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2016-11-10 23:28:35 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2016-11-15 02:42:36 +0100 |
commit | 46de6f340ae179741fb475ad6858a7a56a34af4a (patch) | |
tree | 132f9cdb49215e98285a70fb0decde84b2b34d81 /src/device.c | |
parent | curve25519: use kmalloc in order to not overflow stack (diff) | |
download | wireguard-monolithic-historical-46de6f340ae179741fb475ad6858a7a56a34af4a.tar.xz wireguard-monolithic-historical-46de6f340ae179741fb475ad6858a7a56a34af4a.zip |
socket: keep track of src address in sending packets
Diffstat (limited to 'src/device.c')
-rw-r--r-- | src/device.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/device.c b/src/device.c index 46d6704..8774d80 100644 --- a/src/device.c +++ b/src/device.c @@ -112,16 +112,16 @@ static netdev_tx_t xmit(struct sk_buff *skb, struct net_device *dev) peer = routing_table_lookup_dst(&wg->peer_routing_table, skb); if (unlikely(!peer)) { #if defined(CONFIG_DYNAMIC_DEBUG) || defined(DEBUG) - struct sockaddr_storage addr; - socket_addr_from_skb(&addr, skb); - net_dbg_ratelimited("No peer is configured for %pISc\n", &addr); + struct endpoint endpoint; + socket_endpoint_from_skb(&endpoint, skb); + net_dbg_ratelimited("No peer is configured for %pISc\n", &endpoint.addr_storage); #endif skb_unsendable(skb, dev); return -ENOKEY; } read_lock_bh(&peer->endpoint_lock); - ret = peer->endpoint_addr.ss_family != AF_INET && peer->endpoint_addr.ss_family != AF_INET6; + ret = peer->endpoint.addr_storage.ss_family != AF_INET && peer->endpoint.addr_storage.ss_family != AF_INET6; read_unlock_bh(&peer->endpoint_lock); if (unlikely(ret)) { net_dbg_ratelimited("No valid endpoint has been configured or discovered for device\n"); |