AnyConnect Secure Mobility Client
5.1.19.1862
ClientIfcCommon.h
1
/**************************************************************************
2
* Copyright (c) 2022-2023, 2025 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
* Platforms capable of supporting our standard interprocess communication mechanisms. At present,
25
* all platforms on which the client is deployed support our standard IPC mechanisms.
26
*/
27
#define INTERPROCESS_COMMUNICATION_SUPPORTED
28
29
/*
30
* Platforms capable of supporting host data objects.
31
*/
32
#if defined(PLATFORM_ANDROID) || defined(PLATFORM_APPLE_SSLVPN)
33
#define HOST_DATA_SUPPORTED
34
#endif
35
36
/*
37
* Platforms capable of supporting manual import of PKCS12 certificates.
38
*/
39
#if defined(PLATFORM_APPLE_SSLVPN) || defined(PLATFORM_ANDROID) || defined(PLATFORM_WIN_APP)
40
#define MANUAL_PKCS12_IMPORT_SUPPORTED
41
#endif
42
43
/*
44
* Platforms capable of supporting importing of program data (e.g. localization and profile).
45
*/
46
#if defined(PLATFORM_ANDROID)
47
#define PROGRAM_DATA_IMPORT_SUPPORTED
48
#endif
49
50
/*
51
* Platforms capable of supporting prefilled connection credentials via URI handling or API calls.
52
*/
53
#if defined(PLATFORM_ANDROID)
54
#define CREDENTIAL_PREFILL_SUPPORTED
55
#endif
56
57
/*
58
* Platforms capable of supporting dynamic update of the local policy.
59
*/
60
#if defined(PLATFORM_ANDROID)
61
#define DYNAMIC_UPDATE_LOCAL_POLICY
62
#endif
// PLATFORM_ANDROID
63
64
#if defined(MANUAL_PKCS12_IMPORT_SUPPORTED)
65
#if defined(HAVE_STDINT_H)
66
#include <stdint.h>
67
#else
68
typedef
unsigned
char
uint8_t;
69
#endif
70
#endif
// MANUAL_PKCS12_IMPORT_SUPPORTED
71
72
#if defined(PLATFORM_WIN_APP)
73
typedef
unsigned
char
uint8_t;
74
#endif
75
76
/*
77
* Platforms capable of supporting local policy directory changes.
78
*/
79
#if defined(PLATFORM_DESKTOP) && !defined(DYNAMIC_UPDATE_LOCAL_POLICY)
80
#define LOCAL_POLICY_DIR_CHANGE_SUPPORTED
81
#endif
82
83
/*
84
* Platforms capable of supporting profile file directory changes.
85
*/
86
#if defined(PLATFORM_DESKTOP)
87
#define PROFILE_FILES_DIR_CHANGE_SUPPORTED
88
#endif
89
90
/*
91
* Platforms capable of supporting event notifications to the VPN API.
92
*/
93
#if defined(LOCAL_POLICY_DIR_CHANGE_SUPPORTED) || defined(PROFILE_FILES_DIR_CHANGE_SUPPORTED)
94
#define VPNAPI_EVENT_NOTIFICATION_SUPPORTED
95
#endif
96
97
/*
98
* Platforms capable of supporting the VPN API transmigration functionality.
99
*/
100
#if (defined(LOCAL_POLICY_DIR_CHANGE_SUPPORTED) || defined(PROFILE_FILES_DIR_CHANGE_SUPPORTED)) && \
101
defined(VPNAPI_EVENT_NOTIFICATION_SUPPORTED)
102
#define VPNAPI_TRANSMIGRATION_SUPPORTED
103
#endif
104
105
/*
106
* Platforms capable of supporting the user notifications of an updated local policy file or
107
* updated client profiles.
108
*/
109
#if defined(LOCAL_POLICY_DIR_CHANGE_SUPPORTED) || defined(PROFILE_FILES_DIR_CHANGE_SUPPORTED)
110
// #define VPNAPI_NOTIFY_USER_OF_POLICY_OR_PROFILE_CHANGE_SUPPORTED
111
#endif
112
113
#endif
// _CLIENTIFCCOMMON_
AnyConnect C++ API Documentation by
Cisco Systems