Unrud
09bde14e50
Allow auth backends to provide login and password
...
This is used to implement an auth backend that takes the credentials from an HTTP header (e.g. accounts are managed by an reverse proxy)
2017-05-31 02:07:49 +02:00
Unrud
8536ffee44
Preserve empty PATH_INFO from WSGI and strip base prefix from destination
2017-05-30 22:58:57 +02:00
Unrud
11c5dfdb53
Improve handling of XML requests and responses
...
* Move parsing/serialization of XML requests/responses from ``xmlutils.py`` to ``__init__.py``.
* Log XML requests/responses in pretty-printed form.
* Previously only the responses were logged in readable form. This is useful for debugging.
* The XML documents are only converted for pretty-printing if debugging is enabled (it's expensive)
* Send XML responses in minimized form to clients.
* Add **encoding** attribute to XML declaration in XML response.
* Only decode XML requests once. (Previously they were decoded, encoded and decoded again.)
2017-05-30 09:15:51 +02:00
Unrud
f1a9cf7694
Allow already encoded answers
2017-05-30 09:02:37 +02:00
Guillaume Ayoub
a94a3bc7c2
Version 2.0.0
2017-05-27 18:10:46 +02:00
Guillaume Ayoub
3e0c8cf285
Update copyright years
2017-05-27 17:28:07 +02:00
Unrud
577d9317d2
Strip script name from path
2017-05-26 11:02:07 +02:00
Unrud
cf78a23856
Improve logging
...
Log failed login attempts more clearly and also log access violations of authenticated users.
2017-05-23 04:16:52 +02:00
Unrud
f2fb07fa84
Move authentication delay into __init__.py and add config
...
Use the delay for all backends (not only htpasswd).
Add configuration option to configure the delay.
2017-05-23 04:07:32 +02:00
Unrud
fb970246e0
Only query auth backend when a user is set
2017-05-23 04:07:32 +02:00
Guillaume Ayoub
dcb0638538
Version 2.0.0rc2
2017-04-19 14:10:02 +02:00
Guillaume Ayoub
7e2406c778
Version 2.0.0rc1
2017-04-15 15:51:05 +02:00
Guillaume Ayoub
864eb5931a
Merge setup.cfg and pytest.ini, fix tests
2017-04-15 10:51:00 +02:00
Unrud
8a98f4861d
Fix permissions for REPORT request
...
Only read access is required.
2017-03-13 08:22:14 +01:00
Unrud
7d687205bd
Use logger for WSGIServer
...
Log exception from the WSGIServer. Exceptions from socket timeouts are currently written to stderr.
2017-03-10 13:39:26 +01:00
Unrud
5cd5cfe368
Use REMOTE_ADDR if REMOTE_HOST is missing
...
WSGIRequestHandler doesn't set REMOTE_HOST if dns lookup is disabled.
2017-03-07 20:34:37 +01:00
Unrud
69d39b47ca
Also log the forwarding host for forwarded requests
2017-03-07 20:34:36 +01:00
Unrud
c104da28ce
Use UNKNOWN if user agent is missing
...
This is much shorter and doesn't clutter the log as much.
2017-03-07 20:33:37 +01:00
Unrud
266dc608f2
Remove unnecessary if-statements
2017-03-07 20:32:23 +01:00
Guillaume Ayoub
5d67257555
Merge branch 'trycatch-broken-objects' of https://github.com/pbiering/Radicale into pbiering-trycatch-broken-objects
2017-02-26 16:24:41 +01:00
Guillaume Ayoub
46fcec8fe0
Cosmetics
2017-02-26 16:19:38 +01:00
Guillaume Ayoub
e6880057a2
Merge pull request #518 from pbiering/improved-access-logging
...
improved request logging
2017-02-26 16:17:44 +01:00
Guillaume Ayoub
9d958e8e51
Remove unused import
2017-02-26 16:13:50 +01:00
Guillaume Ayoub
3213495245
Merge branch 'url' of https://github.com/Unrud/Radicale into Unrud-url
2017-02-26 14:43:59 +01:00
Guillaume Ayoub
e55d75ce46
Set charsets in headers
2016-10-12 14:50:53 +02:00
Guillaume Ayoub
c459d32a19
Use argparse to parse command arguments
...
This commit also allows users to specify all the config values through
the command line.
Fix #154 .
2016-10-12 14:30:18 +02:00
Peter Bieringer
c578470fc3
log depth also on response log line
2016-09-19 20:11:52 +02:00
Peter Bieringer
f52fa73cab
check env first before using HTTP_DEPTH
2016-09-19 20:04:11 +02:00
Peter Bieringer
87061df68f
add conditional logging of given depth
2016-09-19 19:59:47 +02:00
Peter Bieringer
d116423458
improved request logging
2016-09-17 15:35:43 +02:00
Peter Bieringer
e6ba31937a
3rd catch
2016-09-17 15:11:02 +02:00
Unrud
83046c80c4
Let reverse proxies overwrite script name
...
Reverse proxies can overwrite the script name with the HTTP header field X-Script-Name.
2016-09-06 16:53:14 +02:00
Unrud
13d652b094
Remove unnecessary module prefix
2016-09-04 22:26:46 +02:00
Unrud
664fa71278
Don't double unquote request URL
...
"%2525" was transformed to "%" instead of "%25".
2016-09-04 22:26:46 +02:00
Unrud
dbaf58dbfe
Remove base_prefix and use SCRIPT_NAME instead
...
This conforms with the WSGI reference (PEP 333)
2016-09-04 22:26:40 +02:00
Unrud
fe5daf801a
Set password to empty string instead of None
...
Prevent exception in auth module.
2016-09-03 10:01:52 +02:00
Unrud
2a9f37defb
Repair authentication
2016-09-02 14:41:31 +02:00
Guillaume Ayoub
88d558f9fa
Remove useless nested tuples
2016-09-02 11:05:35 +02:00
Guillaume Ayoub
68e1e9dfb2
Don't use mutables in constants or parameters
2016-09-02 11:04:29 +02:00
Unrud
20b1480399
Make copy of headers before mutating
2016-09-02 04:23:47 +02:00
Unrud
f7e995f9f6
Move encoding of answer into response function
...
Fix #505
2016-09-02 04:10:11 +02:00
Guillaume Ayoub
e25373fa85
Merge pull request #501 from Unrud/httperrors
...
HTTP error messages
2016-08-31 14:49:19 +02:00
Guillaume Ayoub
8d92b371e4
Merge pull request #502 from Unrud/patch-40
...
Plain text for GET / instead of malformed HTML
2016-08-31 14:42:59 +02:00
Guillaume Ayoub
db681da08e
Merge pull request #500 from Unrud/loginuser
...
Map logins to internal users in Auth module
2016-08-31 14:40:08 +02:00
Unrud
f875bcd892
Plain text for GET / instead of malformed HTML
...
It's basically the same in browsers and looks nicer in tools that don't support HTML rendering (like curl).
2016-08-31 02:01:18 +02:00
Unrud
ff2b8f6e5c
Use NOT_FOUND instead of GONE
...
Thunderbird doesn't recognize the status code correctly and shows an synchronization error.
2016-08-31 01:54:31 +02:00
Unrud
1ea9b1dca9
Return error for GET requests on directories
...
Radicale doesn't support directory listings.
2016-08-31 00:45:14 +02:00
Unrud
4ac2e68f5c
Add HTTP error messages
...
Browsers just show a blank page if an error occurs. You have to open the developer tools to see the HTTP status code. E.g. a user wants to download a calendar in the browser and the URL is wrong.
Some tools like curl don't show any indication of an error.
2016-08-31 00:41:08 +02:00
Unrud
689e5c9dd5
Map logins to internal users in Auth module
...
This makes it possible to implement #349 as a Auth module. Another use case would be to encode usernames that contain characters unsupported by the file system.
2016-08-30 23:13:33 +02:00
Unrud
e782808a14
Remove empty line in log
...
Separating requests by an empty line doesn't work any longer with parallel (overlapping) requests.
2016-08-30 14:04:16 +02:00