aboutsummaryrefslogtreecommitdiffstats
path: root/libical/src/libicalcap/icalcap_server.h
diff options
context:
space:
mode:
Diffstat (limited to 'libical/src/libicalcap/icalcap_server.h')
-rw-r--r--libical/src/libicalcap/icalcap_server.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/libical/src/libicalcap/icalcap_server.h b/libical/src/libicalcap/icalcap_server.h
new file mode 100644
index 0000000000..53c73d3bab
--- /dev/null
+++ b/libical/src/libicalcap/icalcap_server.h
@@ -0,0 +1,19 @@
+#ifndef __ICALCAP_SERVER_H__
+#define __ICALCAP_SERVER_H__
+
+#include "icalcap.h"
+
+typedef struct _icalcap_server icalcap_server;
+
+typedef int (*icalcap_auth_handler)(const icalcap *cap, const char *piggyback);
+typedef void (*icalcap_chanup_handler)(const icalcap *cap);
+
+icalcap_server*icalcap_server_new(icalcap_auth_handler auth_cb,
+ icalcap_chanup_handler chanup_cb,
+ icalcap_msg_handler msg_cb);
+
+int icalcap_server_listen(icalcap_server *cap, const char *hostname, const int port);
+int icalcap_server_run(const icalcap_server *cap);
+int icalcap_server_shutdown(icalcap_server *cap);
+
+#endif