commit 3af0b5a12a5af750155cd06750d5a911f5c1900e Author: Arturo Filastò art@fuffa.org Date: Wed Nov 21 16:00:02 2012 +0100
Loosen up the oonib regexp to support the timestamp report format --- oonib/README.md | 1 + oonib/models.py | 9 +++++++-- oonib/report/api.py | 9 +++++++-- 3 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/oonib/README.md b/oonib/README.md index 8136b06..f70c6db 100644 --- a/oonib/README.md +++ b/oonib/README.md @@ -15,3 +15,4 @@ The extra dependencies necessary to run OONIB are: openssl x509 -req -days 365 -in server.csr -signkey private.key -out certificate.crt rm private.key.org
+ diff --git a/oonib/models.py b/oonib/models.py index 5784673..22567ad 100644 --- a/oonib/models.py +++ b/oonib/models.py @@ -2,11 +2,16 @@ __all__ = ['Report', 'TestHelperTMP'] from storm.twisted.transact import transact from storm.locals import *
+from ooni.utils import randomStr from oonib import transactor
def generateReportID(): - size = 100 - report_id = ''.join(random.choice(string.ascii_letters) for x in range(size)) + """ + Generates a report ID for usage in the database backed oonib collector. + + XXX note how this function is different from the one in report/api.py + """ + report_id = randomStr(100) return report_id
class OModel(object): diff --git a/oonib/report/api.py b/oonib/report/api.py index 708de37..5668857 100644 --- a/oonib/report/api.py +++ b/oonib/report/api.py @@ -59,7 +59,10 @@ def parseUpdateReportRequest(request): # XXX this and the function above can probably be refactored into something # more compact. There is quite a bit of code duplication going on here.
- report_id_regexp = re.compile("[a-zA-Z0-9]+$") + #db_report_id_regexp = re.compile("[a-zA-Z0-9]+$") + + # this is the regexp for the reports that include the timestamp + report_id_regexp = re.compile("[a-zA-Z0-9_-]+$")
# XXX here we are actually parsing a json object that could be quite big. # If we want this to scale properly we only want to look at the test_id @@ -121,12 +124,14 @@ class NewReportHandlerFile(web.RequestHandler):
report_id = generateReportID()
- #report_filename = '_'.join((report_id, + #report_filename = '_'.join((report_id, # report_data['software_name'], # report_data['software_version'], # report_data['test_name'], # report_data['test_version']))
+ # The report filename contains the timestamp of the report plus a + # random nonce report_filename = os.path.join(config.main.report_dir, report_id) report_filename += '.yamloo'
tor-commits@lists.torproject.org