FreeRDP
Loading...
Searching...
No Matches
aad_helper.h
1
20#ifndef FREERDP_CLIENT_COMMON_AAD_HELPER_H
21#define FREERDP_CLIENT_COMMON_AAD_HELPER_H
22
23#include <winpr/wtypes.h>
24#include <freerdp/api.h>
25#include <freerdp/freerdp.h>
26
27#ifdef __cplusplus
28extern "C"
29{
30#endif
31
38 typedef struct AadAuthHelper AadAuthHelper;
39
41 typedef enum
42 {
43 AAD_AUTH_HELPER_NAVIGATE_OK = 1,
44 AAD_AUTH_HELPER_NAVIGATE_CANCELLED,
47 AAD_AUTH_HELPER_NAVIGATE_TIMEOUT,
48 AAD_AUTH_HELPER_NAVIGATE_ERROR
50 } AadAuthHelperNavigateStatus;
51
57 FREERDP_API void aad_auth_helper_stop(AadAuthHelper* helper);
58
65 WINPR_ATTR_MALLOC(aad_auth_helper_stop, 1)
66 FREERDP_API AadAuthHelper* aad_auth_helper_start(rdpClientContext* context);
67
75 WINPR_ATTR_NODISCARD
76 FREERDP_API BOOL aad_auth_helper_is_running(const AadAuthHelper* helper);
77
97 WINPR_ATTR_NODISCARD
98 FREERDP_API BOOL aad_auth_helper_get_access_token_v(AadAuthHelper* helper,
99 AccessTokenType tokenType, char** token,
100 size_t count, va_list args);
101
112 WINPR_ATTR_NODISCARD
113 FREERDP_API BOOL aad_auth_helper_get_access_token(AadAuthHelper* helper,
114 AccessTokenType tokenType, char** token,
115 size_t count, ...);
116
117#ifdef __cplusplus
118}
119#endif
120
121#endif /* FREERDP_CLIENT_COMMON_AAD_HELPER_H */