]>
Commit | Line | Data |
---|---|---|
12c86877 | 1 | /* |
12471842 PL |
2 | * This file is part of PowerDNS or dnsdist. |
3 | * Copyright -- PowerDNS.COM B.V. and its contributors | |
4 | * | |
5 | * This program is free software; you can redistribute it and/or modify | |
6 | * it under the terms of version 2 of the GNU General Public License as | |
7 | * published by the Free Software Foundation. | |
8 | * | |
9 | * In addition, for the avoidance of any doubt, permission is granted to | |
10 | * link this program with OpenSSL and to (re)distribute the binaries | |
11 | * produced as the result of such linking. | |
12 | * | |
13 | * This program is distributed in the hope that it will be useful, | |
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | * GNU General Public License for more details. | |
17 | * | |
18 | * You should have received a copy of the GNU General Public License | |
19 | * along with this program; if not, write to the Free Software | |
20 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |
21 | */ | |
e8c59f2d | 22 | #pragma once |
bf269e28 RG |
23 | #include "auth-packetcache.hh" |
24 | #include "auth-querycache.hh" | |
092f210a BH |
25 | #include "utility.hh" |
26 | #include "arguments.hh" | |
27 | #include "communicator.hh" | |
28 | #include "distributor.hh" | |
29 | #include "dnspacket.hh" | |
30 | #include "dnsproxy.hh" | |
31 | #include "dynlistener.hh" | |
32 | #include "nameserver.hh" | |
33 | #include "statbag.hh" | |
34 | #include "tcpreceiver.hh" | |
82ee5aa5 | 35 | #include "dnsseckeeper.hh" |
092f210a BH |
36 | |
37 | extern ArgvMap theArg; | |
abc1d928 | 38 | extern StatBag S; //!< Statistics are gathered across PDNS via the StatBag class S |
bf269e28 RG |
39 | extern AuthPacketCache PC; //!< This is the main PacketCache, shared across all threads |
40 | extern AuthQueryCache QC; | |
c2826d2e RG |
41 | extern std::unique_ptr<DNSProxy> DP; |
42 | extern std::unique_ptr<DynListener> dl; | |
092f210a | 43 | extern CommunicatorClass Communicator; |
12f224ab RG |
44 | extern std::shared_ptr<UDPNameserver> N; |
45 | extern vector<std::shared_ptr<UDPNameserver> > g_udpReceivers; | |
092f210a | 46 | extern int avg_latency; |
8c98b341 | 47 | extern std::unique_ptr<TCPNameserver> TN; |
092f210a BH |
48 | extern void declareArguments(); |
49 | extern void declareStats(); | |
50 | extern void mainthread(); | |
51 | extern int isGuarded( char ** ); | |
c2826d2e | 52 | void carbonDumpThread(); |
357f6a75 | 53 | extern bool g_anyToTcp; |
fc41a1a6 | 54 | extern bool g_8bitDNS; |
af68014f | 55 | #ifdef HAVE_LUA_RECORDS |
cb6bd1a9 | 56 | extern bool g_doLuaRecord; |
32829819 | 57 | extern bool g_LuaRecordSharedState; |
a6897a16 CHB |
58 | extern time_t g_luaHealthChecksInterval; |
59 | extern time_t g_luaHealthChecksExpireDelay; | |
af68014f | 60 | #endif // HAVE_LUA_RECORDS |