Browse files

Make some order to the directory structure of the code

  • Loading branch information...
1 parent c042338 commit e00625d38318bf25bc3b3bbb009d2b6c96393d86 @hellais committed May 29, 2012
Showing with 40 additions and 5 deletions.
  1. +12 −0 docs/writing_tests.txt
  2. +0 −4 install.txt
  3. 0 {old → old-to-be-ported-code}/AUTHORS
  4. 0 {old → old-to-be-ported-code}/CHANGES.yaml
  5. 0 {old → old-to-be-ported-code}/HACKING
  6. 0 {old → old-to-be-ported-code}/INSTALL
  7. 0 {old → old-to-be-ported-code}/LICENSE
  8. 0 {old → old-to-be-ported-code}/MANIFEST.in
  9. 0 {old → old-to-be-ported-code}/Makefile
  10. 0 {old → old-to-be-ported-code}/README.API
  11. 0 {old → old-to-be-ported-code}/README.examples
  12. 0 {old → old-to-be-ported-code}/README.rst
  13. 0 {old → old-to-be-ported-code}/RFA.md
  14. 0 {old → old-to-be-ported-code}/TODO
  15. 0 {old → old-to-be-ported-code}/TODO.plgoons
  16. 0 {old → old-to-be-ported-code}/bin/ooni-probe
  17. 0 {old → old-to-be-ported-code}/keyword-lists/Makefile
  18. 0 {old → old-to-be-ported-code}/keyword-lists/keyfile
  19. 0 {old → old-to-be-ported-code}/list/list.txt
  20. 0 {old → old-to-be-ported-code}/ooni-probe.diff
  21. 0 {old → old-to-be-ported-code}/ooni/.DS_Store
  22. 0 {old → old-to-be-ported-code}/ooni/__init__.py
  23. 0 {old → old-to-be-ported-code}/ooni/captive_portal.py
  24. 0 {old → old-to-be-ported-code}/ooni/command.py
  25. 0 {old → old-to-be-ported-code}/ooni/common.py
  26. 0 {old → old-to-be-ported-code}/ooni/dns_cc_check.py
  27. 0 {old → old-to-be-ported-code}/ooni/dns_poisoning.py
  28. 0 {old → old-to-be-ported-code}/ooni/dnsooni.py
  29. 0 {old → old-to-be-ported-code}/ooni/empty.txt
  30. 0 {old → old-to-be-ported-code}/ooni/helpers.py
  31. 0 {old → old-to-be-ported-code}/ooni/http.py
  32. 0 {old → old-to-be-ported-code}/ooni/input.py
  33. 0 {old → old-to-be-ported-code}/ooni/namecheck.py
  34. 0 {old → old-to-be-ported-code}/ooni/output.py
  35. 0 {tests → old-to-be-ported-code/ooni/plugins}/__init__.py
  36. 0 {old → old-to-be-ported-code}/ooni/plugins/captiveportal_plgoo.py
  37. 0 {old → old-to-be-ported-code}/ooni/plugins/dnstest_plgoo.py
  38. 0 {old → old-to-be-ported-code}/ooni/plugins/http_plgoo.py
  39. 0 {old → old-to-be-ported-code}/ooni/plugins/marco_plgoo.py
  40. 0 {old → old-to-be-ported-code}/ooni/plugins/netalyzr_plgoo.py
  41. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/README
  42. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/README.automation
  43. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/TODO
  44. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/cached-consensus
  45. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/connectback.sh
  46. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/dirconntest.sh
  47. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/dns-checker.sh
  48. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/generic-host-test.sh
  49. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/host-prep.sh
  50. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/install-probe.sh
  51. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/run-tests.sh
  52. 0 {old → old-to-be-ported-code}/ooni/plugins/old_stuff_to_convert/twitter-test.sh
  53. 0 {old → old-to-be-ported-code}/ooni/plugins/proxy_plgoo.py
  54. 0 {old → old-to-be-ported-code}/ooni/plugins/simple_dns_plgoo.py
  55. 0 {old → old-to-be-ported-code}/ooni/plugins/skel_plgoo.py
  56. 0 {old → old-to-be-ported-code}/ooni/plugins/skel_plgoo.yaml
  57. 0 {old → old-to-be-ported-code}/ooni/plugins/tcpcon_plgoo.py
  58. 0 {old → old-to-be-ported-code}/ooni/plugins/tor.py
  59. 0 {old → old-to-be-ported-code}/ooni/plugins/torrc
  60. 0 {old → old-to-be-ported-code}/ooni/plugooni.py
  61. 0 {old → old-to-be-ported-code}/ooni/report.py
  62. 0 {old → old-to-be-ported-code}/ooni/transparenthttp.py
  63. 0 {old → old-to-be-ported-code}/ooni/yamlooni.py
  64. 0 {old → old-to-be-ported-code}/proxy-lists/Makefile
  65. 0 {old → old-to-be-ported-code}/proxy-lists/README
  66. 0 {old → old-to-be-ported-code}/proxy-lists/italy-dns.txt
  67. 0 {old → old-to-be-ported-code}/proxy-lists/italy-http-block-pages-notes.txt
  68. 0 {old → old-to-be-ported-code}/proxy-lists/italy-http-block-pages.txt
  69. 0 {old → old-to-be-ported-code}/proxy-lists/parse-trusted-xff.sh
  70. 0 {old → old-to-be-ported-code}/proxy-lists/trusted-xff.html
  71. 0 {old → old-to-be-ported-code}/reports/marco-1.yamlooni
  72. 0 {old → old-to-be-ported-code}/reports/marco-2.yamlooni
  73. 0 {old → old-to-be-ported-code}/reports/marco.log
  74. 0 {old → old-to-be-ported-code}/reports/marco.yamlooni
  75. 0 {old → old-to-be-ported-code}/reports/marco_certs-1-2.out
  76. 0 {old → old-to-be-ported-code}/reports/marco_certs-1.out
  77. 0 {old → old-to-be-ported-code}/reports/marco_certs-2.out
  78. 0 {old → old-to-be-ported-code}/reports/marco_certs.out
  79. 0 {old → old-to-be-ported-code}/setup.py
  80. 0 {old → old-to-be-ported-code}/spec/proxooni-spec.txt
  81. 0 {old → old-to-be-ported-code}/test-lists/Makefile
  82. 0 {old → old-to-be-ported-code}/tests/test_import.py
  83. 0 {old → old-to-be-ported-code}/third-party/Makefile
  84. 0 {old → old-to-be-ported-code}/third-party/README
  85. +3 −0 ooni/assets/bridgetests.txt
  86. 0 { → ooni}/assets/example.txt
  87. 0 { → ooni}/assets/tcpscan.txt
  88. 0 { → ooni}/config.py
  89. 0 { → ooni}/lib/Makefile
  90. 0 { → ooni}/logo.py
  91. 0 { → ooni}/nodes.conf
  92. +1 −1 { → ooni}/ooni-probe.conf
  93. 0 { → ooni}/oonicli.py
  94. +2 −0 ooni/ooniprobe.log
  95. 0 { → ooni}/ooniprobe.py
  96. 0 {old/ooni/plugins → ooni/oonitests}/__init__.py
  97. 0 {tests → ooni/oonitests}/bridget.py
  98. 0 {tests → ooni/oonitests}/dnstamper.py
  99. 0 {tests → ooni/oonitests}/httphost.py
  100. 0 {tests → ooni/oonitests}/squid.py
  101. 0 {tests → ooni/oonitests}/tcpscan.py
  102. 0 {tests → ooni/oonitests}/template.py
  103. 0 {tests → ooni/oonitests}/traceroute.py
  104. BIN ooni/plugins/.bridget.py.swp
  105. BIN ooni/plugins/.dnstamper.py.swp
  106. 0 { → ooni}/plugins/__init__.py
  107. 0 { → ooni}/plugins/bridget.py
  108. +22 −0 ooni/plugins/dnstamper.py
  109. 0 { → ooni}/plugins/dropin.cache
  110. 0 { → ooni}/plugins/skel.py
  111. 0 { → ooni}/plugoo/__init__.py
  112. 0 { → ooni}/plugoo/assets.py
  113. 0 { → ooni}/plugoo/interface.py
  114. 0 { → ooni}/plugoo/nodes.py
  115. 0 { → ooni}/plugoo/reports.py
  116. 0 { → ooni}/plugoo/tests.py
  117. 0 { → ooni}/plugoo/work.py
  118. 0 { → ooni}/skel.py
  119. 0 { → ooni}/utils.py
  120. 0 {backend → oonib}/__init__.py
  121. 0 {backend → oonib}/dnsbackend.py
  122. 0 {backend → oonib}/httpbackend.py
  123. 0 {backend → oonib}/oonibackend.py
View
12 docs/writing_tests.txt
@@ -0,0 +1,12 @@
+There are two modes of writing tests.
+
+The first kind of mechanism relied of writing a test that uses blocking code
+and each instance of it is run inside of a separate thread. Beware that your
+blocking code must be thread safe to run properly (as is obvious :P)
+
+The other menthod invloves having some knowledge about twisted. The test you
+will write will be written in twisted and should implement async style non
+blocking architecture.
+
+It is recommended that tests are written using the second pattern and the first
+should only be used for runnign tests that have been previously written.
View
4 install.txt
@@ -1,4 +0,0 @@
-install libdnet-1.12
-sudo pip install pylibpcap
-sudo pip install pcapy
-sudo pip install scapy
View
0 old/AUTHORS → old-to-be-ported-code/AUTHORS
File renamed without changes.
View
0 old/CHANGES.yaml → old-to-be-ported-code/CHANGES.yaml
File renamed without changes.
View
0 old/HACKING → old-to-be-ported-code/HACKING
File renamed without changes.
View
0 old/INSTALL → old-to-be-ported-code/INSTALL
File renamed without changes.
View
0 old/LICENSE → old-to-be-ported-code/LICENSE
File renamed without changes.
View
0 old/MANIFEST.in → old-to-be-ported-code/MANIFEST.in
File renamed without changes.
View
0 old/Makefile → old-to-be-ported-code/Makefile
File renamed without changes.
View
0 old/README.API → old-to-be-ported-code/README.API
File renamed without changes.
View
0 old/README.examples → old-to-be-ported-code/README.examples
File renamed without changes.
View
0 old/README.rst → old-to-be-ported-code/README.rst
File renamed without changes.
View
0 old/RFA.md → old-to-be-ported-code/RFA.md
File renamed without changes.
View
0 old/TODO → old-to-be-ported-code/TODO
File renamed without changes.
View
0 old/TODO.plgoons → old-to-be-ported-code/TODO.plgoons
File renamed without changes.
View
0 old/bin/ooni-probe → old-to-be-ported-code/bin/ooni-probe
File renamed without changes.
View
0 old/keyword-lists/Makefile → old-to-be-ported-code/keyword-lists/Makefile
File renamed without changes.
View
0 old/keyword-lists/keyfile → old-to-be-ported-code/keyword-lists/keyfile
File renamed without changes.
View
0 old/list/list.txt → old-to-be-ported-code/list/list.txt
File renamed without changes.
View
0 old/ooni-probe.diff → old-to-be-ported-code/ooni-probe.diff
File renamed without changes.
View
0 old/ooni/.DS_Store → old-to-be-ported-code/ooni/.DS_Store
File renamed without changes.
View
0 old/ooni/__init__.py → old-to-be-ported-code/ooni/__init__.py
File renamed without changes.
View
0 old/ooni/captive_portal.py → old-to-be-ported-code/ooni/captive_portal.py
File renamed without changes.
View
0 old/ooni/command.py → old-to-be-ported-code/ooni/command.py
File renamed without changes.
View
0 old/ooni/common.py → old-to-be-ported-code/ooni/common.py
File renamed without changes.
View
0 old/ooni/dns_cc_check.py → old-to-be-ported-code/ooni/dns_cc_check.py
File renamed without changes.
View
0 old/ooni/dns_poisoning.py → old-to-be-ported-code/ooni/dns_poisoning.py
File renamed without changes.
View
0 old/ooni/dnsooni.py → old-to-be-ported-code/ooni/dnsooni.py
File renamed without changes.
View
0 old/ooni/empty.txt → old-to-be-ported-code/ooni/empty.txt
File renamed without changes.
View
0 old/ooni/helpers.py → old-to-be-ported-code/ooni/helpers.py
File renamed without changes.
View
0 old/ooni/http.py → old-to-be-ported-code/ooni/http.py
File renamed without changes.
View
0 old/ooni/input.py → old-to-be-ported-code/ooni/input.py
File renamed without changes.
View
0 old/ooni/namecheck.py → old-to-be-ported-code/ooni/namecheck.py
File renamed without changes.
View
0 old/ooni/output.py → old-to-be-ported-code/ooni/output.py
File renamed without changes.
View
0 tests/__init__.py → ...o-be-ported-code/ooni/plugins/__init__.py
File renamed without changes.
View
0 old/ooni/plugins/captiveportal_plgoo.py → ...-code/ooni/plugins/captiveportal_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/dnstest_plgoo.py → ...ported-code/ooni/plugins/dnstest_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/http_plgoo.py → ...be-ported-code/ooni/plugins/http_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/marco_plgoo.py → ...e-ported-code/ooni/plugins/marco_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/netalyzr_plgoo.py → ...orted-code/ooni/plugins/netalyzr_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/old_stuff_to_convert/README → .../ooni/plugins/old_stuff_to_convert/README
File renamed without changes.
View
0 ...ns/old_stuff_to_convert/README.automation → ...ns/old_stuff_to_convert/README.automation
File renamed without changes.
View
0 old/ooni/plugins/old_stuff_to_convert/TODO → ...de/ooni/plugins/old_stuff_to_convert/TODO
File renamed without changes.
View
0 ...ins/old_stuff_to_convert/cached-consensus → ...ins/old_stuff_to_convert/cached-consensus
File renamed without changes.
View
0 ...ugins/old_stuff_to_convert/connectback.sh → ...ugins/old_stuff_to_convert/connectback.sh
File renamed without changes.
View
0 ...ugins/old_stuff_to_convert/dirconntest.sh → ...ugins/old_stuff_to_convert/dirconntest.sh
File renamed without changes.
View
0 ...ugins/old_stuff_to_convert/dns-checker.sh → ...ugins/old_stuff_to_convert/dns-checker.sh
File renamed without changes.
View
0 ...old_stuff_to_convert/generic-host-test.sh → ...old_stuff_to_convert/generic-host-test.sh
File renamed without changes.
View
0 ...plugins/old_stuff_to_convert/host-prep.sh → ...plugins/old_stuff_to_convert/host-prep.sh
File renamed without changes.
View
0 ...ins/old_stuff_to_convert/install-probe.sh → ...ins/old_stuff_to_convert/install-probe.sh
File renamed without changes.
View
0 ...plugins/old_stuff_to_convert/run-tests.sh → ...plugins/old_stuff_to_convert/run-tests.sh
File renamed without changes.
View
0 ...gins/old_stuff_to_convert/twitter-test.sh → ...gins/old_stuff_to_convert/twitter-test.sh
File renamed without changes.
View
0 old/ooni/plugins/proxy_plgoo.py → ...e-ported-code/ooni/plugins/proxy_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/simple_dns_plgoo.py → ...ted-code/ooni/plugins/simple_dns_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/skel_plgoo.py → ...be-ported-code/ooni/plugins/skel_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/skel_plgoo.yaml → ...-ported-code/ooni/plugins/skel_plgoo.yaml
File renamed without changes.
View
0 old/ooni/plugins/tcpcon_plgoo.py → ...-ported-code/ooni/plugins/tcpcon_plgoo.py
File renamed without changes.
View
0 old/ooni/plugins/tor.py → old-to-be-ported-code/ooni/plugins/tor.py
File renamed without changes.
View
0 old/ooni/plugins/torrc → old-to-be-ported-code/ooni/plugins/torrc
File renamed without changes.
View
0 old/ooni/plugooni.py → old-to-be-ported-code/ooni/plugooni.py
File renamed without changes.
View
0 old/ooni/report.py → old-to-be-ported-code/ooni/report.py
File renamed without changes.
View
0 old/ooni/transparenthttp.py → ...to-be-ported-code/ooni/transparenthttp.py
File renamed without changes.
View
0 old/ooni/yamlooni.py → old-to-be-ported-code/ooni/yamlooni.py
File renamed without changes.
View
0 old/proxy-lists/Makefile → old-to-be-ported-code/proxy-lists/Makefile
File renamed without changes.
View
0 old/proxy-lists/README → old-to-be-ported-code/proxy-lists/README
File renamed without changes.
View
0 old/proxy-lists/italy-dns.txt → ...-be-ported-code/proxy-lists/italy-dns.txt
File renamed without changes.
View
0 ...xy-lists/italy-http-block-pages-notes.txt → ...xy-lists/italy-http-block-pages-notes.txt
File renamed without changes.
View
0 old/proxy-lists/italy-http-block-pages.txt → ...de/proxy-lists/italy-http-block-pages.txt
File renamed without changes.
View
0 old/proxy-lists/parse-trusted-xff.sh → ...ted-code/proxy-lists/parse-trusted-xff.sh
File renamed without changes.
View
0 old/proxy-lists/trusted-xff.html → ...-ported-code/proxy-lists/trusted-xff.html
File renamed without changes.
View
0 old/reports/marco-1.yamlooni → ...o-be-ported-code/reports/marco-1.yamlooni
File renamed without changes.
View
0 old/reports/marco-2.yamlooni → ...o-be-ported-code/reports/marco-2.yamlooni
File renamed without changes.
View
0 old/reports/marco.log → old-to-be-ported-code/reports/marco.log
File renamed without changes.
View
0 old/reports/marco.yamlooni → old-to-be-ported-code/reports/marco.yamlooni
File renamed without changes.
View
0 old/reports/marco_certs-1-2.out → ...e-ported-code/reports/marco_certs-1-2.out
File renamed without changes.
View
0 old/reports/marco_certs-1.out → ...-be-ported-code/reports/marco_certs-1.out
File renamed without changes.
View
0 old/reports/marco_certs-2.out → ...-be-ported-code/reports/marco_certs-2.out
File renamed without changes.
View
0 old/reports/marco_certs.out → ...to-be-ported-code/reports/marco_certs.out
File renamed without changes.
View
0 old/setup.py → old-to-be-ported-code/setup.py
File renamed without changes.
View
0 old/spec/proxooni-spec.txt → old-to-be-ported-code/spec/proxooni-spec.txt
File renamed without changes.
View
0 old/test-lists/Makefile → old-to-be-ported-code/test-lists/Makefile
File renamed without changes.
View
0 old/tests/test_import.py → old-to-be-ported-code/tests/test_import.py
File renamed without changes.
View
0 old/third-party/Makefile → old-to-be-ported-code/third-party/Makefile
File renamed without changes.
View
0 old/third-party/README → old-to-be-ported-code/third-party/README
File renamed without changes.
View
3 ooni/assets/bridgetests.txt
@@ -0,0 +1,3 @@
+213.151.89.102:9001
+108.166.106.156:443
+217.150.224.213:443
View
0 assets/example.txt → ooni/assets/example.txt
File renamed without changes.
View
0 assets/tcpscan.txt → ooni/assets/tcpscan.txt
File renamed without changes.
View
0 config.py → ooni/config.py
File renamed without changes.
View
0 lib/Makefile → ooni/lib/Makefile
File renamed without changes.
View
0 logo.py → ooni/logo.py
File renamed without changes.
View
0 nodes.conf → ooni/nodes.conf
File renamed without changes.
View
2 ooni-probe.conf → ooni/ooni-probe.conf
@@ -6,7 +6,7 @@
reportdir = reports/
logfile = ooniprobe.log
assetdir = assets/
-testdir = tests/
+testdir = oonitests/
loglevel = DEBUG
consoleloglevel = DEBUG
View
0 oonicli.py → ooni/oonicli.py
File renamed without changes.
View
2 ooni/ooniprobe.log
@@ -0,0 +1,2 @@
+2012-05-29 01:32:22,811 ooniprobe INFO Started ooni-probe
+2012-05-29 01:32:22,972 ooniprobe WARNING Soft fail 'module' object has no attribute '__plugoo__'
View
0 ooniprobe.py → ooni/ooniprobe.py
File renamed without changes.
View
0 old/ooni/plugins/__init__.py → ooni/oonitests/__init__.py
File renamed without changes.
View
0 tests/bridget.py → ooni/oonitests/bridget.py
File renamed without changes.
View
0 tests/dnstamper.py → ooni/oonitests/dnstamper.py
File renamed without changes.
View
0 tests/httphost.py → ooni/oonitests/httphost.py
File renamed without changes.
View
0 tests/squid.py → ooni/oonitests/squid.py
File renamed without changes.
View
0 tests/tcpscan.py → ooni/oonitests/tcpscan.py
File renamed without changes.
View
0 tests/template.py → ooni/oonitests/template.py
File renamed without changes.
View
0 tests/traceroute.py → ooni/oonitests/traceroute.py
File renamed without changes.
View
BIN ooni/plugins/.bridget.py.swp
Binary file not shown.
View
BIN ooni/plugins/.dnstamper.py.swp
Binary file not shown.
View
0 plugins/__init__.py → ooni/plugins/__init__.py
File renamed without changes.
View
0 plugins/bridget.py → ooni/plugins/bridget.py
File renamed without changes.
View
22 ooni/plugins/dnstamper.py
@@ -0,0 +1,22 @@
+from zope.interface import implements
+from twisted.python import usage
+from twisted.plugin import IPlugin
+from plugoo.tests import ITest, TwistedTest
+
+class SkelArgs(usage.Options):
+ optParameters = [['hosts', 'f', None, 'Hostname asset file'],
+ ['dnsservers', 'd', None, 'DNS server asset file'],
+ ['resume', 'r', 0, 'Resume at this index'],
+ ['other', 'o', None, 'Other arguments']]
+
+class SkelTest(TwistedTest):
+ implements(IPlugin, ITest)
+
+ shortName = "skeleton"
+ description = "Skeleton plugin"
+ requirements = None
+ options = SkelArgs
+
+# We need to instantiate it otherwise getPlugins does not detect it
+# XXX Find a way to load plugins without instantiating them.
+skel = SkelTest(None, None)
View
0 plugins/dropin.cache → ooni/plugins/dropin.cache
File renamed without changes.
View
0 plugins/skel.py → ooni/plugins/skel.py
File renamed without changes.
View
0 plugoo/__init__.py → ooni/plugoo/__init__.py
File renamed without changes.
View
0 plugoo/assets.py → ooni/plugoo/assets.py
File renamed without changes.
View
0 plugoo/interface.py → ooni/plugoo/interface.py
File renamed without changes.
View
0 plugoo/nodes.py → ooni/plugoo/nodes.py
File renamed without changes.
View
0 plugoo/reports.py → ooni/plugoo/reports.py
File renamed without changes.
View
0 plugoo/tests.py → ooni/plugoo/tests.py
File renamed without changes.
View
0 plugoo/work.py → ooni/plugoo/work.py
File renamed without changes.
View
0 skel.py → ooni/skel.py
File renamed without changes.
View
0 utils.py → ooni/utils.py
File renamed without changes.
View
0 backend/__init__.py → oonib/__init__.py
File renamed without changes.
View
0 backend/dnsbackend.py → oonib/dnsbackend.py
File renamed without changes.
View
0 backend/httpbackend.py → oonib/httpbackend.py
File renamed without changes.
View
0 backend/oonibackend.py → oonib/oonibackend.py
File renamed without changes.

0 comments on commit e00625d

Please sign in to comment.