- 19 Oct, 2018 1 commit
-
-
Vincent Pelletier authored
Otherwise, verification against IP-only CA certificate will fail, as common name is sometimes used to contain a domain name (which is deprecated in favour of alternative names, but still checked).
-
- 26 Sep, 2018 8 commits
-
-
Vincent Pelletier authored
-
Vincent Pelletier authored
What was not picked up by 2to3.
-
Vincent Pelletier authored
Using only 2to3 conversions which are python2-compatible.
-
Vincent Pelletier authored
Self-describe site structure in application/hal+json format. Add Cross-Origin Resource Sharing support: pre-flight request support, same-origin-only origin access control minimal html page. Access control decision is stored client-side in a signed & time-limited cookie supporting multiple concurrent origins. Origins may be pre-allowed (ex: when caucase GUI is served from a trusted server).
-
Vincent Pelletier authored
This makes it safer to trust this CA certificate in general-purpose https clients, like web browsers, as it prevents such trusted CA certificate from issuing rogue certificates. Bump pyOpenSSL to latest version (and, as a consequence of pyOpenSSL 18.0.0 itself requiring cryptography 2.1.1, bump it as well) as it seems to fix a bug related to validating NameConstraints - and anyway fixes worrying use-after-free errors.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
This is a step in the direction of being browser-friendly: if caucased https certificate is issued by CAS CA, then for a browser to trust that certificate it would have to trust all certificates emitted by CAS CA certificate. This would be very dangerous, as CAS CA does not constrain the certificates it may sign, so it exposes users of that caucased to rogue certificates. Alone, this step is insufficient, as the new internal "http_cas" does not constrain certificates yet. This will happen in a separate commit, to ease review and regression testing. As a consequence of this step, by default client will not check server certificate in https. This is consistent with how trust is bootstrapped with plain http: maybe client is accessing an unexpected/malicious caucased, but in such case issued certificates will be worthless to a party which could access the correct caucased. Also, the client certificate presented to caucased does not allow that caucased to fake being that user, so there is no privilege escalation possible for server.
-
Vincent Pelletier authored
-
- 21 Sep, 2018 10 commits
-
-
Łukasz Nowak authored
/reviewed-on !3
-
Łukasz Nowak authored
-
Łukasz Nowak authored
-
Vincent Pelletier authored
-
Vincent Pelletier authored
-
Vincent Pelletier authored
Maybe name resolution is flapping, or server is unreachable or misbehaving... This must not cause caucase-update to exit.
-
Vincent Pelletier authored
So they can be customised in subclasses.
-
Vincent Pelletier authored
So that they do not hardcode the class to instanciate. This prepares further class tweaking. Also, update users.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
-
- 20 Sep, 2018 5 commits
-
-
Vincent Pelletier authored
Work around a python bug (both present in 2.7.15 and 3.6.6) which prevents changing the ssl context on a listening socket. Reported: https://bugs.python.org/issue34747
-
Vincent Pelletier authored
The code could actually not loop. Still check that deadline is not reached when entering, as code often uses "now" as initial deadline. Also, clarify dosctring.
-
Vincent Pelletier authored
Do not wait forever so test does not block. Always clear event after it occurred. Also, ensure itsUntilEvent behaviour is to raise so server actually stops in _stopServer.
-
Vincent Pelletier authored
So the instance is readily reusable and less likely to be misused.
-
Vincent Pelletier authored
Spawned thread is not returned.
-
- 12 Sep, 2018 1 commit
-
-
Vincent Pelletier authored
Except it is not present on caucase root object. This reverts commit b26eeb38.
-
- 22 Jul, 2018 6 commits
-
-
Vincent Pelletier authored
-
Vincent Pelletier authored
It is not in python3.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
To ease debugging.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
The intent was getting a nice error message if file was not readable, but it causes a resource warning in python3 (file object being garbage- collected while open - wasn't that the beauty of automatic garbage collection to begin with ? It makes sense for writeable files as not closing may cause race conditions, but for read-only it's just annoying).
-
- 21 Jul, 2018 1 commit
-
-
Vincent Pelletier authored
-
- 20 Jul, 2018 3 commits
-
-
Vincent Pelletier authored
Concatenate potential homonymous headers following specification.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
-
- 15 Jul, 2018 4 commits
-
-
Vincent Pelletier authored
Escape all quoted strings. Add referrer. Add user-agent.
-
Vincent Pelletier authored
Include both caucase name and its current version number. Add versioneer for version number introspection, producing egg version and caucase.__version__.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
-
- 14 Jul, 2018 1 commit
-
-
Vincent Pelletier authored
More realistic than checking server certificate.
-