merging changes from portability branch back to trunk
[strongswan.git] / src / medsrv / controller / peer_controller.h
1 /*
2 * Copyright (C) 2008 Martin Willi
3 * Copyright (C) 2008 Philip Boetschi, Adrian Doerig
4 * Hochschule fuer Technik Rapperswil
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation; either version 2 of the License, or (at your
9 * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
10 *
11 * This program is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 *
16 * $Id$
17 */
18
19 /**
20 * @defgroup peer_controller_server peer_controller
21 * @{ @ingroup controller_server
22 */
23
24 #ifndef PEER_CONTROLLER_H_
25 #define PEER_CONTROLLER_H_
26
27 #include <user.h>
28
29 #include <controller.h>
30 #include <database/database.h>
31
32 typedef struct peer_controller_t peer_controller_t;
33
34 /**
35 * Peer controller. Manages peers associated to a user.
36 */
37 struct peer_controller_t {
38
39 /**
40 * Implements controller_t interface.
41 */
42 controller_t controller;
43 };
44
45 /**
46 * Create a peer_controller controller instance.
47 */
48 controller_t *peer_controller_create(user_t *user, database_t *db);
49
50 #endif /* PEER_CONTROLLER_H_ @} */