tinyp2p - trying to get it to work

Marc Christiansen usenet at solar-empire.de
Sun Oct 7 21:13:28 EDT 2007


Fantus <fantus at poczta.fm> wrote:
> Hello
> 
> I am doing a small research and I found this:
> 
> http://www.freedom-to-tinker.com/tinyp2p.html
[...]
> Now when I try to run a client using following command:
> 
> > python tinyp2p.py haslo client http://10.10.10.1:2233 koniki
> 
> it gives me some strange output and erros:
> 
> 
> Traceback (most recent call last):
>   File "tinyp2p.py", line 14, in ?
>     for url in pxy(ar[3]).f(pw(ar[3]),0,[]):
>   File "/usr/lib/python2.4/xmlrpclib.py", line 1096, in __call__
>     return self.__send(self.__name, args)
>   File "/usr/lib/python2.4/xmlrpclib.py", line 1383, in __request
>     verbose=self.__verbose
>   File "/usr/lib/python2.4/xmlrpclib.py", line 1147, in request
>     return self._parse_response(h.getfile(), sock)
>   File "/usr/lib/python2.4/xmlrpclib.py", line 1286, in _parse_response
>     return u.close()
>   File "/usr/lib/python2.4/xmlrpclib.py", line 744, in close
>     raise Fault(**self._stack[0])
> xmlrpclib.Fault: <Fault 1: 'exceptions.TypeError:coercing to Unicode: 
> need string or buffer, list found'>
> 
> 
> Can anybody help me to solve this? Please. I did browse google but found 
> nothing.

I had a (not so quick) look. The code proves its point (i.e. writing a
very small p2p application is possible), but it is horrible. With only
one server, the code is broken; maybe it works using multiple servers, I
didn't test. A quick fix seems to be to change the line
    pr() and [aug(s) for s in aug(pr()[0])]
to
    pr() and [aug(s) for s in aug(pr()[0])] or pr([myU])

Please don't take tinyp2p.py as an example on writing python. 

HTH Marc



More information about the Python-list mailing list