summary refs log tree commit diff
path: root/synapse/http/client.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Increase http conn pool sizeRichard van der Hoff2018-01-291-1/+6
|
* Use a connection pool for the SimpleHttpClientRichard van der Hoff2018-01-201-1/+8
| | | | | In particular I hope this will help the pusher, which makes many requests to sygnal, and is currently negotiating SSL for each one.
* Merge pull request #2586 from matrix-org/rav/frontend_proxy_auth_headerRichard van der Hoff2017-10-271-28/+80
|\ | | | | Front-end proxy: pass through auth header
| * Docstring for post_urlencoded_get_jsonRichard van der Hoff2017-10-271-0/+11
| |
| * SimpleHTTPClient: add support for headersRichard van der Hoff2017-10-261-28/+69
| | | | | | | | Sometimes we need to pass headers into these methods
* | Fix logcontext leaks in httpclientRichard van der Hoff2017-10-261-10/+9
|/ | | | `preserve_context_over_fn` is borked
* Remember how twisted worksKegan Dougal2017-05-051-2/+2
|
* Include the clockKegan Dougal2017-05-051-0/+1
|
* Rewrite SimpleHttpClient.request to include timeoutsKegan Dougal2017-05-051-13/+19
| | | | Fixes #2191
* No need for the exception variableDavid Baker2017-05-031-1/+1
|
* List caught expection typesDavid Baker2017-05-031-1/+1
|
* Remove debuggingDavid Baker2017-04-261-2/+1
|
* Fix get_jsonDavid Baker2017-04-261-5/+4
|
* Use CodeMessageException subclass insteadDavid Baker2017-04-251-44/+20
| | | | | Parse json errors from get_json client methods and throw special errors.
* Need the HTTP status codeDavid Baker2017-04-211-5/+5
|
* Do the same for get_jsonDavid Baker2017-04-211-8/+21
|
* Don't error for 3xx responsesDavid Baker2017-04-211-1/+1
|
* Propagate errors sensibly from proxied IS requestsDavid Baker2017-04-211-0/+30
| | | | | | When we're proxying Matrix endpoints, parse out Matrix error responses and turn them into SynapseErrors so they can be propagated sensibly upstream.
* Remove spurious newlineJohannes Löthberg2016-12-121-1/+0
| | | | | | Apparently I just removed the spaces instead... Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
* Fixup for #1689 and #1690Johannes Löthberg2016-12-121-4/+7
| | | | Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
* IPv6 support for client.pyGlyph2016-12-111-16/+11
| | | This is an (untested) general sketch of how to use wrapClientTLS to implement TLS over IPv6, as well as faster connections over IPv4.
* Work around TLS bug in twistedRichard van der Hoff2016-06-151-2/+26
| | | | | | Wrap up twisted's FileBodyProducer to work around https://twistedmatrix.com/trac/ticket/8473. Hopefully this fixes https://matrix.org/jira/browse/SYN-700.
* Clean up the blacklist/whitelist handling.Mark Haines2016-05-161-2/+1
| | | | | | | Always set the config key with an empty list, even if a list isn't specified. This means that the codepaths are the same for both the empty list and for a missing key. Since the behaviour is the same for both cases this makes the code somewhat easier to reason about.
* add a url_preview_ip_range_whitelist config param so we can whitelist the ↵Matthew Hodgson2016-05-011-2/+4
| | | | matrix.org IP space
* Make InsecureInterceptableContextFactory work with SpiderEndpointErik Johnston2016-04-191-1/+4
|
* actually throw meaningful errorsMatthew Hodgson2016-04-081-5/+16
|
* Add url_preview_enabled config option to turn on/off preview_url endpoint. ↵Matthew Hodgson2016-04-081-5/+39
| | | | | | | | | defaults to off. Add url_preview_ip_range_blacklist to let admins specify internal IP ranges that must not be spidered. Add url_preview_url_blacklist to let admins specify URL patterns that must not be spidered. Implement a custom SpiderEndpoint and associated support classes to implement url_preview_ip_range_blacklist Add commentary and generally address PR feedback
* pep8Matthew Hodgson2016-04-031-4/+10
|
* add a persistent cache of URL lookups, and fix up the in-memory one to workMatthew Hodgson2016-04-031-3/+3
|
* support gzip compression, and don't pass through error msgsMatthew Hodgson2016-04-021-3/+8
|
* handle spidered relative images correctlyMatthew Hodgson2016-03-311-1/+1
|
* sync in changes from matrixfederationclientMatthew Hodgson2016-03-311-2/+6
|
* handle requests with missing content-length headers (e.g. YouTube)Matthew Hodgson2016-03-311-7/+26
|
* implement redirectsMatthew Hodgson2016-03-291-3/+3
|
* make it workMatthew Hodgson2016-03-291-1/+2
|
* make it buildMatthew Hodgson2016-03-291-1/+1
|
* Merge branch 'develop' into matthew/preview_urlsMatthew Hodgson2016-03-271-2/+15
|\
| * pep8David Baker2016-03-081-2/+5
| |
| * Encode unicode objects given to post_urlencode* otherwise urllib.urlencode ↵David Baker2016-03-081-2/+12
| | | | | | | | chokes.
* | initial WIP of a tentative preview_url endpoint - incomplete, untested, ↵Matthew Hodgson2016-01-241-0/+81
|/ | | | experimental, etc. just putting it here for safekeeping for now
* copyrightsMatthew Hodgson2016-01-071-1/+1
|
* Verify third party ID server certificatesDaniel Wagner-Hall2015-10-161-4/+0
|
* Fix previous merge to s/version_string/user_agent/Erik Johnston2015-10-101-2/+2
|
* Add get_raw method to SimpleHttpClient, use this in CAS auth rather than ↵Steven Hammerton2015-10-101-19/+36
| | | | requests
* Use space not dash as delimiterDaniel Wagner-Hall2015-10-061-1/+1
|
* Use space not dash as delimiterDaniel Wagner-Hall2015-10-061-1/+1
|
* Preserve version string in user agentDaniel Wagner-Hall2015-10-051-3/+3
|
* Allow synapse's useragent to be customizedDaniel Wagner-Hall2015-10-021-6/+9
| | | | | This will allow me to write tests which verify which server made HTTP requests in a federation context.
* Rename context factoryDaniel Wagner-Hall2015-09-151-3/+3
| | | | Mjark is officially no fun.
* Fix random formattingDaniel Wagner-Hall2015-09-091-1/+2
|
* Allow configuration to ignore invalid SSL certsDaniel Wagner-Hall2015-09-091-2/+23
| | | | | This will be useful for sytest, and sytest only, hence the aggressive config key name.
* Remove syutil dependency in favour of smaller single-purpose librariesMark Haines2015-08-241-1/+2
|
* Fix log context when sending requestsErik Johnston2015-06-191-5/+5
|
* Log requests and responses sent via http.clientErik Johnston2015-06-151-3/+15
|
* Correctly pass connection pool parameterErik Johnston2015-05-281-1/+1
|
* Up maxPersistentPerHost countErik Johnston2015-05-281-0/+1
|
* Add connection pooling to SimpleHttpClientErik Johnston2015-05-281-2/+4
|
* Change the way we do logging contexts so that they survive divergencesErik Johnston2015-05-081-1/+5
|
* New registration for C/S API v2. Only ReCAPTCHA working currently.David Baker2015-03-301-0/+2
|
* Appease pep8Paul "LeoNerd" Evans2015-03-121-3/+7
|
* Use _ instead of . as a metric namespacing separator, for PrometheusPaul "LeoNerd" Evans2015-03-121-2/+2
|
* Rename Metrics' "keys" to "labels"Paul "LeoNerd" Evans2015-03-121-2/+2
|
* Add vector counters to HTTP clients and servers; count the requests by ↵Paul "LeoNerd" Evans2015-03-121-1/+22
| | | | method and responses by method and response code
* Pull out all uses of the underlying HTTP user agent .request() method into a ↵Paul "LeoNerd" Evans2015-03-121-5/+10
| | | | single wrapper function, to make adding metrics easier
* Fix bug which prevented the HS pushing events to the AS due to FrozenEventsKegan Dougal2015-03-021-1/+1
|
* Use git aware version string in User-Agent and Server headersErik Johnston2015-02-181-5/+5
|
* Merge pull request #50 from matrix-org/application-servicesMark Haines2015-02-131-10/+57
|\ | | | | Application Services
| * Minor tweaks based on PR feedback.Kegan Dougal2015-02-111-1/+2
| |
| * Add SimpleHttpClient.put_json with the same semantics as get_json.Kegan Dougal2015-02-041-2/+46
| |
| * Update user/alias query APIs to use new format of SimpleHttpClient.get_jsonKegan Dougal2015-02-041-0/+3
| |
| * Modify API for SimpleHttpClient.get_json and update usages.Kegan Dougal2015-02-041-10/+9
| | | | | | | | | | | | | | | | | | | | Previously, this would only return the HTTP body as JSON, and discard other response information (e.g. the HTTP response code). This has now been changed to throw a CodeMessageException on a non-2xx response, with the response code and body, which can then be parsed as JSON. Affected modules include: - Registration/Login (when using an email for IS auth)
* | Use encode_canonical_json for http clientErik Johnston2015-02-111-1/+3
| |
* | Blunty replace json with simplejsonErik Johnston2015-02-111-1/+1
|/
* Merge branch 'develop' into pushersDavid Baker2015-01-131-3/+9
|\
| * SYN-231: User agent header brokenMark Haines2015-01-081-3/+3
| |
| * Update copyright noticesMark Haines2015-01-061-1/+1
| |
| * Include version in User-Agent and Server headersMark Haines2014-12-221-2/+8
| |
* | More work on pushers. Attempt to do HTTP pokes. Not sure if the actual HTTP ↵David Baker2014-11-211-0/+19
|/ | | | pokes work or not yet but the retry semantics are pretty good.
* Fix pep8 and pyflakes warningsMark Haines2014-11-201-3/+4
|
* Separate out the matrix http client completely because just about all of its ↵David Baker2014-11-201-322/+29
| | | | code it now separate from the simple case we need for standard HTTP(S)
* Refactor the HTTP clients a little.David Baker2014-11-201-79/+75
|
* CaptchaServerHttpClient should extend the base, not matrix http client.David Baker2014-11-201-1/+1
|
* SYN-141: Encode query params as UTF-8.Mark Haines2014-11-181-1/+7
|
* Merge branch 'develop' into request_loggingMark Haines2014-10-301-3/+4
|\ | | | | | | | | Conflicts: synapse/config/logger.py
| * Fix pep8 warningsMark Haines2014-10-301-4/+7
| |
* | Add a request-id to each log lineMark Haines2014-10-301-11/+15
|/
* Add get_json method to 3pid http client. Better logging for errors in 3pid ↵Mark Haines2014-10-201-1/+39
| | | | requests
* remove debugging logging for signing requestsMark Haines2014-10-141-4/+0
|
* Verify signatures for server2server requestsMark Haines2014-10-131-3/+7
|
* SYN-75 sign at the request level rather than the transaction levelMark Haines2014-10-131-7/+45
|
* Replace on_send_callback with something a bit clearer so that we can sign ↵Mark Haines2014-10-131-11/+35
| | | | messages
* Fix pyflakes errorsMark Haines2014-10-021-8/+2
|
* Add a keyword argument to get_json to avoid retrying on DNS failures. Rather ↵Mark Haines2014-10-021-8/+1
| | | | than passing MatrixHttpClient.RETRY_DNS_LOOKUP_FAILURES as a fake query string parameter
* Split PlainHttpClient into separate clients for talking to Identity servers ↵Mark Haines2014-10-021-144/+146
| | | | and talking to Capatcha servers
* remove "red", "blue" and "green" server_name mappingsMark Haines2014-10-011-7/+0
|
* Fix 'age' key to update on retriesErik Johnston2014-09-151-3/+10
|
* Captchas now work on registration. Missing x-forwarded-for config arg ↵Kegan Dougal2014-09-051-1/+27
| | | | support. Missing reloading a new captcha on the web client / displaying a sensible error message.
* Merge branch 'develop' of github.com:matrix-org/synapse into developDavid Baker2014-09-031-4/+22
|\ | | | | | | | | Conflicts: synapse/http/client.py
| * fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org ↵Matthew Hodgson2014-09-031-1/+1
| | | | | | | | hasn't been incorporated in time for launch.
| * Make retrying requests on DNS failures configurable, and turn off retrying ↵Kegan Dougal2014-09-031-6/+19
| | | | | | | | only in directory.get_association
| * hs: Updated synapse.http.client to handle DNSLookupErrors and bail immediately.Kegan Dougal2014-09-031-1/+6
| |
* | Add support for registering with a threepid to the HS (get credentials from ↵David Baker2014-09-031-5/+35
|/ | | | the client and check them against an ID server).
* Fix SSL for federation http clientMark Haines2014-09-011-1/+1
|
* Enable SSL for s2s http clientMark Haines2014-09-011-2/+6
|
* fix http client GET parameters; somehow missing named param. how could this ↵Matthew Hodgson2014-08-141-2/+2
| | | | have ever worked!?
* Update get_json()'s documentation to match the actual observed behaviourPaul "LeoNerd" Evans2014-08-131-4/+3
|
* add in whitespace after copyright statements to improve legibilityMatthew Hodgson2014-08-131-0/+1
|
* Reference Matrix Home Servermatrix.org2014-08-121-0/+246