FreeRDP
include/freerdp/redirection.h
1 
21 #ifndef FREERDP_REDIRECTION_H
22 #define FREERDP_REDIRECTION_H
23 
24 #include <freerdp/api.h>
25 
26 /* Redirection Flags */
27 #define LB_TARGET_NET_ADDRESS 0x00000001
28 #define LB_LOAD_BALANCE_INFO 0x00000002
29 #define LB_USERNAME 0x00000004
30 #define LB_DOMAIN 0x00000008
31 #define LB_PASSWORD 0x00000010
32 #define LB_DONTSTOREUSERNAME 0x00000020
33 #define LB_SMARTCARD_LOGON 0x00000040
34 #define LB_NOREDIRECT 0x00000080
35 #define LB_TARGET_FQDN 0x00000100
36 #define LB_TARGET_NETBIOS_NAME 0x00000200
37 #define LB_TARGET_NET_ADDRESSES 0x00000800
38 #define LB_CLIENT_TSV_URL 0x00001000
39 #define LB_SERVER_TSV_CAPABLE 0x00002000
40 #define LB_PASSWORD_IS_PK_ENCRYPTED 0x00004000
41 #define LB_REDIRECTION_GUID 0x00008000
42 #define LB_TARGET_CERTIFICATE 0x00010000
43 
44 #define LB_PASSWORD_MAX_LENGTH 512
45 
46 #define ENCODING_TYPE_ASN1_DER 1
47 
48 #ifdef __cplusplus
49 extern "C"
50 {
51 #endif
52 
53  typedef struct rdp_redirection rdpRedirection;
54 
55  FREERDP_API void redirection_free(rdpRedirection* redirection);
56 
57  WINPR_ATTR_MALLOC(redirection_free, 1)
58  FREERDP_API rdpRedirection* redirection_new(void);
59 
69  FREERDP_API BOOL redirection_settings_are_valid(rdpRedirection* redirection, UINT32* pFlags);
70 
71  FREERDP_API BOOL redirection_set_flags(rdpRedirection* redirection, UINT32 flags);
72  FREERDP_API BOOL redirection_set_session_id(rdpRedirection* redirection, UINT32 session_id);
73  FREERDP_API BOOL redirection_set_byte_option(rdpRedirection* redirection, UINT32 flag,
74  const BYTE* data, size_t length);
75  FREERDP_API BOOL redirection_set_string_option(rdpRedirection* redirection, UINT32 flag,
76  const char* str);
77  FREERDP_API BOOL redirection_set_array_option(rdpRedirection* redirection, UINT32 flag,
78  const char** str, size_t count);
79 
80 #ifdef __cplusplus
81 }
82 #endif
83 
84 #endif /* FREERDP_REDIRECTION_H */