| Server IP : 176.32.38.42 / Your IP : 216.73.216.231 Web Server : LiteSpeed System : Linux ha006.mymail.zone 4.18.0-553.51.1.lve.1.el8.x86_64 #1 SMP Wed May 14 14:34:57 UTC 2025 x86_64 User : s1225329 ( 1835) PHP Version : 7.4.33 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/2206090/root/usr/include/spf2/ |
Upload File : |
/* * This program is free software; you can redistribute it and/or modify * it under the terms of either: * * a) The GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1, or (at your option) any * later version, * * OR * * b) The two-clause BSD license. * * These licenses can be found with the distribution in the file LICENSES */ #ifndef INC_SPF_DNS_ZONE #define INC_SPF_DNS_ZONE /** * @file * @brief A local DNS zone layer. * * The zone DNS layer allows you to create DNS zone information from * scratch, without calling some sort of external DNS resolver. * * The primary use is to either override real DNS information, or to * provide fallbacks when no DNS information is available. The zone * will override the real DNS information if it is above the resolving * DNS layer in the stack. It will provide a fallback if it is * layered below. * * The zone DNS layer supports wildcard domain names, but not in the * way that wilcards are supported in real DNS zones. Unlike real DNS * zones, a wildcard in the zone layer will match even if there are * other records of a different RR type in the same zone. This makes * wildcarding much more useful, but could cause confusion. * * When using wildcards, it is important to add the most specific DNS * zone data first, and the most general data last. Otherwise, the * more general information will always be returned. This should * probably be considered a bug and may be fixed in the future. * * For example, if you want to add entries with the same RR type for * "foo.foo.example.com", "*.foo.example.com" and "*.example.com", you * should add them in this order. * * You can also add entries with the RR type of ns_t_any, which will * match any type of RR query. This is most useful when you want to * wildcard HOST_NOT_FOUND entries to prevent queries of any type from * being fetched from a lower DNS layer. * * * For an overview of the DNS layer system, see spf_dns.h */ /** * These routines take care of creating/destroying/etc. the objects * that hold the DNS layer configuration. SPF_dns_server_t objects contain * malloc'ed data, so they must be destroyed when you are finished * with them, or you will leak memory. * * The "name" will be used when displaying debugging information so * that you can tell which zone layer in the stack of DNS layers * generated the output. */ SPF_dns_server_t *SPF_dns_zone_new(SPF_dns_server_t *layer_below, const char *name, int debug); /** * Adds an entry to a DNS zone. * * If a given domain name has multiple records of a given RR type, you * can call the add routine multiple times to add to the RR set. */ SPF_errcode_t SPF_dns_zone_add_str(SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, SPF_dns_stat_t herrno, const char *data); #endif