[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [tor-bugs] #10725 [BridgeDB]: Write a Completely Spec-Compliant Bridge Descriptor Parser



#10725: Write a Completely Spec-Compliant Bridge Descriptor Parser
-----------------------------+------------------------------
     Reporter:  sysrqb       |      Owner:
         Type:  enhancement  |     Status:  new
     Priority:  normal       |  Milestone:
    Component:  BridgeDB     |    Version:
   Resolution:               |   Keywords:  bridgedb-parsers
Actual Points:               |  Parent ID:
       Points:               |
-----------------------------+------------------------------

Comment (by sysrqb):

 Replying to [comment:9 atagar]:
 > I'm not sure what you're trying to say. Exactly what code calling stem
 with what input is failing?

 It's completely possible I'm doing something wrong.

 {{{
 from stem.descriptor.networkstatus import BridgeNetworkStatusDocument
 ...
     with open(fn_ns, 'r') as fd_ns:
       ns_content = fd_ns.read()
     bridge_ns = BridgeNetworkStatusDocument(ns_content)
 }}}
 Where `fn_ns` is the filename of the networkstatus in the current
 directory. This yields:
 {{{
 Traceback (most recent call last):
   File "bridge_attributes.py", line 366, in <module>
     bridge_ns = BridgeNetworkStatusDocument(ns_content)
   File "/home/sysrqb/.virtualenvs/stem/lib/python2.7/site-
 packages/stem/descriptor/networkstatus.py", line 1466, in __init__
     raise ValueError("Bridge network status documents must start with a
 'published' line:\n%s" % stem.util.str_tools._to_unicode(raw_content))
 ValueError: Bridge network status documents must start with a 'published'
 line:
 @type bridge-network-status 1.0
 published 2014-01-20 19:37:04
 r Unnamed ADXqKmHijTlfCArKIkRTlJDnCVA LKE/QQE82+iECLEEYsTTp6L7EUw
 2014-01-20 17:05:06 10.243.41.56 443 0
 ...
 }}}

 (It actually prints the entire document, but I won't paste it)

 So what I was trying to say was that it looks like
 BridgeNetworkStatusDocument only reads the first line of the BytesIO
 object and fails to validate because the first lines does not start with
 'published '. Am I providing incorrect input?

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/10725#comment:11>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs