AnyConnect Secure Mobility Client
5.1.2.42
Main Page
Related Pages
Classes
Files
File List
File Members
ClientIfcCommon.h
1
/**************************************************************************
2
* Copyright (c) 2022-2023 Cisco Systems, Inc.
3
* All Rights Reserved. Cisco Highly Confidential.
4
***************************************************************************
5
*
6
* File: ClientIfcCommon.h
7
* Author: Chris Fitzgerald
8
* Date: 03/2022
9
*
10
***************************************************************************
11
* Client Interface Common defines for the Client API.
12
***************************************************************************/
13
#ifndef _CLIENTIFCCOMMON_
14
#define _CLIENTIFCCOMMON_
15
16
/*
17
* Platforms capable of supporting SNAK.
18
*/
19
#if defined(PLATFORM_WIN_APP)
20
#define ANYCONNECT_USE_SNAK
21
#endif
22
23
/*
24
* Aggregate the compiler directives that together identify desktop platforms into a single define.
25
*/
26
#if (defined(_WIN32) || defined(PLATFORM_DARWIN) \
27
|| (defined(PLATFORM_LINUX) && !defined(ANYCONNECT_USE_SNAK) && !defined (PLATFORM_ANDROID))) \
28
&& !defined(PLATFORM_WIN_APP)
29
#define PLATFORM_DESKTOP
30
#endif
31
32
/*
33
* Platforms capable of supporting our standard interprocess communication mechanisms. At present,
34
* all platforms on which the client is deployed support our standard IPC mechanisms.
35
*/
36
#define INTERPROCESS_COMMUNICATION_SUPPORTED
37
38
/*
39
* Platforms capable of supporting host data objects.
40
*/
41
#if defined(PLATFORM_ANDROID) || defined(PLATFORM_APPLE_SSLVPN)
42
#define HOST_DATA_SUPPORTED
43
#endif
44
45
/*
46
* Platforms capable of supporting manual import of PKCS12 certificates.
47
*/
48
#if defined(PLATFORM_APPLE_SSLVPN) || defined(PLATFORM_ANDROID) || defined(PLATFORM_WIN_APP)
49
#define MANUAL_PKCS12_IMPORT_SUPPORTED
50
#endif
51
52
/*
53
* Platforms capable of supporting importing of program data (e.g. localization and profile).
54
*/
55
#if defined(PLATFORM_ANDROID)
56
#define PROGRAM_DATA_IMPORT_SUPPORTED
57
#endif
58
59
/*
60
* Platforms capable of supporting prefilled connection credentials via URI handling or API calls.
61
*/
62
#if defined(PLATFORM_ANDROID)
63
#define CREDENTIAL_PREFILL_SUPPORTED
64
#endif
65
66
/*
67
* Platforms capable of supporting dynamic update of the local policy.
68
*/
69
#if defined(PLATFORM_ANDROID)
70
#define DYNAMIC_UPDATE_LOCAL_POLICY
71
#endif // PLATFORM_ANDROID
72
73
#if defined(MANUAL_PKCS12_IMPORT_SUPPORTED)
74
#if defined(HAVE_STDINT_H)
75
#include <stdint.h>
76
#else
77
typedef
unsigned
char
uint8_t;
78
#endif
79
#endif // MANUAL_PKCS12_IMPORT_SUPPORTED
80
81
#if defined(PLATFORM_WIN_APP)
82
typedef
unsigned
char
uint8_t;
83
#endif
84
85
/*
86
* Platforms capable of supporting local policy directory changes.
87
*/
88
#if defined(PLATFORM_DESKTOP) && !defined(DYNAMIC_UPDATE_LOCAL_POLICY)
89
#define LOCAL_POLICY_DIR_CHANGE_SUPPORTED
90
#endif
91
92
/*
93
* Platforms capable of supporting profile file directory changes.
94
*/
95
#if defined(PLATFORM_DESKTOP)
96
#define PROFILE_FILES_DIR_CHANGE_SUPPORTED
97
#endif
98
99
/*
100
* Platforms capable of supporting event notifications to the VPN API.
101
*/
102
#if defined(LOCAL_POLICY_DIR_CHANGE_SUPPORTED) || defined(PROFILE_FILES_DIR_CHANGE_SUPPORTED)
103
#define VPNAPI_EVENT_NOTIFICATION_SUPPORTED
104
#endif
105
106
#endif // _CLIENTIFCCOMMON_
AnyConnect C++ API Documentation by
Cisco Systems