sdgathman/pygossip

exception for IPv6 literal as domain

sdgathman opened this issue · 0 comments

SMTP provides for literal IPs in place of domains, e.g. [1.2.3.4]. For IPv6, the syntax is
[IPv6:2001:db8:dead:beef::cafe]. This crashes pygossip:

Traceback (most recent call last):
  File "/usr/lib64/python2.6/SocketServer.py", line 570, in process_request_thread
    self.finish_request(request, client_address)
  File "/usr/lib64/python2.6/SocketServer.py", line 332, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib64/python2.6/SocketServer.py", line 627, in __init__
    self.handle()
  File "/usr/lib/python2.6/site-packages/gossip/GossipServer.py", line 44, in handle
    resp = gossip.do_request(buf,self.client_address)
  File "/usr/lib/python2.6/site-packages/gossip/server.py", line 616, in do_request
    log.exception()
TypeError: exception() takes at least 2 arguments (1 given)

This syntax is obviously extendable to future protocols, e.g. 256 bit gnunet addresses.

Accepting ip literals is important when operating fully decentralized email (avoiding DNS). IPv6 mesh vpns with cryptographic address allocation (e.g. Cjdns) avoid centralized address allocation as well.