summaryrefslogtreecommitdiff
path: root/libsoup/soup-server.h
diff options
context:
space:
mode:
authorAlex Graveley <alex@ximian.com>2002-03-12 00:39:21 +0000
committerAlex Graveley <orph@src.gnome.org>2002-03-12 00:39:21 +0000
commit86cee35e3eee3e4b07be997cbc4dead5ed2acac1 (patch)
treee887d46ce44ab1fef4cd4795bce644069f6e6a30 /libsoup/soup-server.h
parent36709caafe9c1f25c687264356de083e7b22e3fa (diff)
downloadlibsoup-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.h138
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 */