@@ -35,6 +35,7 @@ namespace boost { namespace network { namespace http {
35
35
created = 201 ,
36
36
accepted = 202 ,
37
37
no_content = 204 ,
38
+ partial_content = 206 ,
38
39
multiple_choices = 300 ,
39
40
moved_permanently = 301 ,
40
41
moved_temporarily = 302 ,
@@ -45,10 +46,14 @@ namespace boost { namespace network { namespace http {
45
46
not_found = 404 ,
46
47
not_supported = 405 ,
47
48
not_acceptable = 406 ,
49
+ request_timeout = 408 ,
50
+ precondition_failed = 412 ,
51
+ unsatisfiable_range = 416 ,
48
52
internal_server_error = 500 ,
49
53
not_implemented = 501 ,
50
54
bad_gateway = 502 ,
51
- service_unavailable = 503
55
+ service_unavailable = 503 ,
56
+ space_unavailable = 507
52
57
} status;
53
58
54
59
// / The headers to be included in the reply.
@@ -196,6 +201,27 @@ namespace boost { namespace network { namespace http {
196
201
" <head><title>Service Unavailable</title></head>"
197
202
" <body><h1>503 Service Unavailable</h1></body>"
198
203
" </html>" ;
204
+ static const char space_unavailable[] =
205
+ " <html>"
206
+ " <head><title>Space Unavailable</title></head>"
207
+ " <body><h1>HTTP/1.0 507 Insufficient Space to Store Resource</h1></body>"
208
+ " </html>" ;
209
+ static const char partial_content[] = " <html>"
210
+ " <head><title>Partial Content</title></head>"
211
+ " <body><h1>HTTP/1.1 206 Partial Content</h1></body>"
212
+ " </html>" ;
213
+ static const char request_timeout[] = " <html>"
214
+ " <head><title>Request Timeout</title></head>"
215
+ " <body><h1>HTTP/1.1 408 Request Timeout</h1></body>"
216
+ " </html>" ;
217
+ static const char precondition_failed[] = " <html>"
218
+ " <head><title>Precondition Failed</title></head>"
219
+ " <body><h1>HTTP/1.1 412 Precondition Failed</h1></body>"
220
+ " </html>" ;
221
+ static const char unsatisfiable_range[] = " <html>"
222
+ " <head><title>Unsatisfiable Range</title></head>"
223
+ " <body><h1>HTTP/1.1 416 Requested Range Not Satisfiable</h1></body>"
224
+ " </html>" ;
199
225
200
226
switch (status)
201
227
{
@@ -235,6 +261,16 @@ namespace boost { namespace network { namespace http {
235
261
return bad_gateway;
236
262
case basic_response<tags::http_server>::service_unavailable:
237
263
return service_unavailable;
264
+ case basic_response<tags::http_server>::space_unavailable:
265
+ return space_unavailable;
266
+ case basic_response<tags::http_server>::partial_content:
267
+ return partial_content;
268
+ case basic_response<tags::http_server>::request_timeout:
269
+ return request_timeout;
270
+ case basic_response<tags::http_server>::unsatisfiable_range:
271
+ return unsatisfiable_range;
272
+ case basic_response<tags::http_server>::precondition_failed:
273
+ return precondition_failed;
238
274
default :
239
275
return internal_server_error;
240
276
}
@@ -278,6 +314,16 @@ namespace boost { namespace network { namespace http {
278
314
" HTTP/1.0 502 Bad Gateway\r\n " ;
279
315
static const string_type service_unavailable =
280
316
" HTTP/1.0 503 Service Unavailable\r\n " ;
317
+ static const string_type space_unavailable =
318
+ " HTTP/1.0 507 Insufficient Space to Store Resource\r\n " ;
319
+ static const string_type partial_content =
320
+ " HTTP/1.1 206 Partial Content\r\n " ;
321
+ static const string_type request_timeout =
322
+ " HTTP/1.1 408 Request Timeout\r\n " ;
323
+ static const string_type precondition_failed =
324
+ " HTTP/1.1 412 Precondition Failed\r\n " ;
325
+ static const string_type unsatisfiable_range =
326
+ " HTTP/1.1 416 Requested Range Not Satisfiable\r\n " ;
281
327
282
328
switch (status) {
283
329
case basic_response<tags::http_server>::ok:
@@ -316,6 +362,16 @@ namespace boost { namespace network { namespace http {
316
362
return buffer (bad_gateway);
317
363
case basic_response<tags::http_server>::service_unavailable:
318
364
return buffer (service_unavailable);
365
+ case basic_response<tags::http_server>::space_unavailable:
366
+ return buffer (space_unavailable);
367
+ case basic_response<tags::http_server>::partial_content:
368
+ return buffer (partial_content);
369
+ case basic_response<tags::http_server>::request_timeout:
370
+ return buffer (request_timeout);
371
+ case basic_response<tags::http_server>::unsatisfiable_range:
372
+ return buffer (unsatisfiable_range);
373
+ case basic_response<tags::http_server>::precondition_failed:
374
+ return buffer (precondition_failed);
319
375
default :
320
376
return buffer (internal_server_error);
321
377
}
0 commit comments