platform/upstream/libsoup.git
23 years agoOnly mark which custom headers are used, and directly g_string_sprintfa()
Alex Graveley [Fri, 1 Jun 2001 18:08:08 +0000 (18:08 +0000)]
Only mark which custom headers are used, and directly g_string_sprintfa()

2001-06-01  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-queue.c (soup_check_used_headers): Only mark
which custom headers are used, and directly g_string_sprintfa()
the custom header.
(soup_get_request_header): Soptimize header writing.

23 years agoAdded.
Alex Graveley [Fri, 1 Jun 2001 12:55:13 +0000 (12:55 +0000)]
Added.

2001-06-01  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-message.c (soup_message_set_method):
(soup_message_add_header_handler):
(soup_message_add_response_code_handler):
(soup_message_add_body_handler): Added.

* src/soup-core/soup-socket.c (soup_address_get_name_sync): Allow
syncronous reverse name lookups.

* TODO (TODO): Updated.

* src/soup-core/Makefile.am (bin_PROGRAMS): Added soup-httpd.

* src/soup-core/soup-httpd.c: Added. Simple httpd server
implementation. This shares a *lot* of code with soup-queue.c, so
some hardc0re refactoring action is planned.

* configure.in (GMODULE_LIBS): Added.

23 years agoPut the generated code into the build directory. Run soup-config through
Dick Porter [Tue, 29 May 2001 10:40:18 +0000 (10:40 +0000)]
Put the generated code into the build directory. Run soup-config through

2001-05-29  Dick Porter  <dick@ximian.com>

* tests/Makefile.am: Put the generated code into the build
directory.  Run soup-config through /bin/sh to work around a
permissions problem.

23 years agoDocumentation
Dick Porter [Fri, 25 May 2001 21:36:34 +0000 (21:36 +0000)]
Documentation

2001-05-25  Dick Porter  <dick@ximian.com>

* Documentation

23 years agoNo need to free priv->recv_buf as it is now done in
Alex Graveley [Fri, 25 May 2001 05:36:36 +0000 (05:36 +0000)]
No need to free priv->recv_buf as it is now done in

2001-05-25  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-queue.c (soup_message_queue): No need to free
priv->recv_buf as it is now done in soup_message_cleanup().
(soup_message_queue): Free response_header keys and values before
destroying the hash table.

* src/soup-core/soup-message.c (soup_message_free): Don't free
priv->recv_buf here.
(soup_message_cleanup): Free priv->recv_buf here instead.

* src/soup-core/soup-queue.c (soup_finish_read): Since we now
g_strdup() all headers, and we already g_memdup the actual body
buffer, free the temporary recv_buf.

* src/soup-core/soup-headers.c (soup_headers_parse_response):
g_strdup() the response reason phrase.

23 years agoUpdate Licensing section for soup-ssl-proxy.
Alex Graveley [Thu, 24 May 2001 23:33:32 +0000 (23:33 +0000)]
Update Licensing section for soup-ssl-proxy.

2001-05-24  Alex Graveley  <alex@ximian.com>

* README: Update Licensing section for soup-ssl-proxy.

23 years agoinclude string.h for strlen and strcmp prototypes. include string.h for
Larry Ewing [Thu, 24 May 2001 20:18:47 +0000 (20:18 +0000)]
include string.h for strlen and strcmp prototypes. include string.h for

001-05-24  Larry Ewing  <lewing@ximian.com>

* src/soup-wsdl-runtime/wsdl-soap-parse.c: include string.h for
strlen and strcmp prototypes.
* src/soup-wsdl-runtime/wsdl-soap-memory.c: include string.h for
memset prototype.

23 years agoFix some typos.
Dick Porter [Thu, 24 May 2001 11:35:28 +0000 (11:35 +0000)]
Fix some typos.

23 years agoreview alex, review
Miguel de Icaza [Thu, 24 May 2001 00:01:01 +0000 (00:01 +0000)]
review alex, review

23 years agoEliminate the extra layer of indirection for list items that are naturally
Dick Porter [Wed, 23 May 2001 22:11:33 +0000 (22:11 +0000)]
Eliminate the extra layer of indirection for list items that are naturally

2001-05-23  Dick Porter  <dick@ximian.com>

* src/soup-wsdl-runtime/wsdl-typecodes-c.c
(wsdl_typecode_write_c_mm_list):
* src/soup-wsdl-runtime/wsdl-soap-parse.c
(wsdl_soap_set_list_param):
* src/soup-wsdl-runtime/wsdl-soap-marshal.c
(wsdl_soap_marshal_list_param): Eliminate the extra layer of
indirection for list items that are naturally pointers.

* tests/test-wsdl-runtime.c: Update list tests

* src/soup-wsdl-runtime/wsdl-typecodes.c:
* src/soup-wsdl-runtime/wsdl-schema.c:
* src/soup-wsdl/wsdl-trace.c:
* src/soup-wsdl/wsdl-soap-emit.c:
* src/soup-wsdl/wsdl-parse.c:
* src/soup-wsdl/wsdl-describe.c:
* docs/reference/soup-sections.txt: Started documenting the code

23 years agoAdded. All release announcements should be prepended here.
Alex Graveley [Wed, 23 May 2001 03:36:35 +0000 (03:36 +0000)]
Added. All release announcements should be prepended here.

2001-05-22  Alex Graveley  <alex@ximian.com>

* RELEASE (ANNOUNCE): Added. All release announcements should be
prepended here.

23 years agonull terminate the buffer
JP Rosevear [Tue, 22 May 2001 20:14:02 +0000 (20:14 +0000)]
null terminate the buffer

2001-05-22  JP Rosevear  <jpr@ximian.com>

* src/soup-core/soup-apache.c (soup_apache_read_request): null
terminate the buffer

23 years agodon't emit code to add the transport headers to the SoupEnv, which is only
Rodrigo Moya [Tue, 22 May 2001 14:44:18 +0000 (14:44 +0000)]
don't emit code to add the transport headers to the SoupEnv, which is only

2001-05-22  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl/wsdl-soap-parse.c: don't emit code to add the
transport headers to the SoupEnv, which is only used for SOAP
request/response headers

23 years agog_strdup the hash table key also (soup_env_set_request_header): ditto
Rodrigo Moya [Tue, 22 May 2001 14:34:18 +0000 (14:34 +0000)]
g_strdup the hash table key also (soup_env_set_request_header): ditto

2001-05-22  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-core/soup-env.c (soup_env_set_response_header):
g_strdup the hash table key also
(soup_env_set_request_header): ditto

23 years agogtk-doc fixups.
Alex Graveley [Tue, 22 May 2001 01:10:47 +0000 (01:10 +0000)]
gtk-doc fixups.

2001-05-21  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-queue.c (soup_message_queue): gtk-doc fixups.

* src/soup-core/soup-socket.c (soup_socket_server_new): New.
(soup_socket_server_accept): New.
(soup_socket_server_try_accept): New.

23 years agouse the correct XML node to get the headers
Rodrigo Moya [Mon, 21 May 2001 14:39:13 +0000 (14:39 +0000)]
use the correct XML node to get the headers

2001-05-18  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl-runtime/wsdl-soap-parse.c (wsdl_soap_headers):
use the correct XML node to get the headers

23 years ago"Subscribe" not "Subject" in soup-list-request@ximian.com message body. :)
Alex Graveley [Fri, 18 May 2001 22:29:45 +0000 (22:29 +0000)]
"Subscribe" not "Subject" in soup-list-request@ximian.com message body. :)

2001-05-18  Alex Graveley  <alex@ximian.com>

* README: "Subscribe" not "Subject" in
soup-list-request@ximian.com message body. :)

23 years agoPrune soup-core internal files.
Alex Graveley [Fri, 18 May 2001 05:59:03 +0000 (05:59 +0000)]
Prune soup-core internal files.

2001-05-18  Alex Graveley  <alex@ximian.com>

* docs/reference/soup-docs.sgml: Prune soup-core internal files.

* configure.in: Add pretty section headers, move gtk-doc section

23 years agodo not free the callback data, or the second time the method gets called,
JP Rosevear [Thu, 17 May 2001 22:29:11 +0000 (22:29 +0000)]
do not free the callback data, or the second time the method gets called,

2001-05-17  JP Rosevear  <jpr@ximian.com>

* src/soup-wsdl/wsdl-soap-skels.c
(wsdl_emit_soap_skels_binding_operation): do not free the callback
data, or the second time the method gets called, *KABOOM*

23 years agoBumping up my commits per week numbers
JP Rosevear [Thu, 17 May 2001 21:44:55 +0000 (21:44 +0000)]
Bumping up my commits per week numbers

23 years agooops
JP Rosevear [Thu, 17 May 2001 21:41:24 +0000 (21:41 +0000)]
oops

23 years agoprevent leak and check for fault straight away (instead of operation name)
JP Rosevear [Thu, 17 May 2001 21:40:58 +0000 (21:40 +0000)]
prevent leak and check for fault straight away (instead of operation name)

2001-05-17  JP Rosevear  <jpr@ximian.com>

* src/soup-wsdl-runtime/wsdl-soap-parse.c (wsdl_soap_operation):
prevent leak and check for fault straight away (instead of
operation name)

* src/soup-core/soup-env.c (soup_env_free): only free the fault if there is one
(soup_env_clear_fault): ditto

* src/soup-wsdl-runtime/wsdl-soap-marshal.c (wsdl_soap_marshal):
use the serializer functions to write out the fault and only write the message return

23 years agofind the end of the value and g_strndup only that as the value, rather
JP Rosevear [Thu, 17 May 2001 18:59:22 +0000 (18:59 +0000)]
find the end of the value and g_strndup only that as the value, rather

2001-05-17  JP Rosevear  <jpr@ximian.com>

* src/soup-core/soup-headers.c (soup_headers_parse): find the end
of the value and g_strndup only that as the value, rather than the
remainder of the string

* src/soup-core/soup-message.c (soup_message_issue_callback): free
the message only if the callback exists, otherwise send_message is
borked.  New a little more design to fix properly

23 years agoFixed all gtk-doc moans in soup-core documentation
Dick Porter [Thu, 17 May 2001 16:35:18 +0000 (16:35 +0000)]
Fixed all gtk-doc moans in soup-core documentation

2001-05-17  Dick Porter  <dick@ximian.com>

* Fixed all gtk-doc moans in soup-core documentation

23 years agoExtract gtk-doc documentation from the code
Dick Porter [Thu, 17 May 2001 16:03:11 +0000 (16:03 +0000)]
Extract gtk-doc documentation from the code

2001-05-17  Dick Porter  <dick@ximian.com>

* docs/reference: Extract gtk-doc documentation from the code

* tests/test-wsdl-runtime.c:
* tests/stockquote2-server.c:
* tests/stockquote2-client.c: Updated for new API

* tests/stress-test.c:
* tests/simple-test.c: Include installed soup headers

* configure.in: Check for gtk-doc

* tests/Makefile.am: Made example code just plain
"noinst_PROGRAMS", check_PROGRAMS are built as part of "make
dist". Wrestled with automake, automake won :-( I wanted to delete
the built sources from the dist target, and not have automake try
and recreate them with a non-existant soup-wsdl when I type "make
distcheck".

* Makefile.am: Took tests out of SUBDIRS, added a "make examples"
target instead.

23 years agoDocument. Needs more details and descriptions from the SOAP spec.
Alex Graveley [Wed, 16 May 2001 23:43:45 +0000 (23:43 +0000)]
Document. Needs more details and descriptions from the SOAP spec.

2001-05-16  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-serializer.c: Document. Needs more details
and descriptions from the SOAP spec.

* src/soup-core/soup-queue.c: Document.

* src/soup-core/soup-misc.c: Document.
(soup_load_config): Reset security policy to
SOUP_SECURITY_DOMESTIC when reloading config.

* src/soup-core/soup-message.c: Document.

23 years agog_strdup the response headers when adding them to the hash
JP Rosevear [Wed, 16 May 2001 22:08:39 +0000 (22:08 +0000)]
g_strdup the response headers when adding them to the hash

2001-05-16  JP Rosevear  <jpr@ximian.com>

* src/soup-core/soup-headers.c (soup_headers_parse): g_strdup the
response headers when adding them to the hash

* src/soup-core/soup-context.c (soup_context_get): ditto

* src/soup-core/soup-context.h: constify uri passed to
soup_context_get

* src/soup-core/soup-env.h (soup_env_free): new protos

* src/soup-core/soup-env.c (soup_env_set_address): new accessor to
set url to access for service
(soup_env_get_address): ditto

23 years agoRemove missed conflict
Alex Graveley [Wed, 16 May 2001 20:52:55 +0000 (20:52 +0000)]
Remove missed conflict

23 years agog_strdup headers from the apache headers table.
Alex Graveley [Wed, 16 May 2001 20:52:00 +0000 (20:52 +0000)]
g_strdup headers from the apache headers table.

2001-05-16  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-apache.c (soup_apache_add_header_from_table):
g_strdup headers from the apache headers table.

23 years agochange this to something sensible
JP Rosevear [Wed, 16 May 2001 19:23:31 +0000 (19:23 +0000)]
change this to something sensible

2001-05-16  JP Rosevear  <jpr@ximian.com>

* tests/simple-test.c (main): change this to something sensible

23 years agoRemoved extra ','
Rodrigo Moya [Wed, 16 May 2001 13:06:12 +0000 (13:06 +0000)]
Removed extra ','

23 years agofully adapted to the new SoupEnv stuff
Rodrigo Moya [Wed, 16 May 2001 11:55:40 +0000 (11:55 +0000)]
fully adapted to the new SoupEnv stuff

2001-05-16  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl/wsdl-soap-stubs.c: fully adapted to the new
SoupEnv stuff

23 years agoBring up-to-date with new API, and test typecode freeing too.
Dick Porter [Wed, 16 May 2001 09:41:22 +0000 (09:41 +0000)]
Bring up-to-date with new API, and test typecode freeing too.

2001-05-16  Dick Porter  <dick@ximian.com>

* tests/test-wsdl-runtime.c: Bring up-to-date with new API, and
test typecode freeing too.

* tests/stockquote2-server.c:
* tests/stockquote2-client.c: Bring up-to-date with new API

* src/soup-wsdl-runtime/wsdl-soap-memory.c: New file of functions
to zero or free a set of types.

* src/soup-wsdl-runtime/wsdl-typecodes.c
(wsdl_typecode_param_type): Handle adding '*' to certain types
when written as parameters.

* src/soup-wsdl-runtime/wsdl-typecodes-c.c: Add pointers to memory
free functions to typecode structs.
New functions to write those memory free functions.

* src/soup-wsdl-runtime/wsdl-soap-parse.c
(wsdl_soap_set_struct_param): Allocate memory for structs
(wsdl_soap_parse): Use the new function in wsdl-soap-memory.c to
zero the parameters.

* src/soup-wsdl-runtime/wsdl-soap-marshal.c
(wsdl_soap_marshal_struct_param): Structs are now passed as
pointers, so need to add extra indirection here.
(wsdl_soap_marshal_param): Make sure we dont try to marshal NULL
pointers

* src/soup-wsdl/wsdl-soap-skels.c
(wsdl_emit_soap_skels_binding_operation): Zero output args before
calling the callback, and free any memory used by them after
sending the response.

* src/soup-wsdl/wsdl-soap-headers.c
(wsdl_emit_soap_headers_binding_operation): Server callback now
returns 'void'
(wsdl_emit_soap_header_mm): Write memory-management function
prototypes

* src/soup-wsdl/wsdl-soap-emit.c (wsdl_emit_part): Use new
parameter-passing API

* src/soup-wsdl/wsdl-soap-common.c (wsdl_emit_soap_common_mm):
Cause memory-management routines to be written for all
user-defined types

23 years agosoup_env_new needed "()" to be a function call
JP Rosevear [Tue, 15 May 2001 22:53:18 +0000 (22:53 +0000)]
soup_env_new needed "()" to be a function call

2001-05-15  JP Rosevear  <jpr@ximian.com>

* src/soup-wsdl/wsdl-soap-skels.c
(wsdl_emit_soap_skels_binding_operation): soup_env_new needed "()"
to be a function call

* src/soup-core/soup.h: explicitly include soup-fault.h and soup-env.h

* src/soup-wsdl-runtime/wsdl-soap-marshal.h: kludge soup-env.h as
well.  We really should rename the dirs properly

* src/soup-wsdl-runtime/wsdl-soap-parse.h: kludge around include
problem

23 years agoreplace all SoupFault parameter with SoupEnv, and remove "GHashTable
Rodrigo Moya [Tue, 15 May 2001 14:23:56 +0000 (14:23 +0000)]
replace all SoupFault parameter with SoupEnv, and remove "GHashTable

2001-05-15  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl/wsdl-soap-stubs.c: replace all SoupFault
parameter with SoupEnv, and remove "GHashTable request_headers"
from list of parameters in server callbacks, because before
calling those callbacks, the stubs take care of adding the
SoupMessage's request headers to the SoupEnv being passed
* src/soup-wsdl-runtime/wsdl-soap-parse.c
(wsdl_soap_parse): replace SoupFault with the new
SoupEnv parameter
(wsdl_soap_headers): new internal function to parse all
the headers in the SOAP message and add them to the SoupEnv
* src/soup-wsdl-runtime/wsdl-soap-marshal.c
(wsdl_soap_marshal): don't access directly SoupFault
struct members.
Replace SoupFault parameter with the new SoupEnv

23 years agomade the SoupFault structure private, and add accessor functions for the
Rodrigo Moya [Mon, 14 May 2001 14:26:38 +0000 (14:26 +0000)]
made the SoupFault structure private, and add accessor functions for the

2001-05-13  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-core/soup-fault.[ch]: made the SoupFault structure
private, and add accessor functions for the struct members
* src/soup-core/soup-env.[ch]: added SoupEnv stuff, to easily
manage SOAP environments (request/response headers list, faults)

23 years agog_strdup name and value. (soup_message_set_response_header): ditto.
Alex Graveley [Sun, 13 May 2001 04:07:30 +0000 (04:07 +0000)]
g_strdup name and value. (soup_message_set_response_header): ditto.

2001-05-12  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-message.c (soup_message_set_request_header):
g_strdup name and value.
(soup_message_set_response_header): ditto.
(soup_message_get_response_header): implement.
(soup_message_get_request_header): implement.

23 years agoFormat cleanups.
Alex Graveley [Sat, 12 May 2001 21:05:00 +0000 (21:05 +0000)]
Format cleanups.

2001-05-12  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-fault.[ch]: Format cleanups.

* src/soup-core/soup-parser.[ch]: Ditto.

23 years agomoved the SoupFault to its own header file, since it will be also used by
Rodrigo Moya [Sat, 12 May 2001 10:01:19 +0000 (10:01 +0000)]
moved the SoupFault to its own header file, since it will be also used by

2001-05-12  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-core/soup-fault.[ch]: moved the SoupFault to its
own header file, since it will be also used by the upcoming
SoupEnv

23 years agohandle SOUP_ERROR_CANT_AUTHENTICATE.
Alex Graveley [Sat, 12 May 2001 00:01:52 +0000 (00:01 +0000)]
handle SOUP_ERROR_CANT_AUTHENTICATE.

2001-05-11  Alex Graveley  <alex@ximian.com>

* tests/stress-test.c (current_temp_cb): handle
SOUP_ERROR_CANT_AUTHENTICATE.

* tests/simple-test.c (current_temp_cb): handle
SOUP_ERROR_CANT_AUTHENTICATE.

23 years agoUse NSS_InitReadWrite(). (soup_nss_get_iochannel): set SSL_BadCertHook().
Alex Graveley [Sat, 12 May 2001 00:00:08 +0000 (00:00 +0000)]
Use NSS_InitReadWrite(). (soup_nss_get_iochannel): set SSL_BadCertHook().

2001-05-11  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-nss.c (soup_nss_init): Use NSS_InitReadWrite().
(soup_nss_get_iochannel): set SSL_BadCertHook().

23 years ago/tmp/cvsmFCOKf
alex [Fri, 11 May 2001 04:23:20 +0000 (04:23 +0000)]
/tmp/cvsmFCOKf

23 years agoPrep for move to GNOME CVS.
alex [Fri, 11 May 2001 03:06:23 +0000 (03:06 +0000)]
Prep for move to GNOME CVS.

23 years agoindent the SoupFault parameter when written to the skels
JP Rosevear [Wed, 9 May 2001 17:37:57 +0000 (17:37 +0000)]
indent the SoupFault parameter when written to the skels

2001-05-09  JP Rosevear  <jpr@ximian.com>

* src/soup-wsdl/wsdl-soap-skels.c
(wsdl_emit_soap_skels_binding_operation): indent the SoupFault
parameter when written to the skels

23 years agoPut the glib namespace prefix back into the typecode struct names
Dick Porter [Wed, 9 May 2001 15:05:15 +0000 (15:05 +0000)]
Put the glib namespace prefix back into the typecode struct names

2001-05-09  Dick Porter  <dick@ximian.com>

* src/soup-wsdl-runtime/wsdl-typecodes.c: Put the glib namespace
prefix back into the typecode struct names
(wsdl_typecode_type): Return a namespace-prefixed type name for
struct and element types
(wsdl_typecode_lookup): Look up typecodes by namespace

* src/soup-wsdl-runtime/wsdl-typecodes-c.c: Typecode struct names
include namespace prefixes

* src/soup-wsdl-runtime/wsdl-schema-glib.c
(wsdl_schema_glib_parse_struct): Typecodes now have namespaces
associated with them.

* src/soup-wsdl/wsdl-soap-headers.c: Deleted all the list
callbacks that printed variations on a parameter theme, call
wsdl_emit_part_list instead.
(wsdl_emit_soap_headers_binding_operation): Don't add a namespace
part for every level of WSDL indirection.
* src/soup-wsdl/wsdl-soap-stubs.c: ditto
* src/soup-wsdl/wsdl-soap-skels.c: ditto

* src/soup-wsdl/wsdl-soap-emit.c: New file of C code emitting helper
functions.

* src/soup-wsdl/wsdl-parse.c (wsdl_parse_message_part_attrs): Look
up typecodes by namespace
(wsdl_start_element): Pass more XML info to the schema parser

* src/soup-core/soup-parser.h: include file wasn't on the search
path at compile time

23 years agoretrieve info about faults when parsing the SOAP messages
Rodrigo Moya [Wed, 9 May 2001 14:22:37 +0000 (14:22 +0000)]
retrieve info about faults when parsing the SOAP messages

2001-05-09  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-core/soup-parser.c: retrieve info about faults
when parsing the SOAP messages

23 years agouse 'fault' and not '&fault' in call to wsdl_soap_parse
Rodrigo Moya [Wed, 9 May 2001 10:39:27 +0000 (10:39 +0000)]
use 'fault' and not '&fault' in call to wsdl_soap_parse

2001-05-09  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl/wsdl-soap-stubs.c: use 'fault' and not
'&fault' in call to wsdl_soap_parse

23 years agosome small fixes for compilation
Rodrigo Moya [Wed, 9 May 2001 10:08:50 +0000 (10:08 +0000)]
some small fixes for compilation

2001-05-09  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl/: some small fixes for compilation

23 years agoadded a basic SOAP messages parser, which easily lets access to the
Rodrigo Moya [Wed, 9 May 2001 09:34:28 +0000 (09:34 +0000)]
added a basic SOAP messages parser, which easily lets access to the

2001-05-09  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-core/soup-parser.[ch]: added a basic SOAP messages
parser, which easily lets access to the message parameters
and faults

2001-05-05  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl-runtime/wsdl-soap-fault.[ch]: added to manage/retrieve
info from SOAP faults
* src/soup-wsdl-runtime/wsdl-soap-parse.c (wsdl_soap_parse): retrieve
SOAP faults from the message being parsed. Added a wsdl_soap_fault
parameter, which will be returned if there was actually a SOAP fault
in the message
* src/soup-wsdl-runtime/wsdl-soap-marshal.c (wsdl_soap_marhal): add
a wsdl_soap_fault parameter, to be serialized along with the rest
of the SOAP message

23 years agoDecide which schema parser to call for a WSDL <types> section. This
Dick Porter [Fri, 4 May 2001 15:35:22 +0000 (15:35 +0000)]
Decide which schema parser to call for a WSDL <types> section. This

2001-05-04  Dick Porter  <dick@ximian.com>

* src/soup-wsdl-runtime/wsdl-schema.c: Decide which schema parser to
call for a WSDL <types> section. This supercedes the old glib schema
parser in wsdl-parse.c. The WSDL parser is now effectively decoupled
from the schema, which should make it much easier to add new schemas
in the future without having to change the parser.

* src/soup-wsdl-runtime/wsdl-schema-glib.c: Build typecodes from
the simple glib schema

* src/soup-wsdl-runtime/wsdl-typecodes-c.c: Write C code
describing a typecode.

* src/soup-wsdl-runtime/wsdl-soap-parse.c:
* src/soup-wsdl-runtime/wsdl-soap-marshal.c:
* src/soup-wsdl-runtime/wsdl-param.h: Take all instances of 'glib' out
of typecode definitions and function names.

* src/soup-wsdl-runtime/Makefile.am: Build a version of the
runtime library more useful for writing C code (ideally i'd make
this dynamically link the runtime library, but libtool wont let
me)

* src/soup-wsdl/wsdl-thread.c (wsdl_thread_soap_parts): No need to
look up glib types, the message part already holds a pointer to
the typecode.

* src/soup-wsdl/wsdl-soap-stubs.c:
* src/soup-wsdl/wsdl-soap-skels.c: Type names are looked up by
typecode. All checks for custom glib types have been deleted.

* src/soup-wsdl/wsdl-soap-headers.c: All typecode declarations are
now printed using the runtime library.  Type names are looked up
by typecode. All checks for custom glib types have been deleted.

* src/soup-wsdl/wsdl-soap-common.c: All typecode printing is now
done using the runtime library.

* src/soup-wsdl/wsdl-parse.c: Moved wsdl_qnamecmp() and
wsdl_attrnscmp to wsdl-schema.c (in the runtime library)
(wsdl_parse_message_part_attrs): Look up typecodes, not glib types.
(wsdl_parse_types): Call through the runtime schema parser, instead
of the custom glib type parser.

* src/soup-wsdl/wsdl-memory.c (wsdl_free_types): Delete typecodes
rather than glib types.

* src/soup-wsdl/wsdl-describe.c: Replace the type printing
routines with calls to wsdl_typecode_print

* src/soup-wsdl/main.c (main): No need to initialise the glib
types any more.

* src/soup-wsdl/Makefile.am (soup_wsdl_SOURCES): Don't bother to
compile wsdl-types-glib.c, it's been superceded by the typecode
builder

23 years agoWrite synchronous client stubs
Dick Porter [Wed, 2 May 2001 11:57:54 +0000 (11:57 +0000)]
Write synchronous client stubs

2001-05-02  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-soap-stubs.c
(wsdl_emit_soap_stubs_binding_operation): Write synchronous client
stubs

* src/soup-wsdl/wsdl-soap-headers.c
(wsdl_emit_soap_headers_binding_operation): Emit prototypes for
synchronous stubs

23 years agoWrite server skels
Dick Porter [Wed, 2 May 2001 10:28:18 +0000 (10:28 +0000)]
Write server skels

2001-05-02  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-soap-skels.c
(wsdl_emit_soap_skels_binding_operation): Write server skels

* src/soup-wsdl/wsdl-soap-headers.c
(wsdl_emit_soap_headers_binding_operation): Emit prototypes for
skels
(wsdl_emit_soap_headers): Include the right soup headers

* src/soup-wsdl/wsdl-soap-stubs.c (wsdl_emit_soap_stubs): Include
the right soup headers

* src/soup-wsdl-runtime/Makefile.am (INCLUDES):
* src/soup-wsdl-runtime/wsdl-soap-marshal.h: A kludge to work
around include path searching whether compiling or at runtime

23 years agoUse the new marshaller instead of a large printf. Drastically reduced the
Dick Porter [Mon, 30 Apr 2001 11:08:35 +0000 (11:08 +0000)]
Use the new marshaller instead of a large printf. Drastically reduced the

2001-04-30  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-soap-stubs.c: Use the new marshaller instead
of a large printf. Drastically reduced the complexity of both the
wsdl compiler code and the generated stubs. Deleted huge tracts of
now-unused code too.

* src/soup-wsdl/wsdl-types-glib.c: Deleted unused code

23 years agoSome more error checking. Read booleans as "true", "false", "yes", "no" as
Dick Porter [Sun, 29 Apr 2001 10:10:28 +0000 (10:10 +0000)]
Some more error checking. Read booleans as "true", "false", "yes", "no" as

2001-04-29  Dick Porter  <dick@ximian.com>

* src/soup-wsdl-runtime/wsdl-soap-parse.c
(wsdl_soap_set_simple_param): Some more error checking. Read
booleans as "true", "false", "yes", "no" as well as an integer.
(wsdl_soap_set_param): Give the XML child node to
wsdl_soap_set_list_param().

* src/soup-wsdl-runtime/wsdl-soap-marshal.c: A typecode based soap
marshaller

* src/soup-wsdl-runtime/wsdl-param.h: Moved definition of wsdl_param
into a common header

* tests/test-wsdl-runtime.c: Added marshal test

* src/soup-core/soup-serializer.c (soup_serializer_write_time):
Changed name of "time" parameter to not conflict with time(2)

23 years agoget this script working again and add wsdl
JP Rosevear [Wed, 25 Apr 2001 20:39:56 +0000 (20:39 +0000)]
get this script working again and add wsdl

2001-04-25  JP Rosevear  <jpr@ximian.com>

* soup-config.in (lib_soup): get this script working again and add
wsdl

* Makefile.am: create and install new script

* configure.in: create variables for script substitution

* soup_wsdlConf.sh.in: gnome-config script for wsdl compilation
info

23 years agoadded "gpointer user_data" parameter to generated functions ditto & make
Rodrigo Moya [Tue, 24 Apr 2001 15:55:48 +0000 (15:55 +0000)]
added "gpointer user_data" parameter to generated functions ditto & make

2001-04-23  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl/wsdl-soap-headers.c
(wsdl_emit_soap_headers_binding_operation): added
"gpointer user_data" parameter to generated functions
* src/soup-wsdl/wsdl-soap-stubs.c
(wsdl_emit_soap_stubs_binding_operation): ditto &
make use of a private structure to be able to pass both
the user callback and a custom parameter to SOUP-generated
callback

23 years agoTypecode support for the simple glib schema, similar in style to CORBA
Dick Porter [Mon, 23 Apr 2001 17:26:53 +0000 (17:26 +0000)]
Typecode support for the simple glib schema, similar in style to CORBA

2001-04-23  Dick Porter  <dick@ximian.com>

* src/soup-wsdl-runtime/wsdl-typecodes-glib.c: Typecode support
for the simple glib schema, similar in style to CORBA typecodes.
The alignment and size routines are based on the ones in ORBit.

* src/soup-wsdl-runtime/wsdl-soap-parse.c: A parser that walks an
XML document, and writes values into memory locations provided

* tests/test-wsdl-runtime.c: Test the typecode support and parser

* src/soup-wsdl/wsdl-soap-stubs.c (wsdl_emit_soap_stubs_params):
Write a list of parameter to typecode bindings for the soap
document parser

* src/soup-wsdl/wsdl-soap-headers.c: Write extern prototypes for
typecode definitions

* src/soup-wsdl/wsdl-soap-common.c: Write typecode definitions
into a common code file

* src/Makefile.am: Build new soup-wsdl-runtime directory before
soup-wsdl

* configure.in: Added test to discover alignments

* acconfig.h: Added defines for alignments

23 years agoSoupSocketConnectFn no longer takes a SoupAddress argument, as it can be
Alex Graveley [Mon, 23 Apr 2001 07:57:45 +0000 (07:57 +0000)]
SoupSocketConnectFn no longer takes a SoupAddress argument, as it can be

2001-04-23  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-socket.h: SoupSocketConnectFn no longer takes
a SoupAddress argument, as it can be fetched from the SoupSocket
correctly now.

* src/soup-core/soup-socket.c: lots of rewrites. Cache existing
SoupAddresses to avoid duplicate lookups. Handles multiple
simultaneous requests for the same address. Add syncronous
versions of calls which just run the main loop until completion or
request. Make SoupContext use a SoupAddress instead of sockaddr.

* src/soup-core/soup-uri.h: Add query_elems to SoupUri. Contains a
list of query string elements, as delimited by a
'&'. SoupUri.protocol is now a SoupProtocol.

* src/soup-core/soup-uri.c (soup_uri_new): convert uri_string
protocol to SoupProtocol equivalent.

* src/soup-core/soup-private.h: remove protocol from
SoupContext. Use a SoupAddress instead of a sockaddr in SoupSocket.

* src/soup-core/soup-misc.c (soup_load_config_internal): kill
tiny (8 byte) mem leak.

* src/soup-core/soup-message.h: add SoupOwnership
SOUP_BUFFER_STATIC.
add SoupErrorCode SOUP_ERROR_CANT_AUTHENTICATE.

* src/soup-core/soup-context.h: move SoupProtocol to soup-uri.h.

* src/soup-core/soup-context.c (soup_context_new):
removed. Protocol is now held only in uri.
(soup_context_from_uri): added.
(soup_context_get): just calls soup_context_from_uri() after
creating uri.
(soup_context_unref): don't evaluate a post-decremented refcount.
(soup_context_connect_cb): no longer take a SoupAddress arg.
(soup_context_get_protocol): removed, use uri.

* src/soup-core/soup-apache.c (soup_apache_message_create): use
SOUP_BUFFER_STATIC for request buffer.

* src/soup-core/md5-utils.c: initial commit. MD5 encryption.

* src/soup-core/soup-digest.c: initial commit. no worky.

* src/soup-core/Makefile.am (libsoup_la_SOURCES): add md5-utils.h,
md5-utils.c, soup-digest.h, soup-digest.c.

* tests/stress-test.c (main): handle ugly refcount bug causing
extra unrefs of the context.

23 years agoOops.
alex [Wed, 18 Apr 2001 22:13:03 +0000 (22:13 +0000)]
Oops.

23 years agoAdded SoupServerBasicToken, SoupServerDigestToken,
Alex Graveley [Wed, 18 Apr 2001 22:12:34 +0000 (22:12 +0000)]
Added SoupServerBasicToken, SoupServerDigestToken,

2001-04-18  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-server.h: Added SoupServerBasicToken,
SoupServerDigestToken, SoupServerAnonymousToken structs, all with
a SoupServerAuthType as the first element. Added
SoupServerAuthToken which is a union of all three auth types.

* src/soup-core/soup-server.c (soup_server_register_full):
Added. Accept method authentication callback and allowed auth types.

* src/soup-core/soup-apache.c (soup_apache_handler): Use a
SoupServerAuthToken. Log to apache only in error conditions.

* src/soup-core/soup-server.c (soup_server_authorize): Accept a
SoupServerAuthToken instead of username/pass/realm.

23 years ago#include <soup/soup-*> and not soup-* #include <soup/soup-message.h> and
Rodrigo Moya [Tue, 10 Apr 2001 19:09:13 +0000 (19:09 +0000)]
#include <soup/soup-*> and not soup-* #include <soup/soup-message.h> and

2001-04-04  Rodrigo Moya <rodrigo@ximian.com>

* src/soup-wsdl/wsdl-soap-stubs.c (wsdl_emit_soap_stubs):
#include <soup/soup-*> and not soup-*
* src/soup-wsdl/wsdl-soap-headers.c (wsdl_emit_soap_headers):
#include <soup/soup-message.h> and not soup-message.h, to match
with the output given by `gnome-config --cflags soup`

23 years agoRewrote much of the glib schema code to handle structs with child structs,
Dick Porter [Fri, 30 Mar 2001 15:58:07 +0000 (15:58 +0000)]
Rewrote much of the glib schema code to handle structs with child structs,

2001-03-30  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-types-glib.c,
src/soup-wsdl/wsdl-soap-headers.c,
src/soup-wsdl/wsdl-soap-stubs.c: Rewrote much of the glib schema
code to handle structs with child structs, and lists.

* src/soup-wsdl/wsdl-thread.c (wsdl_thread_soap_parts): treat
message part "type" and "element" attributes as the same.
(wsdl_thread_soap_binding_operation): insist that soap:body elements
exist in operations.

* src/soup-wsdl/wsdl-parse.c (wsdl_parse_types): Moved more glib
schema logic to wsdl-types-glib.c

* src/soup-wsdl/wsdl-locate.c: Removed the glib schema locate
functions.

* src/soup-wsdl/wsdl-describe.c: Removed most of the glib schema
describe functions

* src/soup-wsdl/main.c: const-ified option string pointers.
(main): Call glib schema init helper functions. Moved "show doc"
option handler out of wsdl-parse.c to here.

* src/soup-core/soup-private.h, src/soup-core/soup-queue.c: fixed
prototype for soup_queue_shutdown to avoid warning

* configure.in: Went wild with gcc warning options, found
surprisingly few problems.

23 years agoadd CFLAGS to apxs parameters, to output the correct compilation flags
Rodrigo Moya [Thu, 29 Mar 2001 22:31:15 +0000 (22:31 +0000)]
add CFLAGS to apxs parameters, to output the correct compilation flags

2001-03-29  Rodrigo Moya <rodrigo@ximian.com>

* configure.in: add CFLAGS to apxs parameters, to output the
correct compilation flags

23 years agoremove hack to look at internals of GNET by using the new forked GNET :)
Alex Graveley [Thu, 22 Mar 2001 00:32:40 +0000 (00:32 +0000)]
remove hack to look at internals of GNET by using the new forked GNET :)

2001-03-21  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-socks.c: remove hack to look at internals of
GNET by using the new forked GNET :)

* tests/stress-test.c: use soup_message_queue ().

* tests/simple-test.c: use soup_message_queue ().

* src/soup-core/soup-private.h: Added SoupAddress and SoupSocket.

* src/soup-core/soup-misc.c (soup_shutdown): Added, just calls
soup_queue_shutdown.

* src/soup-core/soup-queue.h: Removed. Added to soup-message.h.

* src/soup-core/soup-queue.c (soup_queue_message): rename to
(soup_message_queue): this.

* src/soup-core/soup-message.h: move SoupErrorCode,
SoupCallbackFn, and soup_message_queue() here.

* src/soup-core/soup-message.c (soup_message_free): Free
msg->response if buffer is system owned.
(soup_message_issue_callback): set msg->priv->errorcode so
syncronous soup_message_send can check for completion.
(soup_message_send): Added: Synchronous message send. Queues the
message as per usual, then call g_main_iteration() until them
essage returns.

* src/soup-core/soup-context.c: API Document. Switch gnet calls to
their soup-socket replacement.
(soup_context_get_connection): Remove environment check for
syncronous connect method.

* src/soup-core/Makefile.am (INCLUDES): replace GNET_CFLAGS with
GLIB_CFLAGS.
(libsoup_la_LIBADD): replace GNET_LIBS with GLIB_LIBS.
(soupinclude_HEADERS): Remove soup-queue.h. Add soup-socket.h.
(libsoup_la_SOURCES): Add soup-socket.c.

* soup.spec.in (Requires): remove GNET. Add libxml.

* soup.pc.in (Libs): remove GNET.
(Cflags): ditto.

* soup-config.in (depend_libs): remove GNET.
(depend_cflags): ditto.

* configure.in: remove gnet references, look for libnsl and
libresolv, add checking to determine gethostbyname_r possibility.

* acconfig.h: Add undefs for all the gethostbyname_r variants.

* src/soup-core/soup-socket.[ch]: Fork of GNET, minus synchronous
bits. Removes dependency on GNET; we now only rely on Glib and
libXml.

23 years agoParse a simple glib schema.
Dick Porter [Tue, 20 Mar 2001 16:51:08 +0000 (16:51 +0000)]
Parse a simple glib schema.

2001-03-20  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-types-glib.c: Parse a simple glib schema.

Handle describe and free operations on the glib schema structures
here too.

* src/soup-wsdl/wsdl-thread.c (wsdl_thread_soap_parts): Locate
references to types defined in the glib schema.

* src/soup-wsdl/wsdl-soap-stubs.c: Handle references to types
defined in the glib schema.

Handle output operation parameters.

* src/soup-wsdl/wsdl-soap-headers.c: Emit typedefs for glib schema
elements and structs.

Handle output operation parameters.

* src/soup-wsdl/wsdl-parse.c: (wsdl_parse_types): Parse glib schemas

(wsdl_parse_warning): (wsdl_parse_error): (wsdl_parse_fatal): Made
non-static, so that glib schema parsing can be separated.

All attributes called "xmlns" or "xmlns:..." are ignored by the
WSDL part of the XML parser.

All g_slist_prepend()s have been turned into g_slist_append()s, to
keep operation arguments in the expected order.

* src/soup-wsdl/wsdl-memory.c (wsdl_free_types): Free glib type
schemas

* src/soup-wsdl/wsdl-locate.c: New functions to look up glib
schema element or struct definitions

* src/soup-wsdl/wsdl-describe.c (indent): Made non-static, so that
glib type describing can be separated.
(wsdl_describe_types): Describe glib type schemas

23 years agoThread WSDL structures together.
Dick Porter [Sat, 17 Mar 2001 11:50:11 +0000 (11:50 +0000)]
Thread WSDL structures together.

2001-03-17  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-thread.c: Thread WSDL structures together.

* src/soup-wsdl/wsdl-soap-stubs.c:
* src/soup-wsdl/wsdl-soap-headers.c: Most of the element matching
has been moved in the new threading routings.

* src/soup-wsdl/wsdl-parse.h: WSDL elements have extra pointers to
thread structures together.

* src/soup-wsdl/wsdl-memory.c: Free GSLists. WSDL elements have
extra pointers to thread structures together, and some of these
are GSLists that need freeing too.

* src/soup-wsdl/wsdl-locate.c: Some more lookup functions.

* src/soup-wsdl/main.c (main): Call the WSDL element threader, and
only proceed to write files if it succeeds.

23 years agouse the HTTP_OK macro for the response code rather than hard coding 200
JP Rosevear [Thu, 15 Mar 2001 16:32:27 +0000 (16:32 +0000)]
use the HTTP_OK macro for the response code rather than hard coding 200

001-03-15  JP Rosevear  <jpr@ximian.com>

* src/soup-core/soup-apache.c (soup_apache_message_create): use
the HTTP_OK macro for the response code rather than hard coding
200
(soup_apache_handler): return should be OK or !OK rather than the
http response code value (ie 200)

* src/soup-core/soup-serializer.c (soup_serializer_reset): Make a
blank doc when resetting

23 years agooops, deleted too much
JP Rosevear [Wed, 14 Mar 2001 15:39:16 +0000 (15:39 +0000)]
oops, deleted too much

2001-03-14  JP Rosevear  <jpr@ximian.com>

* src/soup-core/soup-apache.c (soup_apache_read_request): oops,
deleted too much

23 years agoSupport for simple glib types
Dick Porter [Wed, 14 Mar 2001 11:52:39 +0000 (11:52 +0000)]
Support for simple glib types

2001-03-14  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-parse.h: Support for simple glib types

* src/soup-wsdl/wsdl-parse.c (wsdl_attrnscmp): Check the namespace
prefix of a string.
(wsdl_parse_types): Add a placeholder for parsing glib schemas
(wsdl_parse_message): Add support for simple glib types in part
elements

* src/soup-wsdl/wsdl-describe.c (wsdl_describe_message_part): Show
glib types, if appropriate

23 years agodon't escape the SoapAction header, this makes things work on the server
JP Rosevear [Tue, 13 Mar 2001 21:35:27 +0000 (21:35 +0000)]
don't escape the SoapAction header, this makes things work on the server

2001-03-13  JP Rosevear  <jpr@ximian.com>

* src/soup-core/soup-queue.c (soup_get_request_header): don't
escape the SoapAction header, this makes things work on the server
side but need to check if this breaks the spec

* src/soup-core/soup-message.c (soup_message_free): don't try to
free the request body twice

* src/soup-core/soup-apache.c (soup_apache_message_create): The
buffer is user owned. Use ap_contruct_url since the uri function
did not include happy things like hostname - will this get the
password properly though?
(soup_apache_read_request): don't adjust read_left twice
(soup_apache_handler): log some stuff to the apache log

23 years agodon't chmod the files. soup-config become executable on install by
JP Rosevear [Tue, 13 Mar 2001 18:09:03 +0000 (18:09 +0000)]
don't chmod the files. soup-config become executable on install by

2001-03-13  JP Rosevear  <jpr@ximian.com>

* configure.in: don't chmod the files.  soup-config become
executable on install by bin_SCRIPTS and *Conf.sh never need to be
executable, fix my apache cflags blunder

23 years agoavoid leading and trailing quotes. If an exact match is not found, lookup
Alex Graveley [Tue, 13 Mar 2001 04:01:53 +0000 (04:01 +0000)]
avoid leading and trailing quotes. If an exact match is not found, lookup

2001-03-12  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-server.c (soup_server_get_handler): avoid
leading and trailing quotes. If an exact match is not found,
lookup based only on methodname not uri#methodnmae.

* src/soup-core/soup-apache.c (soup_apache_handler): compile
without warnings.

* configure.in (AC_OUTPUT): chmod +x soup_apacheConf.sh

23 years agoDidn't commit b4.
alex [Fri, 9 Mar 2001 18:37:11 +0000 (18:37 +0000)]
Didn't commit b4.

23 years agodemonstrate correct behavior here by unref'ing the context after message
Alex Graveley [Fri, 9 Mar 2001 18:28:00 +0000 (18:28 +0000)]
demonstrate correct behavior here by unref'ing the context after message

2001-03-09  Alex Graveley  <alex@ximian.com>

* tests/simple-test.c (main): demonstrate correct behavior here by
unref'ing the context after message creation.

* tests/stress-test.c (main): ditto.

* src/soup-core/soup-queue.c (soup_queue_message): set
req->priv->recv_buf = NULL here, as the media continues to barrate
dangling pointers.

* src/soup-core/soup-server.h: make SoupServerAuthorizeFn typedef
const correct

* src/soup-core/soup-server.c (soup_server_authorize): make const
correct.

* src/soup-core/soup-message.c (soup_message_cleanup): don't free
response phrase. Don't set req->priv->recv_buf = NULL here, as
leaking memory continues to be considered "bad".

* src/soup-core/soup-headers.c (soup_headers_parse_response):
don't alloc status_phrase, just point into buffer.

* src/soup-core/soup-cgi.c (soup_cgi_read_cb): deal with response
phrase now being const.

* src/soup-core/soup-apache.c (soup_apache_message_create): action
is already strdup'd in soup_message_new (). response_phrase
is now a const string. Remove unneeded content-type header.
(soup_apache_read_request): slight reorg, also use ap_palloc()
instead of ap_calloc().
(soup_apache_handler): initial authentication handling, only basic
auth at this point.

23 years agoEach WSDL struct has a pointer into the XML tree document
Dick Porter [Fri, 9 Mar 2001 12:26:36 +0000 (12:26 +0000)]
Each WSDL struct has a pointer into the XML tree document

2001-03-09  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-parse.h: Each WSDL struct has a pointer into
the XML tree document

* src/soup-wsdl/wsdl-parse.c (wsdl_qnamecmp): A function for
comparing element names and namespaces.

Use wsdl_qnamecmp instead of strcmp to make parsing
namespace-aware.

(wsdl_end_element): Maintain a pointer into the XML tree for each
WSDL node.

* src/soup-wsdl/wsdl-memory.c (wsdl_free_definitions): Free the
XML document

* src/soup-wsdl/main.c (main): Move the xml doc dump to here, for
better modularity

23 years agoafter failing an explicit path execution, use execlp (instead of execl) to
Alex Graveley [Fri, 9 Mar 2001 00:48:48 +0000 (00:48 +0000)]
after failing an explicit path execution, use execlp (instead of execl) to

2001-03-08  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-ssl.c (soup_ssl_get_iochannel): after failing
an explicit path execution, use execlp (instead of execl) to
search the path for soup-ssl-proxy.

* configure.in: set the default openssl library prefix to /usr/lib
to fix weird linking problems when compiling with both openssl and
nss.

23 years agosend the apache info to the config script
JP Rosevear [Fri, 9 Mar 2001 00:14:49 +0000 (00:14 +0000)]
send the apache info to the config script

2001-03-08  JP Rosevear  <jpr@ximian.com>

* configure.in: send the apache info to the config script

* src/soup-core/soup-apache.c (soup_apache_handler): upon further
reading, content_type is for the outgoing document
(soup_apache_read_request): if ap_should_client_block != 0 we
want to keep going

23 years agoscript to provide soup-apache config info through gnome-config
JP Rosevear [Thu, 8 Mar 2001 18:02:43 +0000 (18:02 +0000)]
script to provide soup-apache config info through gnome-config

2001-03-08  JP Rosevear  <jpr@ximian.com>

* soup_apacheConf.sh.in: script to provide soup-apache config info
through gnome-config

* Makefile.am: subst in the soup_apache config script

* configure.in: create vars for soup-apache config foo

* src/soup-core/soup-apache.c (soup_apache_handler): check for
null because content type can be null

23 years agosoup_server_init should be an extern function
JP Rosevear [Wed, 7 Mar 2001 20:04:11 +0000 (20:04 +0000)]
soup_server_init should be an extern function

2001-03-07  JP Rosevear  <jpr@ximian.com>

* src/soup-core/soup-server.h: soup_server_init should be an
extern function

23 years agoadd allowable authentication types mask. (soup_server_set_method_auth):
Alex Graveley [Wed, 7 Mar 2001 19:12:48 +0000 (19:12 +0000)]
add allowable authentication types mask. (soup_server_set_method_auth):

2001-03-07  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-server.c (soup_server_set_global_auth): add
allowable authentication types mask.
(soup_server_set_method_auth): ditto. NOTE: This server auth stuff
may be removed altogether, so don't rely on it.

* src/soup-core/soup-server.h: added SoupServerAuthType, a mask of
allowable authentication types. Make soup_server_init an extern
declaration instead of a function pointer.

* src/soup-core/soup-apache.c (soup_apache_read_request): move
chunked data checking to here from soup_apache_handler.

23 years agouse configure.in vars for subst
JP Rosevear [Wed, 7 Mar 2001 17:21:12 +0000 (17:21 +0000)]
use configure.in vars for subst

2001-03-07  JP Rosevear  <jpr@ximian.com>

* soupConf.sh.in: use configure.in vars for subst

* configure.in: create variables for config script

* Makefile.am: generate the soupConf.sh script in the makefile for
proper substitution

23 years agocreated. moved cgi-related request processing here. do not use it.
Alex Graveley [Wed, 7 Mar 2001 15:08:38 +0000 (15:08 +0000)]
created. moved cgi-related request processing here. do not use it.

2001-03-07  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-cgi.c: created. moved cgi-related request
processing here. do not use it. completely broken.

* src/soup-core/soup-apache.c: initial commit of Apache module
handling, server registration should be performed in a
soup_server_init function. Authorization handling still needs to
be written.

* src/soup-core/soup-server.c: cleaned up to have only generic
server functions. removed extraneous unregister functions.
(soup_server_set_global_auth): set the global server authorize
function, to be called in the absence of a method-specific
authorize function.
(soup_server_set_method_auth): set per-method authorize function.

* src/soup-core/soup-queue.c (soup_parse_headers): remove unneeded
variables.

* src/soup-core/soup-private.h: add SoupServerHandler,
soup_server_get_handler(), and soup_server_authorize().

* src/soup-wsdl/Makefile.am (INCLUDES): add WSDL_CFLAGS, to get
-Werror.

* src/soup-core/Makefile.am: add new libsoup-apache.so target.

* soup.spec.in: update and remove hardcoded library version.

* soup-config.in: add module soup-apache.

* configure.in: Fix library versioning. Switch version to
0.2.1. Add APACHE_CFLAGS and APACHE_LIBS, gotten from running
`apxs`. Remove -Werror from CFLAGS, as apache_conf.h is missing a
prototype. Add WSDL_CFLAGS="-Werror" back.

* TODO (TODO): Updated.

23 years agoproperly version the project and give an option to disable more warnings
JP Rosevear [Tue, 6 Mar 2001 20:10:58 +0000 (20:10 +0000)]
properly version the project and give an option to disable more warnings

2001-03-06  JP Rosevear  <jpr@ximian.com>

* configure.in: properly version the project and give an option to
disable more warnings

23 years agoRemove WSDL_CFLAGS.
Alex Graveley [Sat, 3 Mar 2001 01:58:49 +0000 (01:58 +0000)]
Remove WSDL_CFLAGS.

2001-03-02  Alex Graveley  <alex@ximian.com>

* src/soup-wsdl/Makefile.am (INCLUDES): Remove WSDL_CFLAGS.

* tests/simple-test.c (current_temp_cb): handle SOUP_ERROR_HANDLER
so we pass -Werror.

* tests/stress-test.c (current_temp_cb): handle SOUP_ERROR_HANDLER
so we pass -Werror.

* configure.in: remove some excess version-related cruft. Display
a Configuration list on completion. Add -Werror. Remove WSDL_CFLAGS.

23 years agoremove, as this is not used.
Alex Graveley [Fri, 2 Mar 2001 10:37:33 +0000 (10:37 +0000)]
remove, as this is not used.

2001-03-02  Alex Graveley  <alex@ximian.com>

* src/soup-core/gionspr.c: remove, as this is not used.

23 years agoremove gmodule dependency. Fix OPENSSL_LIBS and NSS_LIBS to include the
Alex Graveley [Fri, 2 Mar 2001 10:31:26 +0000 (10:31 +0000)]
remove gmodule dependency. Fix OPENSSL_LIBS and NSS_LIBS to include the

2001-03-02  Alex Graveley  <alex@ximian.com>

* configure.in: remove gmodule dependency. Fix OPENSSL_LIBS and
NSS_LIBS to include the library name and not only the path.

* src/soup-core/soup-ssl-proxy.c (soup_ssl_proxy_init): remove
call to g_module_supported().

* src/soup-core/soup-nss.c: remove GModule NSS loading,
link conventionally instead.

* src/soup-core/soup-openssl.c: remove GModule OpenSSL loading,
link conventionally instead.

23 years agooops. should have been added yesterday.
Alex Graveley [Fri, 2 Mar 2001 09:32:05 +0000 (09:32 +0000)]
oops. should have been added yesterday.

2001-03-02  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-ssl-proxy.c: oops. should have been added
yesterday.

23 years agoexit nicely if no test URL is supplied.
Alex Graveley [Fri, 2 Mar 2001 09:30:02 +0000 (09:30 +0000)]
exit nicely if no test URL is supplied.

2001-03-02  Alex Graveley  <alex@ximian.com>

* tests/stress-test.c (main): exit nicely if no test URL is supplied.

* tests/simple-test.c (main): use http://www.ximian.com is no test
URL is supplied.

* tests/Makefile.am (INCLUDES): include glib headers.

* src/soup-wsdl/Makefile.am (INCLUDES): include glib, popt, and
libxml headers.
(soup_wsdl_LDADD): explicitly add glib, popt, libxml deps.

* src/soup-core/Makefile.am (INCLUDES): include gnet, libxml,
openssl, and nss headers.
(libsoup_la_LIBADD): explicitly add gnet, libxml deps.
(soup_ssl_proxy_LDADD): explicitly add glib, nss and openssl deps.

* soup.spec.in: remove OpenSSL advertising clause.

* soupConf.sh.in: list out dependencies (gnet, libxml).

* soup.pc.in: list out dependencies (gnet, libxml).

* soup-config.in: list out dependencies (gnet, libxml).

* configure.in: Cleanups to remove unnecessary dependencies.

23 years agoglib idle callback which calls waitpid (nonblockingously) on all the
Alex Graveley [Wed, 28 Feb 2001 22:27:58 +0000 (22:27 +0000)]
glib idle callback which calls waitpid (nonblockingously) on all the

2001-02-28  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-ssl.c (soup_ssl_idle_waitpid): glib idle
callback which calls waitpid (nonblockingously) on all the
soup-ssl-proxy children to make sure their resources are freed.
(soup_ssl_get_iochannel): execute soup-ssl-proxy, setting up STDIN
and STDOUT to point to the fd we will return a GIOChannel for,
also passing the security policy and the destination socket fd
number in the environments SECURITY_POLICY and SOCKFD,
respectively.

* src/soup-core/soup-ssl-proxy.c: Created. This is a small SSL
proxy executable, licensed GPL, which allows us to use OpenSSL and
NSS without requiring applications which link with libsoup to have
to comply with the licenses of those SSL libraries.

* src/soup-core/soup-server.c (soup_server_register): add handler
to list.

* src/soup-core/soup-queue.c (soup_queue_write_async): ignore
SIGPIPE and handle errno.

* src/soup-core/soup-misc.c (soup_set_security_policy): move from
soup-ssl.c.
(soup_get_security_policy): add.

* src/soup-core/soup-context.c (soup_connection_get_iochannel):
setup TCP socket before getting an SSL wrapper channel.

* src/soup-core/Makefile.am (INCLUDES): add -DBINDIR
(libsoup_la_SOURCES): remove ssl backends
(soup_ssl_proxy_SOURCES): create soup-ssl-proxy

* src/soup-core/.cvsignore: add soup-ssl-proxy

23 years agoNew file of better debugging routines.
Dick Porter [Wed, 28 Feb 2001 11:23:12 +0000 (11:23 +0000)]
New file of better debugging routines.

2001-02-28  Dick Porter  <dick@ximian.com>

* src/soup-wsdl/wsdl-trace.[ch]: New file of better debugging routines.

* src/soup-wsdl/wsdl-soap-stubs.[ch]: New file that emits C code
for client stubs.

* src/soup-wsdl/wsdl-soap-skels.[ch]: New file that will emit C
code for server skeleton functions.

* src/soup-wsdl/wsdl-soap-headers.[ch]: New file that emits
structure definitions and function prototypes for stubs and skels

* src/soup-wsdl/wsdl-soap-common.[ch]: New file that will emit C
code for functions common to stubs and skels.

* src/soup-wsdl/wsdl-memory.[ch]: New file of routines to
recursively free WSDL structures.

* src/soup-wsdl/wsdl-locate.[ch]: New file of routines to look up
WSDL structures given a name and a parent structure.

* src/soup-wsdl/wsdl-describe.[ch]: New file of structure printing
routines.

* src/soup-wsdl/wsdl.h: Deleted the debug logging stuff, added a
much better version in wsdl-trace.[ch]

* src/soup-wsdl/wsdl-parse.h: Structures moved here from
wsdl-parse.c. Added all of the SOAP extensions.

* src/soup-wsdl/wsdl-parse.c: Added the rest of the SOAP
extensions. Moved some of the parser internal struct definitions
into wsdl-parse.h.
Moved the structure printing routines into their own file.
(wsdl_get_location): Made the error reporting slightly more useful
(wsdl_parse_porttype_operation): Tell the difference between a
request-response operation and a solicit-response operation.
(wsdl_parse_xml): Combine tree and SAX parsing styles, so I can
build an xmlDocPtr tree, yet still fill in the WSDL structures as
the XML is being read.
(wsdl_parse): Set up the SAX parser so it calls the internal
libxml tree building routines, except for those elements that I
use to build WSDL structures. These elements must call the
corresponding xmlDefaultSAXHandler functions themselves.

* src/soup-wsdl/main.c: Added options for code generation
(main): Call code generation routines

* src/soup-wsdl/Makefile.am: Added a lot of new files

* configure.in: Add -Werror to the WSDL CFLAGS

23 years agoremove -release tag so libsoup is named libsoup.so.0.1.9 not
Alex Graveley [Tue, 20 Feb 2001 22:32:12 +0000 (22:32 +0000)]
remove -release tag so libsoup is named libsoup.so.0.1.9 not

2001-02-20  Alex Graveley  <alex@ximian.com>

* src/soup-core/Makefile.am (libsoup_la_LDFLAGS): remove -release
tag so libsoup is named libsoup.so.0.1.9 not libsoup-0.1.9.so.0.0.0

* soupConf.sh.in (SOUP_INCLUDEDIR): use $CPPFLAGS instead of $CFLAGS.

* soup-config.in (depend_cflags): use $CPPFLAGS instead of $CFLAGS.

* configure.in: Clean up to use $CPPFLAGS instead of $CFLAGS for
storing glib, gnet, libxml, openssl, nspr, and nss header
locations.

23 years agocleaned up to no longer link with an SSL library. Added options
Alex Graveley [Tue, 20 Feb 2001 08:42:29 +0000 (08:42 +0000)]
cleaned up to no longer link with an SSL library. Added options

2001-02-20  Alex Graveley  <alex@ximian.com>

* configure.in: cleaned up to no longer link with an SSL
library. Added options --with-nspr-includes, --with-nspr-libs,
--with-nss-includes, --with-nss-libs, --with-openssl-includes, and
--with-openssl-libs.

* src/soup-core/Makefile.am (libsoup_la_SOURCES): Add
soup-nss.[ch], and soup-openssl.[ch].

* src/soup-core/soup-openssl.c: Added. Move existing OpenSSL code
here. Convert to using GModule to load the shared library at runtime.

* src/soup-core/soup-nss.c: Added. Initial implementation of NSS
SSL support. Uses GModule to perform runtime loading. Needs
serious testing.

* src/soup-core/soup-ssl.c (soup_set_security_policy): Sets the
underlying SSL library's policy wrt allowed ciphers. Valid options
are DOMESTIC, EXPORT, and FRANCE, though these may change as
domestic and export are confusing terms.
(soup_ssl_init): Now simply chains SSL library initialization until
one is loaded successfully. Attempts to start NSS then OpenSSL, then
simply fails gracefully for future SSL connections.
(soup_ssl_get_iochannel): dispatch to the underlying SSL library
in use, or return NULL if none are available.

* src/soup-core/soup-misc.c (soup_load_config_internal): Converted
to use generic config file option table.
(soup_config_connection_limit): Added. Set the connection limit
given a "connection-limit" config file option.
(soup_config_proxy_uri): Added. Set the proxy uri given a
"proxy-uri" or "proxy-url" config file option.
(soup_config_security_policy): Added. Allows setting the SSL security
policy from the config file.

23 years agoclear out some unneccassry cruft as currently all tests link against
Alex Graveley [Fri, 16 Feb 2001 22:45:39 +0000 (22:45 +0000)]
clear out some unneccassry cruft as currently all tests link against

2001-02-16  Alex Graveley  <alex@ximian.com>

* tests/Makefile.am: clear out some unneccassry cruft as currently
all tests link against libsoup.

* src/soup-wsdl/Makefile.am (soup_wsdl_SOURCES): add wsdl.h.

* src/soup-core/Makefile.am (libsoup_la_SOURCES): add
soup-headers.h, soup-private.h, soup-socks.h, and soup-ssl.h to
pass distcheck.

23 years agoBump version number to 0.19
alex [Thu, 15 Feb 2001 20:04:20 +0000 (20:04 +0000)]
Bump version number to 0.19

* Bump version number to 0.19

23 years agoupdate to return void from the callback. (main): do not requeue existing
Alex Graveley [Thu, 15 Feb 2001 19:54:05 +0000 (19:54 +0000)]
update to return void from the callback. (main): do not requeue existing

2001-02-15  Alex Graveley  <alex@ximian.com>

* tests/stress-test.c (current_temp_cb): update to return void
from the callback.
(main): do not requeue existing messages when they have finished,
as they will be freed. instead create new SoupMessage objects.

* tests/simple-test.c (current_temp_cb): update to return void
from the callback.

* src/soup-core/soup-serializer.c (soup_serializer_start_element):
support creation of the request's SOAPAction header my taking the
namespace uri and name of the first element after starting the
body tag.

* src/soup-core/soup-queue.h: add SOUP_ERROR_HANDLER which will be
used by the upcoming handler/interceptor stuff to return an
application-level error to the message callback. Make
SoupCallbackFn return void.

* src/soup-core/soup-queue.c (soup_debug_print_headers): make public.
(soup_queue_write_async): attempt to write again if the first
write was okay and didn't block.

* src/soup-core/soup-uri.c (soup_debug_print_uri): make public.

* src/soup-core/soup-message.c (soup_message_issue_callback):
message callback now returns void, meaning that soup_queue_message()
takes ownership of the message and always frees it after calling
the callback (unless it was requeued from within the callback).

* src/soup-core/soup-headers.c (soup_headers_parse_request):
renamed from soup_parse_request_headers.
(soup_headers_parse_response): renamed from soup_parse_response_headers.
(soup_headers_parse): renamed from soup_parse_headers.

23 years agorenamed to soup_ssl_get_iochannel.
Alex Graveley [Tue, 13 Feb 2001 23:55:00 +0000 (23:55 +0000)]
renamed to soup_ssl_get_iochannel.

2001-02-13  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-ssl.c (soup_get_ssl_iochannel): renamed to
soup_ssl_get_iochannel.

23 years agowork around fact that data available in the socket does not always mean
Alex Graveley [Tue, 13 Feb 2001 22:59:58 +0000 (22:59 +0000)]
work around fact that data available in the socket does not always mean

2001-02-13  Alex Graveley  <alex@ximian.com>

* src/soup-core/soup-ssl.c (soup_ssl_add_watch): work around fact
that data available in the socket does not always mean unencrypted
data is available for reading.
(soup_ssl_read_cb): called on socket data available. Only call the
real callback if SSL_pending() returns > 0 meaning there is actual
data to read. there is a bug here as SSL_pending() always returns
false, so its commented out.

* src/soup-core/soup-queue.c (soup_queue_connect): add explicit
check for SOCKS protocol, remove call to soup_setup_socket.

* src/soup-core/soup-context.c (soup_connection_get_iochannel):
add channel member to SoupConnection, and serve it up for future
requests.

* src/soup-core/soup-queue.c (soup_setup_socket): removed.
(soup_get_request_header): change default Content-Type to
"text/xml; charset=utf-8".

* src/soup-core/soup-context.c (soup_connection_setup_socket):
moved soup-queue.c:soup_setup_socket() to here.

23 years agoInitial revision of server side request handling dispatcher.
alex [Mon, 12 Feb 2001 20:19:18 +0000 (20:19 +0000)]
Initial revision of server side request handling dispatcher.

2001-02-12  alex  <alex@ximian.com>

        * src/soup-core/soup-server.[ch]: Initial revision of server side
          request handling dispatcher.

23 years agoadd items left before a release.
alex [Mon, 12 Feb 2001 04:46:34 +0000 (04:46 +0000)]
add items left before a release.

2001-02-11  alex  <alex@ximian.com>

* TODO: add items left before a release.

* soup-queue.c: change default Content-Type to "text/xml" from
  "text/xml\r\n\tcharset=\"utf-8\"".

* soup-serializer.[ch]: added soup_serializer_new_full which
  removes unnecessary args to soup_serializer_start_envelope.
  rearrange namespace args to soup_serializer_start_element to match
  other methods. added soup_serializer_set_type to set the xsi:type,
  and soup_serializer_set_null to set xsi:null="1".

23 years agoremove some cruft.
alex [Tue, 6 Feb 2001 21:59:21 +0000 (21:59 +0000)]
remove some cruft.

2001-02-06  alex  <alex@ximian.com>

        * soup-config.in: remove some cruft.

        * soupConf.sh.in: remove some cruft.

        * src/soup-core/Makefile.am: build soup-headers.c

        * src/soup-core/soup-headers.[ch]: created. refactor of header parsing
          logic for use in requests and responses.

        * src/soup-core/soup-message.c: free req->response_phrase as it is now
          allocated.

        * src/soup-core/soup-queue.c (soup_parse_headers): use
          soup_parse_response_headers. (soup_queue_reqest): free
          req->response_phrase.

        * src/soup-core/soup-serializer.h: include <time.h>