comparison src/http/modules/ngx_http_range_filter.c @ 136:da00cde00e8a

nginx-0.0.1-2003-10-02-09:39:37 import
author Igor Sysoev <igor@sysoev.ru>
date Thu, 02 Oct 2003 05:39:37 +0000
parents b27548f540ad
children c71aeb75c071
comparison
equal deleted inserted replaced
135:e29909bd9b8a 136:da00cde00e8a
41 static int ngx_http_range_header_filter(ngx_http_request_t *r) 41 static int ngx_http_range_header_filter(ngx_http_request_t *r)
42 { 42 {
43 int rc, boundary, len, i; 43 int rc, boundary, len, i;
44 char *p; 44 char *p;
45 off_t start, end; 45 off_t start, end;
46 ngx_table_elt_t *accept_ranges;
47 ngx_http_range_t *range; 46 ngx_http_range_t *range;
48 ngx_http_range_filter_ctx_t *ctx; 47 ngx_http_range_filter_ctx_t *ctx;
49 48
50 if (r->main 49 if (r->main
51 || r->http_version < NGX_HTTP_VERSION_10 50 || r->http_version < NGX_HTTP_VERSION_10
59 58
60 if (r->headers_in.range == NULL 59 if (r->headers_in.range == NULL
61 || r->headers_in.range->value.len < 7 60 || r->headers_in.range->value.len < 7
62 || ngx_strncasecmp(r->headers_in.range->value.data, "bytes=", 6) != 0) 61 || ngx_strncasecmp(r->headers_in.range->value.data, "bytes=", 6) != 0)
63 { 62 {
64 ngx_test_null(accept_ranges, 63 ngx_test_null(r->headers_out.accept_ranges,
65 ngx_push_table(r->headers_out.headers), 64 ngx_push_table(r->headers_out.headers),
66 NGX_ERROR); 65 NGX_ERROR);
67 66
68 accept_ranges->key.len = sizeof("Accept-Ranges") - 1; 67 r->headers_out.accept_ranges->key.len = sizeof("Accept-Ranges") - 1;
69 accept_ranges->key.data = "Accept-Ranges"; 68 r->headers_out.accept_ranges->key.data = "Accept-Ranges";
70 accept_ranges->value.len = sizeof("bytes") - 1; 69 r->headers_out.accept_ranges->value.len = sizeof("bytes") - 1;
71 accept_ranges->value.data = "bytes"; 70 r->headers_out.accept_ranges->value.data = "bytes";
72 71
73 return next_header_filter(r); 72 return next_header_filter(r);
74 } 73 }
75 74
76 ngx_init_array(r->headers_out.ranges, r->pool, 5, sizeof(ngx_http_range_t), 75 ngx_init_array(r->headers_out.ranges, r->pool, 5, sizeof(ngx_http_range_t),