chiark
/
gitweb
/
~ian
/
hippotat.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
wip fixes
[hippotat.git]
/
server
diff --git
a/server
b/server
index 144866f4b0852a2e67933b3093a822232d723fd7..52d83b50a95953f9204bbb1890726fa913126c24 100755
(executable)
--- a/
server
+++ b/
server
@@
-24,7
+24,7
@@
def route(packet, iface, saddr, daddr):
if dclient is not None:
lt('client')
dclient.queue_outbound(packet)
if dclient is not None:
lt('client')
dclient.queue_outbound(packet)
- elif daddr == c.
server or daddr not in c.
network:
+ elif daddr == c.
vaddr or daddr not in c.v
network:
lt('inbound')
queue_inbound(packet)
elif daddr == relay:
lt('inbound')
queue_inbound(packet)
elif daddr == relay:
@@
-37,11
+37,10
@@
def route(packet, iface, saddr, daddr):
#---------- client ----------
class Client():
#---------- client ----------
class Client():
- def __init__(self, ip, c
s, pw
):
+ def __init__(self, ip, c
c
):
# instance data members
self._ip = ip
# instance data members
self._ip = ip
- self._cs = cs
- self.pw = pw
+ self.cc = cc
self._rq = collections.deque() # requests
# self._pq = PacketQueue(...)
# plus from config:
self._rq = collections.deque() # requests
# self._pq = PacketQueue(...)
# plus from config:
@@
-49,17
+48,9
@@
class Client():
# .max_queue_time
# .target_requests_outstanding
# .max_queue_time
# .target_requests_outstanding
- if ip not in c.network:
+ if ip not in c.
v
network:
raise ValueError('client %s not in network' % ip)
raise ValueError('client %s not in network' % ip)
- for k in ('max_batch_down',
- 'max_queue_time',
- 'http_timeout',
- 'target_requests_outstanding'):
- req = cfg.getint(cs, k)
- limit = cfg.getint('limits',k)
- self.__dict__[k] = min(req, limit)
-
self._pq = PacketQueue(str(ip), self.max_queue_time)
if ip in clients:
self._pq = PacketQueue(str(ip), self.max_queue_time)
if ip in clients:
@@
-223,13
+214,14
@@
def start_http():
#---------- config and setup ----------
def process_cfg(putative_servers, putative_clients):
#---------- config and setup ----------
def process_cfg(putative_servers, putative_clients):
+ global c
c = ConfigResults()
c.server = cfg.get('SERVER','server')
c = ConfigResults()
c.server = cfg.get('SERVER','server')
-
process_cfg
_common(c, c.server)
-
process_cfg
_saddrs(c, c.server)
-
process_cfg
_vnetwork(c, c.server)
-
process_cfg
_vaddr(c, c.server)
+
cfg_process
_common(c, c.server)
+
cfg_process
_saddrs(c, c.server)
+
cfg_process
_vnetwork(c, c.server)
+
cfg_process
_vaddr(c, c.server)
for (ci,cs) in putative_clients.items():
cc = ConfigResults()
for (ci,cs) in putative_clients.items():
cc = ConfigResults()
@@
-237,16
+229,17
@@
def process_cfg(putative_servers, putative_clients):
if not sections: continue
cfg_process_client_limited(cc,c.server,sections, 'max_batch_down')
cfg_process_client_limited(cc,c.server,sections, 'max_queue_time')
if not sections: continue
cfg_process_client_limited(cc,c.server,sections, 'max_batch_down')
cfg_process_client_limited(cc,c.server,sections, 'max_queue_time')
+ Client(ci)
try:
c.relay = cfg.get(c.server, 'relay')
except NoOptionError:
try:
c.relay = cfg.get(c.server, 'relay')
except NoOptionError:
- for search in c.network.hosts():
- if search == c.
serve
r: continue
+ for search in c.
v
network.hosts():
+ if search == c.
vadd
r: continue
c.relay = search
break
c.relay = search
break
-
process_cfg
_ipif(c,
+
cfg_process
_ipif(c,
[c.server, 'DEFAULT'],
(('local','vaddr'),
('peer', 'vrelay'),
[c.server, 'DEFAULT'],
(('local','vaddr'),
('peer', 'vrelay'),