- 06 Jul, 2022 2 commits
-
-
Carlos Garcia Campos authored
Fixes #286
-
Carlos Garcia Campos authored
-
- 30 Jun, 2022 2 commits
-
-
Patrick Griffis authored
-
This means it's a graceful goaway and we should not allow new requests, another goaway is expected with the actual last stream id that should be processed. Fixes #233
-
- 29 Jun, 2022 1 commit
-
-
Carlos Garcia Campos authored
We don't support http/2 proxies yet.
-
- 28 Jun, 2022 1 commit
-
-
Carlos Garcia Campos authored
(get:18601): libsoup-WARNING **: 11:25:03.814: (../libsoup/soup-session.c:318):soup_session_dispose: runtime check failed: (soup_connection_manager_get_num_conns (priv->conn_manager) == 0) (get:18601): libsoup-WARNING **: 11:25:03.814: (../libsoup/soup-connection-manager.c:78):soup_host_free: runtime check failed: (host->conns == NULL) This happens because we increase the in use counter of the connection when RST_STREAM message is sent, that is decreased when the frame is actually sent. In case of IO error, like socket timeout, we fail to send the RST_STREAM frame, and the in use counter of the connection is not decreased. We now process all pending closed messages when a frame fails to be sent due to session being closed.
-
- 24 Jun, 2022 1 commit
-
-
Michael Catanzaro authored
-
- 22 Jun, 2022 1 commit
-
-
- 21 Jun, 2022 1 commit
-
-
Carlos Garcia Campos authored
-
- 20 Jun, 2022 1 commit
-
-
Carlos Garcia Campos authored
Fixes #284
-
- 08 Jun, 2022 20 commits
-
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
The connection thread owner might change, so the context where the idle timeout source was attached might be destroyed while the connection is still alive. So, better use the session context always, since disconnecting at idle state is always safe from the session thread.
-
Carlos Garcia Campos authored
It's not thread safe and it's accessed by message IO from multiple threads. Session features are not that many so iterating every time should be fast enough.
-
Carlos Garcia Campos authored
GWeakRef is thread safe
-
Carlos Garcia Campos authored
We can use the same approach as http2 backend and call soup_logger_log_request_data() from the body stream wrote data callback.
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
nghttp2 session can't be used by multiple threads at the same time, so we need to ensure that only messages from the same thread share the connection. Connections in idle state can be reused from other threads, though but we need to ensure all the pending IO is completed before switching to another thread. When the connection switches to IN_USE state, the current thread becomes the owner of the connection IO. In the case of HTTP/2 there might be session IO not related to a particular message, in that case a thread with no default context is considered synchronous and all IO that is not explicitly sync or async will be sync.
-
Carlos Garcia Campos authored
Add blocking parameter to SoupBodyInputStreamHttp2::need-more-data and only do sync IO when input stream read is blocking too.
-
Carlos Garcia Campos authored
Also use a condition for sync requests to wait until a connection is available.
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
-
Carlos Garcia Campos authored
Ensure that queue items are only processed in the same thread they were created.
-
Carlos Garcia Campos authored
Also reuse the host address for connections to the same host.
-
Carlos Garcia Campos authored
-
- 07 Jun, 2022 1 commit
-
-
Carlos Garcia Campos authored
Otherwise we get a protocol error since Host header is replaced by :authority pseudo-header field in HTTP/2. Fixes #278
-
- 06 Jun, 2022 1 commit
-
-
- 02 Jun, 2022 1 commit
-
-
In case of cancellation the SoupHTTP2MessageData might have already been destroyed.
-
- 01 Jun, 2022 2 commits
-
-
Carlos Garcia Campos authored
This is a leftover from the soup3 redesign. The plan was to move the authenticate signal from Session and SoupAuthManager to SoupMessage, but I forgot to remove the signal declaration from SoupAuthManager. There's no actual API break because we never emitted the signal, so this can't break anything.
-
Carlos Garcia Campos authored
-
- 24 May, 2022 1 commit
-
-
Milan Crha authored
Correct a typo in the property name, it should be 'authority' instead.
-
- 23 May, 2022 1 commit
-
-
Patrick Griffis authored
This API doesn't listen on both ipv4/ipv6 but other APIs do.
-
- 17 May, 2022 2 commits
-
-
Ignacio Casal Quinteiro authored
-
Ignacio Casal Quinteiro authored
-
- 06 May, 2022 1 commit
-
-
Understanding that RFC 4559 exists would help anybody reading the API docs, and also anybody working on this file.
-