| /linux/net/rxrpc/ |
| H A D | peer_object.c | 28 * Hash a peer key. 62 /* Step through the peer address in 16-bit portions for speed */ in rxrpc_peer_hash_key() 71 * Compare a peer to a key. Return -ve, 0 or +ve to indicate less than, same 78 static long rxrpc_peer_cmp_key(const struct rxrpc_peer *peer, in rxrpc_peer_cmp_key() argument 85 diff = ((peer->hash_key - hash_key) ?: in rxrpc_peer_cmp_key() 86 ((unsigned long)peer->local - (unsigned long)local) ?: in rxrpc_peer_cmp_key() 87 (peer->srx.transport_type - srx->transport_type) ?: in rxrpc_peer_cmp_key() 88 (peer->srx.transport_len - srx->transport_len) ?: in rxrpc_peer_cmp_key() 89 (peer->srx.transport.family - srx->transport.family)); in rxrpc_peer_cmp_key() 95 return ((u16 __force)peer->srx.transport.sin.sin_port - in rxrpc_peer_cmp_key() [all …]
|
| H A D | peer_event.c | 2 /* Peer event handling, typically ICMP messages. 26 * Find the peer associated with a local error. 103 static void rxrpc_adjust_mtu(struct rxrpc_peer *peer, unsigned int mtu) in rxrpc_adjust_mtu() argument 108 if (mtu > 0 && peer->if_mtu == 65535 && mtu < peer->if_mtu) in rxrpc_adjust_mtu() 109 peer->if_mtu = mtu; in rxrpc_adjust_mtu() 113 mtu = peer->if_mtu; in rxrpc_adjust_mtu() 120 if (mtu < peer->hdrsize) in rxrpc_adjust_mtu() 121 mtu = peer->hdrsize + 4; in rxrpc_adjust_mtu() 125 max_data = max_t(int, mtu - peer->hdrsize, 500); in rxrpc_adjust_mtu() 126 if (max_data < peer->max_data) { in rxrpc_adjust_mtu() [all …]
|
| /linux/drivers/net/wireguard/ |
| H A D | timers.c | 8 #include "peer.h" 30 static inline void mod_peer_timer(struct wg_peer *peer, in mod_peer_timer() argument 35 if (likely(netif_running(peer->device->dev) && in mod_peer_timer() 36 !READ_ONCE(peer->is_dead))) in mod_peer_timer() 43 struct wg_peer *peer = timer_container_of(peer, timer, in wg_expired_retransmit_handshake() local 46 if (peer->timer_handshake_attempts > MAX_TIMER_HANDSHAKES) { in wg_expired_retransmit_handshake() 47 pr_debug("%s: Handshake for peer %llu (%pISpfsc) did not complete after %d attempts, giving up\n", in wg_expired_retransmit_handshake() 48 peer->device->dev->name, peer->internal_id, in wg_expired_retransmit_handshake() 49 &peer->endpoint.addr, (int)MAX_TIMER_HANDSHAKES + 2); in wg_expired_retransmit_handshake() 51 timer_delete(&peer->timer_send_keepalive); in wg_expired_retransmit_handshake() [all …]
|
| H A D | peer.c | 6 #include "peer.h" 25 struct wg_peer *peer; in wg_peer_create() local 33 peer = kmem_cache_zalloc(peer_cache, GFP_KERNEL); in wg_peer_create() 34 if (unlikely(!peer)) in wg_peer_create() 36 if (unlikely(dst_cache_init(&peer->endpoint_cache, GFP_KERNEL))) in wg_peer_create() 39 peer->device = wg; in wg_peer_create() 40 wg_noise_handshake_init(&peer->handshake, &wg->static_identity, in wg_peer_create() 41 public_key, preshared_key, peer); in wg_peer_create() 42 peer->internal_id = atomic64_inc_return(&peer_counter); in wg_peer_create() 43 peer->serial_work_cpu = nr_cpumask_bits; in wg_peer_create() [all …]
|
| H A D | send.c | 9 #include "peer.h" 21 static void wg_packet_send_handshake_initiation(struct wg_peer *peer) in wg_packet_send_handshake_initiation() argument 25 if (!wg_birthdate_has_expired(atomic64_read(&peer->last_sent_handshake), in wg_packet_send_handshake_initiation() 29 atomic64_set(&peer->last_sent_handshake, ktime_get_coarse_boottime_ns()); in wg_packet_send_handshake_initiation() 30 net_dbg_ratelimited("%s: Sending handshake initiation to peer %llu (%pISpfsc)\n", in wg_packet_send_handshake_initiation() 31 peer->device->dev->name, peer->internal_id, in wg_packet_send_handshake_initiation() 32 &peer->endpoint.addr); in wg_packet_send_handshake_initiation() 34 if (wg_noise_handshake_create_initiation(&packet, &peer->handshake)) { in wg_packet_send_handshake_initiation() 35 wg_cookie_add_mac_to_packet(&packet, sizeof(packet), peer); in wg_packet_send_handshake_initiation() 36 wg_timers_any_authenticated_packet_traversal(peer); in wg_packet_send_handshake_initiation() [all …]
|
| H A D | receive.c | 8 #include "peer.h" 20 static void update_rx_stats(struct wg_peer *peer, size_t len) in update_rx_stats() argument 22 dev_sw_netstats_rx_add(peer->device->dev, len); in update_rx_stats() 23 peer->rx_bytes += len; in update_rx_stats() 96 struct wg_peer *peer = NULL; in wg_receive_handshake_packet() local 144 peer = wg_noise_handshake_consume_initiation(message, wg); in wg_receive_handshake_packet() 145 if (unlikely(!peer)) { in wg_receive_handshake_packet() 150 wg_socket_set_peer_endpoint_from_skb(peer, skb); in wg_receive_handshake_packet() 151 net_dbg_ratelimited("%s: Receiving handshake initiation from peer %llu (%pISpfsc)\n", in wg_receive_handshake_packet() 152 wg->dev->name, peer->internal_id, in wg_receive_handshake_packet() [all …]
|
| H A D | cookie.c | 7 #include "peer.h" 44 /* Must hold peer->handshake.static_identity->lock */ 61 void wg_cookie_checker_precompute_peer_keys(struct wg_peer *peer) in wg_cookie_checker_precompute_peer_keys() argument 63 precompute_key(peer->latest_cookie.cookie_decryption_key, in wg_cookie_checker_precompute_peer_keys() 64 peer->handshake.remote_static, cookie_key_label); in wg_cookie_checker_precompute_peer_keys() 65 precompute_key(peer->latest_cookie.message_mac1_key, in wg_cookie_checker_precompute_peer_keys() 66 peer->handshake.remote_static, mac1_key_label); in wg_cookie_checker_precompute_peer_keys() 157 struct wg_peer *peer) in wg_cookie_add_mac_to_packet() argument 162 down_write(&peer->latest_cookie.lock); in wg_cookie_add_mac_to_packet() 164 peer->latest_cookie.message_mac1_key); in wg_cookie_add_mac_to_packet() [all …]
|
| /linux/drivers/net/ovpn/ |
| H A D | peer.c | 22 #include "peer.h" 29 struct ovpn_peer *peer, *next; in unlock_ovpn() local 33 llist_for_each_entry_safe(peer, next, release_list->first, in unlock_ovpn() 35 ovpn_socket_release(peer); in unlock_ovpn() 36 ovpn_peer_put(peer); in unlock_ovpn() 41 * ovpn_peer_keepalive_set - configure keepalive values for peer 42 * @peer: the peer to configure 46 void ovpn_peer_keepalive_set(struct ovpn_peer *peer, u32 interval, u32 timeout) in ovpn_peer_keepalive_set() argument 50 netdev_dbg(peer->ovpn->dev, in ovpn_peer_keepalive_set() 51 "scheduling keepalive for peer %u: interval=%u timeout=%u\n", in ovpn_peer_keepalive_set() [all …]
|
| H A D | tcp.c | 21 #include "peer.h" 64 static void ovpn_tcp_to_userspace(struct ovpn_peer *peer, struct sock *sk, in ovpn_tcp_to_userspace() argument 69 skb_queue_tail(&peer->tcp.user_queue, skb); in ovpn_tcp_to_userspace() 70 peer->tcp.sk_cb.sk_data_ready(sk); in ovpn_tcp_to_userspace() 73 static struct sk_buff *ovpn_tcp_skb_packet(const struct ovpn_peer *peer, in ovpn_tcp_skb_packet() argument 81 ovpn_skb = netdev_alloc_skb(peer->ovpn->dev, pkt_len); in ovpn_tcp_skb_packet() 89 net_warn_ratelimited("%s: skb_copy_bits failed for peer %u\n", in ovpn_tcp_skb_packet() 90 netdev_name(peer->ovpn->dev), peer->id); in ovpn_tcp_skb_packet() 104 struct ovpn_peer *peer = container_of(strp, struct ovpn_peer, tcp.strp); in ovpn_tcp_rcv() local 113 net_warn_ratelimited("%s: packet too small to fetch opcode for peer %u\n", in ovpn_tcp_rcv() [all …]
|
| H A D | io.c | 18 #include "peer.h" 60 static void ovpn_netdev_write(struct ovpn_peer *peer, struct sk_buff *skb) in ovpn_netdev_write() argument 83 skb->dev = peer->ovpn->dev; in ovpn_netdev_write() 99 ret = gro_cells_receive(&peer->ovpn->gro_cells, skb); in ovpn_netdev_write() 102 ovpn_peer_stats_increment_rx(&peer->vpn_stats, pkt_len); in ovpn_netdev_write() 103 dev_dstats_rx_add(peer->ovpn->dev, pkt_len); in ovpn_netdev_write() 114 struct ovpn_peer *peer; in ovpn_decrypt_post() local 126 peer = ovpn_skb_cb(skb)->peer; in ovpn_decrypt_post() 138 net_err_ratelimited("%s: PKT ID RX error for peer %u: %d\n", in ovpn_decrypt_post() 139 netdev_name(peer->ovpn->dev), peer->id, in ovpn_decrypt_post() [all …]
|
| H A D | netlink.c | 21 #include "peer.h" 249 /* VPN IPs are needed only in MP mode for selecting the right peer */ in ovpn_nl_peer_precheck() 270 * ovpn_nl_peer_modify - modify the peer attributes according to the incoming msg 271 * @peer: the peer to modify 279 static int ovpn_nl_peer_modify(struct ovpn_peer *peer, struct genl_info *info, in ovpn_nl_peer_modify() argument 288 spin_lock_bh(&peer->lock); in ovpn_nl_peer_modify() 297 /* set peer sockaddr */ in ovpn_nl_peer_modify() 298 ret = ovpn_peer_reset_sockaddr(peer, &ss, local_ip); in ovpn_nl_peer_modify() 301 "cannot set peer sockaddr: %d", in ovpn_nl_peer_modify() 305 dst_cache_reset(&peer->dst_cache); in ovpn_nl_peer_modify() [all …]
|
| H A D | peer.h | 21 * struct ovpn_peer - the main remote peer object 22 * @ovpn: main openvpn instance this peer belongs to 27 * @vpn_addrs.ipv4: IPv4 assigned to peer on the tunnel 28 * @vpn_addrs.ipv6: IPv6 assigned to peer on the tunnel 29 * @hash_entry_id: entry in the peer ID hashtable 30 * @hash_entry_addr4: entry in the peer IPv4 hashtable 31 * @hash_entry_addr6: entry in the peer IPv6 hashtable 32 * @hash_entry_transp_addr: entry in the peer transport address hashtable 33 * @sock: the socket being used to talk to this peer 47 * @dst_cache: cache for dst_entry used to send to peer [all …]
|
| H A D | socket.c | 17 #include "peer.h" 35 * @peer: peer whose socket reference counter should be decreased 36 * @sock: the RCU protected peer socket 43 static bool ovpn_socket_put(struct ovpn_peer *peer, struct ovpn_socket *sock) in ovpn_socket_put() argument 50 * @peer: peer whose socket should be released 52 * This function should be invoked when the peer is being removed 59 * the refcounter for the peer it is linked to, thus allowing the peer 62 * This function is expected to be invoked exactly once per peer 66 void ovpn_socket_release(struct ovpn_peer *peer) in ovpn_socket_release() argument 73 sock = rcu_replace_pointer(peer->sock, NULL, true); in ovpn_socket_release() [all …]
|
| /linux/Documentation/netlink/specs/ |
| H A D | ovpn.yaml | 25 name: del-peer-reason 39 name: peer 45 The unique ID of the peer in the device context. To be used to 47 Also used to match packets received from this peer. 53 doc: The remote IPv4 address of the peer 59 doc: The remote IPv6 address of the peer 66 doc: The scope id of the remote IPv6 address of the peer (RFC2553) 70 doc: The remote port of the peer 77 doc: The socket to be used to communicate with the peer 81 doc: The ID of the netns the socket assigned to this peer lives in [all …]
|
| /linux/drivers/net/wireless/ath/ath12k/ |
| H A D | dp_peer.c | 12 void ath12k_dp_link_peer_free(struct ath12k_dp_link_peer *peer) in ath12k_dp_link_peer_free() argument 14 list_del(&peer->list); in ath12k_dp_link_peer_free() 16 kfree(peer->peer_stats.rx_stats); in ath12k_dp_link_peer_free() 17 kfree(peer); in ath12k_dp_link_peer_free() 24 struct ath12k_dp_link_peer *peer; in ath12k_dp_link_peer_find_by_vdev_and_addr() local 28 list_for_each_entry(peer, &dp->peers, list) { in ath12k_dp_link_peer_find_by_vdev_and_addr() 29 if (peer->vdev_id != vdev_id) in ath12k_dp_link_peer_find_by_vdev_and_addr() 31 if (!ether_addr_equal(peer->addr, addr)) in ath12k_dp_link_peer_find_by_vdev_and_addr() 34 return peer; in ath12k_dp_link_peer_find_by_vdev_and_addr() 44 struct ath12k_dp_link_peer *peer; in ath12k_dp_link_peer_find_by_pdev_and_addr() local [all …]
|
| H A D | peer.c | 8 #include "peer.h" 47 ath12k_warn(ar->ab, "failed to find link peer with vdev id %u addr %pM\n", in ath12k_peer_delete_resp_signal() 88 struct ath12k_dp_link_peer *peer, *tmp; in ath12k_peer_cleanup() local 95 list_for_each_entry_safe(peer, tmp, &dp->peers, list) { in ath12k_peer_cleanup() 96 if (peer->vdev_id != vdev_id) in ath12k_peer_cleanup() 99 ath12k_warn(ab, "removing stale peer %pM from vdev_id %d\n", in ath12k_peer_cleanup() 100 peer->addr, vdev_id); in ath12k_peer_cleanup() 102 ath12k_dp_link_peer_free(peer); in ath12k_peer_cleanup() 122 ath12k_warn(ar->ab, "failed wait for peer deleted\n"); in ath12k_wait_for_peer_delete_done() 128 ath12k_warn(ar->ab, "Timeout in receiving peer delete response\n"); in ath12k_wait_for_peer_delete_done() [all …]
|
| /linux/net/tipc/ |
| H A D | monitor.c | 49 * @ack_gen: most recent generation of self's domain acked by peer 63 /* struct tipc_peer: state of a peer node and its domain 64 * @addr: tipc node identity of peer 65 * @head_map: shows which other nodes currently consider peer 'up' 66 * @domain: most recent domain record from peer 70 * @is_up: peer is up as seen from this node 71 * @is_head: peer is assigned domain head as seen from this node 72 * @is_local: peer is in local domain and should be continuously monitored 166 static struct tipc_peer *peer_prev(struct tipc_peer *peer) in peer_prev() argument 168 return list_last_entry(&peer->list, struct tipc_peer, list); in peer_prev() [all …]
|
| /linux/drivers/net/can/ |
| H A D | vxcan.c | 35 struct net_device __rcu *peer; member 42 struct net_device *peer; in vxcan_xmit() local 52 peer = rcu_dereference(priv->peer); in vxcan_xmit() 53 if (unlikely(!peer)) { in vxcan_xmit() 83 skb->dev = peer; in vxcan_xmit() 90 peerstats = &peer->stats; in vxcan_xmit() 104 struct net_device *peer = rtnl_dereference(priv->peer); in vxcan_open() local 106 if (!peer) in vxcan_open() 109 if (peer->flags & IFF_UP) { in vxcan_open() 111 netif_carrier_on(peer); in vxcan_open() [all …]
|
| /linux/drivers/ntb/test/ |
| H A D | ntb_perf.c | 64 * Eg: start performance test with peer (index 0) and get the test metrics 204 int (*cmd_send)(struct perf_peer *peer, enum perf_cmd cmd, u64 data); 249 static inline bool perf_link_is_up(struct perf_peer *peer) in perf_link_is_up() argument 253 link = ntb_link_is_up(peer->perf->ntb, NULL, NULL); in perf_link_is_up() 254 return !!(link & BIT_ULL_MASK(peer->pidx)); in perf_link_is_up() 257 static int perf_spad_cmd_send(struct perf_peer *peer, enum perf_cmd cmd, in perf_spad_cmd_send() argument 260 struct perf_ctx *perf = peer->perf; in perf_spad_cmd_send() 274 if (!perf_link_is_up(peer)) in perf_spad_cmd_send() 277 sts = ntb_peer_spad_read(perf->ntb, peer->pidx, in perf_spad_cmd_send() 284 ntb_peer_spad_write(perf->ntb, peer->pidx, in perf_spad_cmd_send() [all …]
|
| /linux/net/sctp/ |
| H A D | associola.c | 171 asoc->peer.rwnd = SCTP_DEFAULT_MAXWINDOW; in sctp_association_init() 207 INIT_LIST_HEAD(&asoc->peer.transport_addr_list); in sctp_association_init() 220 asoc->peer.sack_needed = 1; in sctp_association_init() 221 asoc->peer.sack_generation = 1; in sctp_association_init() 239 /* Assume that peer would support both address types unless we are in sctp_association_init() 242 asoc->peer.ipv4_address = 1; in sctp_association_init() 244 asoc->peer.ipv6_address = 1; in sctp_association_init() 348 sctp_tsnmap_free(&asoc->peer.tsn_map); in sctp_association_free() 369 /* Free peer's cached cookie. */ in sctp_association_free() 370 kfree(asoc->peer.cookie); in sctp_association_free() [all …]
|
| /linux/drivers/net/wireless/ath/ath10k/ |
| H A D | txrx.c | 153 struct ath10k_peer *peer; in ath10k_peer_find() local 157 list_for_each_entry(peer, &ar->peers, list) { in ath10k_peer_find() 158 if (peer->vdev_id != vdev_id) in ath10k_peer_find() 160 if (!ether_addr_equal(peer->addr, addr)) in ath10k_peer_find() 163 return peer; in ath10k_peer_find() 171 struct ath10k_peer *peer; in ath10k_peer_find_by_id() local 173 if (peer_id >= BITS_PER_TYPE(peer->peer_ids)) in ath10k_peer_find_by_id() 178 list_for_each_entry(peer, &ar->peers, list) in ath10k_peer_find_by_id() 179 if (test_bit(peer_id, peer->peer_ids)) in ath10k_peer_find_by_id() 180 return peer; in ath10k_peer_find_by_id() [all …]
|
| /linux/tools/testing/selftests/net/ovpn/ |
| H A D | test.sh | 28 ovpn_cmd_ok "create namespace peer${p}" ovpn_create_ns "${p}" 32 ovpn_cmd_ok "start notification listener peer${p}" \ 40 ovpn_cmd_ok "configure peer${p} namespace" ovpn_setup_ns \ 45 ovpn_cmd_ok "register peer${p} in overlay" ovpn_add_peer "${p}" 50 ovpn_cmd_ok "set peer0 timeout for peer ${p}" \ 53 ovpn_cmd_ok "set peer${p} timeout for peer ${p}" \ 74 # - 12 bytes for peer-id: 99 ovpn_cmd_ok "send baseline traffic to peer ${p}" \ 102 ovpn_cmd_ok "send large-payload traffic to peer ${p}" \ 122 ovpn_cmd_ok "float: remove old transport address on peer${p}" \ [all …]
|
| /linux/tools/net/sunrpc/xdrgen/subcmds/ |
| H A D | definitions.py | 34 def emit_header_definitions(root: Specification, language: str, peer: str) -> None: 38 gen = XdrConstantGenerator(language, peer) 40 gen = XdrEnumGenerator(language, peer) 42 gen = XdrPointerGenerator(language, peer) 44 gen = XdrProgramGenerator(language, peer) 46 gen = XdrTypedefGenerator(language, peer) 48 gen = XdrStructGenerator(language, peer) 50 gen = XdrUnionGenerator(language, peer) 52 gen = XdrPassthruGenerator(language, peer) 58 def emit_header_maxsize(root: Specification, language: str, peer: str) -> None: [all …]
|
| /linux/Documentation/driver-api/ |
| H A D | ntb.rst | 14 peer. Doorbell registers provide a way for peers to send interrupt events. 15 Memory windows allow translated read and write access to the peer memory. 43 configured by the peer, on the peer ntb port. The first type is 48 Memory: Local NTB Port: Peer NTB Port: Peer MMIO: 57 3) somehow notify a peer device of performed initialization, 4) peer device 62 initialized by a peer device, is depicted on the figure:: 66 Memory: Local NTB Port: Peer NTB Port: Peer MMIO: 74 1) allocate a memory region, 2) somehow deliver a translated address to a peer 75 device, 3) peer puts the translated address to NTB config, 4) peer device maps 85 3) Send the translated address and memory window index to a peer device [all …]
|
| /linux/net/smc/ |
| H A D | smc_cdc.h | 195 static inline void smc_host_cursor_to_cdc(union smc_cdc_cursor *peer, in smc_host_cursor_to_cdc() argument 201 peer->count = htonl(save->count); in smc_host_cursor_to_cdc() 202 peer->wrap = htons(save->wrap); in smc_host_cursor_to_cdc() 203 /* peer->reserved = htons(0); must be ensured by caller */ in smc_host_cursor_to_cdc() 206 static inline void smc_host_msg_to_cdc(struct smc_cdc_msg *peer, in smc_host_msg_to_cdc() argument 212 peer->common.type = local->common.type; in smc_host_msg_to_cdc() 213 peer->len = local->len; in smc_host_msg_to_cdc() 214 peer->seqno = htons(local->seqno); in smc_host_msg_to_cdc() 215 peer->token = htonl(local->token); in smc_host_msg_to_cdc() 216 smc_host_cursor_to_cdc(&peer->prod, &local->prod, save, conn); in smc_host_msg_to_cdc() [all …]
|