diff options
author | Alex Graveley <alex@ximian.com> | 2002-03-12 00:39:21 +0000 |
---|---|---|
committer | Alex Graveley <orph@src.gnome.org> | 2002-03-12 00:39:21 +0000 |
commit | 86cee35e3eee3e4b07be997cbc4dead5ed2acac1 (patch) | |
tree | e887d46ce44ab1fef4cd4795bce644069f6e6a30 /libsoup/soup-server.h | |
parent | 36709caafe9c1f25c687264356de083e7b22e3fa (diff) | |
download | libsoup-86cee35e3eee3e4b07be997cbc4dead5ed2acac1.tar.gz |
Bump development version to 0.7.99.
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.
Diffstat (limited to 'libsoup/soup-server.h')
-rw-r--r-- | libsoup/soup-server.h | 138 |
1 files changed, 64 insertions, 74 deletions
diff --git a/libsoup/soup-server.h b/libsoup/soup-server.h index cac094a3..9245381a 100644 --- a/libsoup/soup-server.h +++ b/libsoup/soup-server.h @@ -13,104 +13,94 @@ #include <glib.h> #include <libsoup/soup-message.h> +#include <libsoup/soup-method.h> #include <libsoup/soup-misc.h> #include <libsoup/soup-uri.h> +#include <libsoup/soup-server-auth.h> -typedef struct { - SoupAuthType type; - const gchar *realm; - const gchar *username; - const gchar *password; -} SoupServerBasicToken; +typedef struct _SoupServer SoupServer; +typedef struct _SoupServerHandler SoupServerHandler; typedef struct { - SoupAuthType type; - const gchar *realm; - const gchar *username; - const gchar *password_hash; -} SoupServerDigestToken; + SoupMessage *msg; + gchar *path; + SoupMethodId method_id; + SoupServerAuth *auth; + SoupServer *server; + SoupServerHandler *handler; +} SoupServerContext; -typedef struct { - SoupAuthType type; - const gchar *host; - const gchar *domain; - const gchar *user; - const gchar *lm_hash; - const gchar *nt_hash; -} SoupServerNTLMToken; - -typedef union { - SoupAuthType type; - SoupServerBasicToken basic; - SoupServerDigestToken digest; - SoupServerNTLMToken ntlm; -} SoupServerAuthToken; - -typedef void (*SoupServerCallbackFn) (SoupMessage *msg, - SoupServerAuthToken *token, - gpointer data); +typedef void (*SoupServerCallbackFn) (SoupServerContext *context, + SoupMessage *msg, + gpointer user_data); -typedef struct { - gchar *path; - guint auth_types; - SoupServerCallbackFn cb; - gpointer user_data; -} SoupServerHandler; +typedef void (*SoupServerUnregisterFn) (SoupServer *server, + SoupServerHandler *handler, + gpointer user_data); -typedef struct _SoupServer SoupServer; +struct _SoupServerHandler { + const gchar *path; + + SoupServerAuthContext *auth_ctx; -extern SoupServer *SOUP_CGI_SERVER; -extern SoupServer *SOUP_HTTPD_SERVER; -extern SoupServer *SOUP_HTTPD_SSL_SERVER; + SoupServerCallbackFn callback; + SoupServerUnregisterFn unregister; + gpointer user_data; +}; -SoupServer * soup_server_new (SoupProtocol proto, - guint port); +SoupServer *soup_server_new (SoupProtocol proto, + guint port); -void soup_server_free (SoupServer *serv); +SoupServer *soup_server_cgi (void); -gint soup_server_get_port (SoupServer *serv); +void soup_server_ref (SoupServer *serv); -void soup_server_run (SoupServer *serv); +void soup_server_unref (SoupServer *serv); -void soup_server_run_async (SoupServer *serv); +SoupProtocol soup_server_get_protocol (SoupServer *serv); -void soup_server_quit (SoupServer *serv); +gint soup_server_get_port (SoupServer *serv); -void soup_server_add_list (SoupServer *serv, - SoupServerHandler *list); +void soup_server_run (SoupServer *serv); -void soup_server_remove_list (SoupServer *serv, - SoupServerHandler *list); +void soup_server_run_async (SoupServer *serv); -void soup_server_register (SoupServer *serv, - const gchar *path, - guint authtype, - SoupServerCallbackFn cb, - gpointer data); +void soup_server_quit (SoupServer *serv); -void soup_server_register_default (SoupServer *serv, - guint authtype, - SoupServerCallbackFn cb, - gpointer data); +void soup_server_register (SoupServer *serv, + const gchar *path, + SoupServerAuthContext *auth_ctx, + SoupServerCallbackFn callback, + SoupServerUnregisterFn unregister, + gpointer user_data); + +void soup_server_unregister (SoupServer *serv, + const gchar *path); + +SoupServerHandler *soup_server_get_handler (SoupServer *serv, + const gchar *path); + +GSList *soup_server_list_handlers (SoupServer *serv); + +/* + * Apache/soup-httpd module initializtion + * Implement soup_server_init() in your shared library. + */ +extern void soup_server_init (SoupServer *server); -void soup_server_unregister (SoupServer *serv, - const gchar *path); +typedef struct _SoupServerMessage SoupServerMessage; -SoupServerHandler *soup_server_get_handler (SoupServer *serv, - const gchar *path); +SoupServerMessage *soup_server_message_new (SoupMessage *src_msg); -void soup_server_set_auth (SoupServer *serv, - const gchar *path, - guint auth_types, - const gchar *realm); +void soup_server_message_start (SoupServerMessage *servmsg); -void soup_server_require_auth (SoupMessage *message, - guint auth_types, - const gchar *realm); +void soup_server_message_add_data (SoupServerMessage *servmsg, + SoupOwnership owner, + gchar *body, + gulong length); +void soup_server_message_finish (SoupServerMessage *servmsg); -/* Apache module initializtion */ -/* Implement soup_server_init() in your library. */ -extern void soup_server_init (void); +SoupMessage *soup_server_message_get_source (SoupServerMessage *servmsg); #endif /* SOUP_SERVER_H */ |