Annotation of embedaddon/strongswan/src/libimcv/imcv.h, revision 1.1.1.2
1.1 misho 1: /*
2: * Copyright (C) 2011 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: /**
17: * @defgroup libimcv libimcv
18: *
19: * @defgroup generic_attr generic_attr
20: * @ingroup libimcv
21: *
22: * @defgroup libimcv_imc imc
23: * @ingroup libimcv
24: *
25: * @defgroup libimcv_imv imv
26: * @ingroup libimcv
27: *
28: * @defgroup pa_tnc pa_tnc
29: * @ingroup libimcv
30: *
31: * @defgroup libimcv_plugins plugins
32: * @ingroup libimcv
33: *
34: * @defgroup libimcv_seg seg
35: * @ingroup libimcv
36: *
37: * @defgroup libimcv_swima swima
38: * @ingroup libimcv
39: *
40: * @addtogroup libimcv
41: * @{
42: */
43:
44: #ifndef IMCV_H_
45: #define IMCV_H_
46:
47: #include "pa_tnc/pa_tnc_attr_manager.h"
48: #include "imv/imv_database.h"
49: #include "imv/imv_session_manager.h"
50: #include "pts/components/pts_component_manager.h"
51:
52: #include <library.h>
53:
54: /**
55: * Initialize libimcv.
56: *
57: * @param is_imv TRUE if called by IMV, FALSE if by IMC
58: * @return FALSE if initialization failed
59: */
60: bool libimcv_init(bool is_imv);
61:
62: /**
63: * Deinitialize libimcv.
64: */
65: void libimcv_deinit(void);
66:
67: /**
68: * PA-TNC attribute manager
69: */
70: extern pa_tnc_attr_manager_t* imcv_pa_tnc_attributes;
71:
72: /**
73: * Global IMV database object
74: */
75: extern imv_database_t* imcv_db;
76:
77: /**
78: * Global IMV session manager
79: */
80: extern imv_session_manager_t* imcv_sessions;
81:
82: /**
83: * PTS Functional Component manager
84: */
85: extern pts_component_manager_t* imcv_pts_components;
86:
87: #endif /** IMCV_H_ @}*/
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>