chiark / gitweb /
wip, config reorg
[hippotat.git] / client
diff --git a/client b/client
index b9f8ce516298eae80a57a8ec17b0f55145c5c435..b0250dec14d9083a70d896436306bda8c912a558 100755 (executable)
--- a/client
+++ b/client
@@ -8,7 +8,7 @@ max_requests_outstanding = 4
 
 [virtual]
 mtu = 1500
-# [host]  } maybe computed from `network' (see server defaults)
+# [server]  } maybe computed from `network' (see server defaults)
 
 [server]
 # url     } maybe computed from `addrs' and `port' (see server defaults)
@@ -17,7 +17,30 @@ mtu = 1500
 # password = <password>
 '''
 
-def startup():
-  common_startup(defcfg)
+c.clientv = None
+c.max_outstanding = 
 
-startup()
+def set_client(ci,cs,pw):
+  global password
+  assert(c.clientv is None)
+  c.clientv = ci
+  c.max_outstanding = cfg.getint(cs, 'max_requests_outstanding')
+  password = pw
+
+def process_cfg():
+  global url
+  global max_requests_outstanding
+
+  process_cfg_common_always()
+  process_cfg_server()
+
+  try:
+    c.url = cfg.get('server','url')
+  except NoOptionError:
+    process_cfg_saddrs()
+    sa = c.saddrs[1].url()
+
+  process_cfg_clients(set_client)
+
+common_startup(defcfg)
+process_cfg()