Hidden Z
a287860619
validation.py: fail if hash contains .i2p= (full foo.i2p=key)
14 years ago
Hidden Z
ac349547f5
validation.py: check for passing b32 address instead of base64 hash
14 years ago
Hidden Z
0cd7556774
validation.py: strip leading and trailing whitespaces from hash before processing
14 years ago
Hidden Z
584d113a06
py-i2phosts-injector: add extra newline for error message
...
This improves output readability significantly.
14 years ago
Hidden Z
5803016ec3
validation.py: update docstring for validate_hostname()
14 years ago
Hidden Z
b5c5a4051c
validation.py: check for http:/ in hostname
...
This is a common error.
14 years ago
Hidden Z
5da0cc4b59
validation.py: check if only ".i2p" supplied as hostname
...
This is a common error.
14 years ago
Hidden Z
9ea9db109a
validation.py: fix typo in message
14 years ago
Hidden Z
2ab7b2de5f
validation.py: Allow only 4ld domains and below
14 years ago
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.
14 years ago
Hidden Z
ac3df58a3f
validation.py: hostname must not start with '.' or '-'
...
I just forgot to add this rule earlier.
14 years ago
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
14 years ago
Hidden Z
01e01b98fa
validation.py: bugfix: look for '..' in a whole hostname, not in namepart only
14 years ago
Hidden Z
573efddf8b
validation.py: strip leading and trailing whitespaces from hostname
14 years ago
Hidden Z
6a50774e5f
web/lib/validation.py: add comment
14 years ago
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.
14 years ago
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.
14 years ago
Hidden Z
bc3118ab44
web/lib/validation.py: call len() for "data" only once
...
Sort of optimisation.
14 years ago
Hidden Z
28a04f9240
py-i2phosts-injector: add -q/--quiet option
...
With this option program should print only errors
14 years ago
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.
14 years ago
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).
14 years ago
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.
14 years ago
Hidden Z
af828254aa
Rename builder and injector
...
renamed: builder -> py-i2phosts-builder
renamed: injector -> py-i2phosts-injector
14 years ago
Hidden Z
d0f157450b
injector: add -s/--supress option
...
With this option messages about already existed hostnames will be
supressed.
14 years ago
Hidden Z
9b88d61af5
injector: add command-line option for description
14 years ago
Hidden Z
803bbef6c6
injector: output errors to stderr
14 years ago
Hidden Z
5e8b354f9f
injector: ignore comments and empty lines
14 years ago
Hidden Z
d7dce40818
Add jumpservice implementation
14 years ago
Hidden Z
2858ba6084
injector: strip trailing '\n' from lines
...
We don't need a corrupted hashes in db :)
14 years ago
Hidden Z
dd498acf04
web/postkey/views.py: remove hash uniqueness check
...
Not needed until it moved into validation.py
14 years ago
Hidden Z
798d5cb2a7
injector: ignore lines without '=' separator
14 years ago
Hidden Z
f3a79838e6
web/lib/validation.py: fix base64 validations according to zzz's explanation
14 years ago
Hidden Z
f6f2d25426
injector: add hostname/key validation using previously created library
14 years ago
Hidden Z
2769f0d4bc
Move validation functions to separate module
14 years ago
Hidden Z
2529b6d6c3
web/postkey/models.py: last_seen is null by default now
14 years ago
Hidden Z
150de19f32
web/postkey/views.py: fix typo
14 years ago
Hidden Z
d6c360605b
web/postkey/models.py: add "last_seen" field
14 years ago
Hidden Z
b083f59957
web/postkey/models.py: correct comment
14 years ago
Hidden Z
95f38f5ac0
injector: add new hosts with external=True
14 years ago
Hidden Z
f2d7647b59
web/postkey/models.py: moar comments
14 years ago
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.
14 years ago
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/
14 years ago
Hidden Z
5145fba180
web/postkey/models.py: add __unicode__() method
14 years ago
Hidden Z
fd210c6fe3
injector: add command-line arguments parsing
...
And first option is: path to hosts.txt for parse
14 years ago
Hidden Z
40a708bb60
injector: permit adding hostnames with non-unique b64 hashes
14 years ago
Hidden Z
5cb9d1943a
web/postkey/views.py: avoid adding non-unique hashes
14 years ago
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.
14 years ago
Hidden Z
3209120196
Add builder
...
This is an initial implementation of hosts.txt builder service.
14 years ago
Hidden Z
b71f2fc511
injector: use more efficient exists() method
14 years ago
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.
14 years ago