summaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)AuthorFilesLines
2002-11-11Move the SoupAddress code from soup-socket.c and soup-socket-unix.c toDan Winship1-0/+15
* libsoup/soup-address.c: Move the SoupAddress code from soup-socket.c and soup-socket-unix.c to here. * libsoup/soup-socket.c: Move the remaining code from soup-socket-unix.c here. * libsoup/soup-socket-unix.c: Gone * tests/get.c: really really trivial test program * configure.in (AC_OUTPUT): * Makefile.am (SUBDIRS): add tests/
2002-11-05Split libsoup out of soup. ChangeLog.old contains the original soupDan Winship1-3907/+16
* Split libsoup out of soup. ChangeLog.old contains the original soup ChangeLog. * Makefile.am, etc: Fix things up to work with the new directory layout. Disable docs until we fix them. * autogen.sh: Use gnome-autogen.sh * configure.in: Require autoconf 2.53. Remove stuff that was only needed for httpd or wsdl code. Remove glib1 support. Bump version to 2.0. * libsoup/Makefile.am: Rename library to libsoup-2.0, put includes in ${includedir}/soup-2.0 * libsoup/*: Merge soup-0-7 back onto the trunk. Remove SOAP-specific stuff, Windows support, and other things that weren't being maintained. * soup-config.in, soupConf.sh: Kill these. We only support pkg-config now.
2002-05-31add 'typedef'Jacob Berkman1-0/+5
2002-05-31 Jacob Berkman <jacob@ximian.com> * src/libsoup/soup-message.h (SoupHandlerFilterType): add 'typedef'
2002-04-08Return copied auth context. doh.Alex Graveley1-0/+5
2002-04-08 Alex Graveley <alex@ximian.com> * src/libsoup/soup-server.c (auth_context_copy): Return copied auth context. doh.
2002-03-21Handle forced no-content response codes 204, 205, and 304. CheckAlex Graveley1-0/+7
2002-03-21 Alex Graveley <alex@ximian.com> * src/libsoup/soup-queue.c (soup_queue_read_headers_cb): Handle forced no-content response codes 204, 205, and 304. Check transfer-encoding before content-length to handle broken Traffic-Server proxies.
2002-03-21Return default handler if none exist. Unregister default handler beforeAlex Graveley1-0/+8
2002-03-20 Alex Graveley <alex@ximian.com> * src/libsoup/soup-server.c (soup_server_get_handler): Return default handler if none exist. Unregister default handler before resetting. (soup_server_register): Break out auth copying. (auth_context_copy): To here.
2002-03-21Issue callback directly as we might not be in the request processing loop.Alex Graveley1-0/+10
2002-03-20 Alex Graveley <alex@ximian.com> * src/libsoup/soup-queue.c (start_request): Issue callback directly as we might not be in the request processing loop. (proxy_connect): Ditto. (soup_queue_connect_cb): Ditto. (request_in_progress): Impl. Check request is in queue. (soup_idle_handle_new_requests): Use request_in_progress before assigning connect_tag.
2002-03-14Add stub so soup-apache modules an be run by soup-httpd.Alex Graveley1-0/+20
2002-03-13 Alex Graveley <alex@ximian.com> * src/soup-httpd/soup-httpd.c (ap_ctx_get): Add stub so soup-apache modules an be run by soup-httpd. (ap_get_server_port): Ditto. * src/soup-wsdl/wsdl-soap-skels.c (wsdl_emit_soap_skels_service): Generate the _get_server function, which returns a SoupServer representing the protocol/port defined in the WSDL file. * tests/stockquote2-mod-server.sh: Added. Runs soup-httpd using the libstockquote2.so module generated from tests/stockquote2-mod-server.c * tests/stockquote2-mod-server.c: Update for new API generated by soup-wsdl. * tests/mod-server-test.c (soup_server_init): Update for new soup_server_register API.
2002-03-13Check for transport error.Alex Graveley1-0/+8
2002-03-13 Alex Graveley <alex@ximian.com> * tests/stockquote2-client.c (callback): Check for transport error. * src/libsoup/soup-env.c (soup_env_get_header): Handle fully qualified header names in URL form.
2002-03-13#if 0 out generated code to use overridden URL in requests.Alex Graveley1-0/+11
2002-03-13 Alex Graveley <alex@ximian.com> * src/soup-wsdl/wsdl-soap-stubs.c (emit_sync_stub): #if 0 out generated code to use overridden URL in requests. * src/libsoup/soup-env.c (copy_header): Make static. * src/libsoup/soup-env.h: Fix macros. * tests/stockquote2-client.c: Update for new client API.
2002-03-13Update for new server API.Alex Graveley1-0/+7
2002-03-13 Alex Graveley <alex@ximian.com> * tests/stockquote2-server.c: Update for new server API. * tests/server-test.c (soup_server_init): Use auth_callback to validate requests to /hello.
2002-03-13Use soup_env_add_recv_header to add the new header to the incomingAlex Graveley1-0/+6
2002-03-13 Alex Graveley <alex@ximian.com> * src/libwsdl/wsdl-soap-parse.c (wsdl_soap_headers): Use soup_env_add_recv_header to add the new header to the incoming headers.
2002-03-12Loop on SSL_connect for some buggy versions of OpenSSL that still returnAlex Graveley1-0/+7
2002-03-12 Alex Graveley <alex@ximian.com> * src/soup-ssl-proxy/soup-openssl.c (soup_openssl_get_iochannel): Loop on SSL_connect for some buggy versions of OpenSSL that still return SSL_ERROR_WANT_READ/WRITE even for syncronous sockets. Thanks to Chris Toshok for finding this.
2002-03-12Bump development version to 0.7.99.Alex Graveley1-7/+549
2002-03-11 Alex Graveley <alex@ximian.com> * configure.in, src/libsoup/soup-private.h: Bump development version to 0.7.99. * Merge all changes from soup-0-6 branch.
2002-01-17Add a soup_message_get_http_version() function.Joe Shaw1-0/+5
2002-01-17 Joe Shaw <joe@ximian.com> * src/libsoup/soup-message.c: Add a soup_message_get_http_version() function.
2001-11-09Update to call renamed SoupHandlerEvents.Alex Graveley1-0/+21
2001-11-08 Alex Graveley <alex@ximian.com> * src/libsoup/soup-queue.c (soup_queue_read_headers_cb): (soup_queue_read_chunk_cb): (soup_queue_read_done_cb): Update to call renamed SoupHandlerEvents. * src/libsoup/soup-message.[ch]: Remove soup_message_get_request_header, soup_message_set_request_header, soup_message_get_response_header, soup_message_set_response_header, soup_message_add_error_code_handler, soup_message_add_error_class_handler, soup_message_add_header_handler. (redirect_handler): Update for new handler interface. (authorize_handler): Ditto. (timeout_handler): Impl. (soup_message_remove_handler): Impl. (soup_message_remove_handler_by_func): Impl. (soup_message_remove_handler_by_func_and_data): Impl. (soup_message_list_handlers): Impl.
2001-11-08Bump HEAD version to 0.6.99. Ditto.Alex Graveley1-0/+5
2001-11-08 Alex Graveley <alex@ximian.com> * configure.in: Bump HEAD version to 0.6.99. * src/libsoup/soup-private.h (VERSION): Ditto.
2001-11-08Version 0.6.0. Ditto.SOUP_0_6_0Alex Graveley1-0/+5
2001-11-08 Alex Graveley <alex@ximian.com> * configure.in: Version 0.6.0. * src/libsoup/soup-private.h (VERSION): Ditto.
2001-11-08Set debug default to "minimum", which turns off G_ENABLE_DEBUG (and theAlex Graveley1-0/+9
2001-11-08 Alex Graveley <alex@ximian.com> * configure.in (debug_default): Set debug default to "minimum", which turns off G_ENABLE_DEBUG (and the ptrace magic) by default. To turn back on for a debugging environment, use --enable-debug. * src/libsoup/soup-socket-unix.c (SOUP_PTRACE_DETACH): Wrap SOUP_PTRACE defines in check for G_ENABLE_DEBUG.
2001-11-08Add cleanup function to avoid leaving context/address references around.Alex Graveley1-0/+10
2001-11-08 Alex Graveley <alex@ximian.com> * src/libsoup/soup-socks.c (socks_data_free): Add cleanup function to avoid leaving context/address references around. (WSHORT): Use memcpy. (soup_socks_read): Pass len as sizeof (buf). (soup_socks_error): Add error handler just in case. (soup_connect_socks_proxy): Unref the io channel. (soup_lookup_dest_addr_cb): Ditto.
2001-11-07Mark the auth completed after sending the response string.Dan Winship1-0/+8
* src/libsoup/soup-auth.c (ntlm_init): Mark the auth completed after sending the response string. (ntlm_compare_func): A new NTLM auth doesn't invalidate an already-completed one. (Makes it not loop forever on a wrong password.)
2001-11-02Add death_tag to _SoupConnection.Alex Graveley1-0/+30
2001-11-02 Alex Graveley <alex@ximian.com> * src/libsoup/soup-private.h: Add death_tag to _SoupConnection. * src/libsoup/soup-socks.c (soup_connect_socks_proxy): Unref proxy context. (soup_socks_write): Ditto. * src/libsoup/soup-context.c (connection_free): Impl. (soup_prune_least_used_connection): Use connection_free(). (soup_connection_release): Ditto. (soup_prune_foreach): Simplify to not use custom data struct. Just use a SoupConnection ** to hold state. (connection_death): Impl. Free the connection if its not currently in use. (soup_context_connect_cb): Install a death handler for valid connections, so connection death can be caught and handled when no SoupMessage exists to handle it. Ref the context. (soup_context_get_connection): For reused connections, ref the connection's new context, unref the old one, and assign the connection's context to the new one. (soup_context_unref): Don't free connections, as there must be none left for all the contexts to have been removed. (soup_connection_get_context): Add a reference before returning context. * src/libsoup/soup-message.c (soup_message_set_context): Add precondition checks. (soup_message_get_context): Ditto.
2001-11-02Remove NSS-related code, as this is now moved to libsoup.Alex Graveley1-0/+5
2001-11-02 Alex Graveley <alex@ximian.com> * src/soup-ssl-proxy/soup-ssl-proxy.c: Remove NSS-related code, as this is now moved to libsoup.
2001-11-02Rename killme to cached in _SoupAddress.Alex Graveley1-0/+10
2001-11-02 Alex Graveley <alex@ximian.com> * src/libsoup/soup-private.h: Rename killme to cached in _SoupAddress. * src/libsoup/soup-socket-unix.c (soup_address_get_name_cb): Use g_strndup instead of g_new/strncpy. (soup_address_new_cb): Set cache status to CACHE_OK on success. (prune_zeroref_addresses_foreach): Use ia->cached. (soup_address_unref): Free addresses which are NOT_CACHED.
2001-11-02Remove old fixed FIXME.Alex Graveley1-0/+11
2001-11-02 Alex Graveley <alex@ximian.com> * src/libsoup/soup-context.c (soup_try_existing_connections): Remove old fixed FIXME. * src/libsoup/soup-socket-unix.c (prune_zeroref_addresses_timeout): Remove timeout if active_address_hash is null. (soup_address_unref): Only install timeout handler if the address has a name, otherwise just free.
2001-11-01Null terminate recv_buf before copying the data pointer.Alex Graveley1-0/+5
2001-11-01 Alex Graveley <alex@ximian.com> * src/libsoup/soup-transfer.c (issue_final_callback): Null terminate recv_buf before copying the data pointer.
2001-11-01Drop connection count of connect failed. (soup_context_get_connection):Alex Graveley1-0/+15
2001-10-31 Alex Graveley <alex@ximian.com> * src/libsoup/soup-context.c (soup_context_connect_cb): Drop connection count of connect failed. (soup_context_get_connection): Increment connection count before calling soup_socket_connect() to avoid connection limit being passed by many messages queued at the same time. * src/libsoup/soup-server.c (read_done_cb): Assign request's data buffer to message request buffer, not response. Caught by Tim Moloney. * src/libsoup/soup-transfer.c (soup_transfer_read_cb): Zero terminate alloca'd header string passed to headers_done_cb.
2001-10-31Fix the popt check so you can pass CPPFLAGS and LDFLAGS in in theDan Winship1-0/+5
* configure.in: Fix the popt check so you can pass CPPFLAGS and LDFLAGS in in the environment.
2001-10-30Remove the existing SoupAuth from the from the server's valid_auths hash.Alex Graveley1-0/+7
2001-10-30 Alex Graveley <alex@ximian.com> * src/libsoup/soup-auth.c (soup_auth_set_context): Remove the existing SoupAuth from the from the server's valid_auths hash. (soup_auth_new_from_header_list): Fix bug where auth header evaluation stopped after finding the first matching scheme.
2001-10-30Consider existing addresses with a zero refcount valid to return (with anAlex Graveley1-0/+16
2001-10-30 Alex Graveley <alex@ximian.com> * src/libsoup/soup-socket-unix.c (soup_address_new): Consider existing addresses with a zero refcount valid to return (with an added refcount). (prune_zeroref_addresses_foreach): Impl. (prune_zeroref_addresses_timeout): Impl. (soup_address_unref): Don't free zero ref addresses, instead make sure zeroref timeout handler is installed and install if not. Also move to here from soup-socket.c. * src/libsoup/soup-private.h: Add killme flag to soup_address. * src/libsoup/soup-socket-win.c (soup_address_unref): Move here from soup-socket.c.
2001-10-30Call soup_auth_fn if we don't have auth data in the URI, then callAlex Graveley1-0/+22
2001-10-29 Alex Graveley <alex@ximian.com> * src/libsoup/soup-message.c (authorize_handler): Call soup_auth_fn if we don't have auth data in the URI, then call soup_auth_initialize if the callback set authenticate data on the passed uri. * src/libsoup/soup-auth.h: Make type be SoupAuthType. * src/libsoup/soup-auth.c (soup_auth_initialize): Impl. To be called after SoupAuth creation to apply auth data to the SoupAuth. This allows us to parse the Authenticate headers to figure out which auth scheme and realm is being used, and pass this to the auth callback. * src/libsoup/soup-misc.c (soup_set_authorize_callback): Impl. * src/libsoup/soup-misc.h: Add SoupAuthType enum here. * src/libsoup/soup-server.h: Use SoupAuthType. Remove SoupServerAuthType.
2001-10-27Include soup-error.hAlex Graveley1-0/+14
2001-10-27 Alex Graveley <alex@ximian.com> * src/libsoup/soup-dav.c: Include soup-error.h * src/libsoup/soup-queue.c (soup_debug_print_headers): Use soup_message_foreach_header. * src/libsoup/soup-message.c (soup_message_new): Default to GET if method not supplied. (soup_message_add_header): Remove code to delete header if no value is supplied. (soup_message_foreach_remove_header): Impl. (soup_message_remove_header): Impl.
2001-10-26Use WUNTRACED, which should fix possible hang situation.Alex Graveley1-0/+9
2001-10-26 Alex Graveley <alex@ximian.com> * src/libsoup/soup-socket-unix.c (soup_address_new): Use WUNTRACED, which should fix possible hang situation. * src/libsoup/soup-transfer.c (issue_chunk_callback): Address bug where data buffer passed to chunk callback could be invalid due to appending a null. Just don't addend NULL for chunk callbacks.
2001-10-26Use soup_uri_set_auth().Alex Graveley1-0/+15
2001-10-26 Alex Graveley <alex@ximian.com> * src/libsoup/soup-message.c (redirect_handler): Use soup_uri_set_auth(). * src/libsoup/soup-uri.c (soup_uri_free): Don't use g_assert. (soup_uri_set_auth): Impl. * src/libsoup/soup-server.c (read_headers_cb): Use soup_message_set_context(). * src/libsoup/soup-message.c (soup_message_set_context): Impl. (soup_message_get_context): Impl. (redirect_handler): Use soup_message_set_context().
2001-10-26Handle redirects when source uri has auth data by copying auth to new url.Alex Graveley1-0/+5
2001-10-25 Alex Graveley <alex@ximian.com> * src/libsoup/soup-message.c (redirect_handler): Handle redirects when source uri has auth data by copying auth to new url.
2001-10-26Fixe bug where informational responses were treated as an unknownAlex Graveley1-0/+7
2001-10-25 Alex Graveley <alex@ximian.com> * src/libsoup/soup-queue.c (soup_queue_read_headers_cb): Fixe bug where informational responses were treated as an unknown encoding, causing the actual response to be considered part of the informational response body.
2001-10-25Fix up the networking library checks to work on Solaris. Check forDan Winship1-0/+8
* configure.in: Fix up the networking library checks to work on Solaris. Check for inet_pton. (Solaris doesn't have inet_aton.) * src/libsoup/soup-socket-unix.c (soup_address_new): Use inet_pton instead of inet_aton if available.
2001-10-22Make sure we handle G_IO_IN before we handle G_IO_HUP so we don't loseJoe Shaw1-0/+7
2001-10-22 Joe Shaw <joe@ximian.com> * src/soup-ssl-proxy/soup-ssl-proxy.c (soup_ssl_proxy_readwrite): Make sure we handle G_IO_IN before we handle G_IO_HUP so we don't lose data on the pipe, as you can receive both at the same time. Ian Peters actually found this, but I am his commit monkey.
2001-10-22use new error apiJP Rosevear1-0/+10
2001-10-22 JP Rosevear <jpr@ximian.com> * src/libsoup/soup-dav.c (soup_dav_response_new): use new error api * src/libsoup/soup-queue.c (soup_parse_headers): ditto * src/libsoup/soup-message.c (soup_message_set_error_full): ditto (soup_message_set_error): ditto
2001-10-21Reorganize.Alex Graveley1-2/+15
2001-10-21 Alex Graveley <alex@ximian.com> * src/libsoup/soup-message.h: Reorganize. * src/libsoup/Makefile.am (libsoupinclude_HEADERS): Add soup-error.h. (libsoup_la_SOURCES): Add soup-error.c. * src/libsoup/soup-error.[ch]: Move SoupKnownErrorCode and SoupErrorClass defines to here. Move soup_get_error_phrase and soup_get_error_class here, and rename to soup_error_get_phrase and soup_error_get_class.
2001-10-19This is the first attempt at authentication inheritence, it still needsAlex Graveley1-0/+42
2001-10-19 Alex Graveley <alex@ximian.com> This is the first attempt at authentication inheritence, it still needs some work. Auth headers are always sent no matter what, auth realms are not respected, and auth data in the uri is ignored unless an existing auth attempt fails. * src/libsoup/soup-auth.c (digest_parse_func): Compute a1 hash "user:realm:passwd:nonce:cnonce" here, to cut down on per-request overhead. Accept a SoupUri from which to get auth info. (basic_parse_func): Base64 encode user:passwd here for same reason. Accept a SoupUri for getting auth info. (compute_response): Get uri path from message instead of SoupAuth. (digest_auth_func): Ditto. (soup_auth_lookup): Impl. Given a context, lookup the SoupAuth of the nearest parent directory. (soup_auth_set_context): Impl. Register a SoupAuth to be used for requests to the context's path and subdirectories. * src/libsoup/soup-auth.h: Move define of SoupAuth here, in preparation for making public eventually. * src/libsoup/soup-queue.c (soup_encode_http_auth): Use soup_auth_lookup (). (soup_get_request_header): Don't check the request's uri for auth info, as a parent context may have a valid registered SoupAuth. * src/libsoup/soup-message.c (authorize_handler): Use soup_auth_lookup() to find last (failing) SoupAuth. Use soup_auth_set_context() to register the created SoupAuth for this context. * src/libsoup/soup-message.h: Explicitly define values for soup transport-level errorcodes, just because. * src/libsoup/soup-context.c (soup_context_unref): When freeing the SoupHost parent of this context, free all associated SoupAuths. * src/libsoup/soup-private.h: Remove auth pointer from context, add hashtable of valid auths to SoupAuth.
2001-10-18Set encoding out param appropriately. Ditto.Alex Graveley1-0/+18
2001-10-18 Alex Graveley <alex@ximian.com> * src/libsoup/soup-queue.c (soup_queue_read_headers_cb): Set encoding out param appropriately. * src/libsoup/soup-server.c (soup_httpd_read_headers_cb): Ditto. * src/libsoup/soup-transfer.h: Add SoupTransferEncoding enum. * src/libsoup/soup-transfer.c (soup_transfer_read_error_cb): Handle unknown encoding by issuing the read_done callback when the connection is closed. (issue_chunk_callback): Pass in a cancelled arg to simplify code. (read_unknown): Impl. Same as read_content_length () except never return TRUE. (soup_transfer_read_cb): Make headers_done_cb take an encoding out parameter to avoid magic values in content_length. Switch on encoding to see if read completed. Use issue_final_callback ().
2001-10-18the array length assertion should be >= rather than less than.JP Rosevear1-0/+5
2001-10-18 JP Rosevear <jpr@ximian.com> * src/libsoup/soup-transfer.c (remove_block_at_index): the array length assertion should be >= rather than less than.
2001-10-17Don't call chunk callback if there is no new data.Alex Graveley1-0/+5
2001-10-17 Alex Graveley <alex@ximian.com> * src/libsoup/soup-transfer.c (read_content_length): Don't call chunk callback if there is no new data.
2001-10-17Add some bounds checking.Alex Graveley1-0/+8
2001-10-17 Alex Graveley <alex@ximian.com> * src/libsoup/soup-transfer.c (remove_block_at_index): Add some bounds checking. * src/libsoup/soup-queue.c (soup_queue_connect_cb): Handle iochannel creation failure which can happen when using SSL.
2001-10-16Impl. (remove_block_at_index): Impl. (decode_chunk): Simplify usingAlex Graveley1-0/+8
2001-10-16 Alex Graveley <alex@ximian.com> * src/libsoup/soup-transfer.c (decode_hex): Impl. (remove_block_at_index): Impl. (decode_chunk): Simplify using utility functions. (soup_transfer_read_cb): Use remove_block_at_index. (read_chunk): Ditto.
2001-10-16A NULL passwd is perfectly valid, so we want to avoid crashing if that isJoe Shaw1-0/+5
2001-10-16 Joe Shaw <joe@ximian.com> * src/libsoup/soup-auth.c (compute_response): A NULL passwd is perfectly valid, so we want to avoid crashing if that is the case.
2001-10-16Fix nasty chunked encoding bug when the message is set to truncate chunks.Alex Graveley1-0/+14
2001-10-16 Alex Graveley <alex@ximian.com> * src/libsoup/soup-transfer.c (decode_chunk): Fix nasty chunked encoding bug when the message is set to truncate chunks. Code reorg to be a lot cleaner. * src/libsoup/soup-ntlm.c: Move alloca #define-foo to: * src/libsoup/soup-private.h: Here. * src/libsoup/soup-uri.c (soup_uri_to_string): Handle the case where path does not begin with a '/'. * src/libsoup/soup-server.c (soup_server_free): Use foreach_remove.
2001-10-09Assign source connection correctly.Alex Graveley1-0/+5
2001-10-09 Alex Graveley <alex@ximian.com> * src/libsoup/soup-socks.c (soup_connect_socks_proxy): Assign source connection correctly.
2001-10-09don't call __uri_exists as __is_collection should check this.Alex Graveley1-0/+5
2001-10-09 Alex Graveley <alex@ximian.com> * src/libsoup/soup-dav-server.c (parent_exists): don't call __uri_exists as __is_collection should check this.