Makefile: replace -Os with -O2
[fbvnc.git] / vnc.h
blob2d43d6531a741ce6a504cb9ee0b211c4f5b67580
1 #define VNC_CONN_FAILED 0
2 #define VNC_CONN_NOAUTH 1
3 #define VNC_CONN_AUTH 2
5 #define VNC_AUTH_OK 0
6 #define VNC_AUTH_FAILED 1
7 #define VNC_AUTH_TOOMANY 2
9 #define VNC_UPDATE 0
10 #define VNC_SERVERCOLORMAP 1
11 #define VNC_BELL 2
12 #define VNC_SERVERCUTTEXT 3
14 #define VNC_SETPIXELFORMAT 0
15 #define VNC_SETCOLORMAPENTRIES 1
16 #define VNC_SETENCODING 2
17 #define VNC_UPDATEREQUEST 3
18 #define VNC_KEYEVENT 4
19 #define VNC_POINTEREVENT 5
20 #define VNC_CLIENTCUTTEXT 6
22 #define VNC_ENC_RAW 0
23 #define VNC_ENC_COPYRECT 1
24 #define VNC_ENC_RRE 2
25 #define VNC_ENC_CORRE 4
26 #define VNC_ENC_HEXTILE 5
28 #define VNC_BUTTON1_MASK 0x01
29 #define VNC_BUTTON2_MASK 0x02
30 #define VNC_BUTTON3_MASK 0x04
31 #define VNC_BUTTON4_MASK 0x10
32 #define VNC_BUTTON5_MASK 0x08
34 typedef unsigned char u8;
35 typedef unsigned short u16;
36 typedef unsigned int u32;
38 struct vnc_pixelformat {
39 u8 bpp;
40 u8 depth;
41 u8 bigendian;
42 u8 truecolor;
43 u16 rmax;
44 u16 gmax;
45 u16 bmax;
46 u8 rshl;
47 u8 gshl;
48 u8 bshl;
49 u8 pad1;
50 u16 pad2;
53 struct vnc_clientinit {
54 u8 shared;
57 struct vnc_serverinit {
58 u16 w;
59 u16 h;
60 struct vnc_pixelformat fmt;
61 u32 len;
62 /* char name[len]; */
65 struct vnc_rect {
66 u16 x, y;
67 u16 w, h;
68 u32 enc;
69 /* rect bytes */
72 struct vnc_update {
73 u8 type;
74 u8 pad;
75 u16 n;
76 /* struct vnc_rect rects[n]; */
79 struct vnc_servercuttext {
80 u8 type;
81 u8 pad1;
82 u16 pad2;
83 u32 len;
84 /* char text[length] */
87 struct vnc_setcolormapentries {
88 u8 type;
89 u8 pad;
90 u16 first;
91 u16 n;
92 /* u8 colors[n * 3 * 2]; */
95 struct vnc_setpixelformat {
96 u8 type;
97 u8 pad1;
98 u16 pad2;
99 struct vnc_pixelformat format;
102 struct vnc_setencoding {
103 u8 type;
104 u8 pad;
105 u16 n;
106 /* s32[n] */
109 struct vnc_updaterequest {
110 u8 type;
111 u8 inc;
112 u16 x;
113 u16 y;
114 u16 w;
115 u16 h;
118 struct vnc_keyevent {
119 u8 type;
120 u8 down;
121 u16 pad;
122 u32 key;
125 struct vnc_pointerevent {
126 u8 type;
127 u8 mask;
128 u16 x;
129 u16 y;