kernel-netlink: Check return value of both halfs when installing default route in...
[strongswan.git] / src / pool / pool_attributes.h
1 /*
2 * Copyright (C) 2009-2010 Andreas Steffen
3 * HSR Hochschule fuer Technik Rapperswil
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 #ifndef POOL_ATTRIBUTES_H_
17 #define POOL_ATTRIBUTES_H_
18
19 #include <attributes/attributes.h>
20
21 typedef enum value_type_t value_type_t;
22
23 enum value_type_t {
24 VALUE_NONE,
25 VALUE_HEX,
26 VALUE_STRING,
27 VALUE_ADDR,
28 VALUE_SUBNET
29 };
30
31 /**
32 * enum names for value_type_t.
33 */
34 extern enum_name_t *value_type_names;
35
36 /**
37 * lookup/insert an identity
38 */
39 u_int get_identity(identification_t *id);
40
41 /**
42 * ipsec pool --addattr <type> - add attribute entry
43 */
44 void add_attr(char *name, char *pool, char *identity,
45 char *value, value_type_t value_type);
46
47 /**
48 * ipsec pool --delattr <type> - delete attribute entry
49 */
50 void del_attr(char *name, char *pool, char *identity,
51 char *value, value_type_t value_type);
52
53 /**
54 * ipsec pool --statusattr - show all attribute entries
55 */
56 void status_attr(bool hexout);
57
58 /**
59 * ipsec pool --showattr - show all supported attribute keywords
60 */
61 void show_attr(void);
62
63 #endif /* POOL_ATTRIBUTES_H_ */