X-Git-Url: https://git.distorted.org.uk/~mdw/hippotat/blobdiff_plain/00ea54437e092ecc925df543d3c6fec30a32d667..300fe4ed2e3210ad3d90a8f4f5937224300691ac:/hippotatlib/__init__.py diff --git a/hippotatlib/__init__.py b/hippotatlib/__init__.py index 1460d5a..ce94a86 100644 --- a/hippotatlib/__init__.py +++ b/hippotatlib/__init__.py @@ -433,8 +433,8 @@ def _cfg_process_putatives(): return (servers, clients) -def cfg_process_common(c, ss): - c.mtu = cfg.getint(ss, 'mtu') +def cfg_process_general(c, ss): + c.mtu = cfg1getint(ss, 'mtu') def cfg_process_saddrs(c, ss): class ServerAddr(): @@ -460,20 +460,20 @@ def cfg_process_saddrs(c, ss): def __repr__(self): return 'ServerAddr'+repr((self.port,self.addr)) - c.port = cfg.getint(ss,'port') + c.port = cfg1getint(ss,'port') c.saddrs = [ ] - for addrspec in cfg.get(ss, 'addrs').split(): + for addrspec in cfg1get(ss, 'addrs').split(): sa = ServerAddr(c.port, addrspec) c.saddrs.append(sa) def cfg_process_vnetwork(c, ss): - c.vnetwork = ipnetwork(cfg.get(ss,'vnetwork')) + c.vnetwork = ipnetwork(cfg1get(ss,'vnetwork')) if c.vnetwork.num_addresses < 3 + 2: raise ValueError('vnetwork needs at least 2^3 addresses') def cfg_process_vaddr(c, ss): try: - c.vaddr = cfg.get(ss,'vaddr') + c.vaddr = cfg1get(ss,'vaddr') except NoOptionError: cfg_process_vnetwork(c, ss) c.vaddr = next(c.vnetwork.hosts()) @@ -484,13 +484,23 @@ def cfg_search_section(key,sections): return section raise NoOptionError(key, repr(sections)) +def cfg_get_raw(*args, **kwargs): + # for passing to cfg_search + return cfg.get(*args, raw=True, **kwargs) + def cfg_search(getter,key,sections): section = cfg_search_section(key,sections) return getter(section, key) +def cfg1get(*args, **kwargs): + return cfg.get(*args, **kwargs) + +def cfg1getint(*args, **kwargs): + return cfg.getint(*args, **kwargs) + 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']) + val = cfg_search(cfg1getint, key, sections) + lim = cfg_search(cfg1getint, key, ['%s LIMIT' % ss, 'LIMIT']) cc.__dict__[key] = min(val,lim) def cfg_process_client_common(cc,ss,cs,ci): @@ -505,7 +515,7 @@ def cfg_process_client_common(cc,ss,cs,ci): try: pwsection = cfg_search_section('password', sections) except NoOptionError: return None - pw = cfg.get(pwsection, 'password') + pw = cfg1get(pwsection, 'password') cc.password = pw.encode('utf-8') cfg_process_client_limited(cc,ss,sections,'target_requests_outstanding') @@ -522,7 +532,7 @@ def cfg_process_ipif(c, sections, varmap): #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__) + c.ipif_command = cfg1get(section,'ipif', vars=c.__dict__) #---------- startup ----------