31 static const unsigned char
33 0x00, 0x00, 0x00, 0x07, 0x6f, 0x70, 0x74, 0x69,
34 0x6f, 0x6e, 0x73, 0x00, 0x00, 0x00, 0x04, 0x68,
35 0x65, 0x61, 0x64, 0x00, 0x00, 0x00, 0x04, 0x70,
36 0x6f, 0x73, 0x74, 0x00, 0x00, 0x00, 0x03, 0x70,
37 0x75, 0x74, 0x00, 0x00, 0x00, 0x06, 0x64, 0x65,
38 0x6c, 0x65, 0x74, 0x65, 0x00, 0x00, 0x00, 0x05,
39 0x74, 0x72, 0x61, 0x63, 0x65, 0x00, 0x00, 0x00,
40 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x00,
41 0x00, 0x00, 0x0e, 0x61, 0x63, 0x63, 0x65, 0x70,
42 0x74, 0x2d, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65,
43 0x74, 0x00, 0x00, 0x00, 0x0f, 0x61, 0x63, 0x63,
44 0x65, 0x70, 0x74, 0x2d, 0x65, 0x6e, 0x63, 0x6f,
45 0x64, 0x69, 0x6e, 0x67, 0x00, 0x00, 0x00, 0x0f,
46 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x2d, 0x6c,
47 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x00,
48 0x00, 0x00, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x70,
49 0x74, 0x2d, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73,
50 0x00, 0x00, 0x00, 0x03, 0x61, 0x67, 0x65, 0x00,
51 0x00, 0x00, 0x05, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
52 0x00, 0x00, 0x00, 0x0d, 0x61, 0x75, 0x74, 0x68,
53 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
54 0x6e, 0x00, 0x00, 0x00, 0x0d, 0x63, 0x61, 0x63,
55 0x68, 0x65, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x72,
56 0x6f, 0x6c, 0x00, 0x00, 0x00, 0x0a, 0x63, 0x6f,
57 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
58 0x00, 0x00, 0x00, 0x0c, 0x63, 0x6f, 0x6e, 0x74,
59 0x65, 0x6e, 0x74, 0x2d, 0x62, 0x61, 0x73, 0x65,
60 0x00, 0x00, 0x00, 0x10, 0x63, 0x6f, 0x6e, 0x74,
61 0x65, 0x6e, 0x74, 0x2d, 0x65, 0x6e, 0x63, 0x6f,
62 0x64, 0x69, 0x6e, 0x67, 0x00, 0x00, 0x00, 0x10,
63 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d,
64 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
65 0x00, 0x00, 0x00, 0x0e, 0x63, 0x6f, 0x6e, 0x74,
66 0x65, 0x6e, 0x74, 0x2d, 0x6c, 0x65, 0x6e, 0x67,
67 0x74, 0x68, 0x00, 0x00, 0x00, 0x10, 0x63, 0x6f,
68 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, 0x6c, 0x6f,
69 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x00,
70 0x00, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
71 0x74, 0x2d, 0x6d, 0x64, 0x35, 0x00, 0x00, 0x00,
72 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
73 0x2d, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x00, 0x00,
74 0x00, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
75 0x74, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x00, 0x00,
76 0x00, 0x04, 0x64, 0x61, 0x74, 0x65, 0x00, 0x00,
77 0x00, 0x04, 0x65, 0x74, 0x61, 0x67, 0x00, 0x00,
78 0x00, 0x06, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74,
79 0x00, 0x00, 0x00, 0x07, 0x65, 0x78, 0x70, 0x69,
80 0x72, 0x65, 0x73, 0x00, 0x00, 0x00, 0x04, 0x66,
81 0x72, 0x6f, 0x6d, 0x00, 0x00, 0x00, 0x04, 0x68,
82 0x6f, 0x73, 0x74, 0x00, 0x00, 0x00, 0x08, 0x69,
83 0x66, 0x2d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x00,
84 0x00, 0x00, 0x11, 0x69, 0x66, 0x2d, 0x6d, 0x6f,
85 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2d, 0x73,
86 0x69, 0x6e, 0x63, 0x65, 0x00, 0x00, 0x00, 0x0d,
87 0x69, 0x66, 0x2d, 0x6e, 0x6f, 0x6e, 0x65, 0x2d,
88 0x6d, 0x61, 0x74, 0x63, 0x68, 0x00, 0x00, 0x00,
89 0x08, 0x69, 0x66, 0x2d, 0x72, 0x61, 0x6e, 0x67,
90 0x65, 0x00, 0x00, 0x00, 0x13, 0x69, 0x66, 0x2d,
91 0x75, 0x6e, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69,
92 0x65, 0x64, 0x2d, 0x73, 0x69, 0x6e, 0x63, 0x65,
93 0x00, 0x00, 0x00, 0x0d, 0x6c, 0x61, 0x73, 0x74,
94 0x2d, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65,
95 0x64, 0x00, 0x00, 0x00, 0x08, 0x6c, 0x6f, 0x63,
96 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x00, 0x00,
97 0x0c, 0x6d, 0x61, 0x78, 0x2d, 0x66, 0x6f, 0x72,
98 0x77, 0x61, 0x72, 0x64, 0x73, 0x00, 0x00, 0x00,
99 0x06, 0x70, 0x72, 0x61, 0x67, 0x6d, 0x61, 0x00,
100 0x00, 0x00, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79,
101 0x2d, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74,
102 0x69, 0x63, 0x61, 0x74, 0x65, 0x00, 0x00, 0x00,
103 0x13, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2d, 0x61,
104 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61,
105 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x00, 0x00, 0x05,
106 0x72, 0x61, 0x6e, 0x67, 0x65, 0x00, 0x00, 0x00,
107 0x07, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x72,
108 0x00, 0x00, 0x00, 0x0b, 0x72, 0x65, 0x74, 0x72,
109 0x79, 0x2d, 0x61, 0x66, 0x74, 0x65, 0x72, 0x00,
110 0x00, 0x00, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65,
111 0x72, 0x00, 0x00, 0x00, 0x02, 0x74, 0x65, 0x00,
112 0x00, 0x00, 0x07, 0x74, 0x72, 0x61, 0x69, 0x6c,
113 0x65, 0x72, 0x00, 0x00, 0x00, 0x11, 0x74, 0x72,
114 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x2d, 0x65,
115 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x00,
116 0x00, 0x00, 0x07, 0x75, 0x70, 0x67, 0x72, 0x61,
117 0x64, 0x65, 0x00, 0x00, 0x00, 0x0a, 0x75, 0x73,
118 0x65, 0x72, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74,
119 0x00, 0x00, 0x00, 0x04, 0x76, 0x61, 0x72, 0x79,
120 0x00, 0x00, 0x00, 0x03, 0x76, 0x69, 0x61, 0x00,
121 0x00, 0x00, 0x07, 0x77, 0x61, 0x72, 0x6e, 0x69,
122 0x6e, 0x67, 0x00, 0x00, 0x00, 0x10, 0x77, 0x77,
123 0x77, 0x2d, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e,
124 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x00, 0x00,
125 0x00, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64,
126 0x00, 0x00, 0x00, 0x03, 0x67, 0x65, 0x74, 0x00,
127 0x00, 0x00, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
128 0x73, 0x00, 0x00, 0x00, 0x06, 0x32, 0x30, 0x30,
129 0x20, 0x4f, 0x4b, 0x00, 0x00, 0x00, 0x07, 0x76,
130 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x00, 0x00,
131 0x00, 0x08, 0x48, 0x54, 0x54, 0x50, 0x2f, 0x31,
132 0x2e, 0x31, 0x00, 0x00, 0x00, 0x03, 0x75, 0x72,
133 0x6c, 0x00, 0x00, 0x00, 0x06, 0x70, 0x75, 0x62,
134 0x6c, 0x69, 0x63, 0x00, 0x00, 0x00, 0x0a, 0x73,
135 0x65, 0x74, 0x2d, 0x63, 0x6f, 0x6f, 0x6b, 0x69,
136 0x65, 0x00, 0x00, 0x00, 0x0a, 0x6b, 0x65, 0x65,
137 0x70, 0x2d, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x00,
138 0x00, 0x00, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69,
139 0x6e, 0x31, 0x30, 0x30, 0x31, 0x30, 0x31, 0x32,
140 0x30, 0x31, 0x32, 0x30, 0x32, 0x32, 0x30, 0x35,
141 0x32, 0x30, 0x36, 0x33, 0x30, 0x30, 0x33, 0x30,
142 0x32, 0x33, 0x30, 0x33, 0x33, 0x30, 0x34, 0x33,
143 0x30, 0x35, 0x33, 0x30, 0x36, 0x33, 0x30, 0x37,
144 0x34, 0x30, 0x32, 0x34, 0x30, 0x35, 0x34, 0x30,
145 0x36, 0x34, 0x30, 0x37, 0x34, 0x30, 0x38, 0x34,
146 0x30, 0x39, 0x34, 0x31, 0x30, 0x34, 0x31, 0x31,
147 0x34, 0x31, 0x32, 0x34, 0x31, 0x33, 0x34, 0x31,
148 0x34, 0x34, 0x31, 0x35, 0x34, 0x31, 0x36, 0x34,
149 0x31, 0x37, 0x35, 0x30, 0x32, 0x35, 0x30, 0x34,
150 0x35, 0x30, 0x35, 0x32, 0x30, 0x33, 0x20, 0x4e,
151 0x6f, 0x6e, 0x2d, 0x41, 0x75, 0x74, 0x68, 0x6f,
152 0x72, 0x69, 0x74, 0x61, 0x74, 0x69, 0x76, 0x65,
153 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61,
154 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x34, 0x20,
155 0x4e, 0x6f, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65,
156 0x6e, 0x74, 0x33, 0x30, 0x31, 0x20, 0x4d, 0x6f,
157 0x76, 0x65, 0x64, 0x20, 0x50, 0x65, 0x72, 0x6d,
158 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x34,
159 0x30, 0x30, 0x20, 0x42, 0x61, 0x64, 0x20, 0x52,
160 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x34, 0x30,
161 0x31, 0x20, 0x55, 0x6e, 0x61, 0x75, 0x74, 0x68,
162 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x34, 0x30,
163 0x33, 0x20, 0x46, 0x6f, 0x72, 0x62, 0x69, 0x64,
164 0x64, 0x65, 0x6e, 0x34, 0x30, 0x34, 0x20, 0x4e,
165 0x6f, 0x74, 0x20, 0x46, 0x6f, 0x75, 0x6e, 0x64,
166 0x35, 0x30, 0x30, 0x20, 0x49, 0x6e, 0x74, 0x65,
167 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x53, 0x65, 0x72,
168 0x76, 0x65, 0x72, 0x20, 0x45, 0x72, 0x72, 0x6f,
169 0x72, 0x35, 0x30, 0x31, 0x20, 0x4e, 0x6f, 0x74,
170 0x20, 0x49, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65,
171 0x6e, 0x74, 0x65, 0x64, 0x35, 0x30, 0x33, 0x20,
172 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20,
173 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
174 0x62, 0x6c, 0x65, 0x4a, 0x61, 0x6e, 0x20, 0x46,
175 0x65, 0x62, 0x20, 0x4d, 0x61, 0x72, 0x20, 0x41,
176 0x70, 0x72, 0x20, 0x4d, 0x61, 0x79, 0x20, 0x4a,
177 0x75, 0x6e, 0x20, 0x4a, 0x75, 0x6c, 0x20, 0x41,
178 0x75, 0x67, 0x20, 0x53, 0x65, 0x70, 0x74, 0x20,
179 0x4f, 0x63, 0x74, 0x20, 0x4e, 0x6f, 0x76, 0x20,
180 0x44, 0x65, 0x63, 0x20, 0x30, 0x30, 0x3a, 0x30,
181 0x30, 0x3a, 0x30, 0x30, 0x20, 0x4d, 0x6f, 0x6e,
182 0x2c, 0x20, 0x54, 0x75, 0x65, 0x2c, 0x20, 0x57,
183 0x65, 0x64, 0x2c, 0x20, 0x54, 0x68, 0x75, 0x2c,
184 0x20, 0x46, 0x72, 0x69, 0x2c, 0x20, 0x53, 0x61,
185 0x74, 0x2c, 0x20, 0x53, 0x75, 0x6e, 0x2c, 0x20,
186 0x47, 0x4d, 0x54, 0x63, 0x68, 0x75, 0x6e, 0x6b,
187 0x65, 0x64, 0x2c, 0x74, 0x65, 0x78, 0x74, 0x2f,
188 0x68, 0x74, 0x6d, 0x6c, 0x2c, 0x69, 0x6d, 0x61,
189 0x67, 0x65, 0x2f, 0x70, 0x6e, 0x67, 0x2c, 0x69,
190 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x6a, 0x70, 0x67,
191 0x2c, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x67,
192 0x69, 0x66, 0x2c, 0x61, 0x70, 0x70, 0x6c, 0x69,
193 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
194 0x6d, 0x6c, 0x2c, 0x61, 0x70, 0x70, 0x6c, 0x69,
195 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78,
196 0x68, 0x74, 0x6d, 0x6c, 0x2b, 0x78, 0x6d, 0x6c,
197 0x2c, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x70, 0x6c,
198 0x61, 0x69, 0x6e, 0x2c, 0x74, 0x65, 0x78, 0x74,
199 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72,
200 0x69, 0x70, 0x74, 0x2c, 0x70, 0x75, 0x62, 0x6c,
201 0x69, 0x63, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
202 0x65, 0x6d, 0x61, 0x78, 0x2d, 0x61, 0x67, 0x65,
203 0x3d, 0x67, 0x7a, 0x69, 0x70, 0x2c, 0x64, 0x65,
204 0x66, 0x6c, 0x61, 0x74, 0x65, 0x2c, 0x73, 0x64,
205 0x63, 0x68, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65,
206 0x74, 0x3d, 0x75, 0x74, 0x66, 0x2d, 0x38, 0x63,
207 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d, 0x69,
208 0x73, 0x6f, 0x2d, 0x38, 0x38, 0x35, 0x39, 0x2d,
209 0x31, 0x2c, 0x75, 0x74, 0x66, 0x2d, 0x2c, 0x2a,
210 0x2c, 0x65, 0x6e, 0x71, 0x3d, 0x30, 0x2e
219 strm->zalloc = Z_NULL;
220 strm->zfree = Z_NULL;
221 strm->opaque = Z_NULL;
224 ret = deflateInit(strm, Z_DEFAULT_COMPRESSION);
230 ret = deflateSetDictionary(strm,
279 strm->avail_in = src_size;
280 flush = Z_SYNC_FLUSH;
282 *data_used += strm->avail_in;
284 strm->next_in = (Bytef *)src;
290 strm->next_out = out;
294 ret = deflate(strm, flush);
299 *dest = realloc(*dest, *dest_size);
306 memcpy((*dest) + ((*dest_size) - have), out, have);
308 while(strm->avail_out == 0);
313 while(flush != Z_SYNC_FLUSH);
324 strm->zalloc = Z_NULL;
325 strm->zfree = Z_NULL;
326 strm->opaque = Z_NULL;
328 strm->next_in = Z_NULL;
332 ret = inflateInit2(strm, 15);
373 strm->avail_in = src_size;
377 if(strm->avail_in == 0){
382 strm->next_in = (Bytef *) src;
386 strm->next_out = out;
387 ret = inflate(strm, Z_SYNC_FLUSH);
397 ret = inflateSetDictionary(strm,
406 ret = inflate(strm, Z_SYNC_FLUSH);
407 if(Z_STREAM_ERROR == ret)
427 *dest = realloc(*dest, *dest_size);
434 memcpy((*dest) + ((*dest_size) - have), out, have);
436 while (0 == strm->avail_out);
438 while (Z_STREAM_END != ret);
int SPDYF_zlib_deflate(z_stream *strm, const void *src, size_t src_size, size_t *data_used, void **dest, size_t *dest_size)
void SPDYF_zlib_deflate_end(z_stream *strm)
int SPDYF_zlib_inflate(z_stream *strm, const void *src, size_t src_size, void **dest, size_t *dest_size)
static const unsigned char spdyf_zlib_dictionary[]
internal functions and macros for the framing layer
internal and public structures – most of the structs used by the library are defined here ...
#define SPDYF_DEBUG(fmt,...)
#define SPDYF_ASSERT(expr, msg)
int SPDYF_zlib_deflate_init(z_stream *strm)
void SPDYF_zlib_inflate_end(z_stream *strm)
int SPDYF_zlib_inflate_init(z_stream *strm)