Example #1
0
        /// <summary>
        /// method to initialize fields utilized by the service
        /// </summary>
        private void InitializeService()
        {
            m_diagnostics.ServiceInitializing();

            // load the settings from the related sections in app.config
            DnsServerSettings dnsServerSettings = DnsServerSettingsSection.GetSection().AsDnsServerSettings();

            if (dnsServerSettings.ResolutionMode == DnsResolutionMode.AuthoritativeResolution)
            {
                AuthoritativeResolutionSettings settings =
                    AuthoritativeResolutionSettingsSection.GetSection().AsAuthoritativeResolutionSettings();
                m_store = new AuthoritativeRecordResolver(settings);
            }
            else if (dnsServerSettings.ResolutionMode == DnsResolutionMode.RecordStorageService)
            {
                ClientSettings recordRetrievalSettings = ClientSettingsSection.GetSection().AsClientSettings();
                m_store = new DnsRecordStorageService(recordRetrievalSettings);
            }
            else
            {
                throw new System.Configuration.ConfigurationErrorsException("Unknown resolution mode");
            }

            // create the DNS Server instance
            m_dnsServer = new DnsServer(m_store, dnsServerSettings);
            //
            // Hook up events for logging/debugging
            //
            m_diagnostics.HookEvents(m_dnsServer);

            m_diagnostics.ServiceInitializingComplete(dnsServerSettings);
        }
Example #2
0
        /// <summary>
        /// method to initialize fields utilized by the service
        /// </summary>
        private void InitializeService()
        {
            m_diagnostics.ServiceInitializing();

            // load the settings from the related sections in app.config
            DnsServerSettings dnsServerSettings = DnsServerSettingsSection.GetSection().AsDnsServerSettings();

            if (dnsServerSettings.ResolutionMode == DnsResolutionMode.AuthoritativeResolution)
            {
                AuthoritativeResolutionSettings settings = 
                    AuthoritativeResolutionSettingsSection.GetSection().AsAuthoritativeResolutionSettings(); 
                m_store = new AuthoritativeRecordResolver(settings);
            }
            else if (dnsServerSettings.ResolutionMode == DnsResolutionMode.RecordStorageService)
            {
                ClientSettings recordRetrievalSettings = ClientSettingsSection.GetSection().AsClientSettings();
                m_store = new DnsRecordStorageService(recordRetrievalSettings);
            }
            else
            {
                throw new System.Configuration.ConfigurationErrorsException("Unknown resolution mode"); 
            }

            // create the DNS Server instance
            m_dnsServer = new DnsServer(m_store, dnsServerSettings);
            //
            // Hook up events for logging/debugging
            //
            m_diagnostics.HookEvents(m_dnsServer);

            m_diagnostics.ServiceInitializingComplete(dnsServerSettings);
        }
Example #3
0
        public TestServer(IDnsStore store, DnsServerSettings settings)
        {
            m_settings = settings;

            m_server = new DnsServer(store, settings);
            m_server.UDPResponder.Server.Error += UDPServer_Error;
            m_server.TCPResponder.Server.Error += TCPServer_Error;
            m_server.TCPResponder.Server.ConnectionAccepted += TCP_Accept;
            m_server.TCPResponder.Server.ConnectionClosed   += TCP_Complete;
        }
Example #4
0
 public TestServer(IDnsStore store, DnsServerSettings settings)
 {
     m_settings = settings;
     
     m_server = new DnsServer(store, settings);
     m_server.UDPResponder.Server.Error += UDPServer_Error;
     m_server.TCPResponder.Server.Error += TCPServer_Error;
     m_server.TCPResponder.Server.ConnectionAccepted += TCP_Accept;
     m_server.TCPResponder.Server.ConnectionClosed += TCP_Complete;
 }
Example #5
0
 public DnsResponder(IDnsStore store, DnsServerSettings settings)
 {
     if (store == null)
     {
         throw new ArgumentNullException("store");
     }
     if (settings == null)
     {
         throw new ArgumentNullException("settings");
     }
     
     m_store = store;
     m_settings = settings;
 }
Example #6
0
        public DnsResponder(IDnsStore store, DnsServerSettings settings)
        {
            if (store == null)
            {
                throw new ArgumentNullException("store");
            }
            if (settings == null)
            {
                throw new ArgumentNullException("settings");
            }

            m_store    = store;
            m_settings = settings;
        }
Example #7
0
        public DnsServer(IDnsStore store, DnsServerSettings settings)
        {
            if (store == null || settings == null)
            {
                throw new ArgumentNullException();
            }

            m_settings = settings;
            m_store    = store;

            m_tcpResponder = new DnsResponderTCP(this.Store, this.Settings);
            m_udpResponder = new DnsResponderUDP(this.Store, this.Settings);

            m_tcpResponder.Server.Error += InvokeError;
            m_udpResponder.Server.Error += InvokeError;
        }
Example #8
0
        public DnsServer(IDnsStore store, DnsServerSettings settings)
        {
            if (store == null || settings == null)
            {
                throw new ArgumentNullException();
            }

            m_settings = settings;
            m_store = store;

            m_tcpResponder = new DnsResponderTCP(this.Store, this.Settings);
            m_udpResponder = new DnsResponderUDP(this.Store, this.Settings);

            m_tcpResponder.Server.Error += InvokeError;
            m_udpResponder.Server.Error += InvokeError;
        }
Example #9
0
 public DnsResponderUDP(IDnsStore store, DnsServerSettings settings)
     : base(store, settings)
 {
     m_server = new DnsUdpServer(this.Settings.Endpoint, this.Settings.UdpServerSettings, this);
 }
Example #10
0
 public TestServer(IDnsStore store)
     : this(store, TestServer.DefaultSettings)
 {
 }
Example #11
0
 public FakeServer(IDnsStore store, int port)
 {
     m_store    = store;
     m_listener = new TcpListener(IPAddress.Parse("127.0.0.1"), port);
     m_callback = this.HandleRequest;
 }
Example #12
0
 public FailureStore(IDnsStore innerStore)
 {
     m_innerStore = innerStore;
 }
Example #13
0
 public TestServer(IDnsStore store)
     : this(store, TestServer.DefaultSettings)
 {
 }
Example #14
0
 public FakeServer(IDnsStore store, int port)
 {
     m_store = store;
     m_listener = new TcpListener(IPAddress.Parse("127.0.0.1"), port);
     m_callback = this.HandleRequest;
 }
Example #15
0
 public FailureStore(IDnsStore innerStore)
 {
     m_innerStore = innerStore;            
 }
Example #16
0
 public DnsResponderTCP(IDnsStore store, DnsServerSettings settings)
     : base(store, settings)
 {
     m_tcpServer = new TcpServer <DnsTcpContext>(this.Settings.Endpoint, this.Settings.TcpServerSettings, this);
 }