lib/libc/yp/xdr_ypresp_master.c
39
return xdr_peername(xdrs, (peername *)&objp->peer);
lib/libc/yp/yp_master.c
72
if ((*outname = strdup(yprm.peer)) == NULL)
lib/libcrypto/bio/bio.h
505
#define BIO_ctrl_dgram_connect(b,peer) \
lib/libcrypto/bio/bio.h
506
(int)BIO_ctrl(b,BIO_CTRL_DGRAM_CONNECT,0, (char *)peer)
lib/libcrypto/bio/bio.h
507
#define BIO_ctrl_set_connected(b, state, peer) \
lib/libcrypto/bio/bio.h
508
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_CONNECTED, state, (char *)peer)
lib/libcrypto/bio/bio.h
513
#define BIO_dgram_get_peer(b,peer) \
lib/libcrypto/bio/bio.h
514
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)peer)
lib/libcrypto/bio/bio.h
515
#define BIO_dgram_set_peer(b,peer) \
lib/libcrypto/bio/bio.h
516
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)peer)
lib/libcrypto/bio/bss_bio.c
118
BIO *peer; /* NULL if buf == NULL.
lib/libcrypto/bio/bss_bio.c
145
b->peer = NULL;
lib/libcrypto/bio/bss_bio.c
164
if (b->peer)
lib/libcrypto/bio/bss_bio.c
188
assert(b->peer != NULL);
lib/libcrypto/bio/bss_bio.c
189
peer_b = b->peer->ptr;
lib/libcrypto/bio/bss_bio.c
269
assert(b->peer != NULL);
lib/libcrypto/bio/bss_bio.c
338
if (b->peer) {
lib/libcrypto/bio/bss_bio.c
381
if (b->peer == NULL || b->closed)
lib/libcrypto/bio/bss_bio.c
430
if (b->peer != NULL) {
lib/libcrypto/bio/bss_bio.c
431
struct bio_bio_st *peer_b = b->peer->ptr;
lib/libcrypto/bio/bss_bio.c
505
if (b1->peer != NULL || b2->peer != NULL) {
lib/libcrypto/bio/bss_bio.c
530
b1->peer = bio2;
lib/libcrypto/bio/bss_bio.c
533
b2->peer = bio1;
lib/libcrypto/bio/bss_bio.c
549
BIO *peer_bio = b->peer;
lib/libcrypto/bio/bss_bio.c
555
assert(peer_b->peer == bio);
lib/libcrypto/bio/bss_bio.c
557
peer_b->peer = NULL;
lib/libcrypto/bio/bss_bio.c
563
b->peer = NULL;
lib/libcrypto/bio/bss_dgram.c
108
} peer;
lib/libcrypto/bio/bss_dgram.c
264
} peer;
lib/libcrypto/bio/bss_dgram.c
267
sa.len = sizeof(sa.peer);
lib/libcrypto/bio/bss_dgram.c
271
memset(&sa.peer, 0, sizeof(sa.peer));
lib/libcrypto/bio/bss_dgram.c
273
ret = recvfrom(b->num, out, outl, 0, &sa.peer.sa, &sa.len);
lib/libcrypto/bio/bss_dgram.c
276
BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, &sa.peer);
lib/libcrypto/bio/bss_dgram.c
301
int peerlen = sizeof(data->peer);
lib/libcrypto/bio/bss_dgram.c
303
if (data->peer.sa.sa_family == AF_INET)
lib/libcrypto/bio/bss_dgram.c
304
peerlen = sizeof(data->peer.sa_in);
lib/libcrypto/bio/bss_dgram.c
305
else if (data->peer.sa.sa_family == AF_INET6)
lib/libcrypto/bio/bss_dgram.c
306
peerlen = sizeof(data->peer.sa_in6);
lib/libcrypto/bio/bss_dgram.c
307
ret = sendto(b->num, in, inl, 0, &data->peer.sa, peerlen);
lib/libcrypto/bio/bss_dgram.c
389
memcpy(&data->peer, to, sizeof(data->peer.sa_in));
lib/libcrypto/bio/bss_dgram.c
392
memcpy(&data->peer, to, sizeof(data->peer.sa_in6));
lib/libcrypto/bio/bss_dgram.c
395
memcpy(&data->peer, to, sizeof(data->peer.sa));
lib/libcrypto/bio/bss_dgram.c
481
switch (data->peer.sa.sa_family) {
lib/libcrypto/bio/bss_dgram.c
487
if (IN6_IS_ADDR_V4MAPPED(&data->peer.sa_in6.sin6_addr))
lib/libcrypto/bio/bss_dgram.c
512
memcpy(&data->peer, to, sizeof(data->peer.sa_in));
lib/libcrypto/bio/bss_dgram.c
515
memcpy(&data->peer, to, sizeof(data->peer.sa_in6));
lib/libcrypto/bio/bss_dgram.c
518
memcpy(&data->peer, to, sizeof(data->peer.sa));
lib/libcrypto/bio/bss_dgram.c
523
memset(&(data->peer), 0, sizeof(data->peer));
lib/libcrypto/bio/bss_dgram.c
527
switch (data->peer.sa.sa_family) {
lib/libcrypto/bio/bss_dgram.c
529
ret = sizeof(data->peer.sa_in);
lib/libcrypto/bio/bss_dgram.c
532
ret = sizeof(data->peer.sa_in6);
lib/libcrypto/bio/bss_dgram.c
535
ret = sizeof(data->peer.sa);
lib/libcrypto/bio/bss_dgram.c
540
memcpy(ptr, &data->peer, (ret = num));
lib/libcrypto/bio/bss_dgram.c
546
memcpy(&data->peer, to, sizeof(data->peer.sa_in));
lib/libcrypto/bio/bss_dgram.c
549
memcpy(&data->peer, to, sizeof(data->peer.sa_in6));
lib/libcrypto/bio/bss_dgram.c
552
memcpy(&data->peer, to, sizeof(data->peer.sa));
lib/libcrypto/evp/evp.h
972
int EVP_PKEY_derive_set_peer(EVP_PKEY_CTX *ctx, EVP_PKEY *peer);
lib/libcrypto/evp/pmeth_fn.c
269
EVP_PKEY_derive_set_peer(EVP_PKEY_CTX *ctx, EVP_PKEY *peer)
lib/libcrypto/evp/pmeth_fn.c
286
ret = ctx->pmeth->ctrl(ctx, EVP_PKEY_CTRL_PEER_KEY, 0, peer);
lib/libcrypto/evp/pmeth_fn.c
299
if (ctx->pkey->type != peer->type) {
lib/libcrypto/evp/pmeth_fn.c
309
if (!EVP_PKEY_missing_parameters(peer) &&
lib/libcrypto/evp/pmeth_fn.c
310
!EVP_PKEY_cmp_parameters(ctx->pkey, peer)) {
lib/libcrypto/evp/pmeth_fn.c
316
ctx->peerkey = peer;
lib/libcrypto/evp/pmeth_fn.c
318
ret = ctx->pmeth->ctrl(ctx, EVP_PKEY_CTRL_PEER_KEY, 1, peer);
lib/libcrypto/evp/pmeth_fn.c
325
CRYPTO_add(&peer->references, 1, CRYPTO_LOCK_EVP_PKEY);
lib/libssl/ssl.h
940
#define DTLSv1_listen(ssl, peer) \
lib/libssl/ssl.h
941
SSL_ctrl(ssl,DTLS_CTRL_LISTEN,0, (void *)peer)
lib/libssl/ssl_lib.c
1805
CBS peer, peer_proto, supported, supported_proto;
lib/libssl/ssl_lib.c
1830
CBS_init(&peer, peer_list, peer_list_len);
lib/libssl/ssl_lib.c
1831
if (!tlsext_alpn_check_format(&peer))
lib/libssl/ssl_lib.c
1839
while (CBS_len(&peer) > 0) {
lib/libssl/ssl_lib.c
1840
if (!CBS_get_u8_length_prefixed(&peer, &peer_proto))
regress/usr.sbin/bgpd/unittests/chash_test.c
121
CH_GENERATE(test, peer, peer_cmp, peer_hash);
regress/usr.sbin/bgpd/unittests/chash_test.c
57
peer_hash(const struct peer *p)
regress/usr.sbin/bgpd/unittests/chash_test.c
63
peer_cmp(const struct peer *l, const struct peer *r)
regress/usr.sbin/bgpd/unittests/chash_test.c
69
CH_HEAD(test, peer);
regress/usr.sbin/bgpd/unittests/chash_test.c
70
CH_PROTOTYPE(test, peer, peer_hash);
regress/usr.sbin/bgpd/unittests/chash_test.c
75
struct peer peers[11000], *pp;
regress/usr.sbin/bgpd/unittests/chash_test.c
97
struct peer p;
regress/usr.sbin/bgpd/unittests/rde_community_test.c
134
struct rde_peer *p = &peer;
regress/usr.sbin/bgpd/unittests/rde_community_test.c
138
if (f->peer != NULL)
regress/usr.sbin/bgpd/unittests/rde_community_test.c
139
p = f->peer;
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1
struct rde_peer peer = {
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1004
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1010
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1016
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1022
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1028
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1034
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1042
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1050
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1058
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1064
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1072
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
1078
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
596
struct rde_peer *peer;
regress/usr.sbin/bgpd/unittests/rde_community_test.h
738
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
745
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
751
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
757
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
763
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
769
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
775
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
781
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
787
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
793
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
799
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
805
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
811
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
818
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
825
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
832
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
839
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
845
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
851
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
857
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
863
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
869
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
875
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
881
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
887
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
893
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
899
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
905
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
911
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
917
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
923
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
929
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
935
.peer = &peer_b4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
942
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
949
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
956
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
962
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
968
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
974
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
980
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
986
.peer = &peer_l4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
992
.peer = &peer_r4,
regress/usr.sbin/bgpd/unittests/rde_community_test.h
998
.peer = &peer,
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
106
.p = { .re = &dummy_re, .aspath = &asp[0], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
109
.p = { .re = &dummy_re, .aspath = &asp[1], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
112
.p = { .re = &dummy_re, .aspath = &asp[2], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
115
.p = { .re = &dummy_re, .aspath = &asp[0], .peer = &peer1, .nhflags = 0, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
118
.p = { .re = &dummy_re, .aspath = &asp[3], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
121
.p = { .re = &dummy_re, .aspath = &asp[4], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
124
.p = { .re = &dummy_re, .aspath = &asp[5], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
126
.p = { .re = &dummy_re, .aspath = &asp[6], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
129
.p = { .re = &dummy_re, .aspath = &asp[7], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
132
.p = { .re = &dummy_re, .aspath = &asp[0], .peer = &peer1_i, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
135
.p = { .re = &dummy_re, .aspath = &asp[8], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
139
.p = { .re = &dummy_re, .aspath = &asp[0], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T2, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
142
.p = { .re = &dummy_re, .aspath = &asp[0], .peer = &peer2, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
146
.p = { .re = &dummy_re, .aspath = &asp[0], .peer = &peer1_a4, .nhflags = NEXTHOP_VALID, .lastchange = T1, } },
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
166
{ .re = &dummy_re, .aspath = &med_asp[0], .peer = &peer2, .nhflags = NEXTHOP_VALID, .lastchange = T1, };
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
168
{ .re = &dummy_re, .aspath = &med_asp[1], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, };
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
170
{ .re = &dummy_re, .aspath = &med_asp[2], .peer = &peer3, .nhflags = NEXTHOP_VALID, .lastchange = T1, };
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
172
{ .re = &dummy_re, .aspath = &med_asp[3], .peer = &peer1_a4, .nhflags = NEXTHOP_VALID, .lastchange = T1, };
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
175
{ .re = &dummy_re, .aspath = &med_asp[5], .peer = &peer3, .nhflags = NEXTHOP_VALID, .lastchange = T1, };
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
177
{ .re = &dummy_re, .aspath = &med_asp[4], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T1, };
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
184
{ .re = &dummy_re, .aspath = &asp[0], .peer = &peer2, .nhflags = NEXTHOP_VALID, .lastchange = T1, };
regress/usr.sbin/bgpd/unittests/rde_decide_test.c
186
{ .re = &dummy_re, .aspath = &asp[0], .peer = &peer1, .nhflags = NEXTHOP_VALID, .lastchange = T2, };
sbin/ifconfig/ifconfig.c
4717
char peer[32];
sbin/ifconfig/ifconfig.c
4735
snprintf(peer, sizeof(peer),
sbin/ifconfig/ifconfig.c
4738
peer[0] = '\0';
sbin/ifconfig/ifconfig.c
4751
peer);
sbin/ifconfig/ifconfig.c
4758
carpr.carpr_advbase, balmode, peer);
sbin/iked/ikev2.c
1379
struct iked_addr *peer, struct iked_message *retry)
sbin/iked/ikev2.c
1395
if ((sock = ikev2_msg_getsocket(env, peer->addr_af, 0)) == NULL)
sbin/iked/ikev2.c
1427
if ((buf = ikev2_msg_init(env, &req, &peer->addr, peer->addr.ss_len,
sbin/iked/ikev2_msg.c
139
struct sockaddr_storage *peer, socklen_t peerlen,
sbin/iked/ikev2_msg.c
143
memcpy(&msg->msg_peer, peer, peerlen);
sbin/iked/pfkey.c
1880
struct iked_addr peer;
sbin/iked/pfkey.c
1903
bzero(&peer, sizeof(peer));
sbin/iked/pfkey.c
1911
peer.addr_af = speer->sa_family;
sbin/iked/pfkey.c
1912
peer.addr_port = htons(socket_getport(speer));
sbin/iked/pfkey.c
1913
if ((slen = speer->sa_len) > sizeof(peer.addr)) {
sbin/iked/pfkey.c
1917
memcpy(&peer.addr, speer, slen);
sbin/iked/pfkey.c
1918
if (socket_af((struct sockaddr *)&peer.addr,
sbin/iked/pfkey.c
1919
peer.addr_port) == -1) {
sbin/iked/pfkey.c
1923
flow.flow_peer = &peer;
sbin/iked/policy.c
1012
if (TAILQ_EMPTY(peer)) {
sbin/iked/policy.c
1019
TAILQ_FOREACH(ppeer, peer, prop_entry) {
sbin/iked/policy.c
1078
proposals_match(struct iked_proposal *local, struct iked_proposal *peer,
sbin/iked/policy.c
1084
uint8_t protoid = peer->prop_protoid;
sbin/iked/policy.c
1089
for (i = 0; i < peer->prop_nxforms; i++) {
sbin/iked/policy.c
1090
tpeer = peer->prop_xforms + i;
sbin/iked/policy.c
1097
for (i = 0; i < peer->prop_nxforms; i++) {
sbin/iked/policy.c
1098
tpeer = peer->prop_xforms + i;
sbin/iked/policy.c
1160
peer->prop_id, local->prop_id, tlocal->xform_score,
sbin/iked/policy.c
681
sa_address(struct iked_sa *sa, struct iked_addr *addr, struct sockaddr *peer)
sbin/iked/policy.c
684
addr->addr_af = peer->sa_family;
sbin/iked/policy.c
685
addr->addr_port = htons(socket_getport(peer));
sbin/iked/policy.c
686
memcpy(&addr->addr, peer, peer->sa_len);
sbin/iked/policy.c
999
struct iked_proposals *peer, int rekey, int groupid)
sbin/ipsecctl/ike.c
77
if (r->peer)
sbin/ipsecctl/ike.c
78
fprintf(fd, SET "[Phase 1]:%s=%s force\n", r->peer->name,
sbin/ipsecctl/ike.c
786
if (r->peer) {
sbin/ipsecctl/ike.c
827
if (r->peer) {
sbin/ipsecctl/ike.c
83
if (r->peer)
sbin/ipsecctl/ike.c
831
r->peer->name, r->local->name) == -1)
sbin/ipsecctl/ike.c
836
r->peer->name) == -1)
sbin/ipsecctl/ike.c
85
r->peer->name);
sbin/ipsecctl/ipsecctl.c
222
if (rp->peer) {
sbin/ipsecctl/ipsecctl.c
223
free(rp->peer->name);
sbin/ipsecctl/ipsecctl.c
224
free(rp->peer);
sbin/ipsecctl/ipsecctl.c
281
if (to->peer != NULL || from->peer != NULL) {
sbin/ipsecctl/ipsecctl.c
282
if ((to->peer == NULL) || (from->peer == NULL) ||
sbin/ipsecctl/ipsecctl.c
283
memcmp(to->peer, from->peer, sizeof(*to->peer)))
sbin/ipsecctl/ipsecctl.c
490
if (r->peer) {
sbin/ipsecctl/ipsecctl.c
492
ipsecctl_print_addr(r->peer);
sbin/ipsecctl/ipsecctl.c
732
if (rp->peer) {
sbin/ipsecctl/ipsecctl.c
733
free(rp->peer->name);
sbin/ipsecctl/ipsecctl.c
734
free(rp->peer);
sbin/ipsecctl/ipsecctl.h
190
struct ipsec_addr_wrap *peer;
sbin/ipsecctl/parse.y
2267
r->peer = copyhost(rule->peer);
sbin/ipsecctl/parse.y
2666
r->peer = copyhost(peers->dst);
sbin/ipsecctl/parse.y
2667
if (r->peer == NULL) {
sbin/ipsecctl/parse.y
2671
r->peer = copyhost(r->src);
sbin/ipsecctl/parse.y
2674
r->peer = copyhost(r->dst);
sbin/ipsecctl/parse.y
2677
if (r->type == RULE_FLOW && r->peer == NULL) {
sbin/ipsecctl/parse.y
2682
if (r->peer != NULL && r->peer->af == AF_UNSPEC) {
sbin/ipsecctl/parse.y
2684
free(r->peer);
sbin/ipsecctl/parse.y
2685
r->peer = NULL;
sbin/ipsecctl/parse.y
2687
if (r->type == RULE_IKE && r->peer == NULL) {
sbin/ipsecctl/parse.y
2837
if (rule->peer)
sbin/ipsecctl/parse.y
2838
reverse->peer = copyhost(rule->peer);
sbin/ipsecctl/pfkey.c
1151
r->local, r->peer, r->auth, r->flowtype);
sbin/ipsecctl/pfkey.c
160
if (peer) {
sbin/ipsecctl/pfkey.c
161
speer.ss_family = peer->af;
sbin/ipsecctl/pfkey.c
162
switch (peer->af) {
sbin/ipsecctl/pfkey.c
165
peer->address.v4;
sbin/ipsecctl/pfkey.c
170
peer->address.v6;
sbin/ipsecctl/pfkey.c
174
warnx("unsupported address family %d", peer->af);
sbin/ipsecctl/pfkey.c
246
if (peer) {
sbin/ipsecctl/pfkey.c
307
if (peer) {
sbin/ipsecctl/pfkey.c
68
struct ipsec_addr_wrap *local, struct ipsec_addr_wrap *peer,
sbin/ipsecctl/pfkey.c
877
rule->peer = calloc(1, sizeof(struct ipsec_addr_wrap));
sbin/ipsecctl/pfkey.c
878
if (rule->peer == NULL)
sbin/ipsecctl/pfkey.c
881
rule->peer->af = sa->sa_family;
sbin/ipsecctl/pfkey.c
885
&rule->peer->address.v4,
sbin/ipsecctl/pfkey.c
887
set_ipmask(rule->peer, 32);
sbin/ipsecctl/pfkey.c
891
&rule->peer->address.v6,
sbin/ipsecctl/pfkey.c
893
set_ipmask(rule->peer, 128);
sbin/isakmpd/exchange.c
1494
exchange_nonce(struct exchange *exchange, int peer, size_t nonce_sz,
sbin/isakmpd/exchange.c
1499
int initiator = exchange->initiator ^ peer;
sbin/isakmpd/exchange.c
1748
char *trpt, *peer;
sbin/isakmpd/exchange.c
1794
peer = conf_get_str(name, "ISAKMP-peer");
sbin/isakmpd/exchange.c
1795
if (!peer) {
sbin/isakmpd/exchange.c
1802
isakmp_sa = sa_lookup_by_name(peer, 1);
sbin/isakmpd/exchange.c
1813
if (conf_get_num(peer, "Phase", 0) != 1) {
sbin/isakmpd/exchange.c
1816
name, peer);
sbin/isakmpd/exchange.c
1830
exchange_establish(peer, exchange_establish_finalize,
sbin/isakmpd/exchange.c
1832
exchange = exchange_lookup_by_name(peer, 1);
sbin/isakmpd/ipsec.c
1116
char *peer;
sbin/isakmpd/ipsec.c
1147
if (sockaddr2text(addr, &peer, 0))
sbin/isakmpd/ipsec.c
1148
peer = NULL;
sbin/isakmpd/ipsec.c
1153
"%s for proto %d, %s", peer ? peer : "<unknown>",
sbin/isakmpd/ipsec.c
1159
free(peer);
sbin/isakmpd/ipsec.c
1647
ipsec_g_x(struct message *msg, int peer, u_int8_t *buf)
sbin/isakmpd/ipsec.c
1652
int initiator = exchange->initiator ^ peer;
sbin/isakmpd/pf_key_v2.c
2341
char dstbuf[ADDRESS_MAX], srcbuf[ADDRESS_MAX], *peer = 0;
sbin/isakmpd/pf_key_v2.c
2941
if (asprintf(&peer, "peer-%s%s%s", dstbuf, srcaddr ? "-local-" : "",
sbin/isakmpd/pf_key_v2.c
2953
conf_set(af, conn, "ISAKMP-peer", peer, 0, 0)) {
sbin/isakmpd/pf_key_v2.c
3086
conf_set(af, peer, "Refcount", "1", 0, 0) ||
sbin/isakmpd/pf_key_v2.c
3109
if (!conf_get_str(peer, "Phase")) {
sbin/isakmpd/pf_key_v2.c
3110
if (conf_set(af, peer, "Phase", "1", 0, 0) ||
sbin/isakmpd/pf_key_v2.c
3111
conf_set(af, peer, "Refcount", "1", 0, 0) ||
sbin/isakmpd/pf_key_v2.c
3112
conf_set(af, peer, "Address", dstbuf, 0, 0)) {
sbin/isakmpd/pf_key_v2.c
3116
if (srcaddr && conf_set(af, peer, "Local-address", srcbuf, 0,
sbin/isakmpd/pf_key_v2.c
3121
snprintf(confname, sizeof confname, "phase1-%s", peer);
sbin/isakmpd/pf_key_v2.c
3122
if (conf_set(af, peer, "Configuration", confname, 0, 0)) {
sbin/isakmpd/pf_key_v2.c
3148
if (srcid && conf_set(af, peer, "ID", srcid, 0, 0)) {
sbin/isakmpd/pf_key_v2.c
3153
if (dstid && conf_set(af, peer, "Remote-ID", dstid, 0, 0)) {
sbin/isakmpd/pf_key_v2.c
3158
pf_key_v2_conf_refinc(af, peer);
sbin/isakmpd/pf_key_v2.c
3176
free(peer);
sbin/isakmpd/transport.c
262
char peer[NI_MAXHOST], peersv[NI_MAXSERV];
sbin/isakmpd/transport.c
319
if (getnameinfo(dst, SA_LEN(dst), peer,
sbin/isakmpd/transport.c
320
sizeof peer, peersv, sizeof peersv,
sbin/isakmpd/transport.c
322
strlcpy(peer, "<unknown>", sizeof peer);
sbin/isakmpd/transport.c
329
"<unnamed>", peer, peersv);
sbin/pfctl/parse.y
480
struct peer peer;
sbin/pfctl/parse.y
482
struct peer src, dst;
sbin/pfctl/parse.y
569
%type <v.peer> ipportspec from to
sbin/pfctl/pfctl_parser.c
1477
copy_satopfaddr(&n->peer, ifa->ifa_dstaddr);
sbin/pfctl/pfctl_parser.c
1652
memcpy(&n->addr.v.a.addr, &p->peer,
sbin/pfctl/pfctl_parser.h
147
struct pf_addr peer;
sys/dev/ic/qwx.c
1022
qwx_clear_pn_replay_config(struct qwx_softc *sc, struct ath11k_peer *peer)
sys/dev/ic/qwx.c
1037
rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwx.c
14753
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
14757
peer = qwx_peer_find_by_id(sc, HAL_INVALID_PEERID);
sys/dev/ic/qwx.c
14758
if (peer == NULL)
sys/dev/ic/qwx.c
14766
peer->vdev_id = vdev_id;
sys/dev/ic/qwx.c
14767
peer->peer_id = peer_id;
sys/dev/ic/qwx.c
14768
peer->ast_hash = ast_hash;
sys/dev/ic/qwx.c
14769
peer->hw_peer_id = hw_peer_id;
sys/dev/ic/qwx.c
14770
IEEE80211_ADDR_COPY(peer->addr, mac_addr);
sys/dev/ic/qwx.c
14786
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
14788
TAILQ_FOREACH(peer, &sc->peers, entry) {
sys/dev/ic/qwx.c
14789
if (peer->peer_id == peer_id)
sys/dev/ic/qwx.c
14790
return peer;
sys/dev/ic/qwx.c
14799
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
14803
peer = qwx_peer_find_by_id(sc, peer_id);
sys/dev/ic/qwx.c
14804
if (!peer) {
sys/dev/ic/qwx.c
14811
__func__, ether_sprintf(peer->addr), peer_id);
sys/dev/ic/qwx.c
14813
list_del(&peer->list);
sys/dev/ic/qwx.c
14814
kfree(peer);
sys/dev/ic/qwx.c
17205
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
17220
peer = qwx_peer_find_by_id(sc, msdu->peer_id);
sys/dev/ic/qwx.c
17221
if (peer) {
sys/dev/ic/qwx.c
17223
enctype = peer->sec_type_grp;
sys/dev/ic/qwx.c
17225
enctype = peer->sec_type;
sys/dev/ic/qwx.c
17769
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
17828
peer = ath11k_peer_find_by_id(ab, ppdu_info->peer_id);
sys/dev/ic/qwx.c
17830
if (!peer || !peer->sta) {
sys/dev/ic/qwx.c
17837
arsta = (struct ath11k_sta *)peer->sta->drv_priv;
sys/dev/ic/qwx.c
17840
if (ath11k_debugfs_is_pktlog_peer_valid(ar, peer->addr))
sys/dev/ic/qwx.c
197
qwx_node_clear_peer_id(struct qwx_softc *sc, struct ath11k_peer *peer)
sys/dev/ic/qwx.c
206
if (nq->peer_id == peer->peer_id)
sys/dev/ic/qwx.c
211
if (nq->peer_id == peer->peer_id)
sys/dev/ic/qwx.c
221
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
224
peer = TAILQ_FIRST(&sc->peers);
sys/dev/ic/qwx.c
225
TAILQ_REMOVE(&sc->peers, peer, entry);
sys/dev/ic/qwx.c
226
qwx_node_clear_peer_id(sc, peer);
sys/dev/ic/qwx.c
227
free(peer, M_DEVBUF, sizeof(*peer));
sys/dev/ic/qwx.c
24170
struct ath11k_peer *peer)
sys/dev/ic/qwx.c
24177
ret = qwx_wmi_send_peer_delete_cmd(sc, peer->addr, vdev_id, pdev_id);
sys/dev/ic/qwx.c
24180
sc->sc_dev.dv_xname, vdev_id, ether_sprintf(peer->addr),
sys/dev/ic/qwx.c
24205
TAILQ_REMOVE(&sc->peers, peer, entry);
sys/dev/ic/qwx.c
24207
qwx_node_clear_peer_id(sc, peer);
sys/dev/ic/qwx.c
24208
free(peer, M_DEVBUF, sizeof(*peer));
sys/dev/ic/qwx.c
24218
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
24232
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
24233
if (peer) {
sys/dev/ic/qwx.c
24234
if (peer->peer_id != HAL_INVALID_PEERID &&
sys/dev/ic/qwx.c
24235
peer->vdev_id == param->vdev_id) {
sys/dev/ic/qwx.c
24246
ath11k_peer_rhash_delete(ar->ab, peer);
sys/dev/ic/qwx.c
24249
peer = malloc(sizeof(*peer), M_DEVBUF, M_ZERO | M_NOWAIT);
sys/dev/ic/qwx.c
24250
if (peer == NULL)
sys/dev/ic/qwx.c
24253
peer->peer_id = HAL_INVALID_PEERID;
sys/dev/ic/qwx.c
24254
TAILQ_INSERT_TAIL(&sc->peers, peer, entry);
sys/dev/ic/qwx.c
24265
TAILQ_REMOVE(&sc->peers, peer, entry);
sys/dev/ic/qwx.c
24267
free(peer, M_DEVBUF, sizeof(*peer));
sys/dev/ic/qwx.c
24277
TAILQ_REMOVE(&sc->peers, peer, entry);
sys/dev/ic/qwx.c
24279
free(peer, M_DEVBUF, sizeof(*peer));
sys/dev/ic/qwx.c
24286
nq->peer_id = peer->peer_id;
sys/dev/ic/qwx.c
24293
peer = ath11k_peer_find(ar->ab, param->vdev_id, param->peer_addr);
sys/dev/ic/qwx.c
24294
if (!peer) {
sys/dev/ic/qwx.c
24304
ret = ath11k_peer_rhash_add(ar->ab, peer);
sys/dev/ic/qwx.c
24311
peer->pdev_id = pdev_id;
sys/dev/ic/qwx.c
24313
peer->sta = sta;
sys/dev/ic/qwx.c
24316
arvif->ast_hash = peer->ast_hash;
sys/dev/ic/qwx.c
24317
arvif->ast_idx = peer->hw_peer_id;
sys/dev/ic/qwx.c
24320
peer->sec_type = HAL_ENCRYPT_TYPE_OPEN;
sys/dev/ic/qwx.c
24321
peer->sec_type_grp = HAL_ENCRYPT_TYPE_OPEN;
sys/dev/ic/qwx.c
24327
peer->peer_id);
sys/dev/ic/qwx.c
24638
qwx_peer_rx_tid_delete(struct qwx_softc *sc, struct ath11k_peer *peer,
sys/dev/ic/qwx.c
24642
struct dp_rx_tid *rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwx.c
24698
qwx_peer_frags_flush(struct qwx_softc *sc, struct ath11k_peer *peer)
sys/dev/ic/qwx.c
24706
rx_tid = &peer->rx_tid[i];
sys/dev/ic/qwx.c
24718
qwx_peer_rx_tid_cleanup(struct qwx_softc *sc, struct ath11k_peer *peer)
sys/dev/ic/qwx.c
24726
rx_tid = &peer->rx_tid[i];
sys/dev/ic/qwx.c
24728
qwx_peer_rx_tid_delete(sc, peer, i);
sys/dev/ic/qwx.c
24739
qwx_peer_rx_tid_reo_update(struct qwx_softc *sc, struct ath11k_peer *peer,
sys/dev/ic/qwx.c
24775
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
24780
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
24781
if (peer) {
sys/dev/ic/qwx.c
24782
rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwx.c
24805
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
24814
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
24815
if (peer == NULL) {
sys/dev/ic/qwx.c
24822
rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwx.c
24826
ret = qwx_peer_rx_tid_reo_update(sc, peer, rx_tid,
sys/dev/ic/qwx.c
24898
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
24904
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
24905
if (peer == NULL) {
sys/dev/ic/qwx.c
24912
for (i = 0; i <= nitems(peer->rx_tid); i++) {
sys/dev/ic/qwx.c
24913
rx_tid = &peer->rx_tid[i];
sys/dev/ic/qwx.c
24920
peer->dp_setup_done = true;
sys/dev/ic/qwx.c
24933
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
24937
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
24938
if (peer == NULL)
sys/dev/ic/qwx.c
24979
peer = ath11k_peer_find(ab, vdev_id, addr);
sys/dev/ic/qwx.c
24980
if (!peer) {
sys/dev/ic/qwx.c
24987
qwx_peer_rx_tid_delete(sc, peer, tid);
sys/dev/ic/qwx.c
25000
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
25031
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
25032
if (peer == NULL)
sys/dev/ic/qwx.c
25036
rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwx.c
25356
uint8_t pdev_id, struct ath11k_peer *peer)
sys/dev/ic/qwx.c
25360
qwx_peer_rx_tid_cleanup(sc, peer);
sys/dev/ic/qwx.c
25362
ret = qwx_peer_delete(sc, arvif->vdev_id, pdev_id, peer);
sys/dev/ic/qwx.c
25399
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
25404
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
25405
if (peer)
sys/dev/ic/qwx.c
25406
qwx_peer_delete(sc, arvif->vdev_id, pdev_id, peer);
sys/dev/ic/qwx.c
26152
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
26155
peer = qwx_peer_find_by_id(sc, sc->bss_peer_id);
sys/dev/ic/qwx.c
26156
if (peer == NULL)
sys/dev/ic/qwx.c
26166
qwx_clear_pn_replay_config(sc, peer);
sys/dev/ic/qwx.c
26167
qwx_clear_hwkeys(sc, peer);
sys/dev/ic/qwx.c
26169
ret = qwx_mac_station_remove(sc, arvif, pdev_id, peer);
sys/dev/ic/qwx.c
26460
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
26464
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
26465
if (peer == NULL)
sys/dev/ic/qwx.c
26468
if (!peer->rx_tid[tid].active)
sys/dev/ic/qwx.c
26471
ret = qwx_peer_rx_tid_reo_update(sc, peer,
sys/dev/ic/qwx.c
26472
peer->rx_tid, 1, 0, false);
sys/dev/ic/qwx.c
26478
paddr = peer->rx_tid[tid].paddr;
sys/dev/ic/qwx.c
861
struct ath11k_peer *peer;
sys/dev/ic/qwx.c
869
peer = qwx_peer_find_by_id(sc, nq->peer_id);
sys/dev/ic/qwx.c
870
if (peer == NULL)
sys/dev/ic/qwx.c
877
qwx_peer_frags_flush(sc, peer);
sys/dev/ic/qwx.c
881
peer->sec_type_grp = qwx_dp_tx_get_encrypt_type(k->k_cipher);
sys/dev/ic/qwx.c
884
peer->sec_type = qwx_dp_tx_get_encrypt_type(k->k_cipher);
sys/dev/ic/qwx.c
984
qwx_clear_hwkeys(struct qwx_softc *sc, struct ath11k_peer *peer)
sys/dev/ic/qwx.c
997
arg.macaddr = peer->addr;
sys/dev/ic/qwz.c
12410
struct ath12k_peer *peer;
sys/dev/ic/qwz.c
12418
peer = &nq->peer;
sys/dev/ic/qwz.c
12420
peer->vdev_id = vdev_id;
sys/dev/ic/qwz.c
12421
peer->peer_id = peer_id;
sys/dev/ic/qwz.c
12422
peer->ast_hash = ast_hash;
sys/dev/ic/qwz.c
12423
peer->hw_peer_id = hw_peer_id;
sys/dev/ic/qwz.c
12425
ether_addr_copy(peer->addr, mac_addr);
sys/dev/ic/qwz.c
12426
list_add(&peer->list, &ab->peers);
sys/dev/ic/qwz.c
12448
if (nq->peer.peer_id == peer_id)
sys/dev/ic/qwz.c
12473
list_del(&peer->list);
sys/dev/ic/qwz.c
12474
kfree(peer);
sys/dev/ic/qwz.c
14578
struct ath12k_peer *peer;
sys/dev/ic/qwz.c
14592
peer = ath12k_dp_rx_h_find_peer(ar->ab, msdu);
sys/dev/ic/qwz.c
14593
if (peer) {
sys/dev/ic/qwz.c
14595
enctype = peer->sec_type_grp;
sys/dev/ic/qwz.c
14597
enctype = peer->sec_type;
sys/dev/ic/qwz.c
15085
struct ath12k_peer *peer;
sys/dev/ic/qwz.c
15144
peer = ath12k_peer_find_by_id(ab, ppdu_info->peer_id);
sys/dev/ic/qwz.c
15146
if (!peer || !peer->sta) {
sys/dev/ic/qwz.c
15153
arsta = (struct ath12k_sta *)peer->sta->drv_priv;
sys/dev/ic/qwz.c
15156
if (ath12k_debugfs_is_pktlog_peer_valid(ar, peer->addr))
sys/dev/ic/qwz.c
177
nq->peer.peer_id = HAL_INVALID_PEERID;
sys/dev/ic/qwz.c
21397
struct ath12k_peer *peer;
sys/dev/ic/qwz.c
21411
peer = &nq->peer;
sys/dev/ic/qwz.c
21412
if (peer) {
sys/dev/ic/qwz.c
21413
if (peer->peer_id != HAL_INVALID_PEERID &&
sys/dev/ic/qwz.c
21414
peer->vdev_id == param->vdev_id) {
sys/dev/ic/qwz.c
21425
ath12k_peer_rhash_delete(ar->ab, peer);
sys/dev/ic/qwz.c
21456
peer = ath12k_peer_find(ar->ab, param->vdev_id, param->peer_addr);
sys/dev/ic/qwz.c
21457
if (!peer) {
sys/dev/ic/qwz.c
21467
ret = ath12k_peer_rhash_add(ar->ab, peer);
sys/dev/ic/qwz.c
21474
peer->pdev_id = pdev_id;
sys/dev/ic/qwz.c
21476
peer->sta = sta;
sys/dev/ic/qwz.c
21479
arvif->ast_hash = peer->ast_hash;
sys/dev/ic/qwz.c
21480
arvif->ast_idx = peer->hw_peer_id;
sys/dev/ic/qwz.c
21483
peer->sec_type = HAL_ENCRYPT_TYPE_OPEN;
sys/dev/ic/qwz.c
21484
peer->sec_type_grp = HAL_ENCRYPT_TYPE_OPEN;
sys/dev/ic/qwz.c
21490
peer->peer_id);
sys/dev/ic/qwz.c
21802
qwz_peer_rx_tid_delete(struct qwz_softc *sc, struct ath12k_peer *peer,
sys/dev/ic/qwz.c
21806
struct dp_rx_tid *rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwz.c
21862
qwz_peer_frags_flush(struct qwz_softc *sc, struct ath12k_peer *peer)
sys/dev/ic/qwz.c
21870
rx_tid = &peer->rx_tid[i];
sys/dev/ic/qwz.c
21882
qwz_peer_rx_tid_cleanup(struct qwz_softc *sc, struct ath12k_peer *peer)
sys/dev/ic/qwz.c
21890
rx_tid = &peer->rx_tid[i];
sys/dev/ic/qwz.c
21892
qwz_peer_rx_tid_delete(sc, peer, i);
sys/dev/ic/qwz.c
21903
qwz_peer_rx_tid_reo_update(struct qwz_softc *sc, struct ath12k_peer *peer,
sys/dev/ic/qwz.c
21939
struct ath12k_peer *peer = &nq->peer;
sys/dev/ic/qwz.c
21944
rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwz.c
21966
struct ath12k_peer *peer = &nq->peer;
sys/dev/ic/qwz.c
21975
rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwz.c
21979
ret = qwz_peer_rx_tid_reo_update(sc, peer, rx_tid,
sys/dev/ic/qwz.c
22051
struct ath12k_peer *peer = &nq->peer;
sys/dev/ic/qwz.c
22057
for (i = 0; i <= nitems(peer->rx_tid); i++) {
sys/dev/ic/qwz.c
22058
rx_tid = &peer->rx_tid[i];
sys/dev/ic/qwz.c
22065
peer->dp_setup_done = true;
sys/dev/ic/qwz.c
22078
struct ath12k_peer *peer = &nq->peer;
sys/dev/ic/qwz.c
22120
peer = ath12k_peer_find(ab, vdev_id, addr);
sys/dev/ic/qwz.c
22121
if (!peer) {
sys/dev/ic/qwz.c
22128
qwz_peer_rx_tid_delete(sc, peer, tid);
sys/dev/ic/qwz.c
22141
struct ath12k_peer *peer = &nq->peer;
sys/dev/ic/qwz.c
22181
rx_tid = &peer->rx_tid[tid];
sys/dev/ic/qwz.c
22479
struct ath12k_peer *peer = &nq->peer;
sys/dev/ic/qwz.c
22482
qwz_peer_rx_tid_cleanup(sc, peer);
sys/dev/ic/qwz.c
695
struct ath12k_peer *peer = &nq->peer;
sys/dev/ic/qwz.c
706
qwz_peer_frags_flush(sc, peer);
sys/dev/ic/qwzvar.h
2133
struct ath12k_peer peer;
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2389
struct kfd_node *peer;
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2399
peer = peer_pdd->dev;
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2401
peer_pdd = kfd_bind_process_to_device(peer, p);
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2405
ret = amdgpu_amdkfd_gpuvm_map_memory_to_gpu(peer->adev, kgd_mem,
sys/dev/pci/drm/amd/amdkfd/kfd_topology.c
1495
struct kfd_topology_device *peer, int from, int to)
sys/dev/pci/drm/amd/amdkfd/kfd_topology.c
1504
peer->gpu->adev))
sys/dev/pci/drm/amd/amdkfd/kfd_topology.c
1513
if (list_empty(&peer->io_link_props))
sys/dev/pci/drm/amd/amdkfd/kfd_topology.c
1516
iolink2 = list_first_entry(&peer->io_link_props,
sys/dev/pci/drm/amd/amdkfd/kfd_topology.c
1555
peer->node_props.p2p_links_count++;
sys/dev/pci/drm/amd/amdkfd/kfd_topology.c
1556
list_add_tail(&props->list, &peer->p2p_link_props);
sys/dev/pci/drm/amd/amdkfd/kfd_topology.c
1557
ret = kfd_build_p2p_node_entry(peer, props);
sys/dev/pci/drm/drm_linux.c
3908
int peer = OF_peer(node);
sys/dev/pci/drm/drm_linux.c
3910
while (node && !peer) {
sys/dev/pci/drm/drm_linux.c
3913
peer = OF_peer(node);
sys/dev/pci/drm/drm_linux.c
3916
return peer;
sys/dev/pci/if_iwxreg.h
2956
uint8_t peer[ETHER_ADDR_LEN];
sys/kern/sys_pipe.c
298
struct pipe *peer;
sys/kern/sys_pipe.c
302
peer = cpipe->pipe_peer;
sys/kern/sys_pipe.c
303
if (peer == NULL || (peer->pipe_state & PIPE_EOF))
sys/kern/sys_pipe.c
305
return (peer);
sys/net/bfd.c
759
struct bfd_header *peer;
sys/net/bfd.c
765
mp = m_pulldown(m, 0, sizeof(*peer), &offp);
sys/net/bfd.c
769
peer = (struct bfd_header *)(mp->m_data + offp);
sys/net/bfd.c
772
if (( ver = BFD_VER(peer->bfd_ver_diag)) != 1)
sys/net/bfd.c
775
diag = BFD_DIAG(peer->bfd_ver_diag);
sys/net/bfd.c
776
state = BFD_STATE(peer->bfd_sta_flags);
sys/net/bfd.c
777
flags = BFD_FLAGS(peer->bfd_sta_flags);
sys/net/bfd.c
779
if (peer->bfd_length + offp > mp->m_len) {
sys/net/bfd.c
781
peer->bfd_length + offp, mp->m_len);
sys/net/bfd.c
785
if (peer->bfd_detect_multi == 0)
sys/net/bfd.c
789
if (ntohl(peer->bfd_my_discriminator) == 0)
sys/net/bfd.c
791
if (ntohl(peer->bfd_your_discriminator) == 0 &&
sys/net/bfd.c
792
BFD_STATE(peer->bfd_sta_flags) > BFD_STATE_DOWN)
sys/net/bfd.c
794
if ((ntohl(peer->bfd_your_discriminator) != 0) &&
sys/net/bfd.c
795
(ntohl(peer->bfd_your_discriminator) !=
sys/net/bfd.c
818
bfd->bc_neighbor->bn_rdiscr = ntohl(peer->bfd_my_discriminator);
sys/net/bfd.c
824
if (ntohl(peer->bfd_required_min_rx_interval) < BFD_MINIMUM)
sys/net/bfd.c
831
if (ntohl(peer->bfd_required_min_rx_interval) > INT32_MAX)
sys/net/bfd.c
834
ntohl(peer->bfd_required_min_rx_interval);
sys/net/bfd.c
838
htonl(peer->bfd_desired_min_tx_interval);
sys/net/bfd.c
843
ntohl(peer->bfd_required_min_rx_interval);
sys/net/if_wg.c
1158
struct wg_peer *peer = CONTAINER_OF(t, struct wg_peer, p_timers);
sys/net/if_wg.c
1162
task_add(wg_handshake_taskq, &peer->p_send_initiation);
sys/net/if_wg.c
1169
struct wg_peer *peer = CONTAINER_OF(t, struct wg_peer, p_timers);
sys/net/if_wg.c
1177
WGPRINTF(LOG_INFO, peer->p_sc, &peer->p_endpoint_mtx,
sys/net/if_wg.c
1179
"seconds, retrying (try %d)\n", peer->p_id,
sys/net/if_wg.c
1180
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa, ipaddr,
sys/net/if_wg.c
1183
wg_peer_clear_src(peer);
sys/net/if_wg.c
1188
WGPRINTF(LOG_INFO, peer->p_sc, &peer->p_endpoint_mtx,
sys/net/if_wg.c
1190
"retries, giving up\n", peer->p_id,
sys/net/if_wg.c
1191
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa, ipaddr,
sys/net/if_wg.c
1195
mq_purge(&peer->p_stage_queue);
sys/net/if_wg.c
1206
struct wg_peer *peer = CONTAINER_OF(t, struct wg_peer, p_timers);
sys/net/if_wg.c
1208
task_add(wg_crypt_taskq, &peer->p_send_keepalive);
sys/net/if_wg.c
1219
struct wg_peer *peer = CONTAINER_OF(t, struct wg_peer, p_timers);
sys/net/if_wg.c
1222
WGPRINTF(LOG_INFO, peer->p_sc, &peer->p_endpoint_mtx,
sys/net/if_wg.c
1224
"stopped hearing back after %d seconds\n", peer->p_id,
sys/net/if_wg.c
1225
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa, ipaddr,
sys/net/if_wg.c
1227
wg_peer_clear_src(peer);
sys/net/if_wg.c
1236
struct wg_peer *peer = CONTAINER_OF(t, struct wg_peer, p_timers);
sys/net/if_wg.c
1239
WGPRINTF(LOG_INFO, peer->p_sc, &peer->p_endpoint_mtx, "Zeroing out "
sys/net/if_wg.c
1240
"keys for peer %llu (%s)\n", peer->p_id,
sys/net/if_wg.c
1241
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa, ipaddr,
sys/net/if_wg.c
1243
task_add(wg_handshake_taskq, &peer->p_clear_secrets);
sys/net/if_wg.c
1250
struct wg_peer *peer = CONTAINER_OF(t, struct wg_peer, p_timers);
sys/net/if_wg.c
1252
task_add(wg_crypt_taskq, &peer->p_send_keepalive);
sys/net/if_wg.c
1257
wg_peer_send_buf(struct wg_peer *peer, uint8_t *buf, size_t len)
sys/net/if_wg.c
1261
wg_peer_counters_add(peer, len, 0);
sys/net/if_wg.c
1262
wg_timers_event_any_authenticated_packet_traversal(&peer->p_timers);
sys/net/if_wg.c
1263
wg_timers_event_any_authenticated_packet_sent(&peer->p_timers);
sys/net/if_wg.c
1264
wg_peer_get_endpoint(peer, &endpoint);
sys/net/if_wg.c
1265
wg_send_buf(peer->p_sc, &endpoint, buf, len);
sys/net/if_wg.c
1271
struct wg_peer *peer = _peer;
sys/net/if_wg.c
1275
if (wg_timers_check_handshake_last_sent(&peer->p_timers) != ETIMEDOUT)
sys/net/if_wg.c
1278
WGPRINTF(LOG_INFO, peer->p_sc, &peer->p_endpoint_mtx, "Sending "
sys/net/if_wg.c
1279
"handshake initiation to peer %llu (%s)\n", peer->p_id,
sys/net/if_wg.c
1280
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa, ipaddr,
sys/net/if_wg.c
1283
if (noise_create_initiation(&peer->p_remote, &pkt.s_idx, pkt.ue, pkt.es,
sys/net/if_wg.c
1287
cookie_maker_mac(&peer->p_cookie, &pkt.m, &pkt,
sys/net/if_wg.c
1289
wg_peer_send_buf(peer, (uint8_t *)&pkt, sizeof(pkt));
sys/net/if_wg.c
1290
wg_timers_event_handshake_initiated(&peer->p_timers);
sys/net/if_wg.c
1294
wg_send_response(struct wg_peer *peer)
sys/net/if_wg.c
1299
WGPRINTF(LOG_INFO, peer->p_sc, &peer->p_endpoint_mtx, "Sending "
sys/net/if_wg.c
1300
"handshake response to peer %llu (%s)\n", peer->p_id,
sys/net/if_wg.c
1301
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa, ipaddr,
sys/net/if_wg.c
1304
if (noise_create_response(&peer->p_remote, &pkt.s_idx, &pkt.r_idx,
sys/net/if_wg.c
1307
if (noise_remote_begin_session(&peer->p_remote) != 0)
sys/net/if_wg.c
1309
wg_timers_event_session_derived(&peer->p_timers);
sys/net/if_wg.c
1311
cookie_maker_mac(&peer->p_cookie, &pkt.m, &pkt,
sys/net/if_wg.c
1313
wg_timers_event_handshake_responded(&peer->p_timers);
sys/net/if_wg.c
1314
wg_peer_send_buf(peer, (uint8_t *)&pkt, sizeof(pkt));
sys/net/if_wg.c
1338
struct wg_peer *peer = _peer;
sys/net/if_wg.c
1339
struct wg_softc *sc = peer->p_sc;
sys/net/if_wg.c
1343
if (!mq_empty(&peer->p_stage_queue))
sys/net/if_wg.c
1354
t->t_peer = peer;
sys/net/if_wg.c
1359
mq_push(&peer->p_stage_queue, m);
sys/net/if_wg.c
1361
if (noise_remote_ready(&peer->p_remote) == 0) {
sys/net/if_wg.c
1362
wg_queue_out(sc, peer);
sys/net/if_wg.c
1365
wg_timers_event_want_initiation(&peer->p_timers);
sys/net/if_wg.c
1372
struct wg_peer *peer = _peer;
sys/net/if_wg.c
1373
noise_remote_clear(&peer->p_remote);
sys/net/if_wg.c
1383
struct wg_peer *peer;
sys/net/if_wg.c
1438
peer = CONTAINER_OF(remote, struct wg_peer, p_remote);
sys/net/if_wg.c
1441
"from peer %llu (%s)\n", peer->p_id,
sys/net/if_wg.c
1445
wg_peer_counters_add(peer, 0, sizeof(*init));
sys/net/if_wg.c
1446
wg_peer_set_endpoint_from_tag(peer, t);
sys/net/if_wg.c
1447
wg_send_response(peer);
sys/net/if_wg.c
1484
peer = CONTAINER_OF(remote, struct wg_peer, p_remote);
sys/net/if_wg.c
1496
"from peer %llu (%s)\n", peer->p_id,
sys/net/if_wg.c
1500
wg_peer_counters_add(peer, 0, sizeof(*resp));
sys/net/if_wg.c
1501
wg_peer_set_endpoint_from_tag(peer, t);
sys/net/if_wg.c
1502
if (noise_remote_begin_session(&peer->p_remote) == 0) {
sys/net/if_wg.c
1503
wg_timers_event_session_derived(&peer->p_timers);
sys/net/if_wg.c
1504
wg_timers_event_handshake_complete(&peer->p_timers);
sys/net/if_wg.c
1518
peer = CONTAINER_OF(remote, struct wg_peer, p_remote);
sys/net/if_wg.c
1520
if (cookie_maker_consume_payload(&peer->p_cookie,
sys/net/if_wg.c
1538
wg_timers_event_any_authenticated_packet_received(&peer->p_timers);
sys/net/if_wg.c
1539
wg_timers_event_any_authenticated_packet_traversal(&peer->p_timers);
sys/net/if_wg.c
1581
struct wg_peer *peer;
sys/net/if_wg.c
1589
peer = t->t_peer;
sys/net/if_wg.c
1624
res = noise_remote_encrypt(&peer->p_remote, &data->r_idx, &nonce,
sys/net/if_wg.c
1633
wg_timers_event_want_initiation(&peer->p_timers);
sys/net/if_wg.c
1640
WGPRINTF(LOG_DEBUG, sc, &peer->p_endpoint_mtx, "Sending "
sys/net/if_wg.c
1641
"keepalive packet to peer %llu (%s)\n", peer->p_id,
sys/net/if_wg.c
1642
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa, ipaddr,
sys/net/if_wg.c
1655
wg_peer_counters_add(peer, mc->m_pkthdr.len, 0);
sys/net/if_wg.c
1660
task_add(net_tq(sc->sc_if.if_index), &peer->p_deliver_out);
sys/net/if_wg.c
1670
struct wg_peer *peer, *allowed_peer;
sys/net/if_wg.c
1677
peer = t->t_peer;
sys/net/if_wg.c
1691
res = noise_remote_decrypt(&peer->p_remote, data->r_idx, nonce,
sys/net/if_wg.c
1697
wg_timers_event_handshake_complete(&peer->p_timers);
sys/net/if_wg.c
1699
wg_timers_event_want_initiation(&peer->p_timers);
sys/net/if_wg.c
1704
wg_peer_set_endpoint_from_tag(peer, t);
sys/net/if_wg.c
1706
wg_peer_counters_add(peer, 0, m->m_pkthdr.len);
sys/net/if_wg.c
1716
WGPRINTF(LOG_DEBUG, sc, &peer->p_endpoint_mtx, "Receiving "
sys/net/if_wg.c
1717
"keepalive packet from peer %llu (%s)\n", peer->p_id,
sys/net/if_wg.c
1718
sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa,
sys/net/if_wg.c
1757
WGPRINTF(LOG_WARNING, sc, &peer->p_endpoint_mtx, "Packet "
sys/net/if_wg.c
1759
peer->p_id, sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa,
sys/net/if_wg.c
1764
if (__predict_false(peer != allowed_peer)) {
sys/net/if_wg.c
1765
WGPRINTF(LOG_WARNING, sc, &peer->p_endpoint_mtx, "Packet "
sys/net/if_wg.c
1767
peer->p_id, sockaddr_ntop(&peer->p_endpoint.e_remote.r_sa,
sys/net/if_wg.c
1786
task_add(net_tq(sc->sc_if.if_index), &peer->p_deliver_in);
sys/net/if_wg.c
1810
struct wg_peer *peer = _peer;
sys/net/if_wg.c
1811
struct wg_softc *sc = peer->p_sc;
sys/net/if_wg.c
1817
wg_peer_get_endpoint(peer, &endpoint);
sys/net/if_wg.c
1819
while ((m = wg_queue_dequeue(&peer->p_encap_queue, &t)) != NULL) {
sys/net/if_wg.c
1831
&peer->p_timers);
sys/net/if_wg.c
1833
&peer->p_timers);
sys/net/if_wg.c
1836
wg_timers_event_data_sent(&peer->p_timers);
sys/net/if_wg.c
1838
wg_peer_clear_src(peer);
sys/net/if_wg.c
1839
wg_peer_get_endpoint(peer, &endpoint);
sys/net/if_wg.c
1849
struct wg_peer *peer = _peer;
sys/net/if_wg.c
1850
struct wg_softc *sc = peer->p_sc;
sys/net/if_wg.c
1854
while ((m = wg_queue_dequeue(&peer->p_decap_queue, &t)) != NULL) {
sys/net/if_wg.c
1866
&peer->p_timers);
sys/net/if_wg.c
1868
&peer->p_timers);
sys/net/if_wg.c
1892
wg_timers_event_data_received(&peer->p_timers);
sys/net/if_wg.c
1897
wg_queue_in(struct wg_softc *sc, struct wg_peer *peer, struct mbuf *m)
sys/net/if_wg.c
1900
struct wg_queue *serial = &peer->p_decap_queue;
sys/net/if_wg.c
1929
wg_queue_out(struct wg_softc *sc, struct wg_peer *peer)
sys/net/if_wg.c
1932
struct wg_queue *serial = &peer->p_encap_queue;
sys/net/if_wg.c
1943
mq_delist(&peer->p_stage_queue, &ml);
sys/net/if_wg.c
2002
struct wg_peer *peer;
sys/net/if_wg.c
2004
if ((peer = wg_peer_lookup(sc, public)) == NULL)
sys/net/if_wg.c
2006
return &peer->p_remote;
sys/net/if_wg.c
2012
struct wg_peer *peer;
sys/net/if_wg.c
2021
peer = CONTAINER_OF(remote, struct wg_peer, p_remote);
sys/net/if_wg.c
2022
index = SLIST_FIRST(&peer->p_unused_index);
sys/net/if_wg.c
2024
SLIST_REMOVE_HEAD(&peer->p_unused_index, i_unused_entry);
sys/net/if_wg.c
2067
struct wg_peer *peer = NULL;
sys/net/if_wg.c
2079
peer = CONTAINER_OF(iter->i_value, struct wg_peer, p_remote);
sys/net/if_wg.c
2080
KASSERT(peer != NULL);
sys/net/if_wg.c
2081
SLIST_INSERT_HEAD(&peer->p_unused_index, iter, i_unused_entry);
sys/net/if_wg.c
2179
struct wg_peer *peer;
sys/net/if_wg.c
2193
peer = t->t_peer;
sys/net/if_wg.c
2194
if (mq_push(&peer->p_stage_queue, m) != 0)
sys/net/if_wg.c
2196
if (!peer->p_start_onlist) {
sys/net/if_wg.c
2197
SLIST_INSERT_HEAD(&start_list, peer, p_start_list);
sys/net/if_wg.c
2198
peer->p_start_onlist = 1;
sys/net/if_wg.c
2201
SLIST_FOREACH(peer, &start_list, p_start_list) {
sys/net/if_wg.c
2202
if (noise_remote_ready(&peer->p_remote) == 0)
sys/net/if_wg.c
2203
wg_queue_out(sc, peer);
sys/net/if_wg.c
2205
wg_timers_event_want_initiation(&peer->p_timers);
sys/net/if_wg.c
2206
peer->p_start_onlist = 0;
sys/net/if_wg.c
2216
struct wg_peer *peer;
sys/net/if_wg.c
2229
peer = wg_aip_lookup(sc->sc_aip4,
sys/net/if_wg.c
2233
peer = wg_aip_lookup(sc->sc_aip6,
sys/net/if_wg.c
2247
if (peer == NULL) {
sys/net/if_wg.c
2252
af = peer->p_endpoint.e_remote.r_sa.sa_family;
sys/net/if_wg.c
2255
"configured or discovered for peer %llu\n", peer->p_id);
sys/net/if_wg.c
2279
t->t_peer = peer;
sys/net/if_wg.c
2303
struct wg_peer *peer, *tpeer;
sys/net/if_wg.c
2323
TAILQ_FOREACH_SAFE(peer, &sc->sc_peer_seq, p_seq_entry, tpeer)
sys/net/if_wg.c
2324
wg_peer_destroy(peer);
sys/net/if_wg.c
2330
if ((peer = wg_peer_lookup(sc, public)) != NULL)
sys/net/if_wg.c
2331
wg_peer_destroy(peer);
sys/net/if_wg.c
2336
TAILQ_FOREACH(peer, &sc->sc_peer_seq, p_seq_entry) {
sys/net/if_wg.c
2337
noise_remote_precompute(&peer->p_remote);
sys/net/if_wg.c
2338
wg_timers_event_reset_handshake_last_sent(&peer->p_timers);
sys/net/if_wg.c
2339
noise_remote_expire_current(&peer->p_remote);
sys/net/if_wg.c
2357
TAILQ_FOREACH(peer, &sc->sc_peer_seq, p_seq_entry)
sys/net/if_wg.c
2358
wg_peer_clear_src(peer);
sys/net/if_wg.c
2391
if ((peer = wg_peer_lookup(sc, peer_o.p_public)) == NULL) {
sys/net/if_wg.c
2398
if ((peer = wg_peer_create(sc,
sys/net/if_wg.c
2407
wg_peer_destroy(peer);
sys/net/if_wg.c
2412
wg_peer_set_sockaddr(peer, &peer_o.p_sa);
sys/net/if_wg.c
2415
noise_remote_set_psk(&peer->p_remote, peer_o.p_psk);
sys/net/if_wg.c
2418
wg_timers_set_persistent_keepalive(&peer->p_timers,
sys/net/if_wg.c
2422
LIST_FOREACH_SAFE(aip, &peer->p_aip, a_entry, taip) {
sys/net/if_wg.c
2423
wg_aip_remove(sc, peer, &aip->a_data);
sys/net/if_wg.c
2428
strlcpy(peer->p_description, peer_o.p_description,
sys/net/if_wg.c
2435
ret = wg_aip_add(sc, peer, &aip_o);
sys/net/if_wg.c
2466
struct wg_peer *peer;
sys/net/if_wg.c
2507
TAILQ_FOREACH(peer, &sc->sc_peer_seq, p_seq_entry) {
sys/net/if_wg.c
2512
if (noise_remote_keys(&peer->p_remote, peer_o.p_public,
sys/net/if_wg.c
2516
if (wg_timers_get_persistent_keepalive(&peer->p_timers,
sys/net/if_wg.c
2520
if (wg_peer_get_sockaddr(peer, &peer_o.p_sa) == 0)
sys/net/if_wg.c
2523
mtx_enter(&peer->p_counters_mtx);
sys/net/if_wg.c
2524
peer_o.p_txbytes = peer->p_counters_tx;
sys/net/if_wg.c
2525
peer_o.p_rxbytes = peer->p_counters_rx;
sys/net/if_wg.c
2526
mtx_leave(&peer->p_counters_mtx);
sys/net/if_wg.c
2528
wg_timers_get_last_handshake(&peer->p_timers,
sys/net/if_wg.c
2533
LIST_FOREACH(aip, &peer->p_aip, a_entry) {
sys/net/if_wg.c
2541
strlcpy(peer_o.p_description, peer->p_description, IFDESCRSIZE);
sys/net/if_wg.c
2610
struct wg_peer *peer;
sys/net/if_wg.c
2632
TAILQ_FOREACH(peer, &sc->sc_peer_seq, p_seq_entry) {
sys/net/if_wg.c
2633
wg_timers_enable(&peer->p_timers);
sys/net/if_wg.c
2634
wg_queue_out(sc, peer);
sys/net/if_wg.c
2649
struct wg_peer *peer;
sys/net/if_wg.c
2662
TAILQ_FOREACH(peer, &sc->sc_peer_seq, p_seq_entry) {
sys/net/if_wg.c
2663
mq_purge(&peer->p_stage_queue);
sys/net/if_wg.c
2664
wg_timers_disable(&peer->p_timers);
sys/net/if_wg.c
2668
TAILQ_FOREACH(peer, &sc->sc_peer_seq, p_seq_entry) {
sys/net/if_wg.c
2669
noise_remote_clear(&peer->p_remote);
sys/net/if_wg.c
2670
wg_timers_event_reset_handshake_last_sent(&peer->p_timers);
sys/net/if_wg.c
2810
struct wg_peer *peer, *tpeer;
sys/net/if_wg.c
2815
TAILQ_FOREACH_SAFE(peer, &sc->sc_peer_seq, p_seq_entry, tpeer)
sys/net/if_wg.c
2816
wg_peer_destroy(peer);
sys/net/if_wg.c
401
struct wg_peer *peer;
sys/net/if_wg.c
409
if ((peer = pool_get(&wg_peer_pool, PR_NOWAIT)) == NULL)
sys/net/if_wg.c
412
peer->p_id = peer_counter++;
sys/net/if_wg.c
413
peer->p_sc = sc;
sys/net/if_wg.c
415
noise_remote_init(&peer->p_remote, public, &sc->sc_local);
sys/net/if_wg.c
416
cookie_maker_init(&peer->p_cookie, public);
sys/net/if_wg.c
417
wg_timers_init(&peer->p_timers);
sys/net/if_wg.c
419
mtx_init(&peer->p_counters_mtx, IPL_NET);
sys/net/if_wg.c
420
peer->p_counters_tx = 0;
sys/net/if_wg.c
421
peer->p_counters_rx = 0;
sys/net/if_wg.c
423
strlcpy(peer->p_description, "", IFDESCRSIZE);
sys/net/if_wg.c
425
mtx_init(&peer->p_endpoint_mtx, IPL_NET);
sys/net/if_wg.c
426
bzero(&peer->p_endpoint, sizeof(peer->p_endpoint));
sys/net/if_wg.c
428
task_set(&peer->p_send_initiation, wg_send_initiation, peer);
sys/net/if_wg.c
429
task_set(&peer->p_send_keepalive, wg_send_keepalive, peer);
sys/net/if_wg.c
430
task_set(&peer->p_clear_secrets, wg_peer_clear_secrets, peer);
sys/net/if_wg.c
431
task_set(&peer->p_deliver_out, wg_deliver_out, peer);
sys/net/if_wg.c
432
task_set(&peer->p_deliver_in, wg_deliver_in, peer);
sys/net/if_wg.c
434
mq_init(&peer->p_stage_queue, MAX_STAGED_PKT, IPL_NET);
sys/net/if_wg.c
435
mtx_init(&peer->p_encap_queue.q_mtx, IPL_NET);
sys/net/if_wg.c
436
ml_init(&peer->p_encap_queue.q_list);
sys/net/if_wg.c
437
mtx_init(&peer->p_decap_queue.q_mtx, IPL_NET);
sys/net/if_wg.c
438
ml_init(&peer->p_decap_queue.q_list);
sys/net/if_wg.c
440
SLIST_INIT(&peer->p_unused_index);
sys/net/if_wg.c
441
SLIST_INSERT_HEAD(&peer->p_unused_index, &peer->p_index[0],
sys/net/if_wg.c
443
SLIST_INSERT_HEAD(&peer->p_unused_index, &peer->p_index[1],
sys/net/if_wg.c
445
SLIST_INSERT_HEAD(&peer->p_unused_index, &peer->p_index[2],
sys/net/if_wg.c
448
LIST_INIT(&peer->p_aip);
sys/net/if_wg.c
450
peer->p_start_onlist = 0;
sys/net/if_wg.c
456
LIST_INSERT_HEAD(&sc->sc_peer[idx], peer, p_pubkey_entry);
sys/net/if_wg.c
457
TAILQ_INSERT_TAIL(&sc->sc_peer_seq, peer, p_seq_entry);
sys/net/if_wg.c
461
WGPRINTF(LOG_INFO, sc, NULL, "Peer %llu created\n", peer->p_id);
sys/net/if_wg.c
462
return peer;
sys/net/if_wg.c
469
struct wg_peer *peer;
sys/net/if_wg.c
476
LIST_FOREACH(peer, &sc->sc_peer[idx], p_pubkey_entry) {
sys/net/if_wg.c
477
noise_remote_keys(&peer->p_remote, peer_key, NULL);
sys/net/if_wg.c
481
peer = NULL;
sys/net/if_wg.c
484
return peer;
sys/net/if_wg.c
488
wg_peer_destroy(struct wg_peer *peer)
sys/net/if_wg.c
490
struct wg_softc *sc = peer->p_sc;
sys/net/if_wg.c
501
LIST_REMOVE(peer, p_pubkey_entry);
sys/net/if_wg.c
502
TAILQ_REMOVE(&sc->sc_peer_seq, peer, p_seq_entry);
sys/net/if_wg.c
506
wg_timers_disable(&peer->p_timers);
sys/net/if_wg.c
516
LIST_FOREACH_SAFE(aip, &peer->p_aip, a_entry, taip)
sys/net/if_wg.c
517
wg_aip_remove(sc, peer, &aip->a_data);
sys/net/if_wg.c
519
noise_remote_clear(&peer->p_remote);
sys/net/if_wg.c
540
if (!mq_empty(&peer->p_stage_queue))
sys/net/if_wg.c
541
mq_purge(&peer->p_stage_queue);
sys/net/if_wg.c
543
WGPRINTF(LOG_INFO, sc, NULL, "Peer %llu destroyed\n", peer->p_id);
sys/net/if_wg.c
544
explicit_bzero(peer, sizeof(*peer));
sys/net/if_wg.c
545
pool_put(&wg_peer_pool, peer);
sys/net/if_wg.c
549
wg_peer_set_endpoint_from_tag(struct wg_peer *peer, struct wg_tag *t)
sys/net/if_wg.c
551
if (memcmp(&t->t_endpoint, &peer->p_endpoint,
sys/net/if_wg.c
555
mtx_enter(&peer->p_endpoint_mtx);
sys/net/if_wg.c
556
peer->p_endpoint = t->t_endpoint;
sys/net/if_wg.c
557
mtx_leave(&peer->p_endpoint_mtx);
sys/net/if_wg.c
561
wg_peer_set_sockaddr(struct wg_peer *peer, struct sockaddr *remote)
sys/net/if_wg.c
563
mtx_enter(&peer->p_endpoint_mtx);
sys/net/if_wg.c
564
memcpy(&peer->p_endpoint.e_remote, remote,
sys/net/if_wg.c
565
sizeof(peer->p_endpoint.e_remote));
sys/net/if_wg.c
566
bzero(&peer->p_endpoint.e_local, sizeof(peer->p_endpoint.e_local));
sys/net/if_wg.c
567
mtx_leave(&peer->p_endpoint_mtx);
sys/net/if_wg.c
571
wg_peer_get_sockaddr(struct wg_peer *peer, struct sockaddr *remote)
sys/net/if_wg.c
575
mtx_enter(&peer->p_endpoint_mtx);
sys/net/if_wg.c
576
if (peer->p_endpoint.e_remote.r_sa.sa_family != AF_UNSPEC)
sys/net/if_wg.c
577
memcpy(remote, &peer->p_endpoint.e_remote,
sys/net/if_wg.c
578
sizeof(peer->p_endpoint.e_remote));
sys/net/if_wg.c
581
mtx_leave(&peer->p_endpoint_mtx);
sys/net/if_wg.c
586
wg_peer_clear_src(struct wg_peer *peer)
sys/net/if_wg.c
588
mtx_enter(&peer->p_endpoint_mtx);
sys/net/if_wg.c
589
bzero(&peer->p_endpoint.e_local, sizeof(peer->p_endpoint.e_local));
sys/net/if_wg.c
590
mtx_leave(&peer->p_endpoint_mtx);
sys/net/if_wg.c
594
wg_peer_get_endpoint(struct wg_peer *peer, struct wg_endpoint *endpoint)
sys/net/if_wg.c
596
mtx_enter(&peer->p_endpoint_mtx);
sys/net/if_wg.c
597
memcpy(endpoint, &peer->p_endpoint, sizeof(*endpoint));
sys/net/if_wg.c
598
mtx_leave(&peer->p_endpoint_mtx);
sys/net/if_wg.c
602
wg_peer_counters_add(struct wg_peer *peer, uint64_t tx, uint64_t rx)
sys/net/if_wg.c
604
mtx_enter(&peer->p_counters_mtx);
sys/net/if_wg.c
605
peer->p_counters_tx += tx;
sys/net/if_wg.c
606
peer->p_counters_rx += rx;
sys/net/if_wg.c
607
mtx_leave(&peer->p_counters_mtx);
sys/net/if_wg.c
611
wg_aip_add(struct wg_softc *sc, struct wg_peer *peer, struct wg_aip_io *d)
sys/net/if_wg.c
640
aip->a_peer = peer;
sys/net/if_wg.c
642
LIST_INSERT_HEAD(&peer->p_aip, aip, a_entry);
sys/net/if_wg.c
647
if (aip->a_peer != peer) {
sys/net/if_wg.c
649
LIST_INSERT_HEAD(&peer->p_aip, aip, a_entry);
sys/net/if_wg.c
650
aip->a_peer = peer;
sys/net/if_wg.c
670
wg_aip_remove(struct wg_softc *sc, struct wg_peer *peer, struct wg_aip_io *d)
sys/net/if_wg.c
696
} else if (((struct wg_aip *) node)->a_peer != peer) {
sys/net/pipex.c
1254
((struct ether_header *)session->peer.sa.sa_data)->ether_dhost,
sys/net/pipex.c
1341
memcpy(eh, session->peer.sa.sa_data, sizeof(*eh));
sys/net/pipex.c
1406
ip->ip_dst = session->peer.sin4.sin_addr;
sys/net/pipex.c
1505
if (!(session->peer.sa.sa_family == AF_INET &&
sys/net/pipex.c
1506
session->peer.sin4.sin_addr.s_addr == ip.ip_src.s_addr)) {
sys/net/pipex.c
1748
if (pipex_sockaddr_compar_addr(&session->peer.sa, sa) != 0)
sys/net/pipex.c
1850
((session->peer.sin6.sin6_family == AF_INET6)
sys/net/pipex.c
1871
hlen = (session->peer.sin6.sin6_family == AF_INET6)
sys/net/pipex.c
1903
udp->uh_dport = session->peer.sin6.sin6_port;
sys/net/pipex.c
1912
switch (session->peer.sin6.sin6_family) {
sys/net/pipex.c
1917
ip->ip_dst = session->peer.sin4.sin_addr;
sys/net/pipex.c
1949
in6_embedscope(&ip6->ip6_dst, &session->peer.sin6, NULL, NULL);
sys/net/pipex.c
2013
if (session->peer.sa.sa_family == AF_INET &&
sys/net/pipex.c
2014
session->peer.sin4.sin_addr.s_addr ==
sys/net/pipex.c
2020
if (session->peer.sa.sa_family == AF_INET6 &&
sys/net/pipex.c
2021
IN6_ARE_ADDR_EQUAL(&session->peer.sin6.sin6_addr,
sys/net/pipex.c
2257
if (pipex_sockaddr_compar_addr(&session->peer.sa, sa) != 0)
sys/net/pipex.c
297
memcpy(&session->peer, &req->pr_peer_address,
sys/net/pipex.c
298
MIN(req->pr_peer_address.ss_len, sizeof(session->peer)));
sys/net/pipex.c
427
pipex_sockaddr_hash_key(&session->peer.sa));
sys/net/pipex_local.h
236
} peer, local; /* [I] */
sys/net/trunklacp.c
1575
struct lacp_peerinfo peer;
sys/net/trunklacp.c
1578
lacp_default_partner(lsc, &peer);
sys/net/trunklacp.c
1581
lacp_sm_rx_update_selected_from_peerinfo(lp, &peer);
sys/net/trunklacp.c
1795
lacp_format_partner(const struct lacp_peerinfo *peer, char *buf, size_t buflen)
sys/net/trunklacp.c
1801
lacp_format_systemid(&peer->lip_systemid, sysid, sizeof(sysid)),
sys/net/trunklacp.c
1802
ntohs(peer->lip_key),
sys/net/trunklacp.c
1803
lacp_format_portid(&peer->lip_portid, portid, sizeof(portid)));
sys/net/trunklacp.c
192
lacp_default_partner(struct lacp_softc *lsc, struct lacp_peerinfo *peer)
sys/net/trunklacp.c
194
peer->lip_systemid.lsi_prio = lsc->lsc_sys_prio;
sys/net/trunklacp.c
195
peer->lip_key = 0;
sys/net/trunklacp.c
196
peer->lip_portid.lpi_prio = lsc->lsc_port_prio;
sys/net/trunklacp.c
197
peer->lip_state = LACP_STATE_SYNC | LACP_STATE_AGGREGATION |
sys/net/trunklacp.h
281
#define LACP_SYS_PRI(peer) (peer).lip_systemid.lsi_prio
usr.bin/openssl/pkeyutl.c
501
EVP_PKEY *peer = NULL;
usr.bin/openssl/pkeyutl.c
508
peer = load_pubkey(bio_err, file, cfg.peerform, 0, NULL,
usr.bin/openssl/pkeyutl.c
511
if (!peer) {
usr.bin/openssl/pkeyutl.c
516
ret = EVP_PKEY_derive_set_peer(cfg.ctx, peer);
usr.bin/openssl/pkeyutl.c
518
EVP_PKEY_free(peer);
usr.bin/openssl/s_cb.c
802
} peer;
usr.bin/openssl/s_cb.c
810
(void) BIO_dgram_get_peer(SSL_get_rbio(ssl), &peer);
usr.bin/openssl/s_cb.c
814
switch (peer.sa.sa_family) {
usr.bin/openssl/s_cb.c
817
length += sizeof(peer.s4.sin_port);
usr.bin/openssl/s_cb.c
821
length += sizeof(peer.s6.sin6_port);
usr.bin/openssl/s_cb.c
833
switch (peer.sa.sa_family) {
usr.bin/openssl/s_cb.c
835
memcpy(buffer, &peer.s4.sin_port, sizeof(peer.s4.sin_port));
usr.bin/openssl/s_cb.c
836
memcpy(buffer + sizeof(peer.s4.sin_port),
usr.bin/openssl/s_cb.c
837
&peer.s4.sin_addr, sizeof(struct in_addr));
usr.bin/openssl/s_cb.c
840
memcpy(buffer, &peer.s6.sin6_port, sizeof(peer.s6.sin6_port));
usr.bin/openssl/s_cb.c
841
memcpy(buffer + sizeof(peer.s6.sin6_port),
usr.bin/openssl/s_cb.c
842
&peer.s6.sin6_addr, sizeof(struct in6_addr));
usr.bin/openssl/s_cb.c
870
} peer;
usr.bin/openssl/s_cb.c
877
(void) BIO_dgram_get_peer(SSL_get_rbio(ssl), &peer);
usr.bin/openssl/s_cb.c
881
switch (peer.sa.sa_family) {
usr.bin/openssl/s_cb.c
884
length += sizeof(peer.s4.sin_port);
usr.bin/openssl/s_cb.c
888
length += sizeof(peer.s6.sin6_port);
usr.bin/openssl/s_cb.c
900
switch (peer.sa.sa_family) {
usr.bin/openssl/s_cb.c
902
memcpy(buffer, &peer.s4.sin_port, sizeof(peer.s4.sin_port));
usr.bin/openssl/s_cb.c
903
memcpy(buffer + sizeof(peer.s4.sin_port),
usr.bin/openssl/s_cb.c
904
&peer.s4.sin_addr, sizeof(struct in_addr));
usr.bin/openssl/s_cb.c
907
memcpy(buffer, &peer.s6.sin6_port, sizeof(peer.s6.sin6_port));
usr.bin/openssl/s_cb.c
908
memcpy(buffer + sizeof(peer.s6.sin6_port),
usr.bin/openssl/s_cb.c
909
&peer.s6.sin6_addr, sizeof(struct in6_addr));
usr.bin/openssl/s_client.c
1110
if (getsockname(s, (struct sockaddr *)&peer,
usr.bin/openssl/s_client.c
1118
(void) BIO_ctrl_set_connected(sbio, 1, &peer);
usr.bin/openssl/s_client.c
1658
X509 *peer = NULL;
usr.bin/openssl/s_client.c
1691
peer = SSL_get_peer_certificate(s);
usr.bin/openssl/s_client.c
1692
if (peer != NULL) {
usr.bin/openssl/s_client.c
1696
PEM_write_bio_X509(bio, peer);
usr.bin/openssl/s_client.c
1698
X509_NAME_oneline(X509_get_subject_name(peer),
usr.bin/openssl/s_client.c
1701
X509_NAME_oneline(X509_get_issuer_name(peer),
usr.bin/openssl/s_client.c
1761
if (peer != NULL) {
usr.bin/openssl/s_client.c
1764
pktmp = X509_get0_pubkey(peer);
usr.bin/openssl/s_client.c
1838
X509_free(peer);
usr.bin/openssl/s_client.c
885
struct sockaddr_storage peer;
usr.bin/openssl/s_client.c
886
int peerlen = sizeof(peer);
usr.bin/openssl/s_server.c
1799
X509 *peer;
usr.bin/openssl/s_server.c
1821
peer = SSL_get_peer_certificate(con);
usr.bin/openssl/s_server.c
1822
if (peer != NULL) {
usr.bin/openssl/s_server.c
1824
PEM_write_bio_X509(bio_s_out, peer);
usr.bin/openssl/s_server.c
1825
X509_NAME_oneline(X509_get_subject_name(peer), buf, sizeof buf);
usr.bin/openssl/s_server.c
1827
X509_NAME_oneline(X509_get_issuer_name(peer), buf, sizeof buf);
usr.bin/openssl/s_server.c
1829
X509_free(peer);
usr.bin/openssl/s_server.c
1979
X509 *peer;
usr.bin/openssl/s_server.c
2047
peer = SSL_get_peer_certificate(con);
usr.bin/openssl/s_server.c
2048
if (peer != NULL) {
usr.bin/openssl/s_server.c
2050
X509_print(io, peer);
usr.bin/openssl/s_server.c
2051
PEM_write_bio_X509(io, peer);
usr.bin/openssl/sess_id.c
156
X509 *peer = NULL;
usr.bin/openssl/sess_id.c
179
peer = SSL_SESSION_get0_peer(x);
usr.bin/openssl/sess_id.c
211
if (peer == NULL)
usr.bin/openssl/sess_id.c
214
X509_print(out, peer);
usr.bin/openssl/sess_id.c
231
} else if (!cfg.noout && (peer != NULL)) {
usr.bin/openssl/sess_id.c
234
i = (int) i2d_X509_bio(out, peer);
usr.bin/openssl/sess_id.c
236
i = PEM_write_bio_X509(out, peer);
usr.bin/sndiod/midi.c
124
struct midi *peer;
usr.bin/sndiod/midi.c
128
peer = midi_ep + i;
usr.bin/sndiod/midi.c
129
if (peer->txmask & ep->self) {
usr.bin/sndiod/midi.c
130
peer->txmask &= ~ep->self;
usr.bin/sndiod/midi.c
131
midi_tickets(peer);
usr.bin/sndiod/midi.c
148
midi_link(struct midi *ep, struct midi *peer)
usr.bin/sndiod/midi.c
151
ep->txmask |= peer->self;
usr.bin/sndiod/midi.c
162
peer->txmask |= ep->self;
usr.bin/sndiod/midi.c
189
struct midi *peer;
usr.bin/sndiod/midi.c
207
peer = midi_ep + i;
usr.bin/sndiod/midi.c
208
peer->txmask |= ep->self;
usr.bin/ssh/kex.c
1009
kex->failed_choice = peer[nenc];
usr.bin/ssh/kex.c
1010
peer[nenc] = NULL;
usr.bin/ssh/kex.c
1018
kex->failed_choice = peer[nmac];
usr.bin/ssh/kex.c
1019
peer[nmac] = NULL;
usr.bin/ssh/kex.c
1024
kex->failed_choice = peer[ncomp];
usr.bin/ssh/kex.c
1025
peer[ncomp] = NULL;
usr.bin/ssh/kex.c
1051
if (first_kex_follows && !proposals_match(my, peer))
usr.bin/ssh/kex.c
1056
kex_prop_free(peer);
usr.bin/ssh/kex.c
567
sshbuf_reset(kex->peer);
usr.bin/ssh/kex.c
628
if ((r = sshbuf_put(kex->peer, ptr, dlen)) != 0)
usr.bin/ssh/kex.c
678
(kex->peer = sshbuf_new()) == NULL ||
usr.bin/ssh/kex.c
735
sshbuf_free(kex->peer);
usr.bin/ssh/kex.c
898
proposals_match(char *my[PROPOSAL_MAX], char *peer[PROPOSAL_MAX])
usr.bin/ssh/kex.c
909
if ((p = strchr(peer[*idx], ',')) != NULL)
usr.bin/ssh/kex.c
911
if (strcmp(my[*idx], peer[*idx]) != 0) {
usr.bin/ssh/kex.c
913
my[*idx], peer[*idx]);
usr.bin/ssh/kex.c
922
kexalgs_contains(char **peer, const char *ext)
usr.bin/ssh/kex.c
924
return kex_has_any_alg(peer[PROPOSAL_KEX_ALGS], ext);
usr.bin/ssh/kex.c
932
char **my = NULL, **peer = NULL;
usr.bin/ssh/kex.c
942
if ((r = kex_buf2prop(kex->peer, &first_kex_follows, &peer)) != 0)
usr.bin/ssh/kex.c
946
cprop=peer;
usr.bin/ssh/kex.c
950
sprop=peer;
usr.bin/ssh/kex.c
956
kex->ext_info_c = kexalgs_contains(peer, "ext-info-c");
usr.bin/ssh/kex.c
957
kex->kex_strict = kexalgs_contains(peer,
usr.bin/ssh/kex.c
960
kex->ext_info_s = kexalgs_contains(peer, "ext-info-s");
usr.bin/ssh/kex.c
961
kex->kex_strict = kexalgs_contains(peer,
usr.bin/ssh/kex.c
975
if (kex_has_any_alg(peer[PROPOSAL_SERVER_HOST_KEY_ALGS],
usr.bin/ssh/kex.c
978
if (kex_has_any_alg(peer[PROPOSAL_SERVER_HOST_KEY_ALGS],
usr.bin/ssh/kex.c
986
kex->failed_choice = peer[PROPOSAL_KEX_ALGS];
usr.bin/ssh/kex.c
987
peer[PROPOSAL_KEX_ALGS] = NULL;
usr.bin/ssh/kex.c
992
kex->failed_choice = peer[PROPOSAL_SERVER_HOST_KEY_ALGS];
usr.bin/ssh/kex.c
993
peer[PROPOSAL_SERVER_HOST_KEY_ALGS] = NULL;
usr.bin/ssh/kex.h
156
struct sshbuf *peer;
usr.bin/ssh/kexgen.c
214
kex->peer,
usr.bin/ssh/kexgen.c
343
kex->peer,
usr.bin/ssh/kexgexc.c
189
kex->peer,
usr.bin/ssh/kexgexs.c
166
kex->peer,
usr.bin/ssh/packet.c
2396
(r = sshbuf_put_stringb(m, kex->peer)) != 0 ||
usr.bin/ssh/packet.c
2563
(r = sshbuf_get_stringb(m, kex->peer)) != 0 ||
usr.bin/tftp/tftp.c
130
struct sockaddr_storage from, peer;
usr.bin/tftp/tftp.c
146
memcpy(&peer, &peeraddr, peeraddr.ss_len);
usr.bin/tftp/tftp.c
156
nak(errno + 100, (struct sockaddr *)&peer);
usr.bin/tftp/tftp.c
174
(struct sockaddr *)&peer,
usr.bin/tftp/tftp.c
175
peer.ss_len) != size + 4) {
usr.bin/tftp/tftp.c
219
peer = from;
usr.bin/tftp/tftp.c
276
struct sockaddr_storage from, peer;
usr.bin/tftp/tftp.c
295
memcpy(&peer, &peeraddr, peeraddr.ss_len);
usr.bin/tftp/tftp.c
322
(struct sockaddr *)&peer,
usr.bin/tftp/tftp.c
323
peer.ss_len) != size) {
usr.bin/tftp/tftp.c
366
peer = from;
usr.bin/tftp/tftp.c
402
nak(errno + 100, (struct sockaddr *)&peer);
usr.bin/tftp/tftp.c
412
(void)sendto(f, ackbuf, 4, 0, (struct sockaddr *)&peer,
usr.bin/tftp/tftp.c
413
peer.ss_len);
usr.bin/tftp/tftp.c
481
nak(int error, struct sockaddr *peer)
usr.bin/tftp/tftp.c
502
if (sendto(f, ackbuf, length, 0, peer,
usr.bin/tftp/tftp.c
503
peer->sa_len) != length)
usr.bin/tftp/tftp.c
633
struct sockaddr_storage peer;
usr.bin/tftp/tftp.c
634
memcpy(&peer, &peeraddr, peeraddr.ss_len);
usr.bin/tftp/tftp.c
647
nak(EOPTNEG, (struct sockaddr *)&peer);
usr.bin/tftp/tftp.c
659
nak(EOPTNEG, (struct sockaddr *)&peer);
usr.bin/tmux/cmd-attach-session.c
156
proc_send(c->peer, MSG_READY, -1, NULL, 0);
usr.bin/tmux/cmd-new-session.c
329
proc_send(c->peer, MSG_READY, -1, NULL, 0);
usr.bin/tmux/cmd-queue.c
574
uid = proc_get_peer_uid(c->peer);
usr.bin/tmux/cmd-server-access.c
59
uid = proc_get_peer_uid(loop->peer);
usr.bin/tmux/file.c
100
cf->peer = peer;
usr.bin/tmux/file.c
130
cf->peer = cf->c->peer;
usr.bin/tmux/file.c
227
proc_send(c->peer, MSG_WRITE_OPEN, -1, &msg, sizeof msg);
usr.bin/tmux/file.c
254
proc_send(c->peer, MSG_WRITE_OPEN, -1, &msg, sizeof msg);
usr.bin/tmux/file.c
284
proc_send(c->peer, MSG_WRITE_OPEN, -1, &msg, sizeof msg);
usr.bin/tmux/file.c
355
if (proc_send(cf->peer, MSG_WRITE_OPEN, -1, msg, msglen) != 0) {
usr.bin/tmux/file.c
429
if (proc_send(cf->peer, MSG_READ_OPEN, -1, msg, msglen) != 0) {
usr.bin/tmux/file.c
457
proc_send(cf->peer, MSG_READ_CANCEL, -1, &msg, sizeof msg);
usr.bin/tmux/file.c
490
if (proc_send(cf->peer, MSG_WRITE, -1, msg, msglen) != 0)
usr.bin/tmux/file.c
502
proc_send(cf->peer, MSG_WRITE_CLOSE, -1, &close, sizeof close);
usr.bin/tmux/file.c
568
file_write_open(struct client_files *files, struct tmuxpeer *peer,
usr.bin/tmux/file.c
593
cf = file_create_with_peer(peer, files, msg->stream, cb, cbdata);
usr.bin/tmux/file.c
627
proc_send(peer, MSG_WRITE_READY, -1, &reply, sizeof reply);
usr.bin/tmux/file.c
687
proc_send(cf->peer, MSG_READ_DONE, -1, &msg, sizeof msg);
usr.bin/tmux/file.c
720
proc_send(cf->peer, MSG_READ, -1, msg, msglen);
usr.bin/tmux/file.c
729
file_read_open(struct client_files *files, struct tmuxpeer *peer,
usr.bin/tmux/file.c
754
cf = file_create_with_peer(peer, files, msg->stream, cb, cbdata);
usr.bin/tmux/file.c
788
proc_send(peer, MSG_READ_DONE, -1, &reply, sizeof reply);
usr.bin/tmux/file.c
83
file_create_with_peer(struct tmuxpeer *peer, struct client_files *files,
usr.bin/tmux/format.c
1610
uid = proc_get_peer_uid(ft->c->peer);
usr.bin/tmux/format.c
1627
uid = proc_get_peer_uid(ft->c->peer);
usr.bin/tmux/proc.c
101
peer->dispatchcb(&imsg, peer->arg);
usr.bin/tmux/proc.c
107
if (imsgbuf_write(&peer->ibuf) == -1) {
usr.bin/tmux/proc.c
108
peer->dispatchcb(NULL, peer->arg);
usr.bin/tmux/proc.c
113
if ((peer->flags & PEER_BAD) && imsgbuf_queuelen(&peer->ibuf) == 0) {
usr.bin/tmux/proc.c
114
peer->dispatchcb(NULL, peer->arg);
usr.bin/tmux/proc.c
118
proc_update_event(peer);
usr.bin/tmux/proc.c
130
peer_check_version(struct tmuxpeer *peer, struct imsg *imsg)
usr.bin/tmux/proc.c
136
log_debug("peer %p bad version %d", peer, version);
usr.bin/tmux/proc.c
138
proc_send(peer, MSG_VERSION, -1, NULL, 0);
usr.bin/tmux/proc.c
139
peer->flags |= PEER_BAD;
usr.bin/tmux/proc.c
147
proc_update_event(struct tmuxpeer *peer)
usr.bin/tmux/proc.c
151
event_del(&peer->event);
usr.bin/tmux/proc.c
154
if (imsgbuf_queuelen(&peer->ibuf) > 0)
usr.bin/tmux/proc.c
156
event_set(&peer->event, peer->ibuf.fd, events, proc_event_cb, peer);
usr.bin/tmux/proc.c
158
event_add(&peer->event, NULL);
usr.bin/tmux/proc.c
162
proc_send(struct tmuxpeer *peer, enum msgtype type, int fd, const void *buf,
usr.bin/tmux/proc.c
165
struct imsgbuf *ibuf = &peer->ibuf;
usr.bin/tmux/proc.c
169
if (peer->flags & PEER_BAD)
usr.bin/tmux/proc.c
171
log_debug("sending message %d to peer %p (%zu bytes)", type, peer, len);
usr.bin/tmux/proc.c
176
proc_update_event(peer);
usr.bin/tmux/proc.c
217
struct tmuxpeer *peer;
usr.bin/tmux/proc.c
219
TAILQ_FOREACH(peer, &tp->peers, entry)
usr.bin/tmux/proc.c
220
imsgbuf_flush(&peer->ibuf);
usr.bin/tmux/proc.c
299
struct tmuxpeer *peer;
usr.bin/tmux/proc.c
302
peer = xcalloc(1, sizeof *peer);
usr.bin/tmux/proc.c
303
peer->parent = tp;
usr.bin/tmux/proc.c
305
peer->dispatchcb = dispatchcb;
usr.bin/tmux/proc.c
306
peer->arg = arg;
usr.bin/tmux/proc.c
308
if (imsgbuf_init(&peer->ibuf, fd) == -1)
usr.bin/tmux/proc.c
310
imsgbuf_allow_fdpass(&peer->ibuf);
usr.bin/tmux/proc.c
311
event_set(&peer->event, fd, EV_READ, proc_event_cb, peer);
usr.bin/tmux/proc.c
313
if (getpeereid(fd, &peer->uid, &gid) != 0)
usr.bin/tmux/proc.c
314
peer->uid = (uid_t)-1;
usr.bin/tmux/proc.c
316
log_debug("add peer %p: %d (%p)", peer, fd, arg);
usr.bin/tmux/proc.c
317
TAILQ_INSERT_TAIL(&tp->peers, peer, entry);
usr.bin/tmux/proc.c
319
proc_update_event(peer);
usr.bin/tmux/proc.c
320
return (peer);
usr.bin/tmux/proc.c
324
proc_remove_peer(struct tmuxpeer *peer)
usr.bin/tmux/proc.c
326
TAILQ_REMOVE(&peer->parent->peers, peer, entry);
usr.bin/tmux/proc.c
327
log_debug("remove peer %p", peer);
usr.bin/tmux/proc.c
329
event_del(&peer->event);
usr.bin/tmux/proc.c
330
imsgbuf_clear(&peer->ibuf);
usr.bin/tmux/proc.c
332
close(peer->ibuf.fd);
usr.bin/tmux/proc.c
333
free(peer);
usr.bin/tmux/proc.c
337
proc_kill_peer(struct tmuxpeer *peer)
usr.bin/tmux/proc.c
339
peer->flags |= PEER_BAD;
usr.bin/tmux/proc.c
343
proc_flush_peer(struct tmuxpeer *peer)
usr.bin/tmux/proc.c
345
imsgbuf_flush(&peer->ibuf);
usr.bin/tmux/proc.c
379
proc_get_peer_uid(struct tmuxpeer *peer)
usr.bin/tmux/proc.c
381
return (peer->uid);
usr.bin/tmux/proc.c
75
struct tmuxpeer *peer = arg;
usr.bin/tmux/proc.c
79
if (!(peer->flags & PEER_BAD) && (events & EV_READ)) {
usr.bin/tmux/proc.c
80
if (imsgbuf_read(&peer->ibuf) != 1) {
usr.bin/tmux/proc.c
81
peer->dispatchcb(NULL, peer->arg);
usr.bin/tmux/proc.c
85
if ((n = imsg_get(&peer->ibuf, &imsg)) == -1) {
usr.bin/tmux/proc.c
86
peer->dispatchcb(NULL, peer->arg);
usr.bin/tmux/proc.c
91
log_debug("peer %p message %d", peer, imsg.hdr.type);
usr.bin/tmux/proc.c
93
if (peer_check_version(peer, &imsg) != 0) {
usr.bin/tmux/server-acl.c
134
uid = proc_get_peer_uid(c->peer);
usr.bin/tmux/server-acl.c
153
uid = proc_get_peer_uid(c->peer);
usr.bin/tmux/server-acl.c
169
uid = proc_get_peer_uid(c->peer);
usr.bin/tmux/server-client.c
1886
proc_send(c->peer, MSG_EXIT, -1, data, size);
usr.bin/tmux/server-client.c
1890
proc_send(c->peer, MSG_SHUTDOWN, -1, NULL, 0);
usr.bin/tmux/server-client.c
1893
proc_send(c->peer, c->exit_msgtype, -1, name, strlen(name) + 1);
usr.bin/tmux/server-client.c
2191
proc_send(c->peer, MSG_EXITED, -1, NULL, 0);
usr.bin/tmux/server-client.c
2237
proc_kill_peer(c->peer);
usr.bin/tmux/server-client.c
2505
proc_send(c->peer, MSG_SHELL, -1, shell, strlen(shell) + 1);
usr.bin/tmux/server-client.c
2507
proc_kill_peer(c->peer);
usr.bin/tmux/server-client.c
2589
proc_send(c->peer, MSG_FLAGS, -1, &c->flags, sizeof c->flags);
usr.bin/tmux/server-client.c
298
c->peer = proc_add_peer(server_proc, fd, server_client_dispatch, c);
usr.bin/tmux/server-client.c
499
proc_remove_peer(c->peer);
usr.bin/tmux/server-client.c
500
c->peer = NULL;
usr.bin/tmux/server-client.c
556
proc_send(c->peer, MSG_SUSPEND, -1, NULL, 0);
usr.bin/tmux/server-client.c
600
proc_send(c->peer, MSG_EXEC, -1, msg, cmdsize + shellsize);
usr.bin/tmux/server-fn.c
180
proc_send(c->peer, MSG_LOCK, -1, cmd, strlen(cmd) + 1);
usr.sbin/bgpctl/bgpctl.c
463
struct peer p;
usr.sbin/bgpctl/bgpctl.h
23
void (*neighbor)(struct peer *, struct parse_result *);
usr.sbin/bgpctl/output.c
209
show_neighbor_msgstats(struct peer *p)
usr.sbin/bgpctl/output.c
261
show_neighbor_full(struct peer *p, struct parse_result *res)
usr.sbin/bgpctl/output.c
341
if (p->capa.peer.mp[i])
usr.sbin/bgpctl/output.c
343
if (p->capa.peer.add_path[i])
usr.sbin/bgpctl/output.c
346
if (hascapamp || hascapaap || p->capa.peer.grestart.restart ||
usr.sbin/bgpctl/output.c
347
p->capa.peer.refresh || p->capa.peer.enhanced_rr ||
usr.sbin/bgpctl/output.c
348
p->capa.peer.as4byte || p->capa.peer.policy) {
usr.sbin/bgpctl/output.c
351
show_neighbor_capa_mp(&p->capa.peer);
usr.sbin/bgpctl/output.c
352
if (p->capa.peer.as4byte)
usr.sbin/bgpctl/output.c
354
if (p->capa.peer.refresh)
usr.sbin/bgpctl/output.c
356
if (p->capa.peer.enhanced_rr)
usr.sbin/bgpctl/output.c
358
if (p->capa.peer.ext_msg)
usr.sbin/bgpctl/output.c
360
if (p->capa.peer.grestart.restart)
usr.sbin/bgpctl/output.c
361
show_neighbor_capa_restart(&p->capa.peer);
usr.sbin/bgpctl/output.c
363
show_neighbor_capa_add_path(&p->capa.peer);
usr.sbin/bgpctl/output.c
364
if (p->capa.peer.policy)
usr.sbin/bgpctl/output.c
433
show_neighbor(struct peer *p, struct parse_result *res)
usr.sbin/bgpctl/output.c
99
show_summary(struct peer *p)
usr.sbin/bgpctl/output_json.c
142
json_neighbor_stats(struct peer *p)
usr.sbin/bgpctl/output_json.c
236
json_neighbor_full(struct peer *p)
usr.sbin/bgpctl/output_json.c
310
json_neighbor_capabilities(&p->capa.peer);
usr.sbin/bgpctl/output_json.c
327
json_neighbor(struct peer *p, struct parse_result *res)
usr.sbin/bgpctl/output_ometric.c
190
ometric_neighbor_stats(struct peer *p, struct parse_result *arg)
usr.sbin/bgpd/bgpd.c
130
struct peer *p;
usr.sbin/bgpd/bgpd.c
593
struct peer *p;
usr.sbin/bgpd/bgpd.c
843
struct peer *p;
usr.sbin/bgpd/bgpd.h
1271
struct filter_peers peer;
usr.sbin/bgpd/bgpd.h
1506
int control_imsg_relay(struct imsg *, struct peer *);
usr.sbin/bgpd/bgpd.h
261
struct peer;
usr.sbin/bgpd/bgpd.h
262
RB_HEAD(peer_head, peer);
usr.sbin/bgpd/config.c
258
struct peer *p, *next;
usr.sbin/bgpd/config.c
302
struct peer *p, *np, *nextp;
usr.sbin/bgpd/config.c
484
struct peer *p, *nextp;
usr.sbin/bgpd/control.c
247
struct peer *p;
usr.sbin/bgpd/control.c
323
p, sizeof(struct peer));
usr.sbin/bgpd/control.c
545
control_imsg_relay(struct imsg *imsg, struct peer *p)
usr.sbin/bgpd/control.c
561
struct peer peer;
usr.sbin/bgpd/control.c
570
peer = *p;
usr.sbin/bgpd/control.c
571
explicit_bzero(&peer.auth_conf, sizeof(peer.auth_conf));
usr.sbin/bgpd/control.c
572
peer.auth_conf.method = p->auth_conf.method;
usr.sbin/bgpd/control.c
573
peer.stats.prefix_cnt = stats.prefix_cnt;
usr.sbin/bgpd/control.c
574
peer.stats.prefix_out_cnt = stats.prefix_out_cnt;
usr.sbin/bgpd/control.c
575
peer.stats.prefix_rcvd_update = stats.prefix_rcvd_update;
usr.sbin/bgpd/control.c
576
peer.stats.prefix_rcvd_withdraw = stats.prefix_rcvd_withdraw;
usr.sbin/bgpd/control.c
577
peer.stats.prefix_rcvd_eor = stats.prefix_rcvd_eor;
usr.sbin/bgpd/control.c
578
peer.stats.prefix_sent_update = stats.prefix_sent_update;
usr.sbin/bgpd/control.c
579
peer.stats.prefix_sent_withdraw = stats.prefix_sent_withdraw;
usr.sbin/bgpd/control.c
580
peer.stats.prefix_sent_eor = stats.prefix_sent_eor;
usr.sbin/bgpd/control.c
581
peer.stats.pending_update = stats.pending_update;
usr.sbin/bgpd/control.c
582
peer.stats.pending_withdraw = stats.pending_withdraw;
usr.sbin/bgpd/control.c
583
peer.stats.rib_entry_count = stats.rib_entry_count;
usr.sbin/bgpd/control.c
584
peer.stats.ibufq_msg_count = stats.ibufq_msg_count;
usr.sbin/bgpd/control.c
585
peer.stats.ibufq_payload_size = stats.ibufq_payload_size;
usr.sbin/bgpd/control.c
586
peer.stats.msg_queue_len = msgbuf_queuelen(p->wbuf);
usr.sbin/bgpd/control.c
589
&peer, sizeof(peer));
usr.sbin/bgpd/logmsg.c
103
p = log_fmt_peer(peer);
usr.sbin/bgpd/logmsg.c
114
log_statechange(struct peer *peer, enum session_state ostate,
usr.sbin/bgpd/logmsg.c
118
if (peer->state == STATE_CONNECT && peer->prev_state == STATE_ACTIVE &&
usr.sbin/bgpd/logmsg.c
121
if (peer->state == STATE_ACTIVE && peer->prev_state == STATE_CONNECT &&
usr.sbin/bgpd/logmsg.c
125
peer->lasterr = 0;
usr.sbin/bgpd/logmsg.c
126
log_peer_info(&peer->conf, "state change %s -> %s, reason: %s",
usr.sbin/bgpd/logmsg.c
127
statenames[peer->prev_state], statenames[peer->state],
usr.sbin/bgpd/logmsg.c
155
log_notification(const struct peer *peer, uint8_t errcode, uint8_t subcode,
usr.sbin/bgpd/logmsg.c
168
p = log_fmt_peer(&peer->conf);
usr.sbin/bgpd/logmsg.c
285
log_conn_attempt(const struct peer *peer, struct sockaddr *sa, socklen_t len)
usr.sbin/bgpd/logmsg.c
289
if (peer == NULL) { /* connection from non-peer, drop */
usr.sbin/bgpd/logmsg.c
295
if (peer->conf.down && peer->state == STATE_IDLE)
usr.sbin/bgpd/logmsg.c
297
p = log_fmt_peer(&peer->conf);
usr.sbin/bgpd/logmsg.c
299
"in state %s", p, statenames[peer->state]);
usr.sbin/bgpd/logmsg.c
32
log_fmt_peer(const struct peer_config *peer)
usr.sbin/bgpd/logmsg.c
37
ip = log_addr(&peer->remote_addr);
usr.sbin/bgpd/logmsg.c
38
if ((peer->remote_addr.aid == AID_INET && peer->remote_masklen != 32) ||
usr.sbin/bgpd/logmsg.c
39
(peer->remote_addr.aid == AID_INET6 &&
usr.sbin/bgpd/logmsg.c
40
peer->remote_masklen != 128)) {
usr.sbin/bgpd/logmsg.c
41
if (asprintf(&p, "%s/%u", ip, peer->remote_masklen) == -1)
usr.sbin/bgpd/logmsg.c
48
if (peer->descr[0]) {
usr.sbin/bgpd/logmsg.c
49
if (asprintf(&pfmt, "neighbor %s (%s)", p, peer->descr) ==
usr.sbin/bgpd/logmsg.c
61
log_peer_info(const struct peer_config *peer, const char *emsg, ...)
usr.sbin/bgpd/logmsg.c
66
p = log_fmt_peer(peer);
usr.sbin/bgpd/logmsg.c
77
log_peer_warn(const struct peer_config *peer, const char *emsg, ...)
usr.sbin/bgpd/logmsg.c
83
p = log_fmt_peer(peer);
usr.sbin/bgpd/logmsg.c
98
log_peer_warnx(const struct peer_config *peer, const char *emsg, ...)
usr.sbin/bgpd/mrt.c
1000
if (ibuf_add_n16(*bp, peer->short_as) == -1)
usr.sbin/bgpd/mrt.c
1003
if (ibuf_add_n16(*bp, peer->conf.local_short_as) == -1)
usr.sbin/bgpd/mrt.c
1010
switch (peer->local.aid) {
usr.sbin/bgpd/mrt.c
1015
if (ibuf_add(*bp, &peer->local.v4,
usr.sbin/bgpd/mrt.c
1016
sizeof(peer->local.v4)) == -1)
usr.sbin/bgpd/mrt.c
1018
if (ibuf_add(*bp, &peer->remote.v4,
usr.sbin/bgpd/mrt.c
1019
sizeof(peer->remote.v4)) == -1)
usr.sbin/bgpd/mrt.c
1022
if (ibuf_add(*bp, &peer->local.v4,
usr.sbin/bgpd/mrt.c
1023
sizeof(peer->local.v4)) == -1)
usr.sbin/bgpd/mrt.c
1030
if (ibuf_add(*bp, &peer->local.v6,
usr.sbin/bgpd/mrt.c
1031
sizeof(peer->local.v6)) == -1)
usr.sbin/bgpd/mrt.c
1033
if (ibuf_add(*bp, &peer->remote.v6,
usr.sbin/bgpd/mrt.c
1034
sizeof(peer->remote.v6)) == -1)
usr.sbin/bgpd/mrt.c
1037
if (ibuf_add(*bp, &peer->local.v6,
usr.sbin/bgpd/mrt.c
1038
sizeof(peer->local.v6)) == -1)
usr.sbin/bgpd/mrt.c
128
mrt_bgp_msg_subtype(struct mrt *mrt, struct ibuf *pkg, struct peer *peer,
usr.sbin/bgpd/mrt.c
134
if (peer->capa.neg.as4byte)
usr.sbin/bgpd/mrt.c
149
if (peer->capa.neg.add_path[0] & mask) {
usr.sbin/bgpd/mrt.c
152
(peer->capa.neg.add_path[aid] & mask)) {
usr.sbin/bgpd/mrt.c
153
if (peer->capa.neg.as4byte)
usr.sbin/bgpd/mrt.c
164
mrt_dump_bgp_msg(struct mrt *mrt, struct ibuf *pkg, struct peer *peer,
usr.sbin/bgpd/mrt.c
175
subtype = mrt_bgp_msg_subtype(mrt, pkg, peer, msgtype, in);
usr.sbin/bgpd/mrt.c
177
if (mrt_dump_hdr_se(&buf, peer, MSG_PROTOCOL_BGP4MP_ET, subtype,
usr.sbin/bgpd/mrt.c
193
mrt_dump_state(struct mrt *mrt, struct peer *peer)
usr.sbin/bgpd/mrt.c
198
if (peer->capa.neg.as4byte)
usr.sbin/bgpd/mrt.c
201
if (mrt_dump_hdr_se(&buf, peer, MSG_PROTOCOL_BGP4MP_ET, subtype,
usr.sbin/bgpd/mrt.c
205
if (ibuf_add_n16(buf, peer->prev_state) == -1)
usr.sbin/bgpd/mrt.c
207
if (ibuf_add_n16(buf, peer->state) == -1)
usr.sbin/bgpd/mrt.c
353
struct rde_peer *peer)
usr.sbin/bgpd/mrt.c
376
if (ibuf_add_n16(h2buf, peer->conf.local_short_as) == -1)
usr.sbin/bgpd/mrt.c
378
if (ibuf_add_n16(h2buf, peer->short_as) == -1)
usr.sbin/bgpd/mrt.c
384
aid = peer->remote_addr.aid == AID_UNSPEC ? p->pt->aid :
usr.sbin/bgpd/mrt.c
385
peer->remote_addr.aid;
usr.sbin/bgpd/mrt.c
391
if (ibuf_add(h2buf, &peer->local_v4_addr.v4,
usr.sbin/bgpd/mrt.c
392
sizeof(peer->local_v4_addr.v4)) == -1 ||
usr.sbin/bgpd/mrt.c
393
ibuf_add(h2buf, &peer->remote_addr.v4,
usr.sbin/bgpd/mrt.c
394
sizeof(peer->remote_addr.v4)) == -1)
usr.sbin/bgpd/mrt.c
401
if (ibuf_add(h2buf, &peer->local_v6_addr.v6,
usr.sbin/bgpd/mrt.c
402
sizeof(peer->local_v6_addr.v6)) == -1 ||
usr.sbin/bgpd/mrt.c
403
ibuf_add(h2buf, &peer->remote_addr.v6,
usr.sbin/bgpd/mrt.c
404
sizeof(peer->remote_addr.v6)) == -1)
usr.sbin/bgpd/mrt.c
45
static int mrt_dump_hdr_se(struct ibuf **, struct peer *, uint16_t,
usr.sbin/bgpd/mrt.c
521
struct rde_peer *peer)
usr.sbin/bgpd/mrt.c
530
if ((peer->remote_addr.aid != AID_UNSPEC &&
usr.sbin/bgpd/mrt.c
531
p->pt->aid != peer->remote_addr.aid) ||
usr.sbin/bgpd/mrt.c
583
if (ibuf_add(hbuf, &peer->remote_addr.v4,
usr.sbin/bgpd/mrt.c
584
sizeof(peer->remote_addr.v4)) == -1)
usr.sbin/bgpd/mrt.c
588
if (ibuf_add(hbuf, &peer->remote_addr.v6,
usr.sbin/bgpd/mrt.c
589
sizeof(peer->remote_addr.v6)) == -1)
usr.sbin/bgpd/mrt.c
593
if (ibuf_add_n16(hbuf, peer->short_as) == -1)
usr.sbin/bgpd/mrt.c
791
mrt_dump_v2_hdr_peer(struct rde_peer *peer, void *arg)
usr.sbin/bgpd/mrt.c
797
peer->mrt_idx = a->nump;
usr.sbin/bgpd/mrt.c
798
if (mrt_dump_peer(a->buf, peer) == -1) {
usr.sbin/bgpd/mrt.c
857
mrt_dump_peer(struct ibuf *buf, struct rde_peer *peer)
usr.sbin/bgpd/mrt.c
861
if (peer->capa.as4byte)
usr.sbin/bgpd/mrt.c
863
if (peer->remote_addr.aid == AID_INET6)
usr.sbin/bgpd/mrt.c
868
if (ibuf_add_n32(buf, peer->remote_bgpid) == -1)
usr.sbin/bgpd/mrt.c
871
switch (peer->remote_addr.aid) {
usr.sbin/bgpd/mrt.c
873
if (ibuf_add(buf, &peer->remote_addr.v4,
usr.sbin/bgpd/mrt.c
874
sizeof(peer->remote_addr.v4)) == -1)
usr.sbin/bgpd/mrt.c
878
if (ibuf_add(buf, &peer->remote_addr.v6,
usr.sbin/bgpd/mrt.c
879
sizeof(peer->remote_addr.v6)) == -1)
usr.sbin/bgpd/mrt.c
891
if (peer->capa.as4byte) {
usr.sbin/bgpd/mrt.c
892
if (ibuf_add_n32(buf, peer->conf.remote_as) == -1)
usr.sbin/bgpd/mrt.c
895
if (ibuf_add_n16(buf, peer->short_as) == -1)
usr.sbin/bgpd/mrt.c
937
mrt_dump_hdr_se(struct ibuf ** bp, struct peer *peer, uint16_t type,
usr.sbin/bgpd/mrt.c
955
switch (peer->local.aid) {
usr.sbin/bgpd/mrt.c
989
if (ibuf_add_n32(*bp, peer->conf.local_as) == -1)
usr.sbin/bgpd/mrt.c
991
if (ibuf_add_n32(*bp, peer->conf.remote_as) == -1)
usr.sbin/bgpd/mrt.c
994
if (ibuf_add_n32(*bp, peer->conf.local_as) == -1)
usr.sbin/bgpd/mrt.c
998
if (ibuf_add_n16(*bp, peer->conf.local_short_as) == -1)
usr.sbin/bgpd/parse.y
143
struct peer *alloc_peer(void);
usr.sbin/bgpd/parse.y
144
struct peer *new_peer(void);
usr.sbin/bgpd/parse.y
145
struct peer *new_group(void);
usr.sbin/bgpd/parse.y
146
int add_mrtconfig(enum mrt_type, char *, int, struct peer *,
usr.sbin/bgpd/parse.y
151
int get_id(struct peer *);
usr.sbin/bgpd/parse.y
158
int neighbor_consistent(struct peer *);
usr.sbin/bgpd/parse.y
192
static struct peer *curpeer;
usr.sbin/bgpd/parse.y
193
static struct peer *curgroup;
usr.sbin/bgpd/parse.y
2518
struct peer *p;
usr.sbin/bgpd/parse.y
2545
struct peer *p;
usr.sbin/bgpd/parse.y
4675
struct peer *
usr.sbin/bgpd/parse.y
4678
struct peer *p;
usr.sbin/bgpd/parse.y
4680
if ((p = calloc(1, sizeof(struct peer))) == NULL)
usr.sbin/bgpd/parse.y
4706
struct peer *
usr.sbin/bgpd/parse.y
4709
struct peer *p;
usr.sbin/bgpd/parse.y
4721
struct peer *
usr.sbin/bgpd/parse.y
4728
add_mrtconfig(enum mrt_type type, char *name, int timeout, struct peer *p,
usr.sbin/bgpd/parse.y
4865
get_id(struct peer *newpeer)
usr.sbin/bgpd/parse.y
4868
struct peer *p = NULL;
usr.sbin/bgpd/parse.y
4957
struct filter_peers_l *peer, struct filter_match_l *match,
usr.sbin/bgpd/parse.y
4969
p = peer;
usr.sbin/bgpd/parse.y
4992
memcpy(&r->peer, &p->p,
usr.sbin/bgpd/parse.y
4993
sizeof(r->peer));
usr.sbin/bgpd/parse.y
5027
for (p = peer; p != NULL; p = pnext) {
usr.sbin/bgpd/parse.y
5097
neighbor_consistent(struct peer *p)
usr.sbin/bgpd/parse.y
5100
struct peer *xp;
usr.sbin/bgpd/parse.y
5300
if (memcmp(&fa->peer, &fb->peer, sizeof(fa->peer)))
usr.sbin/bgpd/parse.y
5356
r->peer.groupid = curgroup->conf.id;
usr.sbin/bgpd/parse.y
5360
r->peer.peerid = curpeer->conf.id;
usr.sbin/bgpd/pfkey.c
825
pfkey_recv_conf(struct peer *p, struct imsg *imsg)
usr.sbin/bgpd/pfkey.c
894
tcp_md5_add_listener(struct bgpd_config *conf, struct peer *p)
usr.sbin/bgpd/pfkey.c
900
tcp_md5_del_listener(struct bgpd_config *conf, struct peer *p)
usr.sbin/bgpd/printconf.c
1024
struct peer *p;
usr.sbin/bgpd/printconf.c
1046
if (r->peer.peerid) {
usr.sbin/bgpd/printconf.c
1048
if (p->conf.id == r->peer.peerid)
usr.sbin/bgpd/printconf.c
1054
} else if (r->peer.groupid) {
usr.sbin/bgpd/printconf.c
1056
if (p->conf.groupid == r->peer.groupid)
usr.sbin/bgpd/printconf.c
1062
} else if (r->peer.remote_as) {
usr.sbin/bgpd/printconf.c
1063
printf("AS %s ", log_as(r->peer.remote_as));
usr.sbin/bgpd/printconf.c
1064
} else if (r->peer.ebgp) {
usr.sbin/bgpd/printconf.c
1066
} else if (r->peer.ibgp) {
usr.sbin/bgpd/printconf.c
1222
struct peer **peerlist;
usr.sbin/bgpd/printconf.c
1223
struct peer *p;
usr.sbin/bgpd/printconf.c
1265
const struct peer * const *a;
usr.sbin/bgpd/printconf.c
1266
const struct peer * const *b;
usr.sbin/bgpd/printconf.c
51
void print_peer(struct peer *, struct bgpd_config *, const char *);
usr.sbin/bgpd/printconf.c
757
print_peer(struct peer *peer, struct bgpd_config *conf, const char *c)
usr.sbin/bgpd/printconf.c
760
struct peer_config *p = &peer->conf;
usr.sbin/bgpd/printconf.c
861
print_auth(&peer->auth_conf, c);
usr.sbin/bgpd/rde.c
1171
r->peer.ribid = rib->id;
usr.sbin/bgpd/rde.c
1407
rde_dispatch_imsg_peer(struct rde_peer *peer, void *bula)
usr.sbin/bgpd/rde.c
1413
if (!peer_is_up(peer)) {
usr.sbin/bgpd/rde.c
1414
peer_imsg_flush(peer);
usr.sbin/bgpd/rde.c
1418
if (!peer_imsg_pop(peer, &imsg))
usr.sbin/bgpd/rde.c
1426
rde_update_dispatch(peer, &ibuf);
usr.sbin/bgpd/rde.c
1434
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1438
if (peer->capa.mp[rr.aid] == 0) {
usr.sbin/bgpd/rde.c
1439
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1446
peer_blast(peer, rr.aid);
usr.sbin/bgpd/rde.c
1450
if ((peer->recv_eor & (1 << rr.aid)) == 0) {
usr.sbin/bgpd/rde.c
1451
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1456
peer_begin_rrefresh(peer, rr.aid);
usr.sbin/bgpd/rde.c
1459
if ((peer->recv_eor & (1 << rr.aid)) != 0 &&
usr.sbin/bgpd/rde.c
1460
monotime_valid(peer->staletime[rr.aid]))
usr.sbin/bgpd/rde.c
1461
peer_flush(peer, rr.aid,
usr.sbin/bgpd/rde.c
1462
peer->staletime[rr.aid]);
usr.sbin/bgpd/rde.c
1464
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1469
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1485
rde_update_dispatch(struct rde_peer *peer, struct ibuf *buf)
usr.sbin/bgpd/rde.c
1499
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ATTRLIST, NULL);
usr.sbin/bgpd/rde.c
1507
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ATTRLIST,
usr.sbin/bgpd/rde.c
1513
rde_peer_recv_eor(peer, AID_INET);
usr.sbin/bgpd/rde.c
1524
if (rde_attr_parse(&attrbuf, peer, &state, &reachbuf,
usr.sbin/bgpd/rde.c
1530
if ((subtype = rde_attr_missing(&state.aspath, peer->conf.ebgp,
usr.sbin/bgpd/rde.c
1534
rde_update_err(peer, ERR_UPDATE, ERR_UPD_MISSNG_WK_ATTR,
usr.sbin/bgpd/rde.c
1539
rde_as4byte_fixup(peer, &state.aspath);
usr.sbin/bgpd/rde.c
1543
peer->conf.enforce_as == ENFORCE_AS_ON) {
usr.sbin/bgpd/rde.c
1545
if (peer->conf.remote_as != fas) {
usr.sbin/bgpd/rde.c
1546
log_peer_warnx(&peer->conf, "bad path, "
usr.sbin/bgpd/rde.c
1549
log_as(fas), peer->conf.remote_as);
usr.sbin/bgpd/rde.c
1550
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ASPATH,
usr.sbin/bgpd/rde.c
1558
peer->conf.ebgp &&
usr.sbin/bgpd/rde.c
1559
peer->conf.enforce_local_as == ENFORCE_AS_ON &&
usr.sbin/bgpd/rde.c
1560
!aspath_loopfree(state.aspath.aspath, peer->conf.local_as))
usr.sbin/bgpd/rde.c
1563
rde_reflector(peer, &state.aspath);
usr.sbin/bgpd/rde.c
1566
if (state.aspath.flags & F_ATTR_ASPATH && peer->conf.ebgp) {
usr.sbin/bgpd/rde.c
1575
if (peer->capa.mp[AID_INET] == 0) {
usr.sbin/bgpd/rde.c
1576
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1578
rde_update_err(peer, ERR_UPDATE, ERR_UPD_NETWORK,
usr.sbin/bgpd/rde.c
1584
if (peer_has_add_path(peer, AID_INET, CAPA_AP_RECV)) {
usr.sbin/bgpd/rde.c
1586
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1588
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1600
log_peer_warnx(&peer->conf, "bad withdraw prefix");
usr.sbin/bgpd/rde.c
1601
rde_update_err(peer, ERR_UPDATE, ERR_UPD_NETWORK,
usr.sbin/bgpd/rde.c
1606
rde_update_withdraw(peer, pathid, &prefix, prefixlen);
usr.sbin/bgpd/rde.c
1614
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1616
rde_update_err(peer, ERR_UPDATE, ERR_UPD_OPTATTR,
usr.sbin/bgpd/rde.c
1621
if (peer->capa.mp[aid] == 0) {
usr.sbin/bgpd/rde.c
1622
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1624
rde_update_err(peer, ERR_UPDATE, ERR_UPD_OPTATTR,
usr.sbin/bgpd/rde.c
1632
rde_peer_recv_eor(peer, aid);
usr.sbin/bgpd/rde.c
1636
if (peer_has_add_path(peer, aid, CAPA_AP_RECV)) {
usr.sbin/bgpd/rde.c
1639
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1642
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1651
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1653
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1659
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1661
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1669
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1671
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1679
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1681
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1689
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1691
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1703
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1705
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1712
rde_update_withdraw(peer, pathid, &prefix, prefixlen);
usr.sbin/bgpd/rde.c
1721
if (peer->capa.mp[AID_INET] == 0) {
usr.sbin/bgpd/rde.c
1722
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1724
rde_update_err(peer, ERR_UPDATE, ERR_UPD_NETWORK,
usr.sbin/bgpd/rde.c
1732
switch (peer->role) {
usr.sbin/bgpd/rde.c
1736
tmp = htonl(peer->conf.remote_as);
usr.sbin/bgpd/rde.c
1740
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1752
if (peer_has_add_path(peer, AID_INET, CAPA_AP_RECV)) {
usr.sbin/bgpd/rde.c
1754
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1756
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1764
log_peer_warnx(&peer->conf, "bad nlri prefix");
usr.sbin/bgpd/rde.c
1765
rde_update_err(peer, ERR_UPDATE, ERR_UPD_NETWORK,
usr.sbin/bgpd/rde.c
1770
if (rde_update_update(peer, pathid, &state,
usr.sbin/bgpd/rde.c
1780
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1782
rde_update_err(peer, ERR_UPDATE, ERR_UPD_OPTATTR,
usr.sbin/bgpd/rde.c
1787
if (peer->capa.mp[aid] == 0) {
usr.sbin/bgpd/rde.c
1788
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1790
rde_update_err(peer, ERR_UPDATE, ERR_UPD_OPTATTR,
usr.sbin/bgpd/rde.c
1799
switch (peer->role) {
usr.sbin/bgpd/rde.c
1803
tmp = htonl(peer->conf.remote_as);
usr.sbin/bgpd/rde.c
1808
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1826
if (rde_get_mp_nexthop(&reachbuf, aid, peer, &state) == -1) {
usr.sbin/bgpd/rde.c
1827
log_peer_warnx(&peer->conf, "bad nlri nexthop");
usr.sbin/bgpd/rde.c
1828
rde_update_err(peer, ERR_UPDATE, ERR_UPD_OPTATTR,
usr.sbin/bgpd/rde.c
1834
if (peer_has_add_path(peer, aid, CAPA_AP_RECV)) {
usr.sbin/bgpd/rde.c
1836
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1838
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1853
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1855
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1863
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1865
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1873
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1875
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1883
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1885
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1893
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1895
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1907
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
1909
rde_update_err(peer, ERR_UPDATE,
usr.sbin/bgpd/rde.c
1916
if (rde_update_update(peer, pathid, &state,
usr.sbin/bgpd/rde.c
1947
pathid_assign(struct rde_peer *peer, uint32_t path_id,
usr.sbin/bgpd/rde.c
1954
if (!peer_has_add_path(peer, prefix->aid, CAPA_AP_RECV))
usr.sbin/bgpd/rde.c
1955
return peer->path_id_tx;
usr.sbin/bgpd/rde.c
1962
p = prefix_bypeer(re, peer, path_id);
usr.sbin/bgpd/rde.c
1979
rde_update_update(struct rde_peer *peer, uint32_t path_id,
usr.sbin/bgpd/rde.c
1989
peer->stats.prefix_rcvd_update++;
usr.sbin/bgpd/rde.c
1993
aspa_state = rde_aspa_validity(peer, &in->aspath, prefix->aid);
usr.sbin/bgpd/rde.c
1996
path_id_tx = pathid_assign(peer, path_id, prefix, prefixlen);
usr.sbin/bgpd/rde.c
1998
if (prefix_update(rib_byid(RIB_ADJ_IN), peer, path_id, path_id_tx,
usr.sbin/bgpd/rde.c
2000
peer->stats.prefix_cnt++;
usr.sbin/bgpd/rde.c
2003
if (peer->conf.max_prefix &&
usr.sbin/bgpd/rde.c
2004
peer->stats.prefix_cnt > peer->conf.max_prefix) {
usr.sbin/bgpd/rde.c
2005
log_peer_warnx(&peer->conf, "prefix limit reached (>%u/%u)",
usr.sbin/bgpd/rde.c
2006
peer->stats.prefix_cnt, peer->conf.max_prefix);
usr.sbin/bgpd/rde.c
2007
rde_update_err(peer, ERR_CEASE, ERR_CEASE_MAX_PREFIX, NULL);
usr.sbin/bgpd/rde.c
2020
action = rde_filter(rib->in_rules, peer, peer, prefix,
usr.sbin/bgpd/rde.c
2024
rde_update_log("update", i, peer,
usr.sbin/bgpd/rde.c
2027
prefix_update(rib, peer, path_id, path_id_tx, &state,
usr.sbin/bgpd/rde.c
2030
rde_update_log(wmsg, i, peer, NULL, prefix, prefixlen);
usr.sbin/bgpd/rde.c
2031
prefix_update(rib, peer, path_id, path_id_tx, &state,
usr.sbin/bgpd/rde.c
2034
if (prefix_withdraw(rib, peer, path_id, prefix,
usr.sbin/bgpd/rde.c
2036
rde_update_log(wmsg, i, peer,
usr.sbin/bgpd/rde.c
2046
rde_update_withdraw(struct rde_peer *peer, uint32_t path_id,
usr.sbin/bgpd/rde.c
2055
if (prefix_withdraw(rib, peer, path_id, prefix, prefixlen))
usr.sbin/bgpd/rde.c
2056
rde_update_log("withdraw", i, peer, NULL, prefix,
usr.sbin/bgpd/rde.c
2061
if (prefix_withdraw(rib_byid(RIB_ADJ_IN), peer, path_id,
usr.sbin/bgpd/rde.c
2063
peer->stats.prefix_cnt--;
usr.sbin/bgpd/rde.c
2065
peer->stats.prefix_rcvd_withdraw++;
usr.sbin/bgpd/rde.c
2077
rde_attr_parse(struct ibuf *buf, struct rde_peer *peer,
usr.sbin/bgpd/rde.c
2132
log_peer_warnx(&peer->conf, "bad ORIGIN %u, "
usr.sbin/bgpd/rde.c
2144
error = aspath_verify(&attrbuf, peer_has_as4byte(peer),
usr.sbin/bgpd/rde.c
2145
peer_permit_as_set(peer));
usr.sbin/bgpd/rde.c
2147
log_peer_warnx(&peer->conf, "bad ASPATH, %s",
usr.sbin/bgpd/rde.c
2149
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ASPATH,
usr.sbin/bgpd/rde.c
2153
if (peer_has_as4byte(peer)) {
usr.sbin/bgpd/rde.c
2171
log_peer_warnx(&peer->conf, "bad ASPATH %s, "
usr.sbin/bgpd/rde.c
2199
rde_update_err(peer, ERR_UPDATE, ERR_UPD_NEXTHOP,
usr.sbin/bgpd/rde.c
2222
if (peer->conf.ebgp) {
usr.sbin/bgpd/rde.c
2242
if ((!peer_has_as4byte(peer) && ibuf_size(&attrbuf) != 6) ||
usr.sbin/bgpd/rde.c
2243
(peer_has_as4byte(peer) && ibuf_size(&attrbuf) != 8)) {
usr.sbin/bgpd/rde.c
2248
log_peer_warnx(&peer->conf, "bad AGGREGATOR, "
usr.sbin/bgpd/rde.c
2252
if (!peer_has_as4byte(peer)) {
usr.sbin/bgpd/rde.c
2260
log_peer_warnx(&peer->conf, "bad AGGREGATOR, "
usr.sbin/bgpd/rde.c
2274
char *pfmt = log_fmt_peer(&peer->conf);
usr.sbin/bgpd/rde.c
2292
log_peer_warnx(&peer->conf, "bad COMMUNITIES, "
usr.sbin/bgpd/rde.c
2307
log_peer_warnx(&peer->conf, "bad LARGE COMMUNITIES, "
usr.sbin/bgpd/rde.c
2316
peer->conf.ebgp, &attrbuf) == -1) {
usr.sbin/bgpd/rde.c
2322
log_peer_warnx(&peer->conf, "bad EXT_COMMUNITIES, "
usr.sbin/bgpd/rde.c
2335
if (peer->conf.ebgp) {
usr.sbin/bgpd/rde.c
2337
log_peer_warnx(&peer->conf, "bad CLUSTER_LIST, "
usr.sbin/bgpd/rde.c
2347
log_peer_warnx(&peer->conf, "bad CLUSTER_LIST, "
usr.sbin/bgpd/rde.c
2382
log_peer_warnx(&peer->conf, "bad AS4_AGGREGATOR, "
usr.sbin/bgpd/rde.c
2391
log_peer_warnx(&peer->conf, "bad AS4_AGGREGATOR, "
usr.sbin/bgpd/rde.c
2402
peer_permit_as_set(peer))) != 0) {
usr.sbin/bgpd/rde.c
2404
log_peer_warnx(&peer->conf, "bad AS4_PATH, "
usr.sbin/bgpd/rde.c
2417
log_peer_warnx(&peer->conf, "bad OTC, "
usr.sbin/bgpd/rde.c
2421
switch (peer->role) {
usr.sbin/bgpd/rde.c
2430
if (tmp32 != peer->conf.remote_as)
usr.sbin/bgpd/rde.c
2440
rde_update_err(peer, ERR_UPDATE, ERR_UPD_UNKNWN_WK_ATTR,
usr.sbin/bgpd/rde.c
2454
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ATTRLEN, &attrbuf);
usr.sbin/bgpd/rde.c
2457
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ATTRFLAGS, &attrbuf);
usr.sbin/bgpd/rde.c
2460
log_peer_warnx(&peer->conf, "bad update attributes, "
usr.sbin/bgpd/rde.c
2462
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ATTRLIST, NULL);
usr.sbin/bgpd/rde.c
2465
log_peer_warn(&peer->conf, "bad update attributes, "
usr.sbin/bgpd/rde.c
2467
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ATTRLIST, NULL);
usr.sbin/bgpd/rde.c
2470
log_peer_warn(&peer->conf, "bad update attributes, "
usr.sbin/bgpd/rde.c
2472
rde_update_err(peer, ERR_UPDATE, ERR_UPD_ATTRLIST, NULL);
usr.sbin/bgpd/rde.c
2540
struct rde_peer *peer, struct filterstate *state)
usr.sbin/bgpd/rde.c
2554
if (aid == AID_INET && peer_has_ext_nexthop(peer, AID_INET) &&
usr.sbin/bgpd/rde.c
2557
if (aid == AID_VPN_IPv4 && peer_has_ext_nexthop(peer, AID_VPN_IPv4) &&
usr.sbin/bgpd/rde.c
2564
log_peer_warnx(&peer->conf, "bad multiprotocol nexthop, "
usr.sbin/bgpd/rde.c
2577
log_peer_warnx(&peer->conf, "bad %s nexthop, "
usr.sbin/bgpd/rde.c
2585
if (peer->local_if_scope != 0) {
usr.sbin/bgpd/rde.c
2586
nexthop.scope_id = peer->local_if_scope;
usr.sbin/bgpd/rde.c
2588
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
2610
log_peer_warnx(&peer->conf, "bad %s nexthop, "
usr.sbin/bgpd/rde.c
2621
log_peer_warnx(&peer->conf, "bad %s nexthop, "
usr.sbin/bgpd/rde.c
2630
if (peer->local_if_scope != 0) {
usr.sbin/bgpd/rde.c
2631
nexthop.scope_id = peer->local_if_scope;
usr.sbin/bgpd/rde.c
2633
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
2654
if (peer->local_if_scope != 0) {
usr.sbin/bgpd/rde.c
2655
nexthop.scope_id = peer->local_if_scope;
usr.sbin/bgpd/rde.c
2657
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
2665
log_peer_warnx(&peer->conf, "bad %s nexthop, "
usr.sbin/bgpd/rde.c
2674
log_peer_warnx(&peer->conf, "bad %s nexthop, "
usr.sbin/bgpd/rde.c
2680
log_peer_warnx(&peer->conf, "bad multiprotocol nexthop, "
usr.sbin/bgpd/rde.c
2691
rde_update_err(struct rde_peer *peer, uint8_t error, uint8_t suberr,
usr.sbin/bgpd/rde.c
2701
if ((wbuf = imsg_create(ibuf_se, IMSG_UPDATE_ERR, peer->conf.id, 0,
usr.sbin/bgpd/rde.c
2711
peer->state = PEER_ERR;
usr.sbin/bgpd/rde.c
2716
const struct rde_peer *peer, const struct bgpd_addr *next,
usr.sbin/bgpd/rde.c
2724
(peer->flags & PEERFLAG_LOG_UPDATES)))
usr.sbin/bgpd/rde.c
2732
l = log_fmt_peer(&peer->conf);
usr.sbin/bgpd/rde.c
2734
l, log_as(peer->conf.remote_as), message,
usr.sbin/bgpd/rde.c
2749
rde_as4byte_fixup(struct rde_peer *peer, struct rde_aspath *a)
usr.sbin/bgpd/rde.c
2766
if (peer_has_as4byte(peer)) {
usr.sbin/bgpd/rde.c
2769
log_peer_warnx(&peer->conf, "uses 4-byte ASN "
usr.sbin/bgpd/rde.c
2774
log_peer_warnx(&peer->conf, "uses 4-byte ASN "
usr.sbin/bgpd/rde.c
2811
rde_aspa_validity(struct rde_peer *peer, struct rde_aspath *asp, uint8_t aid)
usr.sbin/bgpd/rde.c
2813
if (!peer->conf.ebgp) /* ASPA is only performed on ebgp sessions */
usr.sbin/bgpd/rde.c
2828
if (peer->role != ROLE_RS_CLIENT &&
usr.sbin/bgpd/rde.c
2829
peer->conf.enforce_as != ENFORCE_AS_ON) {
usr.sbin/bgpd/rde.c
2833
if (peer->conf.remote_as != fas)
usr.sbin/bgpd/rde.c
2839
if (peer->role == ROLE_NONE)
usr.sbin/bgpd/rde.c
2842
if (peer->role == ROLE_CUSTOMER)
usr.sbin/bgpd/rde.c
2852
rde_reflector(struct rde_peer *peer, struct rde_aspath *asp)
usr.sbin/bgpd/rde.c
2872
if (peer->conf.ebgp)
usr.sbin/bgpd/rde.c
2875
id = htonl(peer->remote_bgpid);
usr.sbin/bgpd/rde.c
2924
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
2930
peer = prefix_peer(p);
usr.sbin/bgpd/rde.c
2936
strlcpy(rib.descr, peer->conf.descr, sizeof(rib.descr));
usr.sbin/bgpd/rde.c
2937
memcpy(&rib.remote_addr, &peer->remote_addr,
usr.sbin/bgpd/rde.c
2939
rib.remote_id = peer->remote_bgpid;
usr.sbin/bgpd/rde.c
2979
if (!peer->conf.ebgp)
usr.sbin/bgpd/rde.c
2992
staletime = peer->staletime[p->pt->aid];
usr.sbin/bgpd/rde.c
2996
if (peer_has_add_path(peer, p->pt->aid, CAPA_AP_RECV)) {
usr.sbin/bgpd/rde.c
3036
rde_dump_adjout_as(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde.c
3053
strlcpy(rib.descr, peer->conf.descr, sizeof(rib.descr));
usr.sbin/bgpd/rde.c
3054
memcpy(&rib.remote_addr, &peer->remote_addr,
usr.sbin/bgpd/rde.c
3056
rib.remote_id = peer->remote_bgpid;
usr.sbin/bgpd/rde.c
3071
if (!peer->conf.ebgp)
usr.sbin/bgpd/rde.c
3075
if (peer_has_add_path(peer, pte->aid, CAPA_AP_SEND)) {
usr.sbin/bgpd/rde.c
3173
rde_dump_adjout_filter(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde.c
3179
if (!rde_match_peer(peer, &req->neighbor))
usr.sbin/bgpd/rde.c
3195
rde_dump_adjout_as(peer, pte, p, attrs, req->pid, req->flags);
usr.sbin/bgpd/rde.c
3211
rde_dump_adjout_upcall(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde.c
3216
rde_dump_adjout_filter(peer, pte, p, &ctx->req);
usr.sbin/bgpd/rde.c
3231
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
3235
peer = peer_match(&ctx->req.neighbor, ctx->peerid);
usr.sbin/bgpd/rde.c
3236
if (peer == NULL)
usr.sbin/bgpd/rde.c
3238
ctx->peerid = peer->conf.id;
usr.sbin/bgpd/rde.c
3241
if (adjout_prefix_dump_new(peer, ctx->req.aid,
usr.sbin/bgpd/rde.c
3247
if (adjout_prefix_dump_subtree(peer, &ctx->req.prefix,
usr.sbin/bgpd/rde.c
3303
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
3305
peer = peer_match(&req->neighbor, 0);
usr.sbin/bgpd/rde.c
3306
if (peer == NULL) {
usr.sbin/bgpd/rde.c
3313
ctx->peerid = peer->conf.id;
usr.sbin/bgpd/rde.c
3316
if (adjout_prefix_dump_new(peer, ctx->req.aid,
usr.sbin/bgpd/rde.c
3323
if (adjout_prefix_dump_subtree(peer,
usr.sbin/bgpd/rde.c
3356
peer, pte);
usr.sbin/bgpd/rde.c
3359
peer, pte, p)) {
usr.sbin/bgpd/rde.c
3361
peer, pte, p, ctx);
usr.sbin/bgpd/rde.c
3375
for (p = adjout_prefix_first(peer, pte);
usr.sbin/bgpd/rde.c
3377
p = adjout_prefix_next(peer, pte, p)) {
usr.sbin/bgpd/rde.c
3378
rde_dump_adjout_upcall(peer, pte, p,
usr.sbin/bgpd/rde.c
3381
} while ((peer = peer_match(&req->neighbor,
usr.sbin/bgpd/rde.c
3382
peer->conf.id)));
usr.sbin/bgpd/rde.c
3630
rde_up_flush_upcall(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde.c
3633
adjout_prefix_withdraw(peer, pte, p);
usr.sbin/bgpd/rde.c
3639
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
3645
RB_FOREACH(peer, peer_tree, &peertable) {
usr.sbin/bgpd/rde.c
3646
if (peer->conf.id == 0)
usr.sbin/bgpd/rde.c
3648
if (!peer_is_up(peer))
usr.sbin/bgpd/rde.c
3650
if (peer->throttled)
usr.sbin/bgpd/rde.c
3653
if (!TAILQ_EMPTY(&peer->updates[aid]) ||
usr.sbin/bgpd/rde.c
3654
!TAILQ_EMPTY(&peer->withdraws[aid]))
usr.sbin/bgpd/rde.c
3664
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
3670
RB_FOREACH(peer, peer_tree, &peertable) {
usr.sbin/bgpd/rde.c
3671
if (peer->conf.id == 0)
usr.sbin/bgpd/rde.c
3673
if (!peer_is_up(peer))
usr.sbin/bgpd/rde.c
3675
if (peer->throttled)
usr.sbin/bgpd/rde.c
3677
if (TAILQ_EMPTY(&peer->withdraws[aid]))
usr.sbin/bgpd/rde.c
3680
up_dump_withdraws(ibuf_se, peer, aid);
usr.sbin/bgpd/rde.c
3690
RB_FOREACH(peer, peer_tree, &peertable) {
usr.sbin/bgpd/rde.c
3691
if (peer->conf.id == 0)
usr.sbin/bgpd/rde.c
3693
if (!peer_is_up(peer))
usr.sbin/bgpd/rde.c
3695
if (peer->throttled)
usr.sbin/bgpd/rde.c
3697
if (TAILQ_EMPTY(&peer->updates[aid]))
usr.sbin/bgpd/rde.c
3700
if (up_is_eor(peer, aid)) {
usr.sbin/bgpd/rde.c
3701
int sent_eor = peer->sent_eor & (1 << aid);
usr.sbin/bgpd/rde.c
3702
if (peer->capa.grestart.restart && !sent_eor)
usr.sbin/bgpd/rde.c
3703
rde_peer_send_eor(peer, aid);
usr.sbin/bgpd/rde.c
3704
if (peer->capa.enhanced_rr && sent_eor)
usr.sbin/bgpd/rde.c
3705
rde_peer_send_rrefresh(peer, aid,
usr.sbin/bgpd/rde.c
3710
up_dump_update(ibuf_se, peer, aid);
usr.sbin/bgpd/rde.c
3857
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
3920
RB_FOREACH(peer, peer_tree, &peertable) {
usr.sbin/bgpd/rde.c
3921
if (peer->conf.id == 0) /* ignore peerself */
usr.sbin/bgpd/rde.c
3923
peer->reconf_out = 0;
usr.sbin/bgpd/rde.c
3924
peer->reconf_rib = 0;
usr.sbin/bgpd/rde.c
3927
if (peer->conf.max_prefix &&
usr.sbin/bgpd/rde.c
3928
peer->stats.prefix_cnt > peer->conf.max_prefix) {
usr.sbin/bgpd/rde.c
3929
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
3931
peer->stats.prefix_cnt, peer->conf.max_prefix);
usr.sbin/bgpd/rde.c
3932
rde_update_err(peer, ERR_CEASE, ERR_CEASE_MAX_PREFIX,
usr.sbin/bgpd/rde.c
3936
if (peer->conf.max_out_prefix &&
usr.sbin/bgpd/rde.c
3937
peer->stats.prefix_out_cnt > peer->conf.max_out_prefix) {
usr.sbin/bgpd/rde.c
3938
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde.c
3940
peer->stats.prefix_out_cnt,
usr.sbin/bgpd/rde.c
3941
peer->conf.max_out_prefix);
usr.sbin/bgpd/rde.c
3942
rde_update_err(peer, ERR_CEASE,
usr.sbin/bgpd/rde.c
3946
if (peer->export_type != peer->conf.export_type) {
usr.sbin/bgpd/rde.c
3947
log_peer_info(&peer->conf, "export type change, "
usr.sbin/bgpd/rde.c
3949
peer->reconf_rib = 1;
usr.sbin/bgpd/rde.c
3951
if ((peer->flags & PEERFLAG_EVALUATE_ALL) !=
usr.sbin/bgpd/rde.c
3952
(peer->conf.flags & PEERFLAG_EVALUATE_ALL)) {
usr.sbin/bgpd/rde.c
3953
log_peer_info(&peer->conf, "rde evaluate change, "
usr.sbin/bgpd/rde.c
3955
peer->reconf_rib = 1;
usr.sbin/bgpd/rde.c
3957
if ((peer->flags & PEERFLAG_TRANS_AS) !=
usr.sbin/bgpd/rde.c
3958
(peer->conf.flags & PEERFLAG_TRANS_AS)) {
usr.sbin/bgpd/rde.c
3959
log_peer_info(&peer->conf, "transparent-as change, "
usr.sbin/bgpd/rde.c
3961
peer->reconf_rib = 1;
usr.sbin/bgpd/rde.c
3963
if (peer->loc_rib_id != rib_find(peer->conf.rib)) {
usr.sbin/bgpd/rde.c
3964
log_peer_info(&peer->conf, "rib change, reloading");
usr.sbin/bgpd/rde.c
3965
peer->loc_rib_id = rib_find(peer->conf.rib);
usr.sbin/bgpd/rde.c
3966
if (peer->loc_rib_id == RIB_NOTFOUND)
usr.sbin/bgpd/rde.c
3968
peer->reconf_rib = 1;
usr.sbin/bgpd/rde.c
3975
if (peer_has_add_path(peer, AID_UNSPEC, CAPA_AP_SEND)) {
usr.sbin/bgpd/rde.c
3976
if (peer->conf.eval.mode != ADDPATH_EVAL_NONE &&
usr.sbin/bgpd/rde.c
3977
memcmp(&peer->eval, &peer->conf.eval,
usr.sbin/bgpd/rde.c
3978
sizeof(peer->eval)) != 0) {
usr.sbin/bgpd/rde.c
3979
log_peer_info(&peer->conf,
usr.sbin/bgpd/rde.c
3981
peer->reconf_out = 1;
usr.sbin/bgpd/rde.c
3982
peer->eval = peer->conf.eval;
usr.sbin/bgpd/rde.c
3987
if (peer->role != peer->conf.role) {
usr.sbin/bgpd/rde.c
3991
peer->role = peer->conf.role;
usr.sbin/bgpd/rde.c
3994
peer->export_type = peer->conf.export_type;
usr.sbin/bgpd/rde.c
3995
peer->flags = peer->conf.flags;
usr.sbin/bgpd/rde.c
3996
if (peer->flags & PEERFLAG_EVALUATE_ALL)
usr.sbin/bgpd/rde.c
3999
if (peer->reconf_rib) {
usr.sbin/bgpd/rde.c
4000
if (adjout_prefix_dump_new(peer, AID_UNSPEC,
usr.sbin/bgpd/rde.c
4001
RDE_RUNNER_ROUNDS, peer, rde_up_flush_upcall,
usr.sbin/bgpd/rde.c
4004
log_peer_info(&peer->conf, "flushing Adj-RIB-Out");
usr.sbin/bgpd/rde.c
4010
rf = peer_apply_out_filter(peer, out_rules);
usr.sbin/bgpd/rde.c
4012
if (rf != peer->out_rules) {
usr.sbin/bgpd/rde.c
4013
char *p = log_fmt_peer(&peer->conf);
usr.sbin/bgpd/rde.c
4016
peer->reconf_out = 1;
usr.sbin/bgpd/rde.c
4040
RB_FOREACH(peer, peer_tree, &peertable) {
usr.sbin/bgpd/rde.c
4042
if (peer->conf.id == 0)
usr.sbin/bgpd/rde.c
4045
if (peer->loc_rib_id != rib->id)
usr.sbin/bgpd/rde.c
4048
if (peer->reconf_rib)
usr.sbin/bgpd/rde.c
4051
if (adjout_prefix_dump_new(peer,
usr.sbin/bgpd/rde.c
4052
AID_UNSPEC, RDE_RUNNER_ROUNDS, peer,
usr.sbin/bgpd/rde.c
4059
log_peer_info(&peer->conf,
usr.sbin/bgpd/rde.c
4112
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
4149
RB_FOREACH(peer, peer_tree, &peertable) {
usr.sbin/bgpd/rde.c
4152
if (peer->reconf_out) {
usr.sbin/bgpd/rde.c
4153
if (peer->export_type == EXPORT_NONE) {
usr.sbin/bgpd/rde.c
4155
peer->reconf_out = 0;
usr.sbin/bgpd/rde.c
4156
} else if (peer->export_type == EXPORT_DEFAULT_ROUTE) {
usr.sbin/bgpd/rde.c
4159
if (peer->capa.mp[aid])
usr.sbin/bgpd/rde.c
4160
up_generate_default(peer, aid);
usr.sbin/bgpd/rde.c
4162
peer->reconf_out = 0;
usr.sbin/bgpd/rde.c
4164
rib_byid(peer->loc_rib_id)->state =
usr.sbin/bgpd/rde.c
4166
} else if (peer->reconf_rib) {
usr.sbin/bgpd/rde.c
4169
if (peer->capa.mp[aid])
usr.sbin/bgpd/rde.c
4170
peer_dump(peer, aid);
usr.sbin/bgpd/rde.c
4232
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
4243
peer = prefix_peer(p);
usr.sbin/bgpd/rde.c
4249
aspa_vstate = rde_aspa_validity(peer, asp, pt->aid);
usr.sbin/bgpd/rde.c
4265
action = rde_filter(rib->in_rules, peer, peer, &prefix,
usr.sbin/bgpd/rde.c
4270
prefix_update(rib, peer, p->path_id,
usr.sbin/bgpd/rde.c
4275
prefix_update(rib, peer, p->path_id,
usr.sbin/bgpd/rde.c
4280
prefix_withdraw(rib, peer, p->path_id, &prefix,
usr.sbin/bgpd/rde.c
4375
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
4386
peer = prefix_peer(p);
usr.sbin/bgpd/rde.c
4401
aspa_vstate = rde_aspa_validity(peer, asp, pt->aid);
usr.sbin/bgpd/rde.c
4419
action = rde_filter(rib->in_rules, peer, peer, &prefix,
usr.sbin/bgpd/rde.c
4424
prefix_update(rib, peer, p->path_id,
usr.sbin/bgpd/rde.c
4429
prefix_update(rib, peer, p->path_id,
usr.sbin/bgpd/rde.c
4434
prefix_withdraw(rib, peer, p->path_id, &prefix,
usr.sbin/bgpd/rde.c
4541
rde_peer_recv_eor(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde.c
4543
peer->stats.prefix_rcvd_eor++;
usr.sbin/bgpd/rde.c
4544
peer->recv_eor |= 1 << aid;
usr.sbin/bgpd/rde.c
4554
if (imsg_compose(ibuf_se, IMSG_SESSION_RESTARTED, peer->conf.id,
usr.sbin/bgpd/rde.c
4558
log_peer_info(&peer->conf, "received %s EOR marker",
usr.sbin/bgpd/rde.c
4563
rde_peer_send_eor(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde.c
4568
peer->stats.prefix_sent_eor++;
usr.sbin/bgpd/rde.c
4569
peer->sent_eor |= 1 << aid;
usr.sbin/bgpd/rde.c
4575
if (imsg_compose(ibuf_se, IMSG_UPDATE, peer->conf.id,
usr.sbin/bgpd/rde.c
4596
if (imsg_compose(ibuf_se, IMSG_UPDATE, peer->conf.id,
usr.sbin/bgpd/rde.c
4601
log_peer_info(&peer->conf, "sending %s EOR marker",
usr.sbin/bgpd/rde.c
4606
rde_peer_send_rrefresh(struct rde_peer *peer, uint8_t aid, uint8_t subtype)
usr.sbin/bgpd/rde.c
4611
if (peer->capa.enhanced_rr == 0)
usr.sbin/bgpd/rde.c
4625
if (imsg_compose(ibuf_se, IMSG_REFRESH, peer->conf.id, 0, -1,
usr.sbin/bgpd/rde.c
4629
log_peer_info(&peer->conf, "sending %s %s marker",
usr.sbin/bgpd/rde.c
463
struct rde_peer *peer;
usr.sbin/bgpd/rde.c
484
if ((peer = peer_get(peerid)) == NULL) {
usr.sbin/bgpd/rde.c
489
if (peer_is_up(peer))
usr.sbin/bgpd/rde.c
490
peer_imsg_push(peer, &imsg);
usr.sbin/bgpd/rde.c
495
peer = peer_add(peerid, &pconf, out_rules);
usr.sbin/bgpd/rde.c
497
if (peer->conf.flags & PEERFLAG_EVALUATE_ALL)
usr.sbin/bgpd/rde.c
501
if ((peer = peer_get(peerid)) == NULL) {
usr.sbin/bgpd/rde.c
508
peer_up(peer, &sup);
usr.sbin/bgpd/rde.c
510
if (peer_has_add_path(peer, AID_UNSPEC, CAPA_AP_SEND))
usr.sbin/bgpd/rde.c
514
if ((peer = peer_get(peerid)) == NULL) {
usr.sbin/bgpd/rde.c
519
peer_down(peer);
usr.sbin/bgpd/rde.c
523
if ((peer = peer_get(peerid)) == NULL)
usr.sbin/bgpd/rde.c
525
peer_delete(peer);
usr.sbin/bgpd/rde.c
531
if ((peer = peer_get(peerid)) == NULL) {
usr.sbin/bgpd/rde.c
547
peer_stale(peer, aid, 0);
usr.sbin/bgpd/rde.c
550
peer_stale(peer, aid, 1);
usr.sbin/bgpd/rde.c
553
peer_flush(peer, aid, peer->staletime[aid]);
usr.sbin/bgpd/rde.c
556
if (monotime_valid(peer->staletime[aid]))
usr.sbin/bgpd/rde.c
557
peer_flush(peer, aid,
usr.sbin/bgpd/rde.c
558
peer->staletime[aid]);
usr.sbin/bgpd/rde.c
781
peer = peer_get(peerid);
usr.sbin/bgpd/rde.c
782
if (peer != NULL)
usr.sbin/bgpd/rde.c
783
memcpy(&stats, &peer->stats, sizeof(stats));
usr.sbin/bgpd/rde.c
870
peer = peer_get(peerid);
usr.sbin/bgpd/rde.c
871
if (peer)
usr.sbin/bgpd/rde.c
872
peer->throttled = 0;
usr.sbin/bgpd/rde.c
879
peer = peer_get(peerid);
usr.sbin/bgpd/rde.c
880
if (peer)
usr.sbin/bgpd/rde.c
881
peer->throttled = 1;
usr.sbin/bgpd/rde.h
295
struct rde_peer *peer;
usr.sbin/bgpd/rde.h
443
peer_is_up(struct rde_peer *peer)
usr.sbin/bgpd/rde.h
445
return (peer->state == PEER_UP);
usr.sbin/bgpd/rde.h
691
return (p->peer);
usr.sbin/bgpd/rde_adjout.c
103
pend_attr_done(struct pend_attr *pa, struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
108
pend_attr_free(pa, peer);
usr.sbin/bgpd/rde_adjout.c
112
pend_attr_lookup(struct rde_peer *peer, struct adjout_attr *attrs, uint8_t aid)
usr.sbin/bgpd/rde_adjout.c
116
return CH_FIND(pend_attr_hash, &peer->pend_attrs, &needle);
usr.sbin/bgpd/rde_adjout.c
141
pend_eor_add(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_adjout.c
145
pa = pend_attr_lookup(peer, NULL, aid);
usr.sbin/bgpd/rde_adjout.c
147
pa = pend_attr_alloc(NULL, aid, peer);
usr.sbin/bgpd/rde_adjout.c
155
pend_prefix_lookup(struct rde_peer *peer, struct pt_entry *pt,
usr.sbin/bgpd/rde_adjout.c
160
return CH_FIND(pend_prefix_hash, &peer->pend_prefixes, &needle);
usr.sbin/bgpd/rde_adjout.c
165
struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
167
if (CH_REMOVE(pend_prefix_hash, &peer->pend_prefixes, pp) != pp) {
usr.sbin/bgpd/rde_adjout.c
174
peer->stats.pending_withdraw--;
usr.sbin/bgpd/rde_adjout.c
176
peer->stats.pending_update--;
usr.sbin/bgpd/rde_adjout.c
182
pend_prefix_add(struct rde_peer *peer, struct adjout_attr *attrs,
usr.sbin/bgpd/rde_adjout.c
190
pa = pend_attr_lookup(peer, attrs, pt->aid);
usr.sbin/bgpd/rde_adjout.c
192
pa = pend_attr_alloc(attrs, pt->aid, peer);
usr.sbin/bgpd/rde_adjout.c
195
pp = pend_prefix_lookup(peer, pt, path_id_tx);
usr.sbin/bgpd/rde_adjout.c
200
head = &peer->withdraws[pt->aid];
usr.sbin/bgpd/rde_adjout.c
204
pend_prefix_remove(pp, head, peer);
usr.sbin/bgpd/rde_adjout.c
209
head = &peer->withdraws[pt->aid];
usr.sbin/bgpd/rde_adjout.c
210
peer->stats.pending_withdraw++;
usr.sbin/bgpd/rde_adjout.c
213
peer->stats.pending_update++;
usr.sbin/bgpd/rde_adjout.c
217
if (CH_INSERT(pend_prefix_hash, &peer->pend_prefixes, pp, NULL) != 1) {
usr.sbin/bgpd/rde_adjout.c
222
pend_attr_done(oldpa, peer);
usr.sbin/bgpd/rde_adjout.c
243
struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
245
pend_prefix_remove(pp, head, peer);
usr.sbin/bgpd/rde_adjout.c
434
adjout_prefix_get(struct rde_peer *peer, uint32_t path_id_tx,
usr.sbin/bgpd/rde_adjout.c
446
if (bitmap_test(&p->peermap, peer->adjout_bid))
usr.sbin/bgpd/rde_adjout.c
482
adjout_prefix_first(struct rde_peer *peer, struct pt_entry *pte)
usr.sbin/bgpd/rde_adjout.c
488
if (peer_has_add_path(peer, pte->aid, CAPA_AP_SEND))
usr.sbin/bgpd/rde_adjout.c
493
if (bitmap_test(&p->peermap, peer->adjout_bid))
usr.sbin/bgpd/rde_adjout.c
506
adjout_prefix_next(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde_adjout.c
512
if (!peer_has_add_path(peer, pte->aid, CAPA_AP_SEND))
usr.sbin/bgpd/rde_adjout.c
521
if (bitmap_test(&p->peermap, peer->adjout_bid))
usr.sbin/bgpd/rde_adjout.c
532
adjout_prefix_update(struct adjout_prefix *p, struct rde_peer *peer,
usr.sbin/bgpd/rde_adjout.c
539
bitmap_test(&p->peermap, peer->adjout_bid) == 0)
usr.sbin/bgpd/rde_adjout.c
559
adjout_prefix_unlink(p, pte, peer);
usr.sbin/bgpd/rde_adjout.c
560
peer->stats.prefix_out_cnt--;
usr.sbin/bgpd/rde_adjout.c
564
adjout_prefix_link(pte, peer, attrs, path_id_tx);
usr.sbin/bgpd/rde_adjout.c
565
peer->stats.prefix_out_cnt++;
usr.sbin/bgpd/rde_adjout.c
567
if (peer_is_up(peer))
usr.sbin/bgpd/rde_adjout.c
568
pend_prefix_add(peer, attrs, pte, path_id_tx);
usr.sbin/bgpd/rde_adjout.c
576
adjout_prefix_withdraw(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde_adjout.c
579
if (bitmap_test(&p->peermap, peer->adjout_bid) == 0)
usr.sbin/bgpd/rde_adjout.c
582
if (peer_is_up(peer))
usr.sbin/bgpd/rde_adjout.c
583
pend_prefix_add(peer, NULL, pte, p->path_id_tx);
usr.sbin/bgpd/rde_adjout.c
585
adjout_prefix_unlink(p, pte, peer);
usr.sbin/bgpd/rde_adjout.c
586
peer->stats.prefix_out_cnt--;
usr.sbin/bgpd/rde_adjout.c
590
adjout_prefix_reaper(struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
592
bitmap_id_put(&adjout_id_map, peer->adjout_bid);
usr.sbin/bgpd/rde_adjout.c
599
struct rde_peer *peer;
usr.sbin/bgpd/rde_adjout.c
601
if ((peer = peer_get(ctx->ctx_id)) == NULL)
usr.sbin/bgpd/rde_adjout.c
627
struct rde_peer *peer;
usr.sbin/bgpd/rde_adjout.c
630
if ((peer = peer_get(ctx->ctx_id)) == NULL)
usr.sbin/bgpd/rde_adjout.c
656
p = adjout_prefix_first(peer, pte);
usr.sbin/bgpd/rde_adjout.c
659
ctx->ctx_prefix_call(peer, pte, p, ctx->ctx_arg);
usr.sbin/bgpd/rde_adjout.c
66
struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
670
adjout_prefix_dump_new(struct rde_peer *peer, uint8_t aid,
usr.sbin/bgpd/rde_adjout.c
681
ctx->ctx_id = peer->conf.id;
usr.sbin/bgpd/rde_adjout.c
699
adjout_prefix_dump_subtree(struct rde_peer *peer, struct bgpd_addr *subtree,
usr.sbin/bgpd/rde_adjout.c
710
ctx->ctx_id = peer->conf.id;
usr.sbin/bgpd/rde_adjout.c
738
adjout_prefix_link(struct pt_entry *pte, struct rde_peer *peer,
usr.sbin/bgpd/rde_adjout.c
744
if (peer->adjout_bid == 0)
usr.sbin/bgpd/rde_adjout.c
745
if (bitmap_id_get(&adjout_id_map, &peer->adjout_bid) == -1)
usr.sbin/bgpd/rde_adjout.c
753
if (bitmap_set(&p->peermap, peer->adjout_bid) == -1)
usr.sbin/bgpd/rde_adjout.c
762
struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
764
bitmap_clear(&p->peermap, peer->adjout_bid);
usr.sbin/bgpd/rde_adjout.c
78
TAILQ_INSERT_TAIL(&peer->updates[aid], pa, entry);
usr.sbin/bgpd/rde_adjout.c
79
if (CH_INSERT(pend_attr_hash, &peer->pend_attrs, pa, NULL) != 1)
usr.sbin/bgpd/rde_adjout.c
847
adjout_peer_init(struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
85
pend_attr_free(struct pend_attr *pa, struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
851
CH_INIT(pend_attr_hash, &peer->pend_attrs);
usr.sbin/bgpd/rde_adjout.c
852
CH_INIT(pend_prefix_hash, &peer->pend_prefixes);
usr.sbin/bgpd/rde_adjout.c
853
for (i = 0; i < nitems(peer->updates); i++)
usr.sbin/bgpd/rde_adjout.c
854
TAILQ_INIT(&peer->updates[i]);
usr.sbin/bgpd/rde_adjout.c
855
for (i = 0; i < nitems(peer->withdraws); i++)
usr.sbin/bgpd/rde_adjout.c
856
TAILQ_INIT(&peer->withdraws[i]);
usr.sbin/bgpd/rde_adjout.c
860
adjout_peer_flush_pending(struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
867
TAILQ_FOREACH_SAFE(pp, &peer->withdraws[aid], entry, npp) {
usr.sbin/bgpd/rde_adjout.c
868
pend_prefix_free(pp, &peer->withdraws[aid], peer);
usr.sbin/bgpd/rde_adjout.c
870
TAILQ_FOREACH_SAFE(pa, &peer->updates[aid], entry, npa) {
usr.sbin/bgpd/rde_adjout.c
872
pend_prefix_free(pp, &pa->prefixes, peer);
usr.sbin/bgpd/rde_adjout.c
874
pend_attr_done(pa, peer);
usr.sbin/bgpd/rde_adjout.c
880
adjout_peer_free(struct rde_peer *peer)
usr.sbin/bgpd/rde_adjout.c
882
adjout_peer_flush_pending(peer); /* not strictly needed */
usr.sbin/bgpd/rde_adjout.c
883
CH_DESTROY(pend_attr_hash, &peer->pend_attrs);
usr.sbin/bgpd/rde_adjout.c
884
CH_DESTROY(pend_prefix_hash, &peer->pend_prefixes);
usr.sbin/bgpd/rde_adjout.c
92
TAILQ_REMOVE(&peer->updates[pa->aid], pa, entry);
usr.sbin/bgpd/rde_adjout.c
93
CH_REMOVE(pend_attr_hash, &peer->pend_attrs, pa);
usr.sbin/bgpd/rde_community.c
131
if (apply_flag(fc->data1, fc->flags >> 8, peer,
usr.sbin/bgpd/rde_community.c
134
if (apply_flag(fc->data2, fc->flags >> 16, peer,
usr.sbin/bgpd/rde_community.c
144
if (apply_flag(fc->data1, fc->flags >> 8, peer,
usr.sbin/bgpd/rde_community.c
147
if (apply_flag(fc->data2, fc->flags >> 16, peer,
usr.sbin/bgpd/rde_community.c
276
struct rde_peer *peer)
usr.sbin/bgpd/rde_community.c
287
if (fc2c(fc, peer, &test, &mask) == -1)
usr.sbin/bgpd/rde_community.c
32
apply_flag(uint32_t in, uint8_t flag, struct rde_peer *peer, uint32_t *out,
usr.sbin/bgpd/rde_community.c
343
struct rde_peer *peer)
usr.sbin/bgpd/rde_community.c
351
if (fc2c(fc, peer, &set, NULL) == -1)
usr.sbin/bgpd/rde_community.c
382
struct rde_peer *peer)
usr.sbin/bgpd/rde_community.c
402
if (fc2c(fc, peer, &test, &mask) == -1)
usr.sbin/bgpd/rde_community.c
43
if (peer == NULL)
usr.sbin/bgpd/rde_community.c
45
*out = peer->conf.remote_as;
usr.sbin/bgpd/rde_community.c
48
if (peer == NULL)
usr.sbin/bgpd/rde_community.c
50
*out = peer->conf.local_as;
usr.sbin/bgpd/rde_community.c
62
fc2c(const struct community *fc, struct rde_peer *peer, struct community *c,
usr.sbin/bgpd/rde_community.c
76
if (apply_flag(fc->data1, fc->flags >> 8, peer,
usr.sbin/bgpd/rde_community.c
79
if (apply_flag(fc->data2, fc->flags >> 16, peer,
usr.sbin/bgpd/rde_community.c
88
if (apply_flag(fc->data1, fc->flags >> 8, peer,
usr.sbin/bgpd/rde_community.c
91
if (apply_flag(fc->data2, fc->flags >> 16, peer,
usr.sbin/bgpd/rde_community.c
94
if (apply_flag(fc->data3, fc->flags >> 24, peer,
usr.sbin/bgpd/rde_filter.c
1081
if (cur->peer.peerid != prev->peer.peerid)
usr.sbin/bgpd/rde_filter.c
1083
if (cur->peer.groupid != prev->peer.groupid)
usr.sbin/bgpd/rde_filter.c
1085
if (cur->peer.remote_as != prev->peer.remote_as)
usr.sbin/bgpd/rde_filter.c
1096
rde_filter(struct filter_head *rules, struct rde_peer *peer,
usr.sbin/bgpd/rde_filter.c
1118
if (f->peer.peerid && f->peer.peerid != peer->conf.id) {
usr.sbin/bgpd/rde_filter.c
1122
if (f->peer.groupid && f->peer.groupid != peer->conf.groupid) {
usr.sbin/bgpd/rde_filter.c
1126
if (f->peer.remote_as &&
usr.sbin/bgpd/rde_filter.c
1127
f->peer.remote_as != peer->conf.remote_as) {
usr.sbin/bgpd/rde_filter.c
1131
if (f->peer.ebgp && !peer->conf.ebgp) {
usr.sbin/bgpd/rde_filter.c
1135
if (f->peer.ibgp && peer->conf.ebgp) {
usr.sbin/bgpd/rde_filter.c
1140
if (rde_filter_match(&f->match, peer, from, state,
usr.sbin/bgpd/rde_filter.c
1142
rde_apply_set(f->rde_set, peer, from, state,
usr.sbin/bgpd/rde_filter.c
1155
rde_filter_out(struct rde_filter *rf, struct rde_peer *peer,
usr.sbin/bgpd/rde_filter.c
1175
if (rde_filter_match(&f->match, peer, from, state,
usr.sbin/bgpd/rde_filter.c
1177
rde_apply_set(f->rde_set, peer, from, state,
usr.sbin/bgpd/rde_filter.c
152
prep_as = peer->conf.local_as;
usr.sbin/bgpd/rde_filter.c
190
&set->action.community, peer);
usr.sbin/bgpd/rde_filter.c
194
&set->action.community, peer);
usr.sbin/bgpd/rde_filter.c
260
rde_filter_match(struct filter_match *match, struct rde_peer *peer,
usr.sbin/bgpd/rde_filter.c
279
peer->conf.remote_as) == 0)
usr.sbin/bgpd/rde_filter.c
292
&match->community[i], peer) == 0)
usr.sbin/bgpd/rde_filter.c
365
rde_filter_skip_rule(struct rde_peer *peer, struct filter_rule *f)
usr.sbin/bgpd/rde_filter.c
368
if (peer == NULL || f == NULL)
usr.sbin/bgpd/rde_filter.c
371
if (f->peer.peerid != 0 &&
usr.sbin/bgpd/rde_filter.c
372
f->peer.peerid != peer->conf.id)
usr.sbin/bgpd/rde_filter.c
375
if (f->peer.groupid != 0 &&
usr.sbin/bgpd/rde_filter.c
376
f->peer.groupid != peer->conf.groupid)
usr.sbin/bgpd/rde_filter.c
379
if (f->peer.remote_as != 0 &&
usr.sbin/bgpd/rde_filter.c
380
f->peer.remote_as != peer->conf.remote_as)
usr.sbin/bgpd/rde_filter.c
383
if (f->peer.ebgp != 0 &&
usr.sbin/bgpd/rde_filter.c
384
f->peer.ebgp != peer->conf.ebgp)
usr.sbin/bgpd/rde_filter.c
387
if (f->peer.ibgp != 0 &&
usr.sbin/bgpd/rde_filter.c
388
f->peer.ibgp != !peer->conf.ebgp)
usr.sbin/bgpd/rde_filter.c
413
if (memcmp(&fa->peer, &fb->peer, sizeof(fa->peer)))
usr.sbin/bgpd/rde_filter.c
74
rde_apply_set(const struct rde_filter_set *rfs, struct rde_peer *peer,
usr.sbin/bgpd/rde_peer.c
113
struct rde_peer *peer, *np;
usr.sbin/bgpd/rde_peer.c
115
RB_FOREACH_SAFE(peer, peer_tree, &peertable, np)
usr.sbin/bgpd/rde_peer.c
116
callback(peer, arg);
usr.sbin/bgpd/rde_peer.c
139
struct rde_peer *peer;
usr.sbin/bgpd/rde_peer.c
142
peer = peer_get(peerid);
usr.sbin/bgpd/rde_peer.c
143
if (peer)
usr.sbin/bgpd/rde_peer.c
144
peer = RB_NEXT(peer_tree, &peertable, peer);
usr.sbin/bgpd/rde_peer.c
146
peer = RB_MIN(peer_tree, &peertable);
usr.sbin/bgpd/rde_peer.c
148
for (; peer != NULL; peer = RB_NEXT(peer_tree, &peertable, peer)) {
usr.sbin/bgpd/rde_peer.c
149
if (rde_match_peer(peer, n))
usr.sbin/bgpd/rde_peer.c
150
return peer;
usr.sbin/bgpd/rde_peer.c
158
struct rde_peer *peer;
usr.sbin/bgpd/rde_peer.c
161
if ((peer = peer_get(id))) {
usr.sbin/bgpd/rde_peer.c
162
memcpy(&peer->conf, p_conf, sizeof(struct peer_config));
usr.sbin/bgpd/rde_peer.c
163
return peer;
usr.sbin/bgpd/rde_peer.c
166
peer = calloc(1, sizeof(struct rde_peer));
usr.sbin/bgpd/rde_peer.c
167
if (peer == NULL)
usr.sbin/bgpd/rde_peer.c
170
TAILQ_INIT(&peer->rib_pq_head);
usr.sbin/bgpd/rde_peer.c
171
memcpy(&peer->conf, p_conf, sizeof(struct peer_config));
usr.sbin/bgpd/rde_peer.c
172
peer->remote_bgpid = 0;
usr.sbin/bgpd/rde_peer.c
173
peer->loc_rib_id = rib_find(peer->conf.rib);
usr.sbin/bgpd/rde_peer.c
174
if (peer->loc_rib_id == RIB_NOTFOUND)
usr.sbin/bgpd/rde_peer.c
176
peer->state = PEER_NONE;
usr.sbin/bgpd/rde_peer.c
177
peer->eval = peer->conf.eval;
usr.sbin/bgpd/rde_peer.c
178
peer->role = peer->conf.role;
usr.sbin/bgpd/rde_peer.c
179
peer->export_type = peer->conf.export_type;
usr.sbin/bgpd/rde_peer.c
180
peer->flags = peer->conf.flags;
usr.sbin/bgpd/rde_peer.c
181
if ((peer->ibufq = ibufq_new()) == NULL)
usr.sbin/bgpd/rde_peer.c
184
adjout_peer_init(peer);
usr.sbin/bgpd/rde_peer.c
185
if (peer_apply_out_filter(peer, rules) != NULL)
usr.sbin/bgpd/rde_peer.c
196
peer->path_id_tx = arc4random() << 1;
usr.sbin/bgpd/rde_peer.c
198
if (peer->path_id_tx == 0 ||
usr.sbin/bgpd/rde_peer.c
199
p->path_id_tx == peer->path_id_tx) {
usr.sbin/bgpd/rde_peer.c
206
if (RB_INSERT(peer_tree, &peertable, peer) != NULL)
usr.sbin/bgpd/rde_peer.c
209
return peer;
usr.sbin/bgpd/rde_peer.c
213
peer_apply_out_filter(struct rde_peer *peer, struct filter_head *rules)
usr.sbin/bgpd/rde_peer.c
219
old = peer->out_rules;
usr.sbin/bgpd/rde_peer.c
222
if (rde_filter_skip_rule(peer, fr))
usr.sbin/bgpd/rde_peer.c
230
if (rde_filter_skip_rule(peer, fr))
usr.sbin/bgpd/rde_peer.c
235
peer->out_rules = rde_filter_getcache(new);
usr.sbin/bgpd/rde_peer.c
252
peer_generate_update(struct rde_peer *peer, struct rib_entry *re,
usr.sbin/bgpd/rde_peer.c
260
if (peer == peerself)
usr.sbin/bgpd/rde_peer.c
263
if (peer->state == PEER_NONE)
usr.sbin/bgpd/rde_peer.c
266
if (peer->loc_rib_id != re->rib_id)
usr.sbin/bgpd/rde_peer.c
269
if (peer->capa.mp[aid] == 0)
usr.sbin/bgpd/rde_peer.c
272
if (peer->export_type == EXPORT_NONE ||
usr.sbin/bgpd/rde_peer.c
273
peer->export_type == EXPORT_DEFAULT_ROUTE)
usr.sbin/bgpd/rde_peer.c
277
if (peer_has_add_path(peer, aid, CAPA_AP_SEND)) {
usr.sbin/bgpd/rde_peer.c
285
if (peer->eval.mode == ADDPATH_EVAL_ALL) {
usr.sbin/bgpd/rde_peer.c
286
up_generate_addpath_all(peer, re, newpath,
usr.sbin/bgpd/rde_peer.c
291
up_generate_addpath(peer, re);
usr.sbin/bgpd/rde_peer.c
296
if (mode == EVAL_ALL && (peer->flags & PEERFLAG_EVALUATE_ALL) == 0)
usr.sbin/bgpd/rde_peer.c
298
up_generate_updates(peer, re);
usr.sbin/bgpd/rde_peer.c
305
struct rde_peer *peer;
usr.sbin/bgpd/rde_peer.c
310
RB_FOREACH(peer, peer_tree, &peertable) {
usr.sbin/bgpd/rde_peer.c
311
if (peer->reconf_out == 0)
usr.sbin/bgpd/rde_peer.c
313
peer_generate_update(peer, re, NULL, 0, EVAL_RECONF);
usr.sbin/bgpd/rde_peer.c
337
peer = peer_get(re->pq_peer_id);
usr.sbin/bgpd/rde_peer.c
338
TAILQ_REMOVE(&peer->rib_pq_head, re, rib_queue);
usr.sbin/bgpd/rde_peer.c
340
peer->stats.rib_entry_count--;
usr.sbin/bgpd/rde_peer.c
343
peer = prefix_peer(newpath);
usr.sbin/bgpd/rde_peer.c
345
peer = peerself;
usr.sbin/bgpd/rde_peer.c
347
re->pq_peer_id = peer->conf.id;
usr.sbin/bgpd/rde_peer.c
348
TAILQ_INSERT_TAIL(&peer->rib_pq_head, re, rib_queue);
usr.sbin/bgpd/rde_peer.c
350
peer->stats.rib_entry_count++;
usr.sbin/bgpd/rde_peer.c
354
peer_process_updates(struct rde_peer *peer, void *bula)
usr.sbin/bgpd/rde_peer.c
360
re = TAILQ_FIRST(&peer->rib_pq_head);
usr.sbin/bgpd/rde_peer.c
363
TAILQ_REMOVE(&peer->rib_pq_head, re, rib_queue);
usr.sbin/bgpd/rde_peer.c
365
peer->stats.rib_entry_count--;
usr.sbin/bgpd/rde_peer.c
379
struct rde_peer *peer;
usr.sbin/bgpd/rde_peer.c
386
struct rde_peer *peer = ((struct peer_flush *)arg)->peer;
usr.sbin/bgpd/rde_peer.c
397
if (peer != prefix_peer(p))
usr.sbin/bgpd/rde_peer.c
407
rp = prefix_get(rib, peer, p->path_id,
usr.sbin/bgpd/rde_peer.c
415
rde_update_log("flush", i, peer, NULL,
usr.sbin/bgpd/rde_peer.c
421
peer->stats.prefix_cnt--;
usr.sbin/bgpd/rde_peer.c
429
peer_up(struct rde_peer *peer, struct session_up *sup)
usr.sbin/bgpd/rde_peer.c
43
peer_has_as4byte(struct rde_peer *peer)
usr.sbin/bgpd/rde_peer.c
434
if (peer->state == PEER_ERR) {
usr.sbin/bgpd/rde_peer.c
439
peer_down(peer);
usr.sbin/bgpd/rde_peer.c
447
if (memcmp(&peer->remote_addr, &sup->remote_addr,
usr.sbin/bgpd/rde_peer.c
449
memcmp(&peer->local_v4_addr, &sup->local_v4_addr,
usr.sbin/bgpd/rde_peer.c
45
return peer->capa.as4byte;
usr.sbin/bgpd/rde_peer.c
451
memcmp(&peer->local_v6_addr, &sup->local_v6_addr,
usr.sbin/bgpd/rde_peer.c
453
memcmp(&peer->capa, &sup->capa, sizeof(sup->capa)) == 0)
usr.sbin/bgpd/rde_peer.c
456
peer->remote_addr = sup->remote_addr;
usr.sbin/bgpd/rde_peer.c
457
peer->local_v4_addr = sup->local_v4_addr;
usr.sbin/bgpd/rde_peer.c
458
peer->local_v6_addr = sup->local_v6_addr;
usr.sbin/bgpd/rde_peer.c
459
memcpy(&peer->capa, &sup->capa, sizeof(sup->capa));
usr.sbin/bgpd/rde_peer.c
461
peer->remote_bgpid = sup->remote_bgpid;
usr.sbin/bgpd/rde_peer.c
462
peer->local_if_scope = sup->if_scope;
usr.sbin/bgpd/rde_peer.c
463
peer->short_as = sup->short_as;
usr.sbin/bgpd/rde_peer.c
466
if (peer->capa.grestart.restart) {
usr.sbin/bgpd/rde_peer.c
467
peer->sent_eor = 0;
usr.sbin/bgpd/rde_peer.c
468
peer->recv_eor = 0;
usr.sbin/bgpd/rde_peer.c
471
peer->sent_eor = ~0;
usr.sbin/bgpd/rde_peer.c
472
peer->recv_eor = ~0;
usr.sbin/bgpd/rde_peer.c
474
peer->state = PEER_UP;
usr.sbin/bgpd/rde_peer.c
478
if (peer->capa.mp[i])
usr.sbin/bgpd/rde_peer.c
479
peer_blast(peer, i);
usr.sbin/bgpd/rde_peer.c
483
if (peer->capa.mp[i])
usr.sbin/bgpd/rde_peer.c
484
peer_dump(peer, i);
usr.sbin/bgpd/rde_peer.c
494
peer_down(struct rde_peer *peer)
usr.sbin/bgpd/rde_peer.c
496
peer->remote_bgpid = 0;
usr.sbin/bgpd/rde_peer.c
497
peer->state = PEER_DOWN;
usr.sbin/bgpd/rde_peer.c
502
rib_dump_terminate(peer);
usr.sbin/bgpd/rde_peer.c
503
adjout_peer_flush_pending(peer);
usr.sbin/bgpd/rde_peer.c
504
peer_imsg_flush(peer);
usr.sbin/bgpd/rde_peer.c
507
peer_flush(peer, AID_UNSPEC, monotime_clear());
usr.sbin/bgpd/rde_peer.c
508
peer->stats.prefix_cnt = 0;
usr.sbin/bgpd/rde_peer.c
515
peer_reaper_upcall(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde_peer.c
518
adjout_prefix_withdraw(peer, pte, p);
usr.sbin/bgpd/rde_peer.c
527
struct rde_peer *peer = ptr;
usr.sbin/bgpd/rde_peer.c
529
adjout_prefix_reaper(peer);
usr.sbin/bgpd/rde_peer.c
53
peer_has_add_path(struct rde_peer *peer, uint8_t aid, int mode)
usr.sbin/bgpd/rde_peer.c
530
ibufq_free(peer->ibufq);
usr.sbin/bgpd/rde_peer.c
531
free(peer);
usr.sbin/bgpd/rde_peer.c
535
peer_delete(struct rde_peer *peer)
usr.sbin/bgpd/rde_peer.c
537
if (peer->state != PEER_DOWN)
usr.sbin/bgpd/rde_peer.c
538
peer_down(peer);
usr.sbin/bgpd/rde_peer.c
540
rde_filter_unref(peer->out_rules);
usr.sbin/bgpd/rde_peer.c
541
adjout_peer_free(peer);
usr.sbin/bgpd/rde_peer.c
543
TAILQ_CONCAT(&peerself->rib_pq_head, &peer->rib_pq_head, rib_queue);
usr.sbin/bgpd/rde_peer.c
544
peerself->stats.rib_entry_count += peer->stats.rib_entry_count;
usr.sbin/bgpd/rde_peer.c
545
peer->stats.rib_entry_count = 0;
usr.sbin/bgpd/rde_peer.c
547
RB_REMOVE(peer_tree, &peertable, peer);
usr.sbin/bgpd/rde_peer.c
550
if (adjout_prefix_dump_new(peer, AID_UNSPEC, RDE_RUNNER_ROUNDS, peer,
usr.sbin/bgpd/rde_peer.c
560
peer_flush(struct rde_peer *peer, uint8_t aid, monotime_t staletime)
usr.sbin/bgpd/rde_peer.c
562
struct peer_flush pf = { peer, staletime };
usr.sbin/bgpd/rde_peer.c
57
return peer->capa.add_path[aid] & mode;
usr.sbin/bgpd/rde_peer.c
573
peer->staletime[i] = monotime_clear();
usr.sbin/bgpd/rde_peer.c
575
peer->staletime[aid] = monotime_clear();
usr.sbin/bgpd/rde_peer.c
585
peer_stale(struct rde_peer *peer, uint8_t aid, int flushall)
usr.sbin/bgpd/rde_peer.c
590
if (monotime_valid(peer->staletime[aid]))
usr.sbin/bgpd/rde_peer.c
591
peer_flush(peer, aid, peer->staletime[aid]);
usr.sbin/bgpd/rde_peer.c
593
peer->staletime[aid] = now = getmonotime();
usr.sbin/bgpd/rde_peer.c
594
peer->state = PEER_DOWN;
usr.sbin/bgpd/rde_peer.c
600
rib_dump_terminate(peer);
usr.sbin/bgpd/rde_peer.c
601
adjout_peer_flush_pending(peer);
usr.sbin/bgpd/rde_peer.c
602
peer_imsg_flush(peer);
usr.sbin/bgpd/rde_peer.c
605
peer_flush(peer, aid, monotime_clear());
usr.sbin/bgpd/rde_peer.c
61
peer_has_ext_msg(struct rde_peer *peer)
usr.sbin/bgpd/rde_peer.c
619
peer_blast_upcall(struct rde_peer *peer, struct pt_entry *pte,
usr.sbin/bgpd/rde_peer.c
622
pend_prefix_add(peer, p->attrs, pte, p->path_id_tx);
usr.sbin/bgpd/rde_peer.c
63
return peer->capa.ext_msg;
usr.sbin/bgpd/rde_peer.c
632
struct rde_peer *peer = ptr;
usr.sbin/bgpd/rde_peer.c
635
peer->throttled = 0;
usr.sbin/bgpd/rde_peer.c
636
if (peer->capa.grestart.restart)
usr.sbin/bgpd/rde_peer.c
637
pend_eor_add(peer, aid);
usr.sbin/bgpd/rde_peer.c
645
peer_blast(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_peer.c
647
if (peer->capa.enhanced_rr && (peer->sent_eor & (1 << aid)))
usr.sbin/bgpd/rde_peer.c
648
rde_peer_send_rrefresh(peer, aid, ROUTE_REFRESH_BEGIN_RR);
usr.sbin/bgpd/rde_peer.c
651
if (adjout_prefix_dump_new(peer, aid, RDE_RUNNER_ROUNDS, peer,
usr.sbin/bgpd/rde_peer.c
660
struct rde_peer *peer = ptr;
usr.sbin/bgpd/rde_peer.c
667
peer_generate_update(peer, re, NULL, 0, EVAL_DEFAULT);
usr.sbin/bgpd/rde_peer.c
67
peer_has_ext_nexthop(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_peer.c
682
peer_dump(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_peer.c
685
peer->throttled = 1;
usr.sbin/bgpd/rde_peer.c
687
if (peer->export_type == EXPORT_NONE) {
usr.sbin/bgpd/rde_peer.c
688
peer_blast(peer, aid);
usr.sbin/bgpd/rde_peer.c
689
} else if (peer->export_type == EXPORT_DEFAULT_ROUTE) {
usr.sbin/bgpd/rde_peer.c
690
up_generate_default(peer, aid);
usr.sbin/bgpd/rde_peer.c
691
peer_blast(peer, aid);
usr.sbin/bgpd/rde_peer.c
693
prefix_flowspec_dump(aid, peer, peer_dump_upcall,
usr.sbin/bgpd/rde_peer.c
696
if (rib_dump_new(peer->loc_rib_id, aid, RDE_RUNNER_ROUNDS, peer,
usr.sbin/bgpd/rde_peer.c
708
peer_begin_rrefresh(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_peer.c
71
return peer->capa.ext_nh[aid];
usr.sbin/bgpd/rde_peer.c
713
if (monotime_valid(peer->staletime[aid]))
usr.sbin/bgpd/rde_peer.c
714
peer_flush(peer, aid, peer->staletime[aid]);
usr.sbin/bgpd/rde_peer.c
716
peer->staletime[aid] = now = getmonotime();
usr.sbin/bgpd/rde_peer.c
75
peer_permit_as_set(struct rde_peer *peer)
usr.sbin/bgpd/rde_peer.c
751
peer_imsg_push(struct rde_peer *peer, struct imsg *imsg)
usr.sbin/bgpd/rde_peer.c
753
peer->stats.ibufq_msg_count++;
usr.sbin/bgpd/rde_peer.c
755
peer->stats.ibufq_payload_size += imsg_get_len(imsg);
usr.sbin/bgpd/rde_peer.c
758
imsg_ibufq_push(peer->ibufq, imsg);
usr.sbin/bgpd/rde_peer.c
766
peer_imsg_pop(struct rde_peer *peer, struct imsg *imsg)
usr.sbin/bgpd/rde_peer.c
768
switch (imsg_ibufq_pop(peer->ibufq, imsg)) {
usr.sbin/bgpd/rde_peer.c
77
return peer->flags & PEERFLAG_PERMIT_AS_SET;
usr.sbin/bgpd/rde_peer.c
772
peer->stats.ibufq_msg_count--;
usr.sbin/bgpd/rde_peer.c
774
peer->stats.ibufq_payload_size -= imsg_get_len(imsg);
usr.sbin/bgpd/rde_peer.c
786
peer_imsg_flush(struct rde_peer *peer)
usr.sbin/bgpd/rde_peer.c
788
ibufq_flush(peer->ibufq);
usr.sbin/bgpd/rde_peer.c
790
rdemem.rde_ibufq_msg_count -= peer->stats.ibufq_msg_count;
usr.sbin/bgpd/rde_peer.c
791
rdemem.rde_ibufq_payload_size -= peer->stats.ibufq_payload_size;
usr.sbin/bgpd/rde_peer.c
792
peer->stats.ibufq_msg_count = 0;
usr.sbin/bgpd/rde_peer.c
793
peer->stats.ibufq_payload_size = 0;
usr.sbin/bgpd/rde_peer.c
96
struct rde_peer *peer, *np;
usr.sbin/bgpd/rde_peer.c
98
RB_FOREACH_SAFE(peer, peer_tree, &peertable, np)
usr.sbin/bgpd/rde_peer.c
99
peer_delete(peer);
usr.sbin/bgpd/rde_rib.c
1016
prefix_flowspec_update(struct rde_peer *peer, struct filterstate *state,
usr.sbin/bgpd/rde_rib.c
1029
old = prefix_bypeer(re, peer, 0);
usr.sbin/bgpd/rde_rib.c
1041
prefix_link(new, re, re->prefix, peer, 0, path_id_tx, asp, comm,
usr.sbin/bgpd/rde_rib.c
1062
prefix_flowspec_withdraw(struct rde_peer *peer, struct pt_entry *pte)
usr.sbin/bgpd/rde_rib.c
1070
p = prefix_bypeer(re, peer, 0);
usr.sbin/bgpd/rde_rib.c
1103
prefix_bypeer(struct rib_entry *re, struct rde_peer *peer, uint32_t path_id)
usr.sbin/bgpd/rde_rib.c
1108
if (prefix_peer(p) == peer && p->path_id == path_id)
usr.sbin/bgpd/rde_rib.c
1129
struct rde_peer *peer, uint32_t path_id, uint32_t path_id_tx,
usr.sbin/bgpd/rde_rib.c
1137
p->peer = peer;
usr.sbin/bgpd/rde_rib.c
841
prefix_get(struct rib *rib, struct rde_peer *peer, uint32_t path_id,
usr.sbin/bgpd/rde_rib.c
849
return (prefix_bypeer(re, peer, path_id));
usr.sbin/bgpd/rde_rib.c
857
prefix_update(struct rib *rib, struct rde_peer *peer, uint32_t path_id,
usr.sbin/bgpd/rde_rib.c
868
if ((p = prefix_get(rib, peer, path_id, prefix, prefixlen)) != NULL) {
usr.sbin/bgpd/rde_rib.c
900
return (prefix_move(p, peer, asp, comm, state->nexthop,
usr.sbin/bgpd/rde_rib.c
903
return (prefix_add(prefix, prefixlen, rib, peer, path_id,
usr.sbin/bgpd/rde_rib.c
913
struct rde_peer *peer, uint32_t path_id, uint32_t path_id_tx,
usr.sbin/bgpd/rde_rib.c
929
prefix_link(p, re, re->prefix, peer, path_id, path_id_tx, asp, comm,
usr.sbin/bgpd/rde_rib.c
947
prefix_move(struct prefix *p, struct rde_peer *peer,
usr.sbin/bgpd/rde_rib.c
953
if (peer != prefix_peer(p))
usr.sbin/bgpd/rde_rib.c
958
prefix_link(np, prefix_re(p), p->pt, peer, p->path_id, p->path_id_tx,
usr.sbin/bgpd/rde_rib.c
990
prefix_withdraw(struct rib *rib, struct rde_peer *peer, uint32_t path_id,
usr.sbin/bgpd/rde_rib.c
996
p = prefix_get(rib, peer, path_id, prefix, prefixlen);
usr.sbin/bgpd/rde_update.c
1000
up_dump_withdraws(struct imsgbuf *imsg, struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_update.c
1007
if ((buf = imsg_create(imsg, IMSG_UPDATE, peer->conf.id, 0, 64)) ==
usr.sbin/bgpd/rde_update.c
1012
if (peer_has_ext_msg(peer))
usr.sbin/bgpd/rde_update.c
103
if (peer->conf.ebgp) {
usr.sbin/bgpd/rde_update.c
1044
if (up_dump_prefix(buf, &peer->withdraws[aid], peer, 1) == -1)
usr.sbin/bgpd/rde_update.c
1069
log_peer_warn(&peer->conf, "generating withdraw failed, peer desynced");
usr.sbin/bgpd/rde_update.c
1077
up_dump_withdraw_one(struct rde_peer *peer, struct pt_entry *pt,
usr.sbin/bgpd/rde_update.c
1116
has_ap = peer_has_add_path(peer, pt->aid, CAPA_AP_SEND);
usr.sbin/bgpd/rde_update.c
1147
up_dump_update(struct imsgbuf *imsg, struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_update.c
115
up_enforce_open_policy(struct rde_peer *peer, struct filterstate *state,
usr.sbin/bgpd/rde_update.c
1157
pa = TAILQ_FIRST(&peer->updates[aid]);
usr.sbin/bgpd/rde_update.c
1161
if (aid == AID_INET && peer_has_ext_nexthop(peer, AID_INET)) {
usr.sbin/bgpd/rde_update.c
1167
if ((buf = imsg_create(imsg, IMSG_UPDATE, peer->conf.id, 0, 64)) ==
usr.sbin/bgpd/rde_update.c
1172
if (peer_has_ext_msg(peer))
usr.sbin/bgpd/rde_update.c
1185
if (up_generate_attr(buf, peer, pa->attrs->aspath,
usr.sbin/bgpd/rde_update.c
1198
if (up_generate_mp_reach(buf, peer, pa, aid) == -1)
usr.sbin/bgpd/rde_update.c
1209
if (up_dump_prefix(buf, &pa->prefixes, peer, 0) == -1)
usr.sbin/bgpd/rde_update.c
1213
pend_attr_done(pa, peer);
usr.sbin/bgpd/rde_update.c
1222
log_peer_warnx(&peer->conf, "generating update failed, "
usr.sbin/bgpd/rde_update.c
1225
if (up_dump_withdraw_one(peer, pp->pt, pp->path_id_tx, buf) == -1)
usr.sbin/bgpd/rde_update.c
1227
pend_prefix_free(pp, &pa->prefixes, peer);
usr.sbin/bgpd/rde_update.c
1228
pend_attr_done(pa, peer);
usr.sbin/bgpd/rde_update.c
1234
pend_attr_done(pa, peer);
usr.sbin/bgpd/rde_update.c
1235
log_peer_warn(&peer->conf, "generating update failed, peer desynced");
usr.sbin/bgpd/rde_update.c
126
if (peer->role == ROLE_PEER || peer->role == ROLE_CUSTOMER ||
usr.sbin/bgpd/rde_update.c
127
peer->role == ROLE_RS_CLIENT)
usr.sbin/bgpd/rde_update.c
135
if (peer->role == ROLE_PEER || peer->role == ROLE_PROVIDER ||
usr.sbin/bgpd/rde_update.c
136
peer->role == ROLE_RS)
usr.sbin/bgpd/rde_update.c
140
tmp = htonl(peer->conf.local_as);
usr.sbin/bgpd/rde_update.c
144
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde_update.c
161
up_process_prefix(struct rde_peer *peer, struct prefix *new,
usr.sbin/bgpd/rde_update.c
175
if (!up_test_update(peer, new))
usr.sbin/bgpd/rde_update.c
180
if (rde_filter_out(peer->out_rules, peer, prefix_peer(new), &addr,
usr.sbin/bgpd/rde_update.c
187
if (up_enforce_open_policy(peer, &state, new->pt->aid)) {
usr.sbin/bgpd/rde_update.c
200
p = adjout_prefix_get(peer, new->path_id_tx, new->pt);
usr.sbin/bgpd/rde_update.c
203
up_prep_adjout(peer, &state, new->pt->aid);
usr.sbin/bgpd/rde_update.c
204
adjout_prefix_update(p, peer, &state, new->pt, path_id_tx);
usr.sbin/bgpd/rde_update.c
208
if (peer->conf.max_out_prefix &&
usr.sbin/bgpd/rde_update.c
209
peer->stats.prefix_out_cnt > peer->conf.max_out_prefix) {
usr.sbin/bgpd/rde_update.c
210
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde_update.c
212
peer->stats.prefix_out_cnt, peer->conf.max_out_prefix);
usr.sbin/bgpd/rde_update.c
213
rde_update_err(peer, ERR_CEASE,
usr.sbin/bgpd/rde_update.c
222
up_generate_updates(struct rde_peer *peer, struct rib_entry *re)
usr.sbin/bgpd/rde_update.c
227
p = adjout_prefix_first(peer, re->prefix);
usr.sbin/bgpd/rde_update.c
231
switch (up_process_prefix(peer, new, p)) {
usr.sbin/bgpd/rde_update.c
236
if (peer->flags & PEERFLAG_EVALUATE_ALL) {
usr.sbin/bgpd/rde_update.c
250
adjout_prefix_withdraw(peer, re->prefix, p);
usr.sbin/bgpd/rde_update.c
261
up_generate_addpath(struct rde_peer *peer, struct rib_entry *re)
usr.sbin/bgpd/rde_update.c
271
head = adjout_prefix_first(peer, re->prefix);
usr.sbin/bgpd/rde_update.c
272
for (p = head; p != NULL; p = adjout_prefix_next(peer, re->prefix, p)) {
usr.sbin/bgpd/rde_update.c
282
if (peer->eval.maxpaths != 0 &&
usr.sbin/bgpd/rde_update.c
283
maxpaths >= peer->eval.maxpaths)
usr.sbin/bgpd/rde_update.c
285
if (peer->eval.extrapaths != 0 &&
usr.sbin/bgpd/rde_update.c
286
extrapaths >= peer->eval.extrapaths)
usr.sbin/bgpd/rde_update.c
291
switch (peer->eval.mode) {
usr.sbin/bgpd/rde_update.c
322
switch (up_process_prefix(peer, new, (void *)-1)) {
usr.sbin/bgpd/rde_update.c
350
p = adjout_prefix_get(peer, addpath_prefix_list[i],
usr.sbin/bgpd/rde_update.c
353
adjout_prefix_withdraw(peer, re->prefix, p);
usr.sbin/bgpd/rde_update.c
363
up_generate_addpath_all(struct rde_peer *peer, struct rib_entry *re,
usr.sbin/bgpd/rde_update.c
373
up_generate_addpath(peer, re);
usr.sbin/bgpd/rde_update.c
384
switch (up_process_prefix(peer, new, (void *)-1)) {
usr.sbin/bgpd/rde_update.c
401
p = adjout_prefix_get(peer, old_pathid_tx, re->prefix);
usr.sbin/bgpd/rde_update.c
403
adjout_prefix_withdraw(peer, re->prefix, p);
usr.sbin/bgpd/rde_update.c
409
up_generate_default(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_update.c
418
if (peer->capa.mp[aid] == 0)
usr.sbin/bgpd/rde_update.c
438
if (rde_filter_out(peer->out_rules, peer, peerself, &addr, 0,
usr.sbin/bgpd/rde_update.c
444
up_prep_adjout(peer, &state, addr.aid);
usr.sbin/bgpd/rde_update.c
449
p = adjout_prefix_first(peer, pte);
usr.sbin/bgpd/rde_update.c
450
adjout_prefix_update(p, peer, &state, pte, 0);
usr.sbin/bgpd/rde_update.c
454
if (peer->conf.max_out_prefix &&
usr.sbin/bgpd/rde_update.c
455
peer->stats.prefix_out_cnt > peer->conf.max_out_prefix) {
usr.sbin/bgpd/rde_update.c
456
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/rde_update.c
458
peer->stats.prefix_out_cnt, peer->conf.max_out_prefix);
usr.sbin/bgpd/rde_update.c
459
rde_update_err(peer, ERR_CEASE,
usr.sbin/bgpd/rde_update.c
465
up_get_nexthop(struct rde_peer *peer, struct filterstate *state, uint8_t aid)
usr.sbin/bgpd/rde_update.c
472
if (peer_has_ext_nexthop(peer, aid) &&
usr.sbin/bgpd/rde_update.c
473
peer->remote_addr.aid == AID_INET6)
usr.sbin/bgpd/rde_update.c
474
peer_local = &peer->local_v6_addr;
usr.sbin/bgpd/rde_update.c
475
else if (peer->local_v4_addr.aid == AID_INET)
usr.sbin/bgpd/rde_update.c
476
peer_local = &peer->local_v4_addr;
usr.sbin/bgpd/rde_update.c
480
if (peer->local_v6_addr.aid == AID_INET6)
usr.sbin/bgpd/rde_update.c
481
peer_local = &peer->local_v6_addr;
usr.sbin/bgpd/rde_update.c
484
if (peer->local_v4_addr.aid == AID_INET)
usr.sbin/bgpd/rde_update.c
485
peer_local = &peer->local_v4_addr;
usr.sbin/bgpd/rde_update.c
486
else if (peer->local_v6_addr.aid == AID_INET6)
usr.sbin/bgpd/rde_update.c
487
peer_local = &peer->local_v6_addr;
usr.sbin/bgpd/rde_update.c
503
} else if (!peer->conf.ebgp) {
usr.sbin/bgpd/rde_update.c
518
&peer->remote_addr, sizeof(peer->remote_addr)) == 0) {
usr.sbin/bgpd/rde_update.c
522
} else if (peer->conf.distance == 1) {
usr.sbin/bgpd/rde_update.c
533
prefix_compare(&peer->remote_addr,
usr.sbin/bgpd/rde_update.c
551
&peer->remote_addr, sizeof(peer->remote_addr)) != 0) {
usr.sbin/bgpd/rde_update.c
560
up_prep_adjout(struct rde_peer *peer, struct filterstate *state, uint8_t aid)
usr.sbin/bgpd/rde_update.c
568
if (peer->conf.ebgp && (peer->flags & PEERFLAG_TRANS_AS) == 0) {
usr.sbin/bgpd/rde_update.c
569
uint32_t prep_as = peer->conf.local_as;
usr.sbin/bgpd/rde_update.c
577
nexthop = up_get_nexthop(peer, state, aid);
usr.sbin/bgpd/rde_update.c
58
up_test_update(struct rde_peer *peer, struct prefix *p)
usr.sbin/bgpd/rde_update.c
587
up_generate_attr(struct ibuf *buf, struct rde_peer *peer,
usr.sbin/bgpd/rde_update.c
623
if (!peer_has_as4byte(peer))
usr.sbin/bgpd/rde_update.c
628
if (!peer_has_as4byte(peer))
usr.sbin/bgpd/rde_update.c
640
if (peer_has_ext_nexthop(peer, aid))
usr.sbin/bgpd/rde_update.c
660
if (asp->flags & F_ATTR_MED && (!peer->conf.ebgp ||
usr.sbin/bgpd/rde_update.c
662
peer->flags & PEERFLAG_TRANS_AS)) {
usr.sbin/bgpd/rde_update.c
670
if (!peer->conf.ebgp) {
usr.sbin/bgpd/rde_update.c
684
if (community_writebuf(comm, type, peer->conf.ebgp,
usr.sbin/bgpd/rde_update.c
73
if (peer == frompeer)
usr.sbin/bgpd/rde_update.c
743
peer->conf.ebgp)
usr.sbin/bgpd/rde_update.c
745
if (!peer_has_as4byte(peer)) {
usr.sbin/bgpd/rde_update.c
751
peer->conf.ebgp)
usr.sbin/bgpd/rde_update.c
77
if (!frompeer->conf.ebgp && !peer->conf.ebgp) {
usr.sbin/bgpd/rde_update.c
780
peer->conf.ebgp)
usr.sbin/bgpd/rde_update.c
816
up_is_eor(struct rde_peer *peer, uint8_t aid)
usr.sbin/bgpd/rde_update.c
820
pa = TAILQ_FIRST(&peer->updates[aid]);
usr.sbin/bgpd/rde_update.c
822
pend_attr_done(pa, peer);
usr.sbin/bgpd/rde_update.c
838
struct rde_peer *peer, int withdraw)
usr.sbin/bgpd/rde_update.c
845
has_ap = peer_has_add_path(peer, p->pt->aid,
usr.sbin/bgpd/rde_update.c
853
peer->stats.prefix_sent_withdraw++;
usr.sbin/bgpd/rde_update.c
855
peer->stats.prefix_sent_update++;
usr.sbin/bgpd/rde_update.c
856
pend_prefix_free(p, prefix_head, peer);
usr.sbin/bgpd/rde_update.c
862
up_generate_mp_reach(struct ibuf *buf, struct rde_peer *peer,
usr.sbin/bgpd/rde_update.c
87
peer->conf.reflector_client == 0 &&
usr.sbin/bgpd/rde_update.c
911
peer_has_ext_nexthop(peer, aid)) {
usr.sbin/bgpd/rde_update.c
962
if (up_dump_prefix(buf, &pa->prefixes, peer, 0) == -1)
usr.sbin/bgpd/rde_update.c
97
if (peer->flags & PEERFLAG_TRANS_AS)
usr.sbin/bgpd/session.c
1036
session_handle_update(struct peer *peer, struct ibuf *msg)
usr.sbin/bgpd/session.c
1039
imsg_rde(IMSG_UPDATE, peer->conf.id, ibuf_data(msg), ibuf_size(msg));
usr.sbin/bgpd/session.c
1043
session_handle_rrefresh(struct peer *peer, struct route_refresh *rr)
usr.sbin/bgpd/session.c
1045
imsg_rde(IMSG_REFRESH, peer->conf.id, rr, sizeof(*rr));
usr.sbin/bgpd/session.c
1049
session_graceful_restart(struct peer *p)
usr.sbin/bgpd/session.c
1081
session_graceful_stop(struct peer *p)
usr.sbin/bgpd/session.c
1098
session_graceful_flush(struct peer *p, uint8_t aid, const char *why)
usr.sbin/bgpd/session.c
1106
session_mrt_dump_state(struct peer *p)
usr.sbin/bgpd/session.c
1121
session_mrt_dump_bgp_msg(struct peer *p, struct ibuf *msg,
usr.sbin/bgpd/session.c
1189
struct peer *p;
usr.sbin/bgpd/session.c
1251
if ((p = calloc(1, sizeof(struct peer))) == NULL)
usr.sbin/bgpd/session.c
1577
struct peer *
usr.sbin/bgpd/session.c
1580
struct peer *p, *res = NULL;
usr.sbin/bgpd/session.c
1599
struct peer *
usr.sbin/bgpd/session.c
1603
struct peer *p, *newpeer, *loose = NULL;
usr.sbin/bgpd/session.c
1625
if ((newpeer = malloc(sizeof(struct peer))) == NULL)
usr.sbin/bgpd/session.c
1627
memcpy(newpeer, loose, sizeof(struct peer));
usr.sbin/bgpd/session.c
1651
struct peer *
usr.sbin/bgpd/session.c
1654
static struct peer lookup;
usr.sbin/bgpd/session.c
1662
peer_matched(struct peer *p, struct ctl_neighbor *n)
usr.sbin/bgpd/session.c
1680
session_template_clone(struct peer *p, struct sockaddr *ip, uint32_t id,
usr.sbin/bgpd/session.c
1715
session_match_mask(struct peer *p, struct bgpd_addr *a)
usr.sbin/bgpd/session.c
1726
session_down(struct peer *peer)
usr.sbin/bgpd/session.c
1728
memset(&peer->capa.neg, 0, sizeof(peer->capa.neg));
usr.sbin/bgpd/session.c
1729
peer->stats.last_updown = getmonotime();
usr.sbin/bgpd/session.c
1731
timer_set(&peer->timers, Timer_SessionDown, INTERVAL_SESSION_DOWN);
usr.sbin/bgpd/session.c
1740
imsg_rde(IMSG_SESSION_DOWN, peer->conf.id, NULL, 0);
usr.sbin/bgpd/session.c
1744
session_up(struct peer *p)
usr.sbin/bgpd/session.c
181
struct peer *p, **peer_l = NULL, *next;
usr.sbin/bgpd/session.c
1822
session_demote(struct peer *p, int level)
usr.sbin/bgpd/session.c
1837
session_md5_reload(struct peer *p)
usr.sbin/bgpd/session.c
1846
session_stop(struct peer *peer, uint8_t subcode, const char *reason)
usr.sbin/bgpd/session.c
1851
strlcpy(peer->conf.reason, reason, sizeof(peer->conf.reason));
usr.sbin/bgpd/session.c
1861
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session.c
1867
switch (peer->state) {
usr.sbin/bgpd/session.c
1871
session_notification(peer, ERR_CEASE, subcode, ibuf);
usr.sbin/bgpd/session.c
1877
log_peer_warnx(&peer->conf, "session stop: %s, "
usr.sbin/bgpd/session.c
1880
log_peer_warnx(&peer->conf, "session stop: %s, %s",
usr.sbin/bgpd/session.c
1885
bgp_fsm(peer, EVNT_STOP, NULL);
usr.sbin/bgpd/session.c
1889
session_localaddr(struct peer *p)
usr.sbin/bgpd/session.c
1903
struct peer *p, *np, *next;
usr.sbin/bgpd/session.c
1957
struct peer *xp;
usr.sbin/bgpd/session.c
266
sizeof(struct peer *))) == NULL) {
usr.sbin/bgpd/session.c
571
init_peer(struct peer *p, struct bgpd_config *c)
usr.sbin/bgpd/session.c
616
session_dispatch_msg(struct pollfd *pfd, struct peer *p)
usr.sbin/bgpd/session.c
62
void init_peer(struct peer *, struct bgpd_config *);
usr.sbin/bgpd/session.c
63
int session_setup_socket(struct peer *);
usr.sbin/bgpd/session.c
65
void session_graceful_stop(struct peer *);
usr.sbin/bgpd/session.c
70
void session_template_clone(struct peer *, struct sockaddr *,
usr.sbin/bgpd/session.c
702
struct peer *p = NULL;
usr.sbin/bgpd/session.c
72
int session_match_mask(struct peer *, struct bgpd_addr *);
usr.sbin/bgpd/session.c
771
session_connect(struct peer *peer)
usr.sbin/bgpd/session.c
782
if (peer->fd != -1)
usr.sbin/bgpd/session.c
785
if ((peer->fd = socket(aid2af(peer->conf.remote_addr.aid),
usr.sbin/bgpd/session.c
787
log_peer_warn(&peer->conf, "session_connect socket");
usr.sbin/bgpd/session.c
788
bgp_fsm(peer, EVNT_CON_OPENFAIL, NULL);
usr.sbin/bgpd/session.c
792
if (peer->auth_conf.method != AUTH_NONE && sysdep.no_pfkey) {
usr.sbin/bgpd/session.c
793
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session.c
795
bgp_fsm(peer, EVNT_CON_OPENFAIL, NULL);
usr.sbin/bgpd/session.c
799
if (tcp_md5_set(peer->fd, &peer->auth_conf,
usr.sbin/bgpd/session.c
800
&peer->conf.remote_addr) == -1)
usr.sbin/bgpd/session.c
801
log_peer_warn(&peer->conf, "setting md5sig");
usr.sbin/bgpd/session.c
804
bind_addr = session_localaddr(peer);
usr.sbin/bgpd/session.c
806
if (bind(peer->fd, sa, sa_len) == -1) {
usr.sbin/bgpd/session.c
807
log_peer_warn(&peer->conf, "session_connect bind");
usr.sbin/bgpd/session.c
808
bgp_fsm(peer, EVNT_CON_OPENFAIL, NULL);
usr.sbin/bgpd/session.c
813
if (session_setup_socket(peer)) {
usr.sbin/bgpd/session.c
814
bgp_fsm(peer, EVNT_CON_OPENFAIL, NULL);
usr.sbin/bgpd/session.c
818
sa = addr2sa(&peer->conf.remote_addr, peer->conf.remote_port, &sa_len);
usr.sbin/bgpd/session.c
819
if (connect(peer->fd, sa, sa_len) == -1) {
usr.sbin/bgpd/session.c
823
if (errno != peer->lasterr)
usr.sbin/bgpd/session.c
824
log_peer_warn(&peer->conf, "connect");
usr.sbin/bgpd/session.c
825
peer->lasterr = errno;
usr.sbin/bgpd/session.c
826
bgp_fsm(peer, EVNT_CON_OPENFAIL, NULL);
usr.sbin/bgpd/session.c
830
bgp_fsm(peer, EVNT_CON_OPEN, NULL);
usr.sbin/bgpd/session.c
836
session_setup_socket(struct peer *p)
usr.sbin/bgpd/session.c
89
peer_compare(const struct peer *a, const struct peer *b)
usr.sbin/bgpd/session.c
930
session_close(struct peer *peer)
usr.sbin/bgpd/session.c
932
if (peer->fd != -1) {
usr.sbin/bgpd/session.c
933
close(peer->fd);
usr.sbin/bgpd/session.c
936
peer->fd = -1;
usr.sbin/bgpd/session.c
94
RB_GENERATE(peer_head, peer, entry, peer_compare);
usr.sbin/bgpd/session.h
202
RB_ENTRY(peer) entry;
usr.sbin/bgpd/session.h
205
struct capabilities peer;
usr.sbin/bgpd/session.h
215
struct peer *template;
usr.sbin/bgpd/session.h
268
void log_statechange(struct peer *, enum session_state,
usr.sbin/bgpd/session.h
270
void log_notification(const struct peer *, uint8_t, uint8_t,
usr.sbin/bgpd/session.h
272
void log_conn_attempt(const struct peer *, struct sockaddr *,
usr.sbin/bgpd/session.h
276
void mrt_dump_bgp_msg(struct mrt *, struct ibuf *, struct peer *,
usr.sbin/bgpd/session.h
278
void mrt_dump_state(struct mrt *, struct peer *);
usr.sbin/bgpd/session.h
289
int pfkey_recv_conf(struct peer *, struct imsg *);
usr.sbin/bgpd/session.h
293
void tcp_md5_add_listener(struct bgpd_config *, struct peer *);
usr.sbin/bgpd/session.h
294
void tcp_md5_del_listener(struct bgpd_config *, struct peer *);
usr.sbin/bgpd/session.h
330
RB_PROTOTYPE(peer_head, peer, entry, peer_compare);
usr.sbin/bgpd/session.h
333
int session_neighbor_rrefresh(struct peer *p);
usr.sbin/bgpd/session.h
336
struct peer *getpeerbydesc(struct bgpd_config *, const char *);
usr.sbin/bgpd/session.h
337
struct peer *getpeerbyip(struct bgpd_config *, struct sockaddr *);
usr.sbin/bgpd/session.h
338
struct peer *getpeerbyid(struct bgpd_config *, uint32_t);
usr.sbin/bgpd/session.h
339
void session_handle_update(struct peer *, struct ibuf *);
usr.sbin/bgpd/session.h
340
void session_handle_rrefresh(struct peer *, struct route_refresh *);
usr.sbin/bgpd/session.h
341
void session_graceful_restart(struct peer *);
usr.sbin/bgpd/session.h
342
void session_graceful_flush(struct peer *, uint8_t, const char *);
usr.sbin/bgpd/session.h
343
void session_mrt_dump_state(struct peer *);
usr.sbin/bgpd/session.h
344
void session_mrt_dump_bgp_msg(struct peer *, struct ibuf *,
usr.sbin/bgpd/session.h
346
int peer_matched(struct peer *, struct ctl_neighbor *);
usr.sbin/bgpd/session.h
350
int session_connect(struct peer *);
usr.sbin/bgpd/session.h
351
void session_close(struct peer *);
usr.sbin/bgpd/session.h
352
void session_up(struct peer *);
usr.sbin/bgpd/session.h
353
void session_down(struct peer *);
usr.sbin/bgpd/session.h
354
void session_demote(struct peer *, int);
usr.sbin/bgpd/session.h
355
void session_md5_reload(struct peer *);
usr.sbin/bgpd/session.h
356
void session_stop(struct peer *, uint8_t, const char *);
usr.sbin/bgpd/session.h
357
struct bgpd_addr *session_localaddr(struct peer *);
usr.sbin/bgpd/session.h
360
void session_open(struct peer *);
usr.sbin/bgpd/session.h
361
void session_keepalive(struct peer *);
usr.sbin/bgpd/session.h
362
void session_update(struct peer *, struct ibuf *);
usr.sbin/bgpd/session.h
363
void session_notification(struct peer *, uint8_t, uint8_t, struct ibuf *);
usr.sbin/bgpd/session.h
364
void session_notification_data(struct peer *, uint8_t, uint8_t, void *,
usr.sbin/bgpd/session.h
366
void session_rrefresh(struct peer *, uint8_t, uint8_t);
usr.sbin/bgpd/session.h
367
int session_dispatch_msg(struct pollfd *, struct peer *);
usr.sbin/bgpd/session.h
368
void session_process_msg(struct peer *);
usr.sbin/bgpd/session.h
372
void start_timer_sendholdtime(struct peer *);
usr.sbin/bgpd/session.h
373
void bgp_fsm(struct peer *, enum session_events, struct ibuf *);
usr.sbin/bgpd/session.h
374
void change_state(struct peer *, enum session_state, enum session_events);
usr.sbin/bgpd/session_bgp.c
1013
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
1016
session_notification(peer, ERR_OPEN,
usr.sbin/bgpd/session_bgp.c
1018
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
1026
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
1028
session_notification(peer, ERR_OPEN, 0, NULL);
usr.sbin/bgpd/session_bgp.c
1029
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
1038
if (peer->template && !peer->conf.remote_as && as != AS_TRANS) {
usr.sbin/bgpd/session_bgp.c
1039
peer->conf.remote_as = as;
usr.sbin/bgpd/session_bgp.c
1040
peer->conf.ebgp = (peer->conf.remote_as != peer->conf.local_as);
usr.sbin/bgpd/session_bgp.c
1041
if (!peer->conf.ebgp)
usr.sbin/bgpd/session_bgp.c
1043
peer->conf.enforce_as = ENFORCE_AS_OFF;
usr.sbin/bgpd/session_bgp.c
1046
if (peer->conf.remote_as != as) {
usr.sbin/bgpd/session_bgp.c
1047
log_peer_warnx(&peer->conf, "peer sent wrong AS %s",
usr.sbin/bgpd/session_bgp.c
1049
session_notification(peer, ERR_OPEN, ERR_OPEN_AS, NULL);
usr.sbin/bgpd/session_bgp.c
1050
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
1055
if (!peer->conf.ebgp && peer->remote_bgpid == peer->local_bgpid) {
usr.sbin/bgpd/session_bgp.c
1058
log_peer_warnx(&peer->conf, "peer BGPID %s conflicts with ours",
usr.sbin/bgpd/session_bgp.c
1060
session_notification(peer, ERR_OPEN, ERR_OPEN_BGPID, NULL);
usr.sbin/bgpd/session_bgp.c
1061
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
1065
if (capa_neg_calc(peer) == -1) {
usr.sbin/bgpd/session_bgp.c
1066
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
1074
parse_update(struct peer *peer, struct ibuf *msg)
usr.sbin/bgpd/session_bgp.c
1076
session_handle_update(peer, msg);
usr.sbin/bgpd/session_bgp.c
1080
parse_rrefresh(struct peer *peer, struct ibuf *msg)
usr.sbin/bgpd/session_bgp.c
1096
if (peer->capa.neg.enhanced_rr) {
usr.sbin/bgpd/session_bgp.c
1101
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
1105
session_notification_data(peer, ERR_HEADER,
usr.sbin/bgpd/session_bgp.c
1107
bgp_fsm(peer, EVNT_CON_FATAL, NULL);
usr.sbin/bgpd/session_bgp.c
1110
peer->stats.refresh_rcvd_req++;
usr.sbin/bgpd/session_bgp.c
1116
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
1120
session_notification(peer, ERR_RREFRESH,
usr.sbin/bgpd/session_bgp.c
1122
bgp_fsm(peer, EVNT_CON_FATAL, NULL);
usr.sbin/bgpd/session_bgp.c
1126
peer->stats.refresh_rcvd_borr++;
usr.sbin/bgpd/session_bgp.c
1128
peer->stats.refresh_rcvd_eorr++;
usr.sbin/bgpd/session_bgp.c
1131
log_peer_warnx(&peer->conf, "peer sent bad refresh, "
usr.sbin/bgpd/session_bgp.c
1138
peer->stats.refresh_rcvd_req++;
usr.sbin/bgpd/session_bgp.c
1143
log_peer_warnx(&peer->conf, "peer sent bad refresh, "
usr.sbin/bgpd/session_bgp.c
1148
if (!peer->capa.neg.refresh && !peer->capa.neg.enhanced_rr) {
usr.sbin/bgpd/session_bgp.c
1149
log_peer_warnx(&peer->conf, "peer sent unexpected refresh");
usr.sbin/bgpd/session_bgp.c
1156
session_handle_rrefresh(peer, &rr);
usr.sbin/bgpd/session_bgp.c
1160
parse_notification(struct peer *peer, struct ibuf *msg)
usr.sbin/bgpd/session_bgp.c
1169
log_peer_warnx(&peer->conf, "received bad notification");
usr.sbin/bgpd/session_bgp.c
1174
if (peer->capa.neg.grestart.grnotification) {
usr.sbin/bgpd/session_bgp.c
1178
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
1189
peer->errcnt++;
usr.sbin/bgpd/session_bgp.c
1190
peer->stats.last_rcvd_errcode = errcode;
usr.sbin/bgpd/session_bgp.c
1191
peer->stats.last_rcvd_suberr = subcode;
usr.sbin/bgpd/session_bgp.c
1193
log_notification(peer, errcode, subcode, msg, reason);
usr.sbin/bgpd/session_bgp.c
1195
CTASSERT(sizeof(peer->stats.last_reason) > UINT8_MAX);
usr.sbin/bgpd/session_bgp.c
1196
memset(peer->stats.last_reason, 0, sizeof(peer->stats.last_reason));
usr.sbin/bgpd/session_bgp.c
1202
if (ibuf_get(msg, peer->stats.last_reason,
usr.sbin/bgpd/session_bgp.c
1204
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
1210
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1214
session_process_msg(struct peer *p)
usr.sbin/bgpd/session_bgp.c
1280
capa_neg_calc(struct peer *p)
usr.sbin/bgpd/session_bgp.c
1288
(p->capa.ann.refresh && p->capa.peer.refresh) != 0;
usr.sbin/bgpd/session_bgp.c
1290
(p->capa.ann.enhanced_rr && p->capa.peer.enhanced_rr) != 0;
usr.sbin/bgpd/session_bgp.c
1292
(p->capa.ann.as4byte && p->capa.peer.as4byte) != 0;
usr.sbin/bgpd/session_bgp.c
1294
(p->capa.ann.ext_msg && p->capa.peer.ext_msg) != 0;
usr.sbin/bgpd/session_bgp.c
1297
if (p->capa.peer.mp[AID_UNSPEC])
usr.sbin/bgpd/session_bgp.c
1300
if (p->capa.ann.mp[i] && p->capa.peer.mp[i])
usr.sbin/bgpd/session_bgp.c
1304
if (p->capa.ann.mp[i] || p->capa.peer.mp[i])
usr.sbin/bgpd/session_bgp.c
1324
if ((p->capa.peer.grestart.flags[i] & CAPA_GR_PRESENT &&
usr.sbin/bgpd/session_bgp.c
1326
p->capa.peer.grestart.flags[i] = 0; /* disable */
usr.sbin/bgpd/session_bgp.c
1329
p->capa.neg.grestart.flags[i] = p->capa.peer.grestart.flags[i];
usr.sbin/bgpd/session_bgp.c
1332
p->capa.peer.grestart.flags[i] & CAPA_GR_FORWARD) {
usr.sbin/bgpd/session_bgp.c
1340
p->capa.neg.grestart.timeout = p->capa.peer.grestart.timeout;
usr.sbin/bgpd/session_bgp.c
1341
p->capa.neg.grestart.restart = p->capa.peer.grestart.restart;
usr.sbin/bgpd/session_bgp.c
1348
p->capa.peer.grestart.grnotification) != 0;
usr.sbin/bgpd/session_bgp.c
1355
if (p->capa.ann.ext_nh[i] && p->capa.peer.ext_nh[i]) {
usr.sbin/bgpd/session_bgp.c
1372
(p->capa.peer.add_path[i] & CAPA_AP_SEND)) {
usr.sbin/bgpd/session_bgp.c
1377
(p->capa.peer.add_path[i] & CAPA_AP_RECV)) {
usr.sbin/bgpd/session_bgp.c
1391
if (p->capa.ann.policy != 0 && p->capa.peer.policy != 0 &&
usr.sbin/bgpd/session_bgp.c
1427
if (p->capa.ann.policy == 2 && p->capa.peer.policy == 0 &&
usr.sbin/bgpd/session_bgp.c
1524
session_tcp_established(struct peer *peer)
usr.sbin/bgpd/session_bgp.c
1530
if (getsockname(peer->fd, (struct sockaddr *)&ss, &len) == -1)
usr.sbin/bgpd/session_bgp.c
1532
sa2addr((struct sockaddr *)&ss, &peer->local, &peer->local_port);
usr.sbin/bgpd/session_bgp.c
1534
if (getpeername(peer->fd, (struct sockaddr *)&ss, &len) == -1)
usr.sbin/bgpd/session_bgp.c
1536
sa2addr((struct sockaddr *)&ss, &peer->remote, &peer->remote_port);
usr.sbin/bgpd/session_bgp.c
1538
get_alternate_addr(&peer->local, &peer->remote, &peer->local_alt,
usr.sbin/bgpd/session_bgp.c
1539
&peer->if_scope);
usr.sbin/bgpd/session_bgp.c
1543
bgp_fsm(struct peer *peer, enum session_events event, struct ibuf *msg)
usr.sbin/bgpd/session_bgp.c
1545
switch (peer->state) {
usr.sbin/bgpd/session_bgp.c
1552
timer_stop(&peer->timers, Timer_Hold);
usr.sbin/bgpd/session_bgp.c
1553
timer_stop(&peer->timers, Timer_SendHold);
usr.sbin/bgpd/session_bgp.c
1554
timer_stop(&peer->timers, Timer_Keepalive);
usr.sbin/bgpd/session_bgp.c
1555
timer_stop(&peer->timers, Timer_IdleHold);
usr.sbin/bgpd/session_bgp.c
1557
if (!peer->depend_ok)
usr.sbin/bgpd/session_bgp.c
1558
timer_stop(&peer->timers, Timer_ConnectRetry);
usr.sbin/bgpd/session_bgp.c
1559
else if (peer->passive || peer->conf.passive ||
usr.sbin/bgpd/session_bgp.c
1560
peer->conf.template) {
usr.sbin/bgpd/session_bgp.c
1561
change_state(peer, STATE_ACTIVE, event);
usr.sbin/bgpd/session_bgp.c
1562
timer_stop(&peer->timers, Timer_ConnectRetry);
usr.sbin/bgpd/session_bgp.c
1564
change_state(peer, STATE_CONNECT, event);
usr.sbin/bgpd/session_bgp.c
1565
timer_set(&peer->timers, Timer_ConnectRetry,
usr.sbin/bgpd/session_bgp.c
1566
peer->conf.connectretry);
usr.sbin/bgpd/session_bgp.c
1567
session_connect(peer);
usr.sbin/bgpd/session_bgp.c
1569
peer->passive = 0;
usr.sbin/bgpd/session_bgp.c
1572
timer_stop(&peer->timers, Timer_IdleHold);
usr.sbin/bgpd/session_bgp.c
1585
session_tcp_established(peer);
usr.sbin/bgpd/session_bgp.c
1586
session_open(peer);
usr.sbin/bgpd/session_bgp.c
1587
timer_stop(&peer->timers, Timer_ConnectRetry);
usr.sbin/bgpd/session_bgp.c
1588
peer->holdtime = INTERVAL_HOLD_INITIAL;
usr.sbin/bgpd/session_bgp.c
1589
start_timer_holdtime(peer);
usr.sbin/bgpd/session_bgp.c
1590
change_state(peer, STATE_OPENSENT, event);
usr.sbin/bgpd/session_bgp.c
1593
timer_set(&peer->timers, Timer_ConnectRetry,
usr.sbin/bgpd/session_bgp.c
1594
peer->conf.connectretry);
usr.sbin/bgpd/session_bgp.c
1595
session_close(peer);
usr.sbin/bgpd/session_bgp.c
1596
change_state(peer, STATE_ACTIVE, event);
usr.sbin/bgpd/session_bgp.c
1599
timer_set(&peer->timers, Timer_ConnectRetry,
usr.sbin/bgpd/session_bgp.c
1600
peer->conf.connectretry);
usr.sbin/bgpd/session_bgp.c
1601
session_connect(peer);
usr.sbin/bgpd/session_bgp.c
1604
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1614
session_tcp_established(peer);
usr.sbin/bgpd/session_bgp.c
1615
session_open(peer);
usr.sbin/bgpd/session_bgp.c
1616
timer_stop(&peer->timers, Timer_ConnectRetry);
usr.sbin/bgpd/session_bgp.c
1617
peer->holdtime = INTERVAL_HOLD_INITIAL;
usr.sbin/bgpd/session_bgp.c
1618
start_timer_holdtime(peer);
usr.sbin/bgpd/session_bgp.c
1619
change_state(peer, STATE_OPENSENT, event);
usr.sbin/bgpd/session_bgp.c
1622
timer_set(&peer->timers, Timer_ConnectRetry,
usr.sbin/bgpd/session_bgp.c
1623
peer->conf.connectretry);
usr.sbin/bgpd/session_bgp.c
1624
session_close(peer);
usr.sbin/bgpd/session_bgp.c
1625
change_state(peer, STATE_ACTIVE, event);
usr.sbin/bgpd/session_bgp.c
1628
timer_set(&peer->timers, Timer_ConnectRetry,
usr.sbin/bgpd/session_bgp.c
1629
peer->holdtime);
usr.sbin/bgpd/session_bgp.c
1630
change_state(peer, STATE_CONNECT, event);
usr.sbin/bgpd/session_bgp.c
1631
session_connect(peer);
usr.sbin/bgpd/session_bgp.c
1634
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1644
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1647
session_close(peer);
usr.sbin/bgpd/session_bgp.c
1648
timer_set(&peer->timers, Timer_ConnectRetry,
usr.sbin/bgpd/session_bgp.c
1649
peer->conf.connectretry);
usr.sbin/bgpd/session_bgp.c
1650
change_state(peer, STATE_ACTIVE, event);
usr.sbin/bgpd/session_bgp.c
1653
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1656
session_notification(peer, ERR_HOLDTIMEREXPIRED,
usr.sbin/bgpd/session_bgp.c
1658
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1661
session_notification(peer, ERR_SENDHOLDTIMEREXPIRED,
usr.sbin/bgpd/session_bgp.c
1663
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1667
if (parse_open(peer, msg))
usr.sbin/bgpd/session_bgp.c
1669
session_keepalive(peer);
usr.sbin/bgpd/session_bgp.c
1670
change_state(peer, STATE_OPENCONFIRM, event);
usr.sbin/bgpd/session_bgp.c
1673
parse_notification(peer, msg);
usr.sbin/bgpd/session_bgp.c
1676
session_notification(peer,
usr.sbin/bgpd/session_bgp.c
1678
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1688
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1692
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1695
session_notification(peer, ERR_HOLDTIMEREXPIRED,
usr.sbin/bgpd/session_bgp.c
1697
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1700
session_notification(peer, ERR_SENDHOLDTIMEREXPIRED,
usr.sbin/bgpd/session_bgp.c
1702
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1705
session_keepalive(peer);
usr.sbin/bgpd/session_bgp.c
1708
start_timer_holdtime(peer);
usr.sbin/bgpd/session_bgp.c
1709
change_state(peer, STATE_ESTABLISHED, event);
usr.sbin/bgpd/session_bgp.c
1712
parse_notification(peer, msg);
usr.sbin/bgpd/session_bgp.c
1715
session_notification(peer,
usr.sbin/bgpd/session_bgp.c
1717
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1727
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1731
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1734
session_notification(peer, ERR_HOLDTIMEREXPIRED,
usr.sbin/bgpd/session_bgp.c
1736
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1739
session_notification(peer, ERR_SENDHOLDTIMEREXPIRED,
usr.sbin/bgpd/session_bgp.c
1741
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1744
session_keepalive(peer);
usr.sbin/bgpd/session_bgp.c
1747
start_timer_holdtime(peer);
usr.sbin/bgpd/session_bgp.c
1750
start_timer_holdtime(peer);
usr.sbin/bgpd/session_bgp.c
1751
parse_update(peer, msg);
usr.sbin/bgpd/session_bgp.c
1754
parse_notification(peer, msg);
usr.sbin/bgpd/session_bgp.c
1757
session_notification(peer,
usr.sbin/bgpd/session_bgp.c
1759
change_state(peer, STATE_IDLE, event);
usr.sbin/bgpd/session_bgp.c
1767
start_timer_holdtime(struct peer *peer)
usr.sbin/bgpd/session_bgp.c
1769
if (peer->holdtime > 0)
usr.sbin/bgpd/session_bgp.c
1770
timer_set(&peer->timers, Timer_Hold, peer->holdtime);
usr.sbin/bgpd/session_bgp.c
1772
timer_stop(&peer->timers, Timer_Hold);
usr.sbin/bgpd/session_bgp.c
1776
start_timer_sendholdtime(struct peer *peer)
usr.sbin/bgpd/session_bgp.c
1780
if (peer->holdtime > INTERVAL_HOLD)
usr.sbin/bgpd/session_bgp.c
1781
holdtime = peer->holdtime;
usr.sbin/bgpd/session_bgp.c
1783
if (peer->holdtime > 0)
usr.sbin/bgpd/session_bgp.c
1784
timer_set(&peer->timers, Timer_SendHold, holdtime);
usr.sbin/bgpd/session_bgp.c
1786
timer_stop(&peer->timers, Timer_SendHold);
usr.sbin/bgpd/session_bgp.c
1790
start_timer_keepalive(struct peer *peer)
usr.sbin/bgpd/session_bgp.c
1792
if (peer->holdtime > 0)
usr.sbin/bgpd/session_bgp.c
1793
timer_set(&peer->timers, Timer_Keepalive, peer->holdtime / 3);
usr.sbin/bgpd/session_bgp.c
1795
timer_stop(&peer->timers, Timer_Keepalive);
usr.sbin/bgpd/session_bgp.c
1799
change_state(struct peer *peer, enum session_state state,
usr.sbin/bgpd/session_bgp.c
1805
ostate = peer->prev_state;
usr.sbin/bgpd/session_bgp.c
1806
peer->prev_state = peer->state;
usr.sbin/bgpd/session_bgp.c
1807
peer->state = state;
usr.sbin/bgpd/session_bgp.c
181
session_open(struct peer *p)
usr.sbin/bgpd/session_bgp.c
1810
switch (peer->state) {
usr.sbin/bgpd/session_bgp.c
1813
if (peer->prev_state == STATE_ESTABLISHED &&
usr.sbin/bgpd/session_bgp.c
1814
peer->conf.demote_group[0] && !peer->demoted)
usr.sbin/bgpd/session_bgp.c
1815
session_demote(peer, +1);
usr.sbin/bgpd/session_bgp.c
1821
if (peer->prev_state >= STATE_OPENSENT &&
usr.sbin/bgpd/session_bgp.c
1822
msgbuf_queuelen(peer->wbuf) > 0)
usr.sbin/bgpd/session_bgp.c
1823
ibuf_write(peer->fd, peer->wbuf);
usr.sbin/bgpd/session_bgp.c
1831
if (peer->IdleHoldTime == 0)
usr.sbin/bgpd/session_bgp.c
1832
peer->IdleHoldTime = INTERVAL_IDLE_HOLD_INITIAL;
usr.sbin/bgpd/session_bgp.c
1833
peer->holdtime = INTERVAL_HOLD_INITIAL;
usr.sbin/bgpd/session_bgp.c
1834
timer_stop(&peer->timers, Timer_ConnectRetry);
usr.sbin/bgpd/session_bgp.c
1835
timer_stop(&peer->timers, Timer_Keepalive);
usr.sbin/bgpd/session_bgp.c
1836
timer_stop(&peer->timers, Timer_Hold);
usr.sbin/bgpd/session_bgp.c
1837
timer_stop(&peer->timers, Timer_SendHold);
usr.sbin/bgpd/session_bgp.c
1838
timer_stop(&peer->timers, Timer_IdleHold);
usr.sbin/bgpd/session_bgp.c
1839
timer_stop(&peer->timers, Timer_IdleHoldReset);
usr.sbin/bgpd/session_bgp.c
1840
session_close(peer);
usr.sbin/bgpd/session_bgp.c
1841
msgbuf_clear(peer->wbuf);
usr.sbin/bgpd/session_bgp.c
1842
peer->rpending = 0;
usr.sbin/bgpd/session_bgp.c
1843
memset(&peer->capa.peer, 0, sizeof(peer->capa.peer));
usr.sbin/bgpd/session_bgp.c
1844
session_md5_reload(peer);
usr.sbin/bgpd/session_bgp.c
1846
if (peer->prev_state == STATE_ESTABLISHED) {
usr.sbin/bgpd/session_bgp.c
1847
if (peer->capa.neg.grestart.restart == 2 &&
usr.sbin/bgpd/session_bgp.c
1850
(peer->capa.neg.grestart.grnotification &&
usr.sbin/bgpd/session_bgp.c
1855
timer_set(&peer->timers, Timer_IdleHold, 0);
usr.sbin/bgpd/session_bgp.c
1856
session_graceful_restart(peer);
usr.sbin/bgpd/session_bgp.c
1858
timer_set(&peer->timers, Timer_IdleHold,
usr.sbin/bgpd/session_bgp.c
1859
peer->IdleHoldTime);
usr.sbin/bgpd/session_bgp.c
1861
peer->IdleHoldTime < MAX_IDLE_HOLD/2)
usr.sbin/bgpd/session_bgp.c
1862
peer->IdleHoldTime *= 2;
usr.sbin/bgpd/session_bgp.c
1863
session_down(peer);
usr.sbin/bgpd/session_bgp.c
1865
session_down(peer);
usr.sbin/bgpd/session_bgp.c
1868
timer_set(&peer->timers, Timer_IdleHold,
usr.sbin/bgpd/session_bgp.c
1869
peer->IdleHoldTime);
usr.sbin/bgpd/session_bgp.c
1871
peer->IdleHoldTime < MAX_IDLE_HOLD / 2)
usr.sbin/bgpd/session_bgp.c
1872
peer->IdleHoldTime *= 2;
usr.sbin/bgpd/session_bgp.c
1875
if (peer->prev_state == STATE_NONE ||
usr.sbin/bgpd/session_bgp.c
1876
peer->prev_state == STATE_ESTABLISHED) {
usr.sbin/bgpd/session_bgp.c
1878
memcpy(&peer->capa.ann, &peer->conf.capabilities,
usr.sbin/bgpd/session_bgp.c
1879
sizeof(peer->capa.ann));
usr.sbin/bgpd/session_bgp.c
1883
if (peer->prev_state == STATE_ESTABLISHED &&
usr.sbin/bgpd/session_bgp.c
1884
peer->capa.neg.grestart.restart == 2) {
usr.sbin/bgpd/session_bgp.c
1886
session_graceful_restart(peer);
usr.sbin/bgpd/session_bgp.c
1887
peer->holdtime = INTERVAL_HOLD_INITIAL;
usr.sbin/bgpd/session_bgp.c
1888
timer_stop(&peer->timers, Timer_ConnectRetry);
usr.sbin/bgpd/session_bgp.c
1889
timer_stop(&peer->timers, Timer_Keepalive);
usr.sbin/bgpd/session_bgp.c
1890
timer_stop(&peer->timers, Timer_Hold);
usr.sbin/bgpd/session_bgp.c
1891
timer_stop(&peer->timers, Timer_SendHold);
usr.sbin/bgpd/session_bgp.c
1892
timer_stop(&peer->timers, Timer_IdleHold);
usr.sbin/bgpd/session_bgp.c
1893
timer_stop(&peer->timers, Timer_IdleHoldReset);
usr.sbin/bgpd/session_bgp.c
1894
session_close(peer);
usr.sbin/bgpd/session_bgp.c
1895
msgbuf_clear(peer->wbuf);
usr.sbin/bgpd/session_bgp.c
1896
memset(&peer->capa.peer, 0, sizeof(peer->capa.peer));
usr.sbin/bgpd/session_bgp.c
1900
session_md5_reload(peer);
usr.sbin/bgpd/session_bgp.c
1907
timer_set(&peer->timers, Timer_IdleHoldReset,
usr.sbin/bgpd/session_bgp.c
1908
peer->IdleHoldTime);
usr.sbin/bgpd/session_bgp.c
1909
if (peer->demoted)
usr.sbin/bgpd/session_bgp.c
1910
timer_set(&peer->timers, Timer_CarpUndemote,
usr.sbin/bgpd/session_bgp.c
1912
session_up(peer);
usr.sbin/bgpd/session_bgp.c
1918
log_statechange(peer, ostate, event);
usr.sbin/bgpd/session_bgp.c
1919
session_mrt_dump_state(peer);
usr.sbin/bgpd/session_bgp.c
34
static void start_timer_holdtime(struct peer *);
usr.sbin/bgpd/session_bgp.c
35
static void start_timer_keepalive(struct peer *);
usr.sbin/bgpd/session_bgp.c
354
session_keepalive(struct peer *p)
usr.sbin/bgpd/session_bgp.c
36
static int capa_neg_calc(struct peer *);
usr.sbin/bgpd/session_bgp.c
369
session_update(struct peer *p, struct ibuf *ibuf)
usr.sbin/bgpd/session_bgp.c
437
session_notification_data(struct peer *p, uint8_t errcode, uint8_t subcode,
usr.sbin/bgpd/session_bgp.c
447
session_notification(struct peer *p, uint8_t errcode, uint8_t subcode,
usr.sbin/bgpd/session_bgp.c
520
session_neighbor_rrefresh(struct peer *p)
usr.sbin/bgpd/session_bgp.c
536
session_rrefresh(struct peer *p, uint8_t aid, uint8_t subtype)
usr.sbin/bgpd/session_bgp.c
586
struct peer *peer = arg;
usr.sbin/bgpd/session_bgp.c
598
log_peer_warnx(&peer->conf, "sync error");
usr.sbin/bgpd/session_bgp.c
599
session_notification(peer, ERR_HEADER, ERR_HDR_SYNC, NULL);
usr.sbin/bgpd/session_bgp.c
600
bgp_fsm(peer, EVNT_CON_FATAL, NULL);
usr.sbin/bgpd/session_bgp.c
605
if (peer->capa.ann.ext_msg)
usr.sbin/bgpd/session_bgp.c
609
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
617
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
624
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
631
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
638
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
645
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
65
session_sendmsg(struct ibuf *msg, struct peer *p, enum msg_type msgtype)
usr.sbin/bgpd/session_bgp.c
651
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
653
session_notification_data(peer, ERR_HEADER, ERR_HDR_TYPE,
usr.sbin/bgpd/session_bgp.c
655
bgp_fsm(peer, EVNT_CON_FATAL, NULL);
usr.sbin/bgpd/session_bgp.c
666
session_notification_data(peer, ERR_HEADER, ERR_HDR_LEN,
usr.sbin/bgpd/session_bgp.c
668
bgp_fsm(peer, EVNT_CON_FATAL, NULL);
usr.sbin/bgpd/session_bgp.c
674
parse_capabilities(struct peer *peer, struct ibuf *buf, uint32_t *as)
usr.sbin/bgpd/session_bgp.c
684
log_peer_warnx(&peer->conf, "Bad capabilities attr "
usr.sbin/bgpd/session_bgp.c
689
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
702
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
707
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
711
peer->capa.peer.mp[AID_UNSPEC] = 1;
usr.sbin/bgpd/session_bgp.c
714
peer->capa.peer.mp[aid] = 1;
usr.sbin/bgpd/session_bgp.c
717
peer->capa.peer.refresh = 1;
usr.sbin/bgpd/session_bgp.c
725
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
728
memset(peer->capa.peer.ext_nh, 0,
usr.sbin/bgpd/session_bgp.c
729
sizeof(peer->capa.peer.ext_nh));
usr.sbin/bgpd/session_bgp.c
735
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
743
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
750
peer->capa.peer.ext_nh[aid] = 1;
usr.sbin/bgpd/session_bgp.c
754
peer->capa.peer.ext_msg = 1;
usr.sbin/bgpd/session_bgp.c
759
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
763
if (!peer->conf.ebgp) {
usr.sbin/bgpd/session_bgp.c
764
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
768
peer->capa.peer.policy = 1;
usr.sbin/bgpd/session_bgp.c
769
peer->remote_role = capa2role(role);
usr.sbin/bgpd/session_bgp.c
774
peer->capa.peer.grestart.restart = 1;
usr.sbin/bgpd/session_bgp.c
775
peer->capa.peer.grestart.timeout = 0;
usr.sbin/bgpd/session_bgp.c
778
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
780
peer->capa.peer.grestart.restart = 0;
usr.sbin/bgpd/session_bgp.c
781
peer->capa.peer.grestart.timeout = 0;
usr.sbin/bgpd/session_bgp.c
787
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
789
peer->capa.peer.grestart.restart = 0;
usr.sbin/bgpd/session_bgp.c
790
peer->capa.peer.grestart.timeout = 0;
usr.sbin/bgpd/session_bgp.c
794
peer->capa.peer.grestart.timeout =
usr.sbin/bgpd/session_bgp.c
796
if (peer->capa.peer.grestart.timeout == 0) {
usr.sbin/bgpd/session_bgp.c
797
log_peer_warnx(&peer->conf, "Received "
usr.sbin/bgpd/session_bgp.c
799
peer->capa.peer.grestart.restart = 0;
usr.sbin/bgpd/session_bgp.c
809
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
815
peer->capa.peer.grestart.flags[aid] |=
usr.sbin/bgpd/session_bgp.c
818
peer->capa.peer.grestart.flags[aid] |=
usr.sbin/bgpd/session_bgp.c
821
peer->capa.peer.grestart.flags[aid] |=
usr.sbin/bgpd/session_bgp.c
823
peer->capa.peer.grestart.restart = 2;
usr.sbin/bgpd/session_bgp.c
826
peer->capa.peer.grestart.grnotification = 1;
usr.sbin/bgpd/session_bgp.c
831
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
833
peer->capa.peer.as4byte = 0;
usr.sbin/bgpd/session_bgp.c
837
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
839
session_notification(peer, ERR_OPEN,
usr.sbin/bgpd/session_bgp.c
841
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
844
peer->capa.peer.as4byte = 1;
usr.sbin/bgpd/session_bgp.c
849
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
851
memset(peer->capa.peer.add_path, 0,
usr.sbin/bgpd/session_bgp.c
852
sizeof(peer->capa.peer.add_path));
usr.sbin/bgpd/session_bgp.c
861
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
865
memset(peer->capa.peer.add_path, 0,
usr.sbin/bgpd/session_bgp.c
866
sizeof(peer->capa.peer.add_path));
usr.sbin/bgpd/session_bgp.c
870
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
873
memset(peer->capa.peer.add_path, 0,
usr.sbin/bgpd/session_bgp.c
874
sizeof(peer->capa.peer.add_path));
usr.sbin/bgpd/session_bgp.c
877
peer->capa.peer.add_path[aid] = flags;
usr.sbin/bgpd/session_bgp.c
881
peer->capa.peer.enhanced_rr = 1;
usr.sbin/bgpd/session_bgp.c
892
parse_open(struct peer *peer, struct ibuf *msg)
usr.sbin/bgpd/session_bgp.c
908
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
914
session_notification_data(peer, ERR_OPEN, ERR_OPEN_VERSION,
usr.sbin/bgpd/session_bgp.c
916
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
920
as = peer->short_as = short_as;
usr.sbin/bgpd/session_bgp.c
922
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
924
session_notification(peer, ERR_OPEN, ERR_OPEN_AS, NULL);
usr.sbin/bgpd/session_bgp.c
925
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
929
if (holdtime != 0 && holdtime < peer->conf.min_holdtime) {
usr.sbin/bgpd/session_bgp.c
930
log_peer_warnx(&peer->conf,
usr.sbin/bgpd/session_bgp.c
932
session_notification(peer, ERR_OPEN, ERR_OPEN_HOLDTIME, NULL);
usr.sbin/bgpd/session_bgp.c
933
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
937
if (holdtime < peer->conf.holdtime)
usr.sbin/bgpd/session_bgp.c
938
peer->holdtime = holdtime;
usr.sbin/bgpd/session_bgp.c
940
peer->holdtime = peer->conf.holdtime;
usr.sbin/bgpd/session_bgp.c
944
log_peer_warnx(&peer->conf, "peer BGPID 0 unacceptable");
usr.sbin/bgpd/session_bgp.c
945
session_notification(peer, ERR_OPEN, ERR_OPEN_BGPID, NULL);
usr.sbin/bgpd/session_bgp.c
946
change_state(peer, STATE_IDLE, EVNT_RCVD_OPEN);
usr.sbin/bgpd/session_bgp.c
949
peer->remote_bgpid = bgpid;
usr.sbin/bgpd/session_bgp.c
995
if (parse_capabilities(peer, &op, &as) == -1) {
usr.sbin/bgpd/session_bgp.c
996
session_notification(peer, ERR_OPEN, 0,
usr.sbin/bgpd/session_bgp.c
998
change_state(peer, STATE_IDLE,
usr.sbin/ikectl/ikectl.c
115
ca_export(ca, NULL, res->peer, res->pass);
usr.sbin/ikectl/ikectl.c
130
ca_export(ca, res->host, res->peer, res->pass);
usr.sbin/ikectl/parser.c
334
res.peer = strdup(word);
usr.sbin/ikectl/parser.h
71
char *peer;
usr.sbin/inetd/inetd.c
410
struct sockaddr_storage peer;
usr.sbin/inetd/inetd.c
411
socklen_t plen = sizeof(peer);
usr.sbin/inetd/inetd.c
414
if (getpeername(ctrl, (struct sockaddr *)&peer, &plen) == -1) {
usr.sbin/inetd/inetd.c
419
if (getnameinfo((struct sockaddr *)&peer, plen, NULL, 0,
usr.sbin/ldomctl/config.c
2440
struct ldc_endpoint *peer = ldc_endpoints[resource_id];
usr.sbin/ldomctl/config.c
2442
if (peer && peer->target_type == LDC_GUEST &&
usr.sbin/ldomctl/config.c
2443
peer->target_channel == endpoint->channel &&
usr.sbin/ldomctl/config.c
2444
peer->channel == endpoint->target_channel &&
usr.sbin/ldomctl/config.c
2445
peer->target_guest == guest->gid)
usr.sbin/ldomctl/config.c
2446
guest_delete_endpoint(peer->guest, peer);
usr.sbin/npppd/l2tp/l2tp.h
367
struct sockaddr_storage peer;
usr.sbin/npppd/l2tp/l2tp_call.c
1018
L2TP_CALL_ASSERT(sizeof(ppp->phy_info) >= _this->ctrl->peer.ss_len);
usr.sbin/npppd/l2tp/l2tp_call.c
1019
memcpy(&ppp->phy_info, &_this->ctrl->peer,
usr.sbin/npppd/l2tp/l2tp_call.c
1020
MINIMUM(sizeof(ppp->phy_info), _this->ctrl->peer.ss_len));
usr.sbin/npppd/l2tp/l2tp_ctrl.c
1029
addrport_tostring(peer, peer->sa_len, hbuf, sizeof(hbuf)), errmsg);
usr.sbin/npppd/l2tp/l2tp_ctrl.c
1136
struct sockaddr *peer)
usr.sbin/npppd/l2tp/l2tp_ctrl.c
117
l2tp_ctrl_init(l2tp_ctrl *_this, l2tpd *_l2tpd, struct sockaddr *peer,
usr.sbin/npppd/l2tp/l2tp_ctrl.c
1236
if (getnameinfo((struct sockaddr *)&_this->peer, _this->peer.ss_len,
usr.sbin/npppd/l2tp/l2tp_ctrl.c
152
L2TP_CTRL_ASSERT(peer != NULL);
usr.sbin/npppd/l2tp/l2tp_ctrl.c
154
memcpy(&_this->peer, peer, peer->sa_len);
usr.sbin/npppd/l2tp/l2tp_ctrl.c
496
(struct sockaddr *)&_this->peer, _this->sa_cookie);
usr.sbin/npppd/l2tp/l2tp_ctrl.c
500
(struct sockaddr *)&_this->peer);
usr.sbin/npppd/l2tp/l2tp_ctrl.c
505
(struct sockaddr *)&_this->peer, _this->peer.ss_len,
usr.sbin/npppd/l2tp/l2tp_ctrl.c
510
(struct sockaddr *)&_this->peer, _this->peer.ss_len);
usr.sbin/npppd/l2tp/l2tp_ctrl.c
629
l2tp_ctrl_input(l2tpd *_this, int listener_index, struct sockaddr *peer,
usr.sbin/npppd/l2tp/l2tp_ctrl.c
647
L2TP_CTRL_ASSERT(peer->sa_family == sock->sa_family);
usr.sbin/npppd/l2tp/l2tp_ctrl.c
648
L2TP_CTRL_ASSERT(peer->sa_family == AF_INET ||
usr.sbin/npppd/l2tp/l2tp_ctrl.c
649
peer->sa_family == AF_INET6)
usr.sbin/npppd/l2tp/l2tp_ctrl.c
744
if (l2tp_ctrl_init(ctrl, _this, peer, sock, nat_t_ctx) != 0) {
usr.sbin/npppd/l2tp/l2tp_ctrl.c
759
if (ctrl->peer.ss_family != peer->sa_family)
usr.sbin/npppd/l2tp/l2tp_ctrl.c
761
else if (peer->sa_family == AF_INET) {
usr.sbin/npppd/l2tp/l2tp_ctrl.c
762
if (SIN(peer)->sin_addr.s_addr !=
usr.sbin/npppd/l2tp/l2tp_ctrl.c
763
SIN(&ctrl->peer)->sin_addr.s_addr ||
usr.sbin/npppd/l2tp/l2tp_ctrl.c
764
SIN(peer)->sin_port != SIN(&ctrl->peer)->sin_port)
usr.sbin/npppd/l2tp/l2tp_ctrl.c
766
} else if (peer->sa_family == AF_INET6) {
usr.sbin/npppd/l2tp/l2tp_ctrl.c
767
if (!IN6_ARE_ADDR_EQUAL(&(SIN6(peer)->sin6_addr),
usr.sbin/npppd/l2tp/l2tp_ctrl.c
768
&(SIN6(&ctrl->peer)->sin6_addr)) ||
usr.sbin/npppd/l2tp/l2tp_ctrl.c
769
SIN6(peer)->sin6_port !=
usr.sbin/npppd/l2tp/l2tp_ctrl.c
770
SIN6(&ctrl->peer)->sin6_port)
usr.sbin/npppd/l2tp/l2tp_ctrl.c
777
(struct sockaddr *)&ctrl->peer,
usr.sbin/npppd/l2tp/l2tp_ctrl.c
778
ctrl->peer.ss_len, hbuf, sizeof(hbuf)));
usr.sbin/npppd/l2tp/l2tp_ctrl.c
926
peer) == 0) {
usr.sbin/npppd/l2tp/l2tpd.c
582
l2tpd_log_access_deny(l2tpd *_this, const char *reason, struct sockaddr *peer)
usr.sbin/npppd/l2tp/l2tpd.c
587
"%s", addrport_tostring(peer, peer->sa_len, buf, sizeof(buf)),
usr.sbin/npppd/l2tp/l2tpd.c
599
struct sockaddr_storage peer, sock;
usr.sbin/npppd/l2tp/l2tpd.c
606
peerlen = sizeof(peer);
usr.sbin/npppd/l2tp/l2tpd.c
616
(struct sockaddr *)&peer, &peerlen,
usr.sbin/npppd/l2tp/l2tpd.c
622
(struct sockaddr *)&peer, &peerlen,
usr.sbin/npppd/l2tp/l2tpd.c
634
switch (peer.ss_family) {
usr.sbin/npppd/l2tp/l2tpd.c
645
(struct sockaddr *)&peer,
usr.sbin/npppd/l2tp/l2tpd.c
651
(struct sockaddr *)&peer,
usr.sbin/npppd/l2tp/l2tpd.c
658
peer.ss_family);
usr.sbin/npppd/npppd/npppd.c
1108
NPPPD_ASSERT(call->ctrl->peer.ss_family == AF_INET);
usr.sbin/npppd/npppd/npppd.c
1111
memcpy(&req.pr_peer_address, &call->ctrl->peer,
usr.sbin/npppd/npppd/npppd.c
1112
call->ctrl->peer.ss_len);
usr.sbin/npppd/npppd/npppd.c
1138
memcpy(&req.pr_peer_address, &l2tpctrl->peer,
usr.sbin/npppd/npppd/npppd.c
1139
l2tpctrl->peer.ss_len);
usr.sbin/npppd/npppd/npppd_auth.c
557
memcpy(&rad->server[i].peer, &server->address,
usr.sbin/npppd/npppd/npppd_auth.c
559
if (((struct sockaddr_in *)&rad->server[i].peer)->sin_port
usr.sbin/npppd/npppd/npppd_auth.c
561
((struct sockaddr_in *)&rad->server[i].peer)->sin_port
usr.sbin/npppd/npppd/npppd_auth.c
578
memcpy(&rad->server[i].peer, &server->address,
usr.sbin/npppd/npppd/npppd_auth.c
580
if (((struct sockaddr_in *)&rad->server[i].peer)->sin_port
usr.sbin/npppd/npppd/npppd_auth.c
582
((struct sockaddr_in *)&rad->server[i].peer)->sin_port
usr.sbin/npppd/npppd/npppd_radius.c
441
switch (ctrl->peer.ss_family) {
usr.sbin/npppd/npppd/npppd_radius.c
457
if (getnameinfo((struct sockaddr *)&ctrl->peer, ctrl->peer.ss_len, hbuf,
usr.sbin/npppd/npppd/npppd_radius.c
497
switch (ctrl->peer.ss_family) {
usr.sbin/npppd/npppd/npppd_radius.c
513
if (getnameinfo((struct sockaddr *)&ctrl->peer, ctrl->peer.ss_len, hbuf,
usr.sbin/npppd/npppd/radius_req.c
130
af = setting->server[setting->curr_server].peer.sin6.sin6_family;
usr.sbin/npppd/npppd/radius_req.c
141
&setting->server[setting->curr_server].peer,
usr.sbin/npppd/npppd/radius_req.c
155
&setting->server[setting->curr_server].peer,
usr.sbin/npppd/npppd/radius_req.c
186
if (memcmp(&lap->ss, &setting->server[setting->curr_server].peer,
usr.sbin/npppd/npppd/radius_req.c
187
setting->server[setting->curr_server].peer.sin6.sin6_len) == 0)
usr.sbin/npppd/npppd/radius_req.c
230
sa = (struct sockaddr *)&setting->server[setting->curr_server].peer;
usr.sbin/npppd/npppd/radius_req.c
483
lap->setting->curr_server].peer;
usr.sbin/npppd/npppd/radius_req.h
78
} peer;
usr.sbin/npppd/pptp/pptp.h
273
struct sockaddr_storage peer;
usr.sbin/npppd/pptp/pptp_call.c
572
struct sockaddr_storage peer, sock;
usr.sbin/npppd/pptp/pptp_call.c
613
memcpy(&peer, &_this->ctrl->peer, sizeof(peer));
usr.sbin/npppd/pptp/pptp_call.c
615
switch (peer.ss_family) {
usr.sbin/npppd/pptp/pptp_call.c
617
((struct sockaddr_in *)&peer)->sin_port = 0;
usr.sbin/npppd/pptp/pptp_call.c
633
0, (struct sockaddr *)&sock, (struct sockaddr *)&peer);
usr.sbin/npppd/pptp/pptp_call.c
636
(struct sockaddr *)&peer, peerlen);
usr.sbin/npppd/pptp/pptp_call.c
754
PPTP_CALL_ASSERT(sizeof(ppp->phy_info) >= _this->ctrl->peer.ss_len);
usr.sbin/npppd/pptp/pptp_call.c
755
memcpy(&ppp->phy_info, &_this->ctrl->peer,
usr.sbin/npppd/pptp/pptp_call.c
756
MINIMUM(sizeof(ppp->phy_info), _this->ctrl->peer.ss_len));
usr.sbin/npppd/pptp/pptp_ctrl.c
163
if (getnameinfo((struct sockaddr *)&_this->peer, _this->peer.ss_len,
usr.sbin/npppd/pptp/pptpd.c
608
struct sockaddr_storage peer;
usr.sbin/npppd/pptp/pptpd.c
619
peerlen = sizeof(peer);
usr.sbin/npppd/pptp/pptpd.c
621
(struct sockaddr *)&peer, &peerlen)) < 0) {
usr.sbin/npppd/pptp/pptpd.c
633
switch (peer.ss_family) {
usr.sbin/npppd/pptp/pptpd.c
636
listener->index, (struct sockaddr *)&peer);
usr.sbin/npppd/pptp/pptpd.c
653
struct sockaddr_storage peer;
usr.sbin/npppd/pptp/pptpd.c
665
peerlen = sizeof(peer);
usr.sbin/npppd/pptp/pptpd.c
667
0, (struct sockaddr *)&peer, &peerlen)) == -1) {
usr.sbin/npppd/pptp/pptpd.c
675
pptpd_gre_input(listener, (struct sockaddr *)&peer, pkt,
usr.sbin/npppd/pptp/pptpd.c
683
pptpd_gre_input(pptpd_listener *listener, struct sockaddr *peer, u_char *pkt,
usr.sbin/npppd/pptp/pptpd.c
702
PPTPD_ASSERT(peer->sa_family == AF_INET);
usr.sbin/npppd/pptp/pptpd.c
705
if (getnameinfo(peer, peer->sa_len, hbuf0, sizeof(hbuf0), NULL, 0,
usr.sbin/npppd/pptp/pptpd.c
715
if (peer->sa_family != AF_INET) {
usr.sbin/npppd/pptp/pptpd.c
718
"supported: peer=%s af=%d", hbuf0, peer->sa_family);
usr.sbin/npppd/pptp/pptpd.c
797
if (!(peer->sa_family == AF_INET &&
usr.sbin/npppd/pptp/pptpd.c
798
call->ctrl->peer.ss_family == AF_INET &&
usr.sbin/npppd/pptp/pptpd.c
799
((struct sockaddr_in *)peer)->sin_addr.s_addr ==
usr.sbin/npppd/pptp/pptpd.c
800
((struct sockaddr_in *)&call->ctrl->peer)->sin_addr.s_addr)) {
usr.sbin/npppd/pptp/pptpd.c
821
struct sockaddr *peer)
usr.sbin/npppd/pptp/pptpd.c
832
memset(&ctrl->peer, 0, sizeof(ctrl->peer));
usr.sbin/npppd/pptp/pptpd.c
833
memcpy(&ctrl->peer, peer, peer->sa_len);
usr.sbin/ntpd/client.c
502
client_log_error(struct ntp_peer *peer, const char *operation, int error)
usr.sbin/ntpd/client.c
506
address = log_ntp_addr(peer->addr);
usr.sbin/ntpd/client.c
507
if (peer->lasterror == error) {
usr.sbin/ntpd/client.c
511
peer->lasterror = error;
usr.sbin/ntpd/ntp.c
549
struct ntp_peer *peer, *npeer, *tmp;
usr.sbin/ntpd/ntp.c
568
TAILQ_FOREACH(peer, &conf->ntp_peers, entry)
usr.sbin/ntpd/ntp.c
569
if (peer->id == imsg.hdr.peerid)
usr.sbin/ntpd/ntp.c
571
if (peer == NULL) {
usr.sbin/ntpd/ntp.c
575
if (peer->addr != NULL) {
usr.sbin/ntpd/ntp.c
580
if (peer->addr_head.pool) {
usr.sbin/ntpd/ntp.c
587
peer->addr_head.pool)
usr.sbin/ntpd/ntp.c
590
if (npeer->id == peer->id)
usr.sbin/ntpd/ntp.c
600
peer->state = STATE_DNS_TEMPFAIL;
usr.sbin/ntpd/ntp.c
621
if (peer->addr_head.pool) {
usr.sbin/ntpd/ntp.c
632
log_ntp_addr(h), peer->addr_head.name);
usr.sbin/ntpd/ntp.c
634
npeer->weight = peer->weight;
usr.sbin/ntpd/ntp.c
635
npeer->query_addr4 = peer->query_addr4;
usr.sbin/ntpd/ntp.c
636
npeer->query_addr6 = peer->query_addr6;
usr.sbin/ntpd/ntp.c
641
peer->addr_head.name;
usr.sbin/ntpd/ntp.c
643
peer->addr_head.pool;
usr.sbin/ntpd/ntp.c
649
h->next = peer->addr;
usr.sbin/ntpd/ntp.c
650
peer->addr = h;
usr.sbin/ntpd/ntp.c
651
peer->addr_head.a = peer->addr;
usr.sbin/ntpd/ntp.c
652
peer->state = STATE_DNS_DONE;
usr.sbin/ntpd/ntp.c
657
if (peer->addr_head.pool)
usr.sbin/ntpd/ntp.c
658
peer_remove(peer);
usr.sbin/ntpd/ntp.c
660
client_addr_init(peer);
usr.sbin/radiusd/radiusd.c
410
struct sockaddr_storage peer;
usr.sbin/radiusd/radiusd.c
416
peersz = sizeof(peer);
usr.sbin/radiusd/radiusd.c
418
(struct sockaddr *)&peer, &peersz)) == -1) {
usr.sbin/radiusd/radiusd.c
424
RADIUSD_ASSERT(peer.ss_family == AF_INET ||
usr.sbin/radiusd/radiusd.c
425
peer.ss_family == AF_INET6);
usr.sbin/radiusd/radiusd.c
431
(struct sockaddr *)&peer, peersz);
usr.sbin/radiusd/radiusd.c
437
RADIUS_PACKET *packet, struct sockaddr *peer, socklen_t peerlen)
usr.sbin/radiusd/radiusd.c
453
if (addrport_tostring(peer, peerlen, peerstr, sizeof(peerstr)) ==
usr.sbin/radiusd/radiusd.c
463
if (client->af != peer->sa_family)
usr.sbin/radiusd/radiusd.c
465
if (peer->sa_family == AF_INET && IPv4_cmp(
usr.sbin/radiusd/radiusd.c
466
&in(peer), &client->addr, &client->mask))
usr.sbin/radiusd/radiusd.c
468
else if (peer->sa_family == AF_INET6 && IPv6_cmp(
usr.sbin/radiusd/radiusd.c
469
&in6(peer), &client->addr, &client->mask))
usr.sbin/radiusd/radiusd.c
511
if (peer->sa_family == q->clientaddr.ss_family &&
usr.sbin/radiusd/radiusd.c
512
((peer->sa_family == AF_INET && in(&q->clientaddr).s_addr ==
usr.sbin/radiusd/radiusd.c
513
in(peer).s_addr) || (peer->sa_family == AF_INET6 &&
usr.sbin/radiusd/radiusd.c
514
IN6_ARE_ADDR_EQUAL(&in6(&q->clientaddr), &in6(peer)))) &&
usr.sbin/radiusd/radiusd.c
516
((struct sockaddr_in *)peer)->sin_port &&
usr.sbin/radiusd/radiusd.c
543
memcpy(&q->clientaddr, peer, peerlen);
usr.sbin/radiusd/radiusd_radius.c
409
struct sockaddr *peer;
usr.sbin/radiusd/radiusd_radius.c
411
peer = (struct sockaddr *)&server->addr;
usr.sbin/radiusd/radiusd_radius.c
417
addrport_tostring(peer, peer->sa_len, buf, sizeof(buf)));
usr.sbin/radiusd/radiusd_radius.c
424
addrport_tostring(peer, peer->sa_len, buf, sizeof(buf)));
usr.sbin/radiusd/radiusd_radius.c
435
addrport_tostring(peer, peer->sa_len, buf, sizeof(buf)),
usr.sbin/radiusd/radiusd_radius.c
446
addrport_tostring(peer, peer->sa_len, buf,
usr.sbin/radiusd/radiusd_radius.c
457
addrport_tostring(peer, peer->sa_len, buf,
usr.sbin/radiusd/radiusd_radius.c
464
addrport_tostring(peer, peer->sa_len, buf, sizeof(buf)));
usr.sbin/radiusd/radiusd_radius.c
506
struct sockaddr *peer;
usr.sbin/radiusd/radiusd_radius.c
509
peer = (struct sockaddr *)&req->server->addr;
usr.sbin/radiusd/radiusd_radius.c
515
addrport_tostring(peer, peer->sa_len, msg, sizeof(msg)));
usr.sbin/radiusd/radiusd_radius.c
521
addrport_tostring(peer, peer->sa_len, msg, sizeof(msg)));
usr.sbin/rdate/ntp.c
193
sync_ntp(int fd, const struct sockaddr *peer, double *offset, double *error)
usr.sbin/rdate/ntp.c
206
if (connect(fd, peer, SA_LEN(peer)) == -1) {
usr.sbin/sasyncd/conf.y
174
struct syncpeer *peer;
usr.sbin/sasyncd/conf.y
177
for (peer = LIST_FIRST(&cfgstate.peerlist); peer;
usr.sbin/sasyncd/conf.y
178
peer = LIST_NEXT(peer, link))
usr.sbin/sasyncd/conf.y
179
if (strcmp($2, peer->name) == 0) {
usr.sbin/sasyncd/conf.y
186
peer = calloc(1, sizeof *peer);
usr.sbin/sasyncd/conf.y
187
if (!peer) {
usr.sbin/sasyncd/conf.y
189
"failed", sizeof *peer);
usr.sbin/sasyncd/conf.y
193
peer->name = $2;
usr.sbin/sasyncd/conf.y
195
LIST_INSERT_HEAD(&cfgstate.peerlist, peer, link);
usr.sbin/sasyncd/conf.y
197
log_msg(2, "config: add peer %s", peer->name);
usr.sbin/syslogd/syslogd.c
1138
struct peer *p;
usr.sbin/syslogd/syslogd.c
1224
struct peer *p = arg;
usr.sbin/syslogd/syslogd.c
1330
struct peer *p = arg;
usr.sbin/syslogd/syslogd.c
1371
struct peer *p = arg;
usr.sbin/ypldap/yp.c
659
res.peer = (peername)master;
usr.sbin/ypserv/common/yplib_host.c
360
*outname = strdup(yprm.peer);
usr.sbin/ypserv/yppush/yppush.c
117
request.map_parms.peer=master;
usr.sbin/ypserv/yppush/yppush.c
127
request.map_parms.peer, request.map_parms.domain);
usr.sbin/ypserv/ypserv/ypserv_db.c
623
res.peer = (peername) &master;
usr.sbin/ypserv/ypserv/ypserv_proc.c
393
if (res.peer == NULL)
usr.sbin/ypserv/ypserv/ypserv_proc.c
394
res.peer = nopeer;
usr.sbin/ypserv/ypserv/ypserv_proc.c
785
res.yppoll_resp_owner = master.peer;