summaryrefslogtreecommitdiff
path: root/libsoup/soup-status.h
Commit message (Collapse)AuthorAgeFilesLines
* status: add 421 Misdirected RequestPatrick Griffis2021-05-091-0/+1
|
* Add SOUP_HTTP_2_0Patrick Griffis2021-03-251-1/+2
| | | | This will be used later with HTTP/2 support
* Stop using emacs indent-tabs-modeCarlos Garcia Campos2021-03-181-1/+1
| | | | We prefer spaces now instead of tabs.
* Remove all 2.x version macrosPatrick Griffis2020-11-251-1/+1
|
* Remove non-HTTP SoupStatus valuesCarlos Garcia Campos2020-11-151-27/+0
| | | | | Stop using the message status for internal or transport errors and always use GError for those.
* Split SoupMessage into client and server partscarlosgc/split-ioCarlos Garcia Campos2020-10-191-0/+5
| | | | Add SoupServerMessage and move there all the server only functionality.
* Modernize GObject declarationsPatrick Griffis2020-09-191-4/+1
|
* Reorganize source treePatrick Griffis2020-09-191-1/+1
|
* Remove deprecated SoupKnownStatusCode APIPatrick Griffis2020-09-191-78/+0
|
* soup-session: Add support for status code 308 Permanent RedirectBenjamin Kaufmann2020-07-191-0/+1
|
* Use G_DEFINE_QUARK() for the SOUP_HTTP_ERROR error domainClaudio Saavedra2019-08-231-1/+7
| | | | Also move the documentation together with the definition.
* soup-status: Fix include recursion issue found by Coverity Scan and clangMilan Crha2018-06-251-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=781771
* Do not include the header exclusion guards in the introspectionCorentin Noël2018-06-131-3/+3
|
* Mark all remaining methods with SOUP_AVAILABLE_IN_2_4Ignacio Casal Quinteiro2015-11-091-0/+2
| | | | | | | | This way we can as well redefine _SOUP_EXTERN on msvc builds with the right extern value needed for it. This is the same we do on glib and gtk+ https://bugzilla.gnome.org/show_bug.cgi?id=757146
* Rename SoupKnownStatusCode to SoupStatusDan Winship2013-07-131-1/+79
| | | | | | | | | | Rename SoupKnownStatusCode to SoupStatus (so that the type name matches the enum values), and then, for backward-compatibility, add a new SoupKnownStatusCode enum with equivalent values so that introspection-using code that was doing "SoupKnownStatusCode.OK", etc, will still work. https://bugzilla.gnome.org/show_bug.cgi?id=684409
* Add per-version deprecation/availability warningsDan Winship2012-11-081-1/+2
| | | | | | | | | | | Add SOUP_VERSION_X_XX, SOUP_VERSION_MIN_REQUIRED, and SOUP_VERSION_MAX_ALLOWED, to enable version-based warnings. Tag all functions with appropriate SOUP_AVAILABLE_IN_ and SOUP_DEPRECATED_IN_ macros. Also, fix up some "Since" tags to not refer to unstable releases or non-.0 point releases.
* Default to TLS for https connections, and fall back to SSLv3 on failureDan Winship2011-08-071-0/+1
| | | | | | | | | Rather than always using SSLv3, try proper TLS+extensions first, and fall back to SSLv3-without-extensions if that gives an error that looks like it might mean "broken SSLv3-only server". Use SoupSessionHost to record the fallback status for a host. https://bugzilla.gnome.org/show_bug.cgi?id=581342
* SoupSession: count redirections and cancel the message after too manyJosé Millán Soto2010-06-081-0/+1
| | | | | | and add a test to redirect-test https://bugzilla.gnome.org/show_bug.cgi?id=604383
* new abstract base class for a SoupSessionFeature that determines whatDan Winship2008-10-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libsoup/soup-proxy-resolver.c: new abstract base class for a SoupSessionFeature that determines what proxy to use for a given URI. * libsoup/soup-proxy-resolver-static.c: a SoupProxyResolver that always returns the same value. * libsoup/soup-session.c (set_property, get_property): implement the SOUP_SESSION_PROXY_URI property by creating/destroying a SoupProxyResolverStatic as needed. (soup_session_get_connection): Use the proxy address passed by the caller rather than priv->proxy_uri. * libsoup/soup-session-async.c (run_queue): if the session has a proxy resolver, use it, and pass the resolved proxy to soup_session_get_connection(). (request_restarted): clear the previously-resolved proxy address when restarting the message * libsoup/soup-session-sync.c (wait_for_connection): if the session has a proxy resolver, use it, and pass the resolved proxy to soup_session_get_connection(). * libsoup/soup-message-queue.h (SoupMessageQueueItem): add proxy-address-resolving fields * libsoup/soup-status.c (soup_status_proxify): moved from soup-connection; turn SOUP_STATUS_CANT_RESOLVE into SOUP_STATUS_CANT_RESOLVE_PROXY, and SOUP_STATUS_CANT_CONNECT into SOUP_STATUS_CANT_CONNECT_PROXY (and pass all other statuses through unchanged) svn path=/trunk/; revision=1192
* Build with G_DISABLE_DEPRECATED and G_DISABLE_SINGLE_INCLUDES; enforce theCosimo Cecchi2008-10-201-1/+1
| | | | | | | | | | | | | | | 2008-10-20 Cosimo Cecchi <cosimoc@gnome.org> * configure.in: * libsoup/Makefile.am: * libsoup/soup-status.h: * libsoup/soup-types.h: * libsoup/soup-uri.c: (soup_uri_to_string): Build with G_DISABLE_DEPRECATED and G_DISABLE_SINGLE_INCLUDES; enforce the first switch under maintainer mode and the second one unconditionally (#557072). svn path=/trunk/; revision=1183
* Merge libsoup-2.4 branch to trunkDan Winship2008-01-151-153/+3
| | | | | | * Merge libsoup-2.4 branch to trunk svn path=/trunk/; revision=1041
* add G_BEGIN_DECLS / G_END_DECLS to all installed headers so that libsoupJonathon Jongsma2007-06-011-0/+6
| | | | | | | | | 2007-05-16 Jonathon Jongsma <jjongsma@gnome.org> * libsoup/*.h: add G_BEGIN_DECLS / G_END_DECLS to all installed headers so that libsoup can be used from C++ programs. #438776 svn path=/trunk/; revision=925
* add/fix gtk-doc comments, make functions match prototypes, etcDan Winship2005-06-141-0/+144
| | | | | | | * libsoup/*.[ch]: add/fix gtk-doc comments, make functions match prototypes, etc * docs/reference/*: update, fix, etc
* add/fix lots of gtk-doc commentsDan Winship2004-08-261-6/+6
| | | | | | | | | | | | | | | * libsoup/*: add/fix lots of gtk-doc comments * libsoup/soup-misc.c (soup_str_case_hash, soup_str_case_equal): Fix bug noticed while documenting. (We were using the locale-case-insensitive functions rather than the g_ascii_ ones.) * libsoup/soup-message.h (SoupMessageFlags): remove the (never implemented) NO_PIPELINE and NO_COOKIE flags. * docs/reference/tmpl/*.sgml: Regenerate, fill in some stuff. There are still problems here with gtk-doc not recognizing many of the objects in libsoup...
* Lots of thread-safety stuff, primarly so you can disconnect a socket fromDan Winship2003-12-221-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libsoup/soup-socket.c: Lots of thread-safety stuff, primarly so you can disconnect a socket from one thread while doing I/O in another. * libsoup/soup-message-io.c (soup_message_io_cancel): Split into soup_message_io_stop() and io_cleanup(), to separate out the "stop reading/writing" and "free data" phases to allow thread-safe synchronous cancellation. (soup_message_io_finished): call both soup_message_io_stop() and io_cleanup() (io_error): Only set SOUP_STATUS_IO_ERROR on the message if it doesn't already have a transport error status (eg, CANCELLED). (new_iostate): Call io_cleanup() if needed. * libsoup/soup-status.h: add "SOUP_STATUS_NONE" for 0, to make it clearer that it's not a status. * libsoup/soup-message.c (finalize, restarted, finished, soup_message_set_uri): s/soup_message_io_cancel/soup_message_io_stop/ (soup_message_cleanup_response): s/0/SOUP_STATUS_NONE/ * libsoup/soup-connection.c (send_request): Remove soup_message_io_cancel call. * libsoup/soup-session-sync.c (send_message): Connect to the connection's "disconnected" signal rather than using a weak ref, since that's what we really care about, and it's possible that the connection may have an extra ref on it somewhere that would keep it from being destroyed even if it was disconnected.
* New. An interface for objects that want to act on every message passingDan Winship2003-12-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libsoup/soup-message-filter.c: New. An interface for objects that want to act on every message passing through a session. (Initially being used for authentication, but could also be used for cache handling, cookie management, etc.) * libsoup/soup-connection.c (class_init, etc): Add a message filter property. (send_request): If the connection has a message filter set, run it on the message before sending it. (soup_connection_connect_async, etc): When setting up a tunnel, if we get back a 407 and the session tries to requeue the message, either re-send it, or return SOUP_STATUS_TRY_AGAIN (depending on whether or not the proxy closed the connection). (soup_connection_connect_sync): Likewise (send_request, request_done): Ref/unref the connection * libsoup/soup-session.c (soup_session_get_type): Implement the SoupMessageFilter interface. (soup_session_get_connection): Use the session as the connection's message filter (soup_session_add_filter, soup_session_remove_filter): Add/remove filters from the session (setup_message): do auth handling, and call each of the session's filters' setup_message methods as well. (soup_session_send_message_via): No longer needed. (connect_result): Handle SOUP_STATUS_TRY_AGAIN. * libsoup/soup-session-async.c (run_queue): Use soup_connection_send_request, since soup_session_send_message_via is gone now. * libsoup/soup-session-sync.c (send_message): Likewise * libsoup/soup-message.c (soup_message_is_keepalive): A successful response to a CONNECT is always keepalive, even if it's HTTP/1.0 with no Connection header. * libsoup/soup-status.h: add SOUP_STATUS_TRY_AGAIN * libsoup/soup-types.h: Add SoupMessageFilter, and macros for gobject interface types. * tests/get.c (main): Add a -p flag to specify a proxy * tests/simple-proxy.c: Fix #includes
* if we receive an HTTP/1.0 response to an HTTP/1.1 request, downgrade theDan Winship2003-12-101-1/+1
| | | | | | | | | | | | | | | | | | | * libsoup/soup-message-client-io.c (parse_response_headers): if we receive an HTTP/1.0 response to an HTTP/1.1 request, downgrade the message's http_version so the keep-alive handling is correct. Fixes a problem noticed almost simultaneously by Rodrigo and Joe. * libsoup/soup-message.c (soup_message_restarted, etc): Add a "restarted" signal as suggested by Joe. * libsoup/soup-message-io.c (soup_message_io_finished): emit either "restarted" or "finished" as appropriate * libsoup/soup-session.c (soup_session_queue_message): Connect to "restarted" and run the queue if a message gets restarted * libsoup/soup-status.h: Remove a stray comma that gtk-doc doesn't like.
* Add wrote_informational and got_informational signals.Dan Winship2003-09-181-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | * libsoup/soup-message.c: Add wrote_informational and got_informational signals. * libsoup/soup-message-client-io.c (get_request_headers): Set the EXPECT_CONTINUE flag on the message if that header is set. * libsoup/soup-message-server-io.c (parse_request_headers): Likewise * libsoup/soup-message-io.c (io_write): Set read_state to HEADERS when blocking on an expect-continue. Emit wrote_informational instead of wrote_headers in the 1xx case. (io_read): Set read_state to BLOCKING, not NOT_STARTED after reading a 100 Continue response. Emit got_informational instead of got_headers in the 1xx case. * libsoup/soup-session.c (soup_session_send_message): Reorder things to deal with the fact that the message could finish right away if there is a connection available and the server is very close. * libsoup/soup-status.h: Rename SOUP_STATUS_CLASS_TRANSPORT to SOUP_STATUS_CLASS_TRANSPORT_ERROR.
* Replaces the three previous soup_connection_new* functions and usesDan Winship2003-09-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libsoup/soup-connection.c (soup_connection_new): Replaces the three previous soup_connection_new* functions and uses gobject properties to set the destination and proxy uris. (class_init): set up two more signals, authenticate and reauthenticate. (soup_connection_send_request): virtualize (send_request): Default implementation * libsoup/soup-connection-ntlm.c: New SoupConnection subclass that also handles NTLM authentication. Includes all of the NTLM code formerly in soup-auth-ntlm.c. * libsoup/soup-auth-ntlm.[ch]: Gone. * libsoup/soup-auth.c: Remove NTLM refs * libsoup/soup-session.c (class_init): Add gobject properties for proxy, max_conns, use_ntlm. Change the "authenticate" and "reauthenticate" signal prototypes to not pass a SoupAuth (so they can be used for authenticating SoupConnectionNTLM as well, which doesn't use a SoupAuth). (soup_session_new): Renamed from soup_session_new_default. (soup_session_new_with_options): Replaces soup_session_new_with_proxy and soup_session_new_full. Takes gobject properties. (run_queue): Create a new connection of type SoupConnection or SoupConnectionNTLM depending on our "use_ntlm" property. Connect to its authenticate and reauthenticate signals. (connection_authenticate, connection_reauthenticate): proxy these signals. * libsoup/soup-address.c (update_address_from_entry): Fix a crasher when failing to resolve the address. * libsoup/soup-dns.c (check_hostent): Fix some "how was this working before" bugs. * libsoup/soup-message-client-io.c (soup_message_send_request): call soup_message_prepare() to clean up the existing response state. * libsoup/soup-message-io.c (io_error): Set the read_state to DONE when processing an OK EOF. * libsoup/soup-status.h (SoupStatusClass): fix the numbering of these so that SOUP_STATUS_CLASS_SUCCESS is 2, etc. * tests/auth-test.c (authenticate, reauthenticate): Update for new prototypes. (main): Use soup_session_new. * tests/get.c (main): Likewise. * tests/simple-proxy.c (main): Likewise.
* Renamed from soup-error.h, with types and defines renamed accordingly.Dan Winship2003-09-031-0/+98
* libsoup/soup-status.h: Renamed from soup-error.h, with types and defines renamed accordingly. * libsoup/soup-message.h (SoupMessage): Rename errorcode to status_code and errorphrase to reason_phrase. Remove errorclass. (SOUP_MESSAGE_IS_ERROR): Remove this. You can't classify redirects as being either "errors" or "not errors", so its semantics are guaranteed to be wrong sometimes. * libsoup/soup-message.c (soup_message_set_status, soup_message_set_status_full): Renamed * libsoup/soup-message-handlers.c (soup_message_add_status_code_handler, soup_message_add_status_class_handler): Rename. * libsoup/soup-session.c (soup_session_send_message): Make this return a status code rather than a status class. * libsoup/soup-message-private.h (SoupMessagePrivate): Remove some unrelated unused fields (retries, callback, user_data). * ...: Updates