X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/tripe/blobdiff_plain/6411163d48434575eaf49463e056e971a2fba16a..c1d15fdaf78e6e33bf853d94f54e9c7c58519485:/py/tripe.py.in diff --git a/py/tripe.py.in b/py/tripe.py.in index cefb667f..fca38102 100644 --- a/py/tripe.py.in +++ b/py/tripe.py.in @@ -663,7 +663,10 @@ class TripeCommandDispatcher (TripeConnection): The dispatcher also has a special response code of its own: CONNERR indicates that the connection failed and the command has therefore been - lost; the + lost. This is sent to all outstanding commands when a connection error is + encountered: rather than a token list, it is accompanied by an exception + object which is the cause of the disconnection, which may be `None' if the + disconnection is expected (e.g., the direct result of a user request). """ ## --- Infrastructure --- @@ -831,13 +834,15 @@ class TripeCommandDispatcher (TripeConnection): return _simple(me.command(bg = True, *['ADD'] + _kwopts(kw, ['tunnel', 'keepalive', - 'key', 'cork', 'mobile']) + + 'key', 'priv', 'cork', + 'mobile']) + [peer] + list(addr))) def addr(me, peer): return _oneline(me.command('ADDR', peer)) - def algs(me): - return _keyvals(me.command('ALGS')) + def algs(me, peer = None): + return _keyvals(me.command('ALGS', + *((peer is not None and [peer]) or []))) def checkchal(me, chal): return _simple(me.command('CHECKCHAL', chal)) def daemon(me):