summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-06-28make scgi.asynchronous work with py3Helmut Grohne
2012-06-28first part of bytes conversionHelmut Grohne
Convert the request body data from str to bytes. This replaces all StringIOs with BytesIOs (removing backwards one more backwards compatibility). Also all character sequences involved in request bodies get a b"" prefix. The StaticContent application takes bytes instead of str (no difference for py2x). The GzipWSGIFilter needs a fixed as a truncate of a BytesIO does not rewind the stream position.
2012-06-28update python versions in READMEHelmut Grohne
2012-06-28provide py3 style __next__ methodsHelmut Grohne
2012-06-28remove workarounds for missing next() and hashlibHelmut Grohne
2012-06-28drop support for python2.5, use except ... as ...Helmut Grohne
2012-06-24fix comment in wsgitools.digestHelmut Grohne
2012-03-17sendfile supportHelmut Grohne
When a sendfile library is available, expose it via wsgi.file_wrapper. This support spans both asynchronous and forkpool.
2012-03-17set __all__ in scgi.forkpoolHelmut Grohne
2012-03-17deduplicate scgi.{asynchronous,forkpool}Helmut Grohne
2012-03-15added a test for GzipWSGIFilterHelmut Grohne
2012-03-15raise exc_info stuff properlyHelmut Grohne
2012-03-15middlewares: support multiple start_response callsHelmut Grohne
Previously middlewares mostly gave up and acted as pass through when a second start_response call occurred. Now they try to handle this situation.
2012-03-15added another NoWriteCallableMiddleware testHelmut Grohne
Not failing. :-)
2012-03-15fix failing NoWriteCallableMiddleware testHelmut Grohne
This was basically a rewrite of the NoWriteCallableMiddleware, because the wrong assumption of start_response not being called twice was used in too many places.
2012-03-15added failing test for NoWriteCallableMiddlewareHelmut Grohne
Also set the returneddata attribute of the response object instead of the request object.
2011-12-06bumped version to 0.2.3wsgitools-0.2.3Helmut Grohne
2011-12-06drop useless tail recursion param from parse_digest_responseHelmut Grohne
2011-12-01respect RFC2617 in terms of what is quotedHelmut Grohne
Said RFC is quite precise on which values of a challenge are to be quoted. I didn't honour those parts and many applications do not enforce these requirements, so I didn't notice. Now I explain which values are to be quoted in the hopes that it works with "Wget/1.10.2 (Red Hat modified)".
2011-11-30documentation updateHelmut Grohne
* added a number of internal links (L{...}) * some fixes * some additions
2011-11-30Merge branch 'authrefactor'Helmut Grohne
Conflicts: wsgitools/digest.py
2011-11-30shrink AuthenticationMiddleware.authenticate interfaceHelmut Grohne
The method no longer receives a start_response and is no longer responsible for calling self.app. Instead it returns a dictionary with the result of the authentication.
2011-11-28added format_digestHelmut Grohne
This is the inverse of parse_digest_response and also supports escaping of backslashes and quotes.
2011-11-28rewrite parse_digest_response for escapesHelmut Grohne
The previous version did not handle escapes at all. Now I added two test cases for escaping and rewrote the function to meet all test cases.
2011-11-28digest: generate Authentication-Info before invoking appHelmut Grohne
This shrinks the possibility of raising something from start_response and maybe enables to factor out this start_response modification later.
2011-11-27added new base class AuthenticationMiddlewareHelmut Grohne
The BasicAuthMiddleware and AuthDigestMiddleware now derive from AuthenticationMiddleware which provides common functionality.
2011-11-26broaden AuthDigestMiddleware.authorization_requiredHelmut Grohne
The interface of this internal function has changed in a backwards incompatible way. The last parameter is no longer the bool stale, but an exception now, which encodes more information than the previous bool. This was made possible by the previous commit. This exception can then be used by the new method www_authenticate to generate a suitable WWW-Authenticate header. The idea behind this change is that at some point it should be possible to override authorization_required (still internal now) to evaluate what condition lead to the failure and to generate custom error pages.
2011-11-02improved extensibility of error handling in digest.pyHelmut Grohne
Instead of randomly raising KeyErrors or ValueErrors we can now see more meaningful ProtocolViolations and StaleNonces. Note that this change should be invisible to users who do not mess with internals.
2011-11-02added digest auth test with qop=authHelmut Grohne
2011-11-01digest: support gentoken without algoHelmut Grohne
2011-08-19scgi: support reusing a listen socketHelmut Grohne
This is useful when used in combination with e.g. systemd.
2011-07-25fixed epydoc markup errors in digest moduleHelmut Grohne
2011-07-25added more nonce store test cases to digest moduleHelmut Grohne
2011-07-24add more assertions for types of passed parametersHelmut Grohne
2011-07-24filters.escape_string: do not consider \ printableHelmut Grohne
Otherwise escape_string is not reversible.
2011-07-24removed execute bit from wsgitools/digest.pyHelmut Grohne
It probably gained this bit later than shown in history due to darcs not tracking execute bits. The bit was probably added for doc tests which moved to a designated file later.
2011-07-22BasicAuthMiddleware docstring: mention REMOTE_USERHelmut Grohne
2011-07-18adapt exc_info handling for python 3Helmut Grohne
2011-06-08more testcasesHelmut Grohne
2011-06-08added test cases for BasicAuthMiddlewareHelmut Grohne
2011-06-02test.py: exit non-zero on failureHelmut Grohne
The exit status is now the number of failures.
2011-06-01reworked digest.AuthTokenGeneratorHelmut Grohne
AuthTokenGenerator gained a base class AbstractTokenGenerator. This class provides an additional method check_password implementing the interface required by BasicAuthMiddleware. In addition AbstractTokenGenerator gained two subclasses HtdigestTokenGenerator and UpdatingHtdigestTokenGenerator. They both read authentication information from a apache htdigest file. The latter also checks the file for updates.
2011-06-01improved doc string for middlewares.ContentLengthMiddlewareHelmut Grohne
2011-06-01added test case for middlewares.ContentLengthMiddlewareHelmut Grohne
2011-06-01added a test case for applications.StaticFileHelmut Grohne
2011-06-01test.py: improved header checkHelmut Grohne
It previously only checked for the validity of a header and now also checks for the presence of a header.
2011-06-01README: installation and test suite instructionsHelmut Grohne
2011-06-01include epydoc.conf in MANIFEST.inHelmut Grohne
2011-01-12DictAuthChecker.__call__ should take an environwsgitools-0.2.2Helmut Grohne
as this is tried by BasicAuthMiddleware first.
2011-01-12improved AuthDigestMiddleware doc stringHelmut Grohne