113 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			113 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			C
		
	
	
	
| #ifndef __VNCTIGHT_H
 | |
| #define __VNCTIGHT_H
 | |
| 
 | |
| /*****************************************************************************
 | |
|  *
 | |
|  * Authentication modes
 | |
|  *
 | |
|  *****************************************************************************/
 | |
| 
 | |
| enum {
 | |
|     VNC_AUTH_INVALID = 0,
 | |
|     VNC_AUTH_NONE = 1,
 | |
|     VNC_AUTH_VNC = 2,
 | |
|     VNC_AUTH_RA2 = 5,
 | |
|     VNC_AUTH_RA2NE = 6,
 | |
|     VNC_AUTH_TIGHT = 16,
 | |
|     VNC_AUTH_ULTRA = 17,
 | |
|     VNC_AUTH_TLS = 18,
 | |
|     VNC_AUTH_VENCRYPT = 19
 | |
| };
 | |
| 
 | |
| #ifdef CONFIG_VNC_TLS
 | |
| enum {
 | |
|     VNC_WIREMODE_CLEAR,
 | |
|     VNC_WIREMODE_TLS,
 | |
| };
 | |
| 
 | |
| enum {
 | |
|     VNC_AUTH_VENCRYPT_PLAIN = 256,
 | |
|     VNC_AUTH_VENCRYPT_TLSNONE = 257,
 | |
|     VNC_AUTH_VENCRYPT_TLSVNC = 258,
 | |
|     VNC_AUTH_VENCRYPT_TLSPLAIN = 259,
 | |
|     VNC_AUTH_VENCRYPT_X509NONE = 260,
 | |
|     VNC_AUTH_VENCRYPT_X509VNC = 261,
 | |
|     VNC_AUTH_VENCRYPT_X509PLAIN = 262,
 | |
| };
 | |
| 
 | |
| #define X509_CA_CERT_FILE "ca-cert.pem"
 | |
| #define X509_CA_CRL_FILE "ca-crl.pem"
 | |
| #define X509_SERVER_KEY_FILE "server-key.pem"
 | |
| #define X509_SERVER_CERT_FILE "server-cert.pem"
 | |
| 
 | |
| #endif /* CONFIG_VNC_TLS */
 | |
| 
 | |
| /*****************************************************************************
 | |
|  *
 | |
|  * Encoding types
 | |
|  *
 | |
|  *****************************************************************************/
 | |
| 
 | |
| #define VNC_ENCODING_RAW                  0x00000000
 | |
| #define VNC_ENCODING_COPYRECT             0x00000001
 | |
| #define VNC_ENCODING_RRE                  0x00000002
 | |
| #define VNC_ENCODING_CORRE                0x00000004
 | |
| #define VNC_ENCODING_HEXTILE              0x00000005
 | |
| #define VNC_ENCODING_ZLIB                 0x00000006
 | |
| #define VNC_ENCODING_TIGHT                0x00000007
 | |
| #define VNC_ENCODING_ZLIBHEX              0x00000008
 | |
| #define VNC_ENCODING_TRLE                 0x0000000f
 | |
| #define VNC_ENCODING_ZRLE                 0x00000010
 | |
| #define VNC_ENCODING_ZYWRLE               0x00000011
 | |
| #define VNC_ENCODING_COMPRESSLEVEL0       0xFFFFFF00 /* -256 */
 | |
| #define VNC_ENCODING_QUALITYLEVEL0        0xFFFFFFE0 /* -32  */
 | |
| #define VNC_ENCODING_XCURSOR              0xFFFFFF10 /* -240 */
 | |
| #define VNC_ENCODING_RICH_CURSOR          0xFFFFFF11 /* -239 */
 | |
| #define VNC_ENCODING_POINTER_POS          0xFFFFFF18 /* -232 */
 | |
| #define VNC_ENCODING_LASTRECT             0xFFFFFF20 /* -224 */
 | |
| #define VNC_ENCODING_DESKTOPRESIZE        0xFFFFFF21 /* -223 */
 | |
| #define VNC_ENCODING_POINTER_TYPE_CHANGE  0XFFFFFEFF /* -257 */
 | |
| #define VNC_ENCODING_EXT_KEY_EVENT        0XFFFFFEFE /* -258 */
 | |
| #define VNC_ENCODING_AUDIO                0XFFFFFEFD /* -259 */
 | |
| #define VNC_ENCODING_WMVi                 0x574D5669
 | |
| 
 | |
| /*****************************************************************************
 | |
|  *
 | |
|  * Other tight constants
 | |
|  *
 | |
|  *****************************************************************************/
 | |
| 
 | |
| /*
 | |
|  * Vendors known by TightVNC: standard VNC/RealVNC, TridiaVNC, and TightVNC.
 | |
|  */
 | |
| 
 | |
| #define VNC_TIGHT_CCB_RESET_MASK   (0x0f)
 | |
| #define VNC_TIGHT_CCB_TYPE_MASK    (0x0f << 4)
 | |
| #define VNC_TIGHT_CCB_TYPE_FILL    (0x08 << 4)
 | |
| #define VNC_TIGHT_CCB_TYPE_JPEG    (0x09 << 4)
 | |
| #define VNC_TIGHT_CCB_BASIC_MAX    (0x07 << 4)
 | |
| #define VNC_TIGHT_CCB_BASIC_ZLIB   (0x03 << 4)
 | |
| #define VNC_TIGHT_CCB_BASIC_FILTER (0x04 << 4)
 | |
| 
 | |
| /*****************************************************************************
 | |
|  *
 | |
|  * Features
 | |
|  *
 | |
|  *****************************************************************************/
 | |
| 
 | |
| #define VNC_FEATURE_RESIZE                   0
 | |
| #define VNC_FEATURE_HEXTILE                  1
 | |
| #define VNC_FEATURE_POINTER_TYPE_CHANGE      2
 | |
| #define VNC_FEATURE_WMVI                     3
 | |
| #define VNC_FEATURE_TIGHT                    4
 | |
| #define VNC_FEATURE_ZLIB                     5
 | |
| 
 | |
| #define VNC_FEATURE_RESIZE_MASK              (1 << VNC_FEATURE_RESIZE)
 | |
| #define VNC_FEATURE_HEXTILE_MASK             (1 << VNC_FEATURE_HEXTILE)
 | |
| #define VNC_FEATURE_POINTER_TYPE_CHANGE_MASK (1 << VNC_FEATURE_POINTER_TYPE_CHANGE)
 | |
| #define VNC_FEATURE_WMVI_MASK                (1 << VNC_FEATURE_WMVI)
 | |
| #define VNC_FEATURE_TIGHT_MASK               (1 << VNC_FEATURE_TIGHT)
 | |
| #define VNC_FEATURE_ZLIB_MASK                (1 << VNC_FEATURE_ZLIB)
 | |
| 
 | |
| #endif /* __VNCTIGHT_H */
 |