summaryrefslogtreecommitdiff
path: root/src/libicalcap/icalcap_server.h
blob: 53c73d3bab6a19849864095e822a97091996a9f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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