44from heartbeat_scheduler import HeartbeatScheduler
55from radius_module import RadiusModule , RadiusPacketInfo , RadiusSocketInfo , port_id_to_int
66from message_parser import IdentityMessage , FailureMessage
7- from utils import get_logger , get_interface_name , get_interface_ip , get_interface_mac
87
98import json
109import threading
1110import time
11+ import utils
1212
1313
1414class AuthStateMachine :
@@ -24,7 +24,7 @@ def __init__(self, src_mac, auth_mac, idle_time, retry_count,
2424 self .state = None
2525 self ._state_lock = threading .Lock ()
2626 self ._timer_lock = threading .RLock ()
27- self .logger = get_logger ('AuthSM' )
27+ self .logger = utils . get_logger ('AuthSM' )
2828 self .src_mac = src_mac
2929 self .eap_send_callback = eap_send_callback
3030 self .radius_send_callback = radius_send_callback
@@ -143,7 +143,7 @@ def __init__(self, config_file):
143143 self .results = {}
144144 self .eap_module = None
145145 self .radius_module = None
146- self .logger = get_logger ('Authenticator' )
146+ self .logger = utils . get_logger ('Authenticator' )
147147 self ._config_file = config_file
148148 self ._threads = []
149149 self ._radius_socket_info = None
@@ -153,6 +153,7 @@ def __init__(self, config_file):
153153 self ._idle_time = None
154154 self ._max_retry_count = None
155155 self ._current_timeout = None
156+ self ._debug = False
156157
157158 self ._setup ()
158159
@@ -161,21 +162,25 @@ def _load_config(self):
161162 full_config = json .load (file_stream )
162163 config = full_config .get ('modules' ).get ('dot1x' )
163164
165+ self ._debug = config .get ('debug' )
166+ if self ._debug :
167+ utils .enable_debug_logs (self .logger )
168+
164169 self .logger .debug ('Loaded config from %s:\n %s' , self ._config_file , config )
165170
166- self ._interface = config .get ('interface' , get_interface_name ())
171+ self ._interface = config .get ('interface' , utils . get_interface_name ())
167172
168173 radius_config = config .get ('radius_server' , {})
169174 radius_socket_info = radius_config .get ('radius_socket_info' , {})
170175
171- listen_ip = radius_socket_info .get ('listen_ip' , get_interface_ip (self ._interface ))
176+ listen_ip = radius_socket_info .get ('listen_ip' , utils . get_interface_ip (self ._interface ))
172177 listen_port = radius_socket_info .get ('listen_port' , 0 )
173178 remote_ip = radius_socket_info .get ('remote_ip' , '127.0.0.1' )
174179 remote_port = radius_socket_info .get ('remote_port' , self .RADIUS_PORT )
175180
176181 self ._radius_socket_info = RadiusSocketInfo (listen_ip , listen_port , remote_ip , remote_port )
177182 self ._radius_secret = radius_config .get ('secret' , 'SECRET' )
178- self ._radius_id = radius_config .get ('id' , get_interface_mac (self ._interface ))
183+ self ._radius_id = radius_config .get ('id' , utils . get_interface_mac (self ._interface ))
179184
180185 def _setup (self ):
181186 self ._load_config ()
@@ -184,6 +189,10 @@ def _setup(self):
184189 self ._radius_id , self .received_radius_response )
185190 self .eap_module = EapModule (self ._interface , self .received_eap_request )
186191
192+ if self ._debug :
193+ utils .enable_debug_logs (self .radius_module .logger )
194+ utils .enable_debug_logs (self .eap_module .logger )
195+
187196 # TODO: Take value from config and then revert to default
188197 interval = self .HEARTBEAT_INTERVAL
189198
0 commit comments