comparison src/http/modules/ngx_http_range_filter.c @ 195:8dee38ea9117

nginx-0.0.1-2003-11-25-23:44:56 import
author Igor Sysoev <igor@sysoev.ru>
date Tue, 25 Nov 2003 20:44:56 +0000
parents 4db54fdbcbe7
children 92db0aa1e83f
comparison
equal deleted inserted replaced
194:2357fa41738a 195:8dee38ea9117
213 ngx_palloc(r->pool, 8 + 20 + 1), 213 ngx_palloc(r->pool, 8 + 20 + 1),
214 NGX_ERROR); 214 NGX_ERROR);
215 215
216 r->headers_out.content_range->value.len = 216 r->headers_out.content_range->value.len =
217 ngx_snprintf(r->headers_out.content_range->value.data, 217 ngx_snprintf(r->headers_out.content_range->value.data,
218 8 + 20 + 1, "bytes */" OFF_FMT, 218 8 + 20 + 1, "bytes */" OFF_T_FMT,
219 r->headers_out.content_length_n); 219 r->headers_out.content_length_n);
220 220
221 r->headers_out.content_length_n = -1; 221 r->headers_out.content_length_n = -1;
222 if (r->headers_out.content_length) { 222 if (r->headers_out.content_length) {
223 r->headers_out.content_length->key.len = 0; 223 r->headers_out.content_length->key.len = 0;
245 NGX_ERROR); 245 NGX_ERROR);
246 246
247 /* "Content-Range: bytes SSSS-EEEE/TTTT" header */ 247 /* "Content-Range: bytes SSSS-EEEE/TTTT" header */
248 248
249 r->headers_out.content_range->value.len = 249 r->headers_out.content_range->value.len =
250 ngx_snprintf(r->headers_out.content_range->value.data, 250 ngx_snprintf(r->headers_out.content_range->value.data,
251 6 + 20 + 1 + 20 + 1 + 20 + 1, 251 6 + 20 + 1 + 20 + 1 + 20 + 1,
252 "bytes " OFF_FMT "-" OFF_FMT "/" OFF_FMT, 252 "bytes " OFF_T_FMT "-" OFF_T_FMT "/" OFF_T_FMT,
253 range->start, range->end - 1, 253 range->start, range->end - 1,
254 r->headers_out.content_length_n); 254 r->headers_out.content_length_n);
255 255
256 r->headers_out.content_length_n = range->end - range->start; 256 r->headers_out.content_length_n = range->end - range->start;
257 257
258 } else { 258 } else {
259 259
334 NGX_ERROR); 334 NGX_ERROR);
335 335
336 /* the size of the range: "SSSS-EEEE/TTTT" CRLF CRLF */ 336 /* the size of the range: "SSSS-EEEE/TTTT" CRLF CRLF */
337 337
338 range[i].content_range.len = 338 range[i].content_range.len =
339 ngx_snprintf(range[i].content_range.data, 339 ngx_snprintf(range[i].content_range.data,
340 20 + 1 + 20 + 1 + 20 + 5, 340 20 + 1 + 20 + 1 + 20 + 5,
341 OFF_FMT "-" OFF_FMT "/" OFF_FMT CRLF CRLF, 341 OFF_T_FMT "-" OFF_T_FMT "/" OFF_T_FMT CRLF CRLF,
342 range[i].start, range[i].end - 1, 342 range[i].start, range[i].end - 1,
343 r->headers_out.content_length_n); 343 r->headers_out.content_length_n);
344 344
345 len += ctx->boundary_header.len + range[i].content_range.len 345 len += ctx->boundary_header.len + range[i].content_range.len
346 + (size_t) (range[i].end - range[i].start); 346 + (size_t) (range[i].end - range[i].start);
347 } 347 }
348 348