Annotation of embedaddon/strongswan/src/libcharon/plugins/stroke/stroke_handler.h, revision 1.1.1.1
1.1 misho 1: /*
2: * Copyright (C) 2012 Martin Willi
3: * Copyright (C) 2012 revosec AG
4: *
5: * This program is free software; you can redistribute it and/or modify it
6: * under the terms of the GNU General Public License as published by the
7: * Free Software Foundation; either version 2 of the License, or (at your
8: * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
9: *
10: * This program is distributed in the hope that it will be useful, but
11: * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13: * for more details.
14: */
15:
16: /**
17: * @defgroup stroke_handler stroke_handler
18: * @{ @ingroup stroke
19: */
20:
21: #ifndef STROKE_HANDLER_H_
22: #define STROKE_HANDLER_H_
23:
24: #include <stroke_msg.h>
25: #include <attributes/attribute_handler.h>
26:
27: typedef struct stroke_handler_t stroke_handler_t;
28:
29: /**
30: * Handler requesting DNS attributes as defined with leftdns option.
31: */
32: struct stroke_handler_t {
33:
34: /**
35: * Implements the attribute_handler_t interface
36: */
37: attribute_handler_t handler;
38:
39: /**
40: * Add connection specific configuration attributes.
41: *
42: * @param msg stroke message
43: */
44: void (*add_attributes)(stroke_handler_t *this, stroke_msg_t *msg);
45:
46: /**
47: * Remove connection specific configuration attributes.
48: *
49: * @param msg stroke message
50: */
51: void (*del_attributes)(stroke_handler_t *this, stroke_msg_t *msg);
52:
53: /**
54: * Destroy a stroke_handler_t.
55: */
56: void (*destroy)(stroke_handler_t *this);
57: };
58:
59: /**
60: * Create a stroke_handler instance.
61: */
62: stroke_handler_t *stroke_handler_create();
63:
64: #endif /** STROKE_HANDLER_H_ @}*/
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>