Fri Jul 28 13:32:37 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h: Bumped version to 0.4.2.

Fri Jul 28 13:31:38 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (send_request): Fix sending request body after
	getting 100-continue response.

Fri Jul 28 11:26:47 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h: Bumped version to 0.4.1.

Fri Jul 28 10:32:34 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h: Bumped version to 0.4.0.

Fri Jul 28 10:28:21 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.[ch] (http_post): New function, from Sander Alberink
	<sander.alberink@cmg.nl>.

Thu Jul 27 18:55:49 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c (neon_debug): No conditional compilation for
	function body: compile it all regardless of whether debugging is
	enabled or not, to allow applications to be debugged regardless of
	whether debugging is compiled into the library or not.

Thu Jul 27 16:59:26 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (clength_hdr_handler): Cast off_t to long int for
	printing.

Tue Jul 25 18:14:15 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (read_message_header): Iterate over header
	handler list before placing zero-terminator at ':': if a handler
	has a NULL name field, pass it the entire header value.

Tue Jul 25 18:00:49 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_get_request_headers): New function.

Mon Jul 24 16:55:29 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h: Bumped version to 0.3.9.

Mon Jul 24 16:54:33 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.h: Use 'off_t' in http_content_range.

	* http_basic.c (http_get_range): Cast range values to (long int)
	to prevent compiler warnings.

Thu Jul 20 20:03:30 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.[ch], socket.c, http_basic.c: Include nsocket.h not
	socket.h.

Thu Jul 20 20:02:20 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c (version_string): Indicate which XML parser is
	supported.

Thu Jul 20 20:01:12 2000  Joe Orton  <joe@orton.demon.co.uk>

	* nsocket.h: Renamed from socket.h.

Thu Jul 20 15:02:35 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c, socket.c, http_request.c: SSL_ENABLE renamaed to
	ENABLE_SSL.

Thu Jul 20 12:20:13 2000  Joe Orton  <joe@orton.demon.co.uk>

	* md5.c, http_auth.h: Include neon_md5.h.

Thu Jul 20 12:19:23 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_md5.h: Renamed from md5.h.

Wed Jul 19 22:33:46 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (dav_simple_request): Don't leak ctype.value.

Wed Jul 19 22:32:03 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c (check_context): Accept unknown elements.

Wed Jul 19 22:31:10 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_locks.c (dav_lock_iterate): Allow passing func as NULL.

Wed Jul 19 22:26:13 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.h (SOCKET_READ_TIMEOUT): Increase to 60.

Wed Jul 19 22:25:51 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_locks.h: Include http_request.h.

Mon Jul 17 11:41:16 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dates.c (asctime_parse, rfc1036_parse): Actually pass the string
	to sscanf (thanks to lclint).  (rfc1123_date): Check for gmtime()
	returning NULL.

Mon Jul 17 09:16:43 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h: Bumped version to 0.3.1.

Mon Jul 17 09:07:58 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_locks.c: Include limits.h: thanks to Paul D'Anna.

Sun Jul 16 18:47:15 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h: Bumped version to 0.3.0.

Sun Jul 16 16:44:25 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_i18n.c (neon_i18n_init) [ENABLE_NLS && NEON_IS_LIBRARY]:
	New compilation conditions.

Sun Jul 16 16:41:12 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_i18n.c: New file.

Sun Jul 16 16:15:02 2000  Joe Orton  <joe@orton.demon.co.uk>

	* string_utils.c (sbuffer_*): Change to assert postcondition
	(buf->used == strlen(buf->data) + 1).  (sbuffer_append): Fix
	brokenness.

Sun Jul 16 16:11:05 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (sock_transfer): Increase sum length written correctly.

Sun Jul 16 16:10:23 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_get_hook_private): New function.

Sun Jul 16 16:07:11 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c (find_handler): Call validate_cb for any handler which
	recognizes the element.  Allow return codes
	HIP_XML_{VALID,INVALID,DECLINE} from validate_cb.  If DECLINE is
	returned, continue searching handlers until one returns
	(IN)VALID.  (start_element): Don't call validate_cb.

	* hip_xml.c (start_element, end_element): In collect mode, don't
	print namespace prefix if present.

Sun Jul 16 15:30:19 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_locks.[ch]: New file, code mainly taken from cadaver and
	adapted for neon HTTP request/response handling.

Sun Jul 16 15:28:25 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (copy_or_move, dav_move, dav_copy): Pass overwrite
	as parameter.

Sun Jul 16 15:26:24 2000  Joe Orton  <joe@orton.demon.co.uk>

	* uri.c (uri_compare): Fixed to only return equal if *shorter*
	string has no trailing slash.

Sat Jul 15 20:14:07 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c (dav_207_get_current_response,
	dav_207_get_current_propstat): New functions.

	* dav_props.c (dav_propfind_get_current_resource): Implement using
	dav_207_get_current_response.

Sat Jul 15 17:36:37 2000  Joe Orton  <joe@orton.demon.co.uk>

	* xalloc.c (xcalloc): New function.

Sat Jul 15 14:11:14 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.[ch] and elsewhere: Replace 'class' field of
	http_status with '_class' to be C++-safe. (patch from Tom
	Bednarz).

Thu Jul  6 18:48:52 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (copy_or_move): Escape the destination URI.

Thu Jul  6 18:45:51 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c (end_response): Added description parameter.

Thu Jul  6 18:43:14 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.[ch] (end_element): Fix handling of responsedescription.
	Add "description" parameter to dav_207_end_response callback, and
	pass the contents of responsedescription.

	* dav_basic.c (handle_error, end_response, end_propstat): Pass
	description and add to error string when present.

Tue Jul  4 11:43:03 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c, dav_props.c, http_basic.c: Use
	http_{add,print}_request_header rather than
	http_get_request_header.

Tue Jul  4 11:41:00 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.[ch] (http_add_request_header,
	http_print_request_header): New functions.
	(http_get_request_header): Removed function.

Mon Jul  3 21:50:40 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c: Add basic support for TLS upgrade (RFC2817).
	(http_set_request_secure_upgrade, http_set_accept_secure_upgrade):
	New functions.  (send_request): If upgrade is requested, and a 101
	response is received, negotiate the TLS connection.
	(add_fixed_headers): Add Upgrade header if necessary.

Mon Jul  3 21:46:00 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (send_request): Don't go into an infinite loop.
	(read_message_header): Simplyify checking for end-of-line.

Tue Jun 13 00:29:42 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_session_proxy, http_session_server): Allow
	calling >1 time per session, to switch servers.  (send_request):
	Only retry sending request once.

Mon Jun 12 21:50:41 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_add_hooks): New function.

Mon Jun 12 21:37:24 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_cookies.[ch]: Added basic cookies support.

Mon Jun 12 21:33:33 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (sock_create_ssl_context, sock_destroy_ssl_context,
	sock_disable_tlsv1, sock_disable_sslv2, sock_disable_sslv3,
	sock_make_secure): Added nssl_context handling.

Mon Jun 12 21:29:52 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_request_dispatch, http_request_create,
	http_request_destroy, http_set_request_body_buffer,
	http_set_request_body_stream): Added hook support.

Mon Jun 12 21:04:00 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_set_secure): Store an nssl_context.
	(open_connection): Give the nssl_context.

Sun Jun 11 16:37:52 2000  Joe Orton  <joe@orton.demon.co.uk>

	* sslcerts.c: Import of SSL support from mutt, relicensed under
	the LGPL for use in neon by the author, Tommi Komulainen
	<Tommi.Komulainen@iki.fi>.

Sun Jun 11 11:30:16 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (set_sockerr): Updated to use sock_get_error.

Sun Jun 11 11:29:29 2000  Joe Orton  <joe@orton.demon.co.uk>

	* uri.c (uri_parse): Allow scheme to be omitted.

Fri Jun  9 20:39:24 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (sock_get_error): New function.  (sock_*): Set
	sock->error and SOCK_ERROR on error.

Mon May 29 16:32:46 2000  Joe Orton  <joe@orton.demon.co.uk>

	* uri.c (uri_abspath_escape): Allocate the exact amount of memory
	needed.

Mon May 29 15:53:33 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (dav_simple_request): Correct invalid XML logic.

Mon May 29 15:52:08 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (create_sock, sock_accept, sock_get_fd): New
	functions.  (sock_connect_u): Use create_sock.

Sun May 28 21:00:37 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c (neon_version_string): New function.

Sun May 28 19:36:45 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (sock_connect_u): Zero out allocated nsocket object.

Thu May 25 01:27:04 2000  Joe Orton  <joe@orton.demon.co.uk>

	* *.h: Include other neon headers with <braces>.

Thu May 25 01:02:12 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c: Include stdlib.h for 'free'.

Wed May 24 20:15:08 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (read_message_header): Return HTTP_RETRY if more
	headers to read, HTTP_OK on end-of-headers.
	(read_response_headers): Changed accordingly.

Wed May 24 19:56:29 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (send_request_body): Return a SOCK_* code.
	(send_request): Re-send request if socket has been closed (due to
	persistent connection timeout).

Wed May 24 19:00:01 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c (find_element): Fix unknown element handling.

Tue May 23 19:12:26 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c (propfind): Destroy the request body sbuffer after
	use.

Tue May 23 15:43:42 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (sock_make_secure) [SSL_ENABLE]: Conditionally compile
	SSL code. [!SSL_ENABLE]: Return failure.  (sock_close)
	[SSL_ENABLE]: Conditionally compile SSL code.

Tue May 23 15:37:53 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_session_create): Renamed from
	http_session_init.  (http_session_destroy): Renamed frmo
	http_session_finish.

Sun May 21 23:50:58 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (lookup_host): Use sock_name_lookup.

Sun May 21 23:40:39 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_request_create): Allow passing NULL uri
	(internal use only).  (http_set_secure): New function.
	(read_response_block, read_message_headers): Redone for new socket
	API.  (build_request): Moved http_auth_new_request calls here
	(from http_request_dispatch).  (send_request): Always call
	open_connection before sending the request.
	(read_message_header, read_response_headers): Looser check for
	empty line.  (normalize_response_length): Set response body length
	to zero on 2xx class response whilst in CONNECT, if no other
	response body length is given.  (http_request_dispatch): Don't
	close the connection on a HTTP/1.0 2xx class response after a
	CONNECT request.  (proxy_tunnel): New function.
	(open_connection): Use an SSL connection where appropriate.  Use
	proxy_tunnel for tunnelling through a proxy.

Sun May 21 01:35:40 2000  Joe Orton  <joe@orton.demon.co.uk>

	* src/socket.c: Added 'nsocket' ADT for handling sockets.
	(sock_*): All changed to take 'nsocket *' argument rather than
	integer file descriptor.  Added 'sock_secure_details' to
	sock_status enum.  (sock_make_secure, sock_init): New function.
	(sock_peek): Renamed from sock_recv.  (send_file_*, recv_file_*):
	Removed functions.  (sock_name_lookup): Renamed from host_lookup.
	(sock_service_lookup): Renamed from get_tcp_port.  (sock_block,
	sock_read, sock_fullwrite, sock_peek, sock_readline): Added SSL
	support.  (sock_transfer): Use sock_fullwrite and sock_read.

Sun May 21 01:25:03 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_request_destroy): Free header handlers and
	body readers.

Sun May 21 01:24:30 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.h: Removed obsolte got_property callback type.

Sun May 21 01:23:59 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c (propfind): Free handler object after use.

Sun May 21 01:23:12 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c (dav_207_destroy): Don't try to free the 'response'
	field.

Sat May 20 21:45:32 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c: Changed 'te' enum of struct http_response to
	'is_chunked' boolean.

Sun May 14 01:00:42 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c (propfind): Return error on parse error.

Sun May 14 00:40:50 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h (NEON_VERSION): Bumped to 0.2.0.

Sat May 13 23:31:28 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_defs.h (BEGIN_NEON_DECLS, END_NEON_DECLS): Added C++ safety
	macros.

	* *.h: Surround with C++ safety macros.

Sat May 13 22:36:06 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c (hip_xml_destroy): Free handlers.

Sat May 13 21:12:14 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c (hip_xml_valid): Reversed return value.

Sat May 13 21:11:17 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c: Renamed http_debug_mask to neon_debug_mask,
	similarly neon_debug_stream.  (neon_debug_init): Renamed from
	http_debug_init.

Sat May 13 19:24:40 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c: Initialize http_debug_mask to zero.
	(http_debug_init): New function.

	* http_utils.h: Fixed #ifdef DEBUGGING. Only define relevant
	DEBUG_* constants.
	
Sat May 13 19:23:34 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_config.h: New file.

	* http_request.c: Include neon_config.h for NEON_VERSION.

Sat May 13 18:28:05 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c (dav_propfind_create): Create a hip_xml_parser, a
	207 parser, register start+end response handlers with 207 layer.
	(propfind): Fix allprop (Michael Sobolev).

	* dav_basic.c (dav_simple_request): Create and destroy
	hip_xml_parser and 207 parser appropriately.

Sat May 13 18:24:49 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c: Now takes an externally-declared hip_xml parser
	pointer. (dav_207_create, dav_207_destroy): New functions.
	(dav_207_init, dav_207_init_with_handler, dav_207_parse,
	dav_207_error, dav_207_finish): Removed functions.

Sat May 13 17:32:45 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.[ch]: Rewritten to use opaque hip_xml_parser pointer.
	struct hip_xml_handler and struct hip_xml_state removed from
	external interface. struct hip_xml_elm * passed to startelm_cb and
	endelm_cb. (hip_xml_add_handler, hip_xml_valid, hip_xml_create,
	hip_xml_destroy, hip_xml_set_error, hip_xml_get_error): New
	functions.  (hip_xml_init, hip_xml_destroy): Removed functions.

Sat May 13 13:43:56 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon.h: Removed.

Sat May 13 13:42:20 2000  Joe Orton  <joe@orton.demon.co.uk>

	* string_utils.h: Don't include config.h. (CONCAT*): Don't use
	xmalloc, use malloc and abort manually.

Sat May 13 13:32:46 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.h, dates.h, http_basic.h: Don't include config.h

Sat May 13 13:31:37 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.[ch], dav_207.c: Use HIP_ERR_SIZE for size of parser
	error string.

Sat May 13 13:30:40 2000  Joe Orton  <joe@orton.demon.co.uk>

	* Makefile.incl: Use obj_ext for object file extension.

Thu May 11 18:21:53 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon.h: Bumped version to 0.1.1.

Thu May 11 18:16:08 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (get_to_fd): Fix short writes.

Wed May 10 19:22:01 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon.h: Bumped version to 0.1.0.

Wed May 10 17:46:48 2000  Joe Orton  <joe@orton.demon.co.uk>

	* uri.c (uri_parse, uri_free): New functions.

Wed May 10 17:43:37 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (get_to_fd, http_get): Set error appropriately if
	fwrite() fails.

Wed May 10 14:25:38 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c (http_debug): New function.

Wed May 10 14:25:08 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (get_callback): Call sock_call_progress.

Wed May 10 14:24:20 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (sock_call_progress): New function.  (many places): Use
	it.

Wed May 10 14:22:48 2000  Joe Orton  <joe@orton.demon.co.uk>

	* uri.c (uri_has_trailing_slash): Moved from being inline.

Tue May  9 23:34:25 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c: Use handler as userdata for 207 callbacks, unified
	handler and context structures.  (start_prop, end_prop,
	start_propelm, end_propelm): Removed functions.
	(dav_propfind_get_current_resource): New function.

Tue May  9 23:29:44 2000  Joe Orton  <joe@orton.demon.co.uk>

	* xalloc.[ch]: New files.

Tue May  9 23:05:47 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.[ch]: Removed property and property element callbacks.

Tue May  9 23:01:00 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c: Use separate name/namespace for element names.
	(dav_207_init_with_handler): New function.  (end_element):
	Unescape URI in href element.

Tue May  9 19:54:07 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c (dav_propfind_allprop, dav_propfind_named, propfind,
	start_response, end_response, start_prop, end_prop, start_propelm,
	end_propelm): New functions; PROPFIND support.

Tue May  9 19:45:17 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (build_request): Renamed from make_request.

Tue May  9 19:36:01 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.[ch]: Added sock_block_reader.

Tue May  9 15:52:56 2000  Joe Orton  <joe@orton.demon.co.uk>

	* uri.c (uri_childof): Return false when parent is the same length
	as child.

Sun May  7 15:07:49 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c: Separated element namespace/names.

Tue May  2 16:40:59 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.[ch]: Added HIP_XML_UTF8DECODE flag.

Tue May  2 16:16:57 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.[ch]: Separate element name and namespace.

Mon May  1 00:21:24 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c (dav_accept_207): Moved function from dav_basic.c.

	* dav_basic.c (dav_accept_207, dav_parse_xml_block): Removed
	functions.

Sun Apr 30 22:47:47 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.[ch]: Renamed dav_proppatch_item to
	dav_proppatch_operation.

Sun Apr 30 22:45:04 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c (start_element): Clearer error message.

Sun Apr 30 19:12:07 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (http_content_type_handler, dav_hdr_handler): New
	functions.  (http_options): Handle DAV header.

Sun Apr 30 18:08:53 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_props.c (dav_proppatch): New function.

Sun Apr 30 18:05:55 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (handle_error): New function.  (end_response,
	end_propstat): Use it.  (dav_simple_request): Don't return the 207
	error string if we get all 2xx class status elements.

Sun Apr 30 16:56:41 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (dav_add_depth_header): New function.

Sun Apr 30 14:49:06 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c (start_element): Unknown element is only a property if
	the parent is DAV:propstat.

Sun Apr 30 14:43:28 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (end_response, end_propstat): Only write error line
	if we have status information and the status is not a 424.

Sun Apr 30 14:28:23 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.h: Added DAV_DEPTH_*.

Sun Apr 30 12:47:50 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c (check_context): Allow (and ignore) unknown elements
	anywhere other than as the root.

Sun Apr 30 12:35:39 2000  Joe Orton  <joe@orton.demon.co.uk>

	* string_utils.h (ASC2HEX, HEX2ASC): New macros.

Sun Apr 30 12:34:37 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_auth.c [STANDALONE]: Removed. (everywhere): Switch to using
	md5_to_ascii rather than md5_hexify.

Sun Apr 30 12:32:35 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (read_response_block): Fixed to return errors
	properly and block length to parameter.  (read_response_body):
	Changed accordingly.

Sun Apr 30 12:29:45 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c (friendly_name): New function, was PRETTY_NAME macro.
	(start_element, end_element): Fix COLLECT handling.
	(hip_xml_parse): Only write parse error if the document has not
	already been marked invalid.

Sun Apr 30 12:28:36 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_basic.c (dav_simple_request): Rewritten for new 207
	interface.  (start_response, end_response, end_propstat): New
	functions.

Sun Apr 30 12:27:52 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c (dav_207_error): Return the parser error.

Sat Apr 29 14:46:48 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c (sock_register_progress, sock_register_notify): New
	functions.  (everywhere): Use progress + notify callbacks rather
	than fe_*.

Sat Apr 29 14:15:23 2000  Joe Orton  <joe@orton.demon.co.uk>

	* string_utils.c (md5_to_ascii, ascii_to_md5): New functions.

Sat Apr 29 13:55:39 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c (hip_xml_init): abort() on out-of-memory.

Sat Apr 29 12:56:11 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon_i18n.h: New file.

Sat Apr 29 12:55:24 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.[ch]: Re-implemented with sensible interface.

Fri Apr 28 14:56:01 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_auth.c (http_auth_request_header): Renamed from
	http_auth_request.

	* http_request.c (make_request): As above.

Thu Apr 13 11:52:14 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (http_put): Switched URI and stream arguments.

Thu Apr 13 09:51:21 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c: Added user_agent field to session structure.
	(http_set_useragent): New function.  (add_fixed_headers): Only set
	user-agent if sess->user_agent is set.

Thu Apr 13 09:49:32 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (lookup_host): New function, split from
	set_hostinfo.  (set_hostinfo): Doesn't perform DNS lookup.
	(http_session_server): Don't do a DNS lookup if we have a proxy.

Wed Apr 12 22:32:21 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_request_dispatch, http_request_create):
	Store auth header values in local variables rather than request
	structure.  (http_request_create): Don't leak everything on error.
	Handle http_auth_challenge return value.

Wed Apr 12 22:30:06 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (http_options): Pass server capabilites object,
	parse Server header to detect Apache/1.3.6 and before, indicating
	broken 100-continue support.  (server_hdr_handler): New function.

Mon Apr 10 17:42:07 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.c: Use 'int' for return values.

Mon Apr 10 17:41:40 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_auth.c (is_in_domain): Dummy implementation.

Mon Apr 10 17:40:21 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c: Handle read() returning 0 when it shouldn't.
	i18n'ized error messages.

Mon Apr 10 14:45:09 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dates.[ch], md5.[ch], base64.[ch]: Imported date handling
	utilities, MD5 checksum functions, and text->base64 converter.

Mon Apr 10 14:44:08 2000  Joe Orton  <joe@orton.demon.co.uk>

	* Makefile.incl: Dependancies updated for socket.[ch].

Mon Apr 10 14:43:36 2000  Joe Orton  <joe@orton.demon.co.uk>

	* dav_207.c: Replaced malloc() calls with xmalloc() calls.

Mon Apr 10 14:42:35 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_auth.c, uri.c, string_utils.h: Replaced malloc() calls with
	xmalloc() calls.

Mon Apr 10 14:41:40 2000  Joe Orton  <joe@orton.demon.co.uk>

	* socket.[ch]: Imported socket handling utilities.

Mon Apr 10 14:36:03 2000  Joe Orton  <joe@orton.demon.co.uk>

	* string_utils.h (CONCAT*): Use xmalloc.

Mon Apr 10 13:52:17 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (set_sockerr): Added handling for socket errors.

Sat Apr  8 13:49:07 2000  Joe Orton  <joe@orton.demon.co.uk>

	* string_utils.[ch]: Imported string utilites.

Sat Apr  8 00:26:06 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_set_persist, http_set_expect100): New
	functions.

Sat Apr  8 00:25:37 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_basic.c (http_options): New function.

Fri Apr  7 13:01:35 2000  Joe Orton  <joe@orton.demon.co.uk>

	* neon.h: New file.

Fri Apr  7 12:59:40 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (normalize_response_length, read_response_body):
	New functions.  (http_add_response_body_reader): Take a callback
	to determine whether the body reader wants to read the response
	body.

Fri Apr  7 11:46:41 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (http_set_server_auth, http_set_proxy_auth): New
	functions.  (give_creds): Use supplied callbacks for
	authentication.  (get_request_bodysize): Send Content-Length: 0 if
	no entity-body is being sent with a request.  (te_hdr_handler,
	connection_hdr_handler): New functions.  (make_request): Don't use
	Expect: 100-continue if server is not HTTP/1.1 compliant.
	(read_message_header): Only read until HTTP_MAXIMUM_HEADER_LENGTH
	bytes of header have been read.  (read_response_headers): No
	hard-coded header handling.  (http_request_create): Set
	req->method_is_head here.

Thu Apr  6 14:39:28 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.c [HIP_XML_DECODE_UTF8] (decode_utf8_double): New
	function.  (char_data) [HIP_XML_DECODE_UTF8]: Decode UTF-8.

Tue Mar 28 13:54:51 2000  Joe Orton  <joe@orton.demon.co.uk>

	* Makefile.incl: Imported makefile fragment.

Tue Mar 28 13:54:09 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.[ch] (http_get_error): New function.

Thu Mar 23 18:48:42 2000  Joe Orton  <joe@orton.demon.co.uk>

	* hip_xml.[ch]: Imported generic XML parsing layer.

	* dav_207.[ch]: Imported generic WebDAV 207 response handling.
	
	* dav_basic.[ch]: Imported/implemented DAV response handling and
	basic Class 1 namespace methods.

Thu Mar 23 18:46:14 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.c (add_hooks, run_hooks, http_add_destroy_hook):
	Adding hooks support.  (add_fixed_headers): Send TE token in
	Connection header. Only send Keep-Alive header & token to pre-1.1
	origin servers (i.e., not proxies).

Thu Mar 23 12:49:01 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_auth.[ch], uri.[ch]: Imported HTTP authentication and URI
	handling modules.

Thu Mar 23 12:47:05 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_utils.c: Imported HTTP utility functions.

Thu Mar 23 12:44:38 2000  Joe Orton  <joe@orton.demon.co.uk>

	* http_request.[ch]: Implemented modular HTTP request handling.

	* http_basic.[ch]: Implemented basic HTTP methods GET, PUT, and
	PUT with If-Unmodified.

