[tor-bugs] #8123 [Ooni]: Ooni Crash when running traceroute

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Jan 31 20:13:45 UTC 2013


#8123: Ooni Crash when running traceroute
--------------------------+-------------------------------------------------
 Reporter:  BjornArnelid  |          Owner:  hellais
     Type:  defect        |         Status:  new    
 Priority:  normal        |      Milestone:         
Component:  Ooni          |        Version:         
 Keywords:                |         Parent:         
   Points:                |   Actualpoints:         
--------------------------+-------------------------------------------------
 Ooni crashes when running the traceroute test.
 OS: Ubuntu 12.10 64 bit.
 Twisted version: 12.2.0
 Scapy version: 2.2.0-dev
 libdnet version: 1.12
 pypcap built from https://github.com/hellais/pypcap

 Errorlog
 bjorn at bjorn-Aspire-3820:~/ooni-probe$ sudo ./bin/ooniprobe
 nettests/manipulation/traceroute.py -b 93.95.227.200
 Log opened.
 [D] No test deck detected
 [D] processing options
 Starting Tor...
 [D] Setting control port as 26842
 [D] Setting SOCKS port as 7778
 [D] 10%: Finishing handshake with directory server
 [D] 15%: Establishing an encrypted directory connection
 [D] 20%: Asking for networkstatus consensus
 [D] 25%: Loading networkstatus consensus
 [D] 45%: Asking for relay descriptors
 [D] 80%: Connecting to the Tor network
 [D] 85%: Finishing handshake with first hop
 [D] 90%: Establishing a Tor circuit
 [D] 100%: Done
 [D] Building a TorState
 Successfully bootstrapped Tor
 [D] We now have the following circuits:
 [D]  * <Circuit 1 BUILT [37.130.227.133] for GENERAL>
 [D]  * <Circuit 2 BUILT [37.130.227.132] for GENERAL>
 [D]  * <Circuit 3 BUILT [96.44.189.102] for GENERAL>
 [D]  * <Circuit 4 BUILT [77.247.181.162] for GENERAL>
 [D]  * <Circuit 5 BUILT [74.120.13.132] for GENERAL>
 [D]  * <Circuit 6 BUILT [195.169.125.226] for GENERAL>
 [D]  * <Circuit 7 BUILT [74.120.15.150] for GENERAL>
 [D]  * <Circuit 8 BUILT [96.47.226.21] for GENERAL>
 [D]  * <Circuit 9 BUILT [166.70.207.2] for GENERAL>
 [D]  * <Circuit 10 BUILT [93.182.129.84] for GENERAL>
 [D]  * <Circuit 11 BUILT [192.34.60.103] for GENERAL>
 [D]  * <Circuit 12 BUILT [193.11.164.242] for GENERAL>
 [D]  * <Circuit 13 BUILT [93.182.129.82] for GENERAL>
 [D]  * <Circuit 18 BUILT [46.183.217.3 37.130.227.132 128.117.43.92] for
 GENERAL>
 [D]  * <Circuit 19 EXTENDED [85.214.62.48] for GENERAL>
 [D] Obtained our IP address from a Tor Relay None
 [D] Running [(<class 'nettests.manipulation.traceroute.TracerouteTest'>,
 'test_tcp_traceroute'), (<class
 'nettests.manipulation.traceroute.TracerouteTest'>,
 'test_icmp_traceroute'), (<class
 'nettests.manipulation.traceroute.TracerouteTest'>,
 'test_udp_traceroute')]
 [D] Options {'inputs': [None], 'version': '0.1.1', 'name': 'Multi Protocol
 Traceroute Test'}
 [D] cmd_line_options {'pcapfile': None, 'help': 0, 'subargs': ('-b',
 '93.95.227.200'), 'resume': 0, 'parallelism': '10', 'test':
 'nettests/manipulation/traceroute.py', 'logfile': None, 'collector': None,
 'reportfile': None}
 [D] Creating report_traceroute_2013-01-31T200930Z.yamloo
 [D] Writing report with YAML reporter
 Reporting to file report_traceroute_2013-01-31T200930Z.yamloo
 [D] Not going to resume traceroute.py
 [D] input_unit_items: 1
 [D] test_case_number: 3.0
 [D] Test case number: 3.0
 [D] Total iterations: 3.0
 [D] Current iteration: 0.0
 [D] Running traceroute.py with input unit <<class
 'ooni.inputunit.InputUnit'> inputs=<listiterator object at 0x299fe50>>
 [D] Running test cases with input unit
 [D] Running test with this input None
 [D] Processing test_tcp_traceroute
 [D] Running test_tcp_traceroute with None...
 [D] Scapy factoring not set, registering it.
 [D] Using sending with hash <method-wrapper '__hash__' of ScapySender
 object at 0x299fc50>
 [!] Error in running test_tcp_traceroute
 Traceback (most recent call last):
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 1045, in _inlineCallbacks
     result = g.send(result)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 462, in runTestCases
     yaml_reporter, oonib_reporter)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 267, in
 runTestCasesWithInputUnit
     test_input, yaml_reporter, oonib_reporter)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 233, in
 runTestCasesWithInput
     d = defer.maybeDeferred(test)
 --- <exception caught here> ---
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 134, in maybeDeferred
     result = f(*args, **kw)
   File "/home/bjorn/ooni-probe/nettests/manipulation/traceroute.py", line
 85, in test_tcp_traceroute
     d = self.sr(packets, timeout=timeout)
   File "/home/bjorn/ooni-probe/ooni/templates/scapyt.py", line 103, in sr
     d = scapySender.startSending(packets)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 234, in
 startSending
     self.sendPackets(packets)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 219, in
 sendPackets
     self.factory.send(packet)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 114, in send
     return self.super_socket.send(packet)
   File "/usr/local/lib/python2.7/dist-packages/scapy/arch/pcapdnet.py",
 line 244, in send
     sx = str(cls()/x)
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 263,
 in __str__
     return self.build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 321,
 in build
     p = self.do_build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 310,
 in do_build
     pkt = self.self_build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 301,
 in self_build
     p = f.addfield(self, p, val)
   File "/usr/local/lib/python2.7/dist-packages/scapy/fields.py", line 70,
 in addfield
     return s+struct.pack(self.fmt, self.i2m(pkt,val))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 94, in i2m
     return MACField.i2m(self, pkt, self.i2h(pkt, x))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 88, in i2h
     x = conf.neighbor.resolve(pkt,pkt.payload)
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 38, in resolve
     return self.resolvers[k](l2inst,l3inst)
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/inet.py", line
 727, in <lambda>
     conf.neighbor.register_l3(Ether, IP, lambda l2,l3: getmacbyip(l3.dst))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 72, in getmacbyip
     nofilter=1)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 375, in srp1
     a,b=srp(*args,**kargs)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 358, in srp
     a,b=sndrcv(s ,x,*args,**kargs)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 129, in sndrcv
     inp, out, err = select(inmask,[],[], remaintime)
 select.error: (4, 'Interrupted system call')
 Finished running test_tcp_traceroute
 [D] Writing report with YAML reporter
 [D] Processing test_icmp_traceroute
 [D] Running test_icmp_traceroute with None...
 [D] Using sending with hash <method-wrapper '__hash__' of ScapySender
 object at 0x299ff90>
 [!] Error in running test_icmp_traceroute
 Traceback (most recent call last):
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 1045, in _inlineCallbacks
     result = g.send(result)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 462, in runTestCases
     yaml_reporter, oonib_reporter)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 267, in
 runTestCasesWithInputUnit
     test_input, yaml_reporter, oonib_reporter)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 233, in
 runTestCasesWithInput
     d = defer.maybeDeferred(test)
 --- <exception caught here> ---
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 134, in maybeDeferred
     result = f(*args, **kw)
   File "/home/bjorn/ooni-probe/nettests/manipulation/traceroute.py", line
 140, in test_icmp_traceroute
     d = self.sr(packets, timeout=timeout)
   File "/home/bjorn/ooni-probe/ooni/templates/scapyt.py", line 103, in sr
     d = scapySender.startSending(packets)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 234, in
 startSending
     self.sendPackets(packets)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 219, in
 sendPackets
     self.factory.send(packet)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 114, in send
     return self.super_socket.send(packet)
   File "/usr/local/lib/python2.7/dist-packages/scapy/arch/pcapdnet.py",
 line 244, in send
     sx = str(cls()/x)
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 263,
 in __str__
     return self.build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 321,
 in build
     p = self.do_build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 310,
 in do_build
     pkt = self.self_build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 301,
 in self_build
     p = f.addfield(self, p, val)
   File "/usr/local/lib/python2.7/dist-packages/scapy/fields.py", line 70,
 in addfield
     return s+struct.pack(self.fmt, self.i2m(pkt,val))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 94, in i2m
     return MACField.i2m(self, pkt, self.i2h(pkt, x))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 88, in i2h
     x = conf.neighbor.resolve(pkt,pkt.payload)
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 38, in resolve
     return self.resolvers[k](l2inst,l3inst)
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/inet.py", line
 727, in <lambda>
     conf.neighbor.register_l3(Ether, IP, lambda l2,l3: getmacbyip(l3.dst))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 72, in getmacbyip
     nofilter=1)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 375, in srp1
     a,b=srp(*args,**kargs)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 358, in srp
     a,b=sndrcv(s ,x,*args,**kargs)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 129, in sndrcv
     inp, out, err = select(inmask,[],[], remaintime)
 select.error: (4, 'Interrupted system call')
 Finished running test_icmp_traceroute
 [D] Writing report with YAML reporter
 [D] Processing test_udp_traceroute
 [D] Running test_udp_traceroute with None...
 [D] Using sending with hash <method-wrapper '__hash__' of ScapySender
 object at 0x3077a10>
 [!] Error in running test_udp_traceroute
 Traceback (most recent call last):
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 1045, in _inlineCallbacks
     result = g.send(result)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 462, in runTestCases
     yaml_reporter, oonib_reporter)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 267, in
 runTestCasesWithInputUnit
     test_input, yaml_reporter, oonib_reporter)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 233, in
 runTestCasesWithInput
     d = defer.maybeDeferred(test)
 --- <exception caught here> ---
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 134, in maybeDeferred
     result = f(*args, **kw)
   File "/home/bjorn/ooni-probe/nettests/manipulation/traceroute.py", line
 114, in test_udp_traceroute
     d = self.sr(packets, timeout=timeout)
   File "/home/bjorn/ooni-probe/ooni/templates/scapyt.py", line 103, in sr
     d = scapySender.startSending(packets)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 234, in
 startSending
     self.sendPackets(packets)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 219, in
 sendPackets
     self.factory.send(packet)
   File "/home/bjorn/ooni-probe/ooni/utils/txscapy.py", line 114, in send
     return self.super_socket.send(packet)
   File "/usr/local/lib/python2.7/dist-packages/scapy/arch/pcapdnet.py",
 line 244, in send
     sx = str(cls()/x)
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 263,
 in __str__
     return self.build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 321,
 in build
     p = self.do_build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 310,
 in do_build
     pkt = self.self_build()
   File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 301,
 in self_build
     p = f.addfield(self, p, val)
   File "/usr/local/lib/python2.7/dist-packages/scapy/fields.py", line 70,
 in addfield
     return s+struct.pack(self.fmt, self.i2m(pkt,val))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 94, in i2m
     return MACField.i2m(self, pkt, self.i2h(pkt, x))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 88, in i2h
     x = conf.neighbor.resolve(pkt,pkt.payload)
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 38, in resolve
     return self.resolvers[k](l2inst,l3inst)
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/inet.py", line
 727, in <lambda>
     conf.neighbor.register_l3(Ether, IP, lambda l2,l3: getmacbyip(l3.dst))
   File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line
 72, in getmacbyip
     nofilter=1)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 375, in srp1
     a,b=srp(*args,**kargs)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 358, in srp
     a,b=sndrcv(s ,x,*args,**kargs)
   File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line
 129, in sndrcv
     inp, out, err = select(inmask,[],[], remaintime)
 select.error: (4, 'Interrupted system call')
 Finished running test_udp_traceroute
 [D] Writing report with YAML reporter
 [!] Error Test Method Deferred List
 Traceback (most recent call last):
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 267, in
 runTestCasesWithInputUnit
     test_input, yaml_reporter, oonib_reporter)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 239, in
 runTestCasesWithInput
     test_methods_d.addCallback(tests_done, test_cases[0][0])
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 301, in addCallback
     callbackKeywords=kw)
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 290, in addCallbacks
     self._runCallbacks()
 --- <exception caught here> ---
   File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py",
 line 551, in _runCallbacks
     current.result = callback(current.result, *args, **kw)
   File "/home/bjorn/ooni-probe/ooni/runner.py", line 205, in tests_done
     post_processing = post(tests_report)
   File "/home/bjorn/ooni-probe/nettests/manipulation/traceroute.py", line
 49, in postProcessor
     tcp_hops = report['test_tcp_traceroute']
 exceptions.KeyError: 'test_tcp_traceroute'
 [D] Acquiring lock for traceroute.py
 [D] Releasing lock for traceroute.py
 [D] input_unit_items: 1
 [D] test_case_number: 3.0
 [D] Test case number: 3.0
 [D] Total iterations: 3.0
 [D] Current iteration: 3.0
 [D] testsEnded: Finished running all tests
 [D] [traceroute.py] 100.0%
 Main loop terminated.

-- 
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/8123>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list