if event.get('log_level') != LogLevel.info:
return yes
dflag = event.get('dflag')
+ if dflag is False : return yes
if dflag in debug_set: return yes
if dflag is None and DBG.TWISTED in debug_set: return yes
return no
max_batch_up = 4000
http_retry = 5
port = 80
+vroutes = ''
#[server] or [<client>] overrides
ipif = userv root ipif %(local)s,%(peer)s,%(mtu)s,slip %(rnets)s
# url
# relating to virtual network
-routes = ''
-vnetwork = 172.24.230.192
-# network = <prefix>/<len>
-# server = <ipaddr>
-# relay = <ipaddr>
+vvnetwork = 172.24.230.192
+# vnetwork = <prefix>/<len>
+# vadd r = <ipaddr>
+# vrelay = <ipaddr>
# [<client-ip4-or-ipv6-address>]
serverclient_re = regexp.compile(server_pat + r' ' + client_pat)
for cs in cfg.sections():
- if cs = 'LIMIT':
+ if cs == 'LIMIT':
# plan A "[LIMIT]"
continue
# plan D "[<servername> <client>]" part 1
(pss,pcs) = cs.split(' ')
- if pcs = 'LIMIT':
+ if pcs == 'LIMIT':
# plan E "[<servername> LIMIT]"
continue
return (servers, clients)
-def cfg_process_common(ss):
+def cfg_process_common(c, ss):
c.mtu = cfg.getint(ss, 'mtu')
def cfg_process_saddrs(c, ss):
c.saddrs.append(sa)
def cfg_process_vnetwork(c, ss):
- c.network = ipnetwork(cfg.get(ss,'network'))
- if c.network.num_addresses < 3 + 2:
- raise ValueError('network needs at least 2^3 addresses')
+ c.vnetwork = ipnetwork(cfg.get(ss,'vnetwork'))
+ if c.vnetwork.num_addresses < 3 + 2:
+ raise ValueError('vnetwork needs at least 2^3 addresses')
-def cfg_process_vaddr():
+def cfg_process_vaddr(c, ss):
try:
- c.server = cfg.get('virtual','server')
+ c.vaddr = cfg.get(ss,'vaddr')
except NoOptionError:
- process_cfg_network()
- c.server = next(c.network.hosts())
+ cfg_process_vnetwork(c, ss)
+ c.vaddr = next(c.vnetwork.hosts())
def cfg_search_section(key,sections):
for section in sections:
if cfg.has_option(section, key):
return section
- raise NoOptionError('missing %s %s' % (key, repr(sections)))
+ raise NoOptionError(key, repr(sections))
def cfg_search(getter,key,sections):
section = cfg_search_section(key,sections)
def cfg_process_client_limited(cc,ss,sections,key):
val = cfg_search(cfg.getint, key, sections)
- lim = cfg_search(cfg.getint, key, '%s LIMIT' % ss, 'LIMIT')
+ lim = cfg_search(cfg.getint, key, ['%s LIMIT' % ss, 'LIMIT'])
cc.__dict__[key] = min(val,lim)
def cfg_process_client_common(cc,ss,cs,ci):
# returns sections to search in, iff password is defined, otherwise None
cc.ci = ci
- sections = ['%s %s' % section,
+ sections = ['%s %s' % (ss,cs),
cs,
ss,
'DEFAULT']
except NoOptionError: return None
pw = cfg.get(pwsection, 'password')
- pw = pw.encode('utf-8')
+ cc.password = pw.encode('utf-8')
cfg_process_client_limited(cc,ss,sections,'target_requests_outstanding')
cfg_process_client_limited(cc,ss,sections,'http_timeout')
return sections
-def process_cfg_ipif(c, sections, varmap):
+def cfg_process_ipif(c, sections, varmap):
for d, s in varmap:
try: v = getattr(c, s)
except AttributeError: continue
setattr(c, d, v)
+ #print('CFGIPIF',repr((varmap, sections, c.__dict__)),file=sys.stderr)
+
section = cfg_search_section('ipif', sections)
c.ipif_command = cfg.get(section,'ipif', vars=c.__dict__)
readconfig('/etc/hippotat/config.d', False)
try:
- (pss, pcs) = process_cfg_putatives()
+ (pss, pcs) = _cfg_process_putatives()
process_cfg(pss, pcs)
except (configparser.Error, ValueError):
traceback.print_exc(file=sys.stderr)