|| r->headers_in.accept_encoding == NULL
|| (r->headers_out.content_length_n != -1
&& r->headers_out.content_length_n < conf->min_length)
- || ngx_strstr(r->headers_in.accept_encoding->value.data, "gzip") == NULL
+ || ngx_strcasestrn(r->headers_in.accept_encoding->value.data, "gzip", 3)
)
{
return ngx_http_next_header_filter(r);
ngx_http_process_connection(ngx_http_request_t *r, ngx_table_elt_t *h,
ngx_uint_t offset)
{
- if (ngx_strstr(h->value.data, "close")) {
+ if (ngx_strcasestrn(h->value.data, "close", 4)) {
r->headers_in.connection_type = NGX_HTTP_CONNECTION_CLOSE;
- } else if (ngx_strstr(h->value.data, "keep-alive")) {
+ } else if (ngx_strcasestrn(h->value.data, "keep-alive", 9)) {
r->headers_in.connection_type = NGX_HTTP_CONNECTION_KEEP_ALIVE;
}
}
if (r->headers_in.transfer_encoding
- && ngx_strstr(r->headers_in.transfer_encoding->value.data, "chunked"))
+ && ngx_strcasestrn(r->headers_in.transfer_encoding->value.data,
+ "chunked", 6))
{
ngx_log_error(NGX_LOG_INFO, r->connection->log, 0,
"client sent \"Transfer-Encoding: chunked\" header");
user_agent = r->headers_in.user_agent->value.data;
- ua = (u_char *) ngx_strstr(user_agent, "MSIE");
+ ua = ngx_strstrn(user_agent, "MSIE", 3);
if (ua && ua + 8 < user_agent + r->headers_in.user_agent->value.len) {
#endif
}
- if (ngx_strstr(user_agent, "Opera")) {
+ if (ngx_strstrn(user_agent, "Opera", 4)) {
r->headers_in.opera = 1;
r->headers_in.msie = 0;
r->headers_in.msie4 = 0;
if (!r->headers_in.msie && !r->headers_in.opera) {
- if (ngx_strstr(user_agent, "Gecko/")) {
+ if (ngx_strstrn(user_agent, "Gecko/", 5)) {
r->headers_in.gecko = 1;
- } else if (ngx_strstr(user_agent, "Konqueror")) {
+ } else if (ngx_strstrn(user_agent, "Konqueror", 8)) {
r->headers_in.konqueror = 1;
}
}