[tor-bugs] #16174 [Stem]: stem + ipv6 (+ python3 ?) = " Nickname in the circuit path is malformed (%s)' % nickname"
Tor Bug Tracker & Wiki
blackhole at torproject.org
Sun May 24 17:23:47 UTC 2015
#16174: stem + ipv6 (+ python3 ?) = " Nickname in the circuit path is malformed
(%s)' % nickname"
--------------------+------------------------
Reporter: toralf | Owner: atagar
Type: defect | Status: new
Priority: normal | Milestone:
Component: Stem | Version:
Keywords: | Actual Points:
Parent ID: | Points:
--------------------+------------------------
I got with stem-1.4.1 and ipv6 enabled Tor exit relay :
{{{
tfoerste at tor-relay ~ $ Exception in thread Event Notifier:
Traceback (most recent call last):
File "/usr/lib64/python3.3/site-packages/stem/response/events.py", line
844, in _parse
stem.control._parse_circ_entry(self.endpoint)
File "/usr/lib64/python3.3/site-packages/stem/control.py", line 3601, in
_parse_circ_entry
raise stem.ProtocolError('Nickname in the circuit path is malformed
(%s)' % nickname)
stem.ProtocolError: Nickname in the circuit path is malformed
(2607:ff58::d053:df22:52773)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib64/python3.3/threading.py", line 901, in _bootstrap_inner
self.run()
File "/usr/lib64/python3.3/threading.py", line 858, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib64/python3.3/site-packages/stem/control.py", line 882, in
_event_loop
self._handle_event(event_message)
File "/usr/lib64/python3.3/site-packages/stem/control.py", line 3474, in
_handle_event
stem.response.convert('EVENT', event_message, arrived_at =
time.time())
File "/usr/lib64/python3.3/site-packages/stem/response/__init__.py",
line 135, in convert
message._parse_message(**kwargs)
File "/usr/lib64/python3.3/site-packages/stem/response/events.py", line
66, in _parse_message
self._parse()
File "/usr/lib64/python3.3/site-packages/stem/response/events.py", line
852, in _parse
raise stem.ProtocolError("ORCONN's endpoint location's port is
invalid: %s" % self)
stem.ProtocolError: ORCONN's endpoint location's port is invalid: ORCONN
2607:ff58::d053:df22:52773 NEW ID=937797
}}}
for :
{{{
#!/usr/bin/python3 -u
#
# Toralf Foerster
# Hamburg
# Germany
# collect data wrt to
https://trac.torproject.org/projects/tor/ticket/13603
#
import time
import functools
# https://stem.torproject.org/index.html
#
from stem import ORStatus, ORClosureReason
from stem.control import EventType, Controller
def main():
class Cnt(object):
def __init__(self, done=0, closed=0, ioerror=0):
self.done = done
self.closed = closed
self.ioerror = ioerror
c = Cnt()
with Controller.from_port() as controller:
controller.authenticate()
orconn_listener = functools.partial(orconn_event, controller, c)
controller.add_event_listener(orconn_listener, EventType.ORCONN)
while True:
time.sleep(1)
def orconn_event(controller, c, event):
if event.status == ORStatus.CLOSED:
c.closed += 1
if event.reason == ORClosureReason.DONE:
c.done += 1
if event.reason == ORClosureReason.IOERROR:
c.ioerror += 1
fingerprint = event.endpoint_fingerprint
try:
relay = controller.get_network_status(fingerprint)
print (" %i %i %i %i %s %s %15s %5i %s %s" % (c.closed, c.done,
c.ioerror, event.arrived_at, time.ctime(event.arrived_at), fingerprint,
relay.address, relay.or_port, controller.get_info("ip-to-country/%s" %
relay.address, 'unknown'), relay.nickname))
except Exception:
print (" %i %i %i %i %s %s" % (c.closed, c.done,
c.ioerror, event.arrived_at, time.ctime(event.arrived_at), fingerprint))
if __name__ == '__main__':
main()
}}}
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/16174>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list