1
0
mirror of https://github.com/r4sas/py-i2phosts synced 2025-01-08 22:07:55 +00:00
Commit Graph

217 Commits

Author SHA1 Message Date
Hidden Z
5da0cc4b59 validation.py: check if only ".i2p" supplied as hostname
This is a common error.
2010-10-22 18:36:05 +00:00
Hidden Z
9ea9db109a validation.py: fix typo in message 2010-10-22 18:31:46 +00:00
Hidden Z
2ab7b2de5f validation.py: Allow only 4ld domains and below 2010-10-22 18:29:42 +00:00
Hidden Z
0c45032178 validation.py: enhance IDN-check
Previously olny IDN hostnames which starts with xn-- was allowed, now
subdomains like subdomains.xn--foobar.i2p are also allowed.
2010-10-22 18:02:47 +00:00
Hidden Z
ac3df58a3f validation.py: hostname must not start with '.' or '-'
I just forgot to add this rule earlier.
2010-10-22 17:48:47 +00:00
Hidden Z
76e4ee94ce validation.py: add hostname lenght check
That's not really needed, just added for avoiding
django.db.utils.DatabaseError exceptions when trying to add too long
hostname with py-i2phosts-injector
2010-10-22 17:47:27 +00:00
Hidden Z
01e01b98fa validation.py: bugfix: look for '..' in a whole hostname, not in namepart only 2010-10-22 17:15:59 +00:00
Hidden Z
573efddf8b validation.py: strip leading and trailing whitespaces from hostname 2010-10-22 17:14:30 +00:00
Hidden Z
6a50774e5f web/lib/validation.py: add comment 2010-10-21 18:47:50 +00:00
Hidden Z
bb2582c62c web/lib/validation.py: add base64-validity check
Base 64 hash shouldn't require more than 2 pad chars to be divided to 4
without leftover.
2010-10-21 18:44:02 +00:00
Hidden Z
2b535dbf2b web/lib/validation.py: new b64 length check
b64 hash shouldn't be longer than 616 bytes. We already have length
limit in database model, but this way we can provide our custom error
message.
2010-10-21 18:40:02 +00:00
Hidden Z
bc3118ab44 web/lib/validation.py: call len() for "data" only once
Sort of optimisation.
2010-10-21 18:38:57 +00:00
Hidden Z
28a04f9240 py-i2phosts-injector: add -q/--quiet option
With this option program should print only errors
2010-10-21 18:36:54 +00:00
Hidden Z
4bd9b7883f py-i2phosts-fetcher: use os.path.mtime() for getting mtime
This is more efficient way than os.stat because it returns just mtime,
not full stat() info.
2010-10-20 23:05:35 +06:00
Hidden Z
fafa992507 py-i2phosts-checker: simple availability checker for i2p
It uses b32->b64 lookup test through SAM interface for determining hosts
availability. For communicating with SAM it uses python i2p library from
SAM contrib (i2p-0.8/apps/sam/python/src/i2p).
2010-10-20 22:53:16 +06:00
Hidden Z
1054426a91 py-i2phosts-fetcher: simple hosts.txt fetcher
It fetches files from remote hosts using urllib2 and local eeproxy and
runs py-i2phosts-injector for each downloaded file.
2010-10-20 22:46:46 +06:00
Hidden Z
af828254aa Rename builder and injector
renamed:    builder -> py-i2phosts-builder
       renamed:    injector -> py-i2phosts-injector
2010-10-19 18:26:06 +00:00
Hidden Z
d0f157450b injector: add -s/--supress option
With this option messages about already existed hostnames will be
supressed.
2010-10-19 16:29:20 +00:00
Hidden Z
9b88d61af5 injector: add command-line option for description 2010-10-18 20:13:04 +00:00
Hidden Z
803bbef6c6 injector: output errors to stderr 2010-10-17 18:45:16 +00:00
Hidden Z
5e8b354f9f injector: ignore comments and empty lines 2010-10-17 18:41:46 +00:00
Hidden Z
d7dce40818 Add jumpservice implementation 2010-10-17 18:18:39 +00:00
Hidden Z
2858ba6084 injector: strip trailing '\n' from lines
We don't need a corrupted hashes in db :)
2010-10-17 18:07:02 +00:00
Hidden Z
dd498acf04 web/postkey/views.py: remove hash uniqueness check
Not needed until it moved into validation.py
2010-10-16 19:49:56 +00:00
Hidden Z
798d5cb2a7 injector: ignore lines without '=' separator 2010-10-16 19:44:00 +00:00
Hidden Z
f3a79838e6 web/lib/validation.py: fix base64 validations according to zzz's explanation 2010-10-16 19:03:54 +00:00
Hidden Z
f6f2d25426 injector: add hostname/key validation using previously created library 2010-10-16 18:34:47 +00:00
Hidden Z
2769f0d4bc Move validation functions to separate module 2010-10-16 18:30:08 +00:00
Hidden Z
2529b6d6c3 web/postkey/models.py: last_seen is null by default now 2010-10-16 18:22:51 +00:00
Hidden Z
150de19f32 web/postkey/views.py: fix typo 2010-10-16 16:08:49 +00:00
Hidden Z
d6c360605b web/postkey/models.py: add "last_seen" field 2010-10-14 20:00:49 +00:00
Hidden Z
b083f59957 web/postkey/models.py: correct comment 2010-10-14 19:14:31 +00:00
Hidden Z
95f38f5ac0 injector: add new hosts with external=True 2010-10-14 18:32:03 +00:00
Hidden Z
f2d7647b59 web/postkey/models.py: moar comments 2010-10-14 18:25:34 +00:00
Hidden Z
7410eb788d web/postkey/models.py: add "external" field (bool)
It's needed for marking imported hosts from external sources.
Availability checks will not remove this hosts until other host-add
services implement auto-removing.
2010-10-14 18:21:50 +00:00
Hidden Z
e3ec6c34bc Redefine DJANGO_PROJECT_PATH in scripts
Assume that wep-part are located in <scriptdir>/web. Later we should use
a config variable for it. In production environment scripts will be
located in /usr/bin/
2010-10-14 17:44:50 +00:00
Hidden Z
5145fba180 web/postkey/models.py: add __unicode__() method 2010-10-13 18:07:52 +00:00
Hidden Z
fd210c6fe3 injector: add command-line arguments parsing
And first option is: path to hosts.txt for parse
2010-10-13 17:32:34 +00:00
Hidden Z
40a708bb60 injector: permit adding hostnames with non-unique b64 hashes 2010-10-13 17:30:51 +00:00
Hidden Z
5cb9d1943a web/postkey/views.py: avoid adding non-unique hashes 2010-10-13 17:24:32 +00:00
Hidden Z
def26f43ef web/postkey/models.py: permit non-unique hashes in database
This needed because hosts.txt already contains a duplicates. But we
shouldn't permit adding dups via webinterface.
2010-10-13 17:06:35 +00:00
Hidden Z
3209120196 Add builder
This is an initial implementation of hosts.txt builder service.
2010-10-09 19:43:33 +00:00
Hidden Z
b71f2fc511 injector: use more efficient exists() method 2010-10-09 19:31:32 +00:00
Hidden Z
bc33f75238 Add injector program
This is an initial implementation of injector service needed for parse
external hosts.txt and adds hosts from them into our database.
2010-10-09 19:10:11 +00:00
Hidden Z
85981abf58 postkey/views.py: add docstrings 2010-10-07 00:56:47 +06:00
Hidden Z
dd97e57f0f Add web/templates/success_submission.html
Used in page showed after submission.
2010-10-07 00:56:47 +06:00
Hidden Z
0005783d08 web/settings.py: add web.postkey to INSTALLED_APPS 2010-10-07 00:56:47 +06:00
Hidden Z
17db1b07fd postkey/views.py: use wingets in AddForm 2010-10-07 00:56:47 +06:00
Hidden Z
548ad715aa postkey/views.py: add "description" field in "addkey" view 2010-10-07 00:56:47 +06:00
Hidden Z
e191306c7e postkey: add "success" view 2010-10-07 00:56:47 +06:00