• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/bind9-45.100/bind9/lib/dns/

Lines Matching refs:peer

18 /* $Id: peer.c,v 1.33 2009/09/02 23:48:02 tbox Exp $ */
32 #include <dns/peer.h>
51 peer_delete(dns_peer_t **peer);
132 dns_peerlist_addpeer(dns_peerlist_t *peers, dns_peer_t *peer) {
135 dns_peer_attach(peer, &p);
143 if (p->prefixlen < peer->prefixlen)
147 ISC_LIST_INSERTBEFORE(peers->elements, p, peer, next);
149 ISC_LIST_APPEND(peers->elements, peer, next);
218 dns_peer_t *peer;
222 peer = isc_mem_get(mem, sizeof(*peer));
223 if (peer == NULL)
226 peer->magic = DNS_PEER_MAGIC;
227 peer->address = *addr;
228 peer->prefixlen = prefixlen;
229 peer->mem = mem;
230 peer->bogus = ISC_FALSE;
231 peer->transfer_format = dns_one_answer;
232 peer->transfers = 0;
233 peer->request_ixfr = ISC_FALSE;
234 peer->provide_ixfr = ISC_FALSE;
235 peer->key = NULL;
236 peer->refs = 1;
237 peer->transfer_source = NULL;
238 peer->notify_source = NULL;
239 peer->query_source = NULL;
241 memset(&peer->bitflags, 0x0, sizeof(peer->bitflags));
243 ISC_LINK_INIT(peer, next);
245 *peerptr = peer;
264 dns_peer_detach(dns_peer_t **peer) {
267 REQUIRE(peer != NULL);
268 REQUIRE(*peer != NULL);
269 REQUIRE(DNS_PEER_VALID(*peer));
271 p = *peer;
275 *peer = NULL;
283 peer_delete(dns_peer_t **peer) {
287 REQUIRE(peer != NULL);
288 REQUIRE(DNS_PEER_VALID(*peer));
290 p = *peer;
310 *peer = NULL;
314 dns_peer_setbogus(dns_peer_t *peer, isc_boolean_t newval) {
317 REQUIRE(DNS_PEER_VALID(peer));
319 existed = DNS_BIT_CHECK(BOGUS_BIT, &peer->bitflags);
321 peer->bogus = newval;
322 DNS_BIT_SET(BOGUS_BIT, &peer->bitflags);
328 dns_peer_getbogus(dns_peer_t *peer, isc_boolean_t *retval) {
329 REQUIRE(DNS_PEER_VALID(peer));
332 if (DNS_BIT_CHECK(BOGUS_BIT, &peer->bitflags)) {
333 *retval = peer->bogus;
341 dns_peer_setprovideixfr(dns_peer_t *peer, isc_boolean_t newval) {
344 REQUIRE(DNS_PEER_VALID(peer));
346 existed = DNS_BIT_CHECK(PROVIDE_IXFR_BIT, &peer->bitflags);
348 peer->provide_ixfr = newval;
349 DNS_BIT_SET(PROVIDE_IXFR_BIT, &peer->bitflags);
355 dns_peer_getprovideixfr(dns_peer_t *peer, isc_boolean_t *retval) {
356 REQUIRE(DNS_PEER_VALID(peer));
359 if (DNS_BIT_CHECK(PROVIDE_IXFR_BIT, &peer->bitflags)) {
360 *retval = peer->provide_ixfr;
368 dns_peer_setrequestixfr(dns_peer_t *peer, isc_boolean_t newval) {
371 REQUIRE(DNS_PEER_VALID(peer));
373 existed = DNS_BIT_CHECK(REQUEST_IXFR_BIT, &peer->bitflags);
375 peer->request_ixfr = newval;
376 DNS_BIT_SET(REQUEST_IXFR_BIT, &peer->bitflags);
382 dns_peer_getrequestixfr(dns_peer_t *peer, isc_boolean_t *retval) {
383 REQUIRE(DNS_PEER_VALID(peer));
386 if (DNS_BIT_CHECK(REQUEST_IXFR_BIT, &peer->bitflags)) {
387 *retval = peer->request_ixfr;
394 dns_peer_setsupportedns(dns_peer_t *peer, isc_boolean_t newval) {
397 REQUIRE(DNS_PEER_VALID(peer));
399 existed = DNS_BIT_CHECK(SUPPORT_EDNS_BIT, &peer->bitflags);
401 peer->support_edns = newval;
402 DNS_BIT_SET(SUPPORT_EDNS_BIT, &peer->bitflags);
408 dns_peer_getsupportedns(dns_peer_t *peer, isc_boolean_t *retval) {
409 REQUIRE(DNS_PEER_VALID(peer));
412 if (DNS_BIT_CHECK(SUPPORT_EDNS_BIT, &peer->bitflags)) {
413 *retval = peer->support_edns;
420 dns_peer_setrequestnsid(dns_peer_t *peer, isc_boolean_t newval) {
423 REQUIRE(DNS_PEER_VALID(peer));
425 existed = DNS_BIT_CHECK(REQUEST_NSID_BIT, &peer->bitflags);
427 peer->request_nsid = newval;
428 DNS_BIT_SET(REQUEST_NSID_BIT, &peer->bitflags);
434 dns_peer_getrequestnsid(dns_peer_t *peer, isc_boolean_t *retval) {
435 REQUIRE(DNS_PEER_VALID(peer));
438 if (DNS_BIT_CHECK(REQUEST_NSID_BIT, &peer->bitflags)) {
439 *retval = peer->request_nsid;
446 dns_peer_settransfers(dns_peer_t *peer, isc_uint32_t newval) {
449 REQUIRE(DNS_PEER_VALID(peer));
451 existed = DNS_BIT_CHECK(TRANSFERS_BIT, &peer->bitflags);
453 peer->transfers = newval;
454 DNS_BIT_SET(TRANSFERS_BIT, &peer->bitflags);
460 dns_peer_gettransfers(dns_peer_t *peer, isc_uint32_t *retval) {
461 REQUIRE(DNS_PEER_VALID(peer));
464 if (DNS_BIT_CHECK(TRANSFERS_BIT, &peer->bitflags)) {
465 *retval = peer->transfers;
473 dns_peer_settransferformat(dns_peer_t *peer, dns_transfer_format_t newval) {
476 REQUIRE(DNS_PEER_VALID(peer));
479 &peer->bitflags);
481 peer->transfer_format = newval;
482 DNS_BIT_SET(SERVER_TRANSFER_FORMAT_BIT, &peer->bitflags);
488 dns_peer_gettransferformat(dns_peer_t *peer, dns_transfer_format_t *retval) {
489 REQUIRE(DNS_PEER_VALID(peer));
492 if (DNS_BIT_CHECK(SERVER_TRANSFER_FORMAT_BIT, &peer->bitflags)) {
493 *retval = peer->transfer_format;
501 dns_peer_getkey(dns_peer_t *peer, dns_name_t **retval) {
502 REQUIRE(DNS_PEER_VALID(peer));
505 if (peer->key != NULL) {
506 *retval = peer->key;
509 return (peer->key == NULL ? ISC_R_NOTFOUND : ISC_R_SUCCESS);
513 dns_peer_setkey(dns_peer_t *peer, dns_name_t **keyval) {
516 if (peer->key != NULL) {
517 dns_name_free(peer->key, peer->mem);
518 isc_mem_put(peer->mem, peer->key, sizeof(dns_name_t));
522 peer->key = *keyval;
529 dns_peer_setkeybycharp(dns_peer_t *peer, const char *keyval) {
543 name = isc_mem_get(peer->mem, sizeof(dns_name_t));
548 result = dns_name_dup(dns_fixedname_name(&fname), peer->mem, name);
550 isc_mem_put(peer->mem, name, sizeof(dns_name_t));
554 result = dns_peer_setkey(peer, &name);
556 isc_mem_put(peer->mem, name, sizeof(dns_name_t));
562 dns_peer_settransfersource(dns_peer_t *peer,
565 REQUIRE(DNS_PEER_VALID(peer));
567 if (peer->transfer_source != NULL) {
568 isc_mem_put(peer->mem, peer->transfer_source,
569 sizeof(*peer->transfer_source));
570 peer->transfer_source = NULL;
573 peer->transfer_source = isc_mem_get(peer->mem,
574 sizeof(*peer->transfer_source));
575 if (peer->transfer_source == NULL)
578 *peer->transfer_source = *transfer_source;
584 dns_peer_gettransfersource(dns_peer_t *peer, isc_sockaddr_t *transfer_source) {
585 REQUIRE(DNS_PEER_VALID(peer));
588 if (peer->transfer_source == NULL)
590 *transfer_source = *peer->transfer_source;
595 dns_peer_setnotifysource(dns_peer_t *peer,
598 REQUIRE(DNS_PEER_VALID(peer));
600 if (peer->notify_source != NULL) {
601 isc_mem_put(peer->mem, peer->notify_source,
602 sizeof(*peer->notify_source));
603 peer->notify_source = NULL;
606 peer->notify_source = isc_mem_get(peer->mem,
607 sizeof(*peer->notify_source));
608 if (peer->notify_source == NULL)
611 *peer->notify_source = *notify_source;
617 dns_peer_getnotifysource(dns_peer_t *peer, isc_sockaddr_t *notify_source) {
618 REQUIRE(DNS_PEER_VALID(peer));
621 if (peer->notify_source == NULL)
623 *notify_source = *peer->notify_source;
628 dns_peer_setquerysource(dns_peer_t *peer, const isc_sockaddr_t *query_source) {
629 REQUIRE(DNS_PEER_VALID(peer));
631 if (peer->query_source != NULL) {
632 isc_mem_put(peer->mem, peer->query_source,
633 sizeof(*peer->query_source));
634 peer->query_source = NULL;
637 peer->query_source = isc_mem_get(peer->mem,
638 sizeof(*peer->query_source));
639 if (peer->query_source == NULL)
642 *peer->query_source = *query_source;
648 dns_peer_getquerysource(dns_peer_t *peer, isc_sockaddr_t *query_source) {
649 REQUIRE(DNS_PEER_VALID(peer));
652 if (peer->query_source == NULL)
654 *query_source = *peer->query_source;
659 dns_peer_setudpsize(dns_peer_t *peer, isc_uint16_t udpsize) {
662 REQUIRE(DNS_PEER_VALID(peer));
664 existed = DNS_BIT_CHECK(SERVER_UDPSIZE_BIT, &peer->bitflags);
666 peer->udpsize = udpsize;
667 DNS_BIT_SET(SERVER_UDPSIZE_BIT, &peer->bitflags);
673 dns_peer_getudpsize(dns_peer_t *peer, isc_uint16_t *udpsize) {
675 REQUIRE(DNS_PEER_VALID(peer));
678 if (DNS_BIT_CHECK(SERVER_UDPSIZE_BIT, &peer->bitflags)) {
679 *udpsize = peer->udpsize;
687 dns_peer_setmaxudp(dns_peer_t *peer, isc_uint16_t maxudp) {
690 REQUIRE(DNS_PEER_VALID(peer));
692 existed = DNS_BIT_CHECK(SERVER_MAXUDP_BIT, &peer->bitflags);
694 peer->maxudp = maxudp;
695 DNS_BIT_SET(SERVER_MAXUDP_BIT, &peer->bitflags);
701 dns_peer_getmaxudp(dns_peer_t *peer, isc_uint16_t *maxudp) {
703 REQUIRE(DNS_PEER_VALID(peer));
706 if (DNS_BIT_CHECK(SERVER_MAXUDP_BIT, &peer->bitflags)) {
707 *maxudp = peer->maxudp;