Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2008-08-04 14:07:00 +0400
committerIgor Sysoev <igor@sysoev.ru>2008-08-04 14:07:00 +0400
commit777b019c7338b6a67f639bb86b90711055709c53 (patch)
tree9bac0517c1d4e6d1690d2738284c89b382eec38e /src
parenteb3e4c8be00d6353b5e545a75f9abda0b154585c (diff)
ngx_strlow()
Diffstat (limited to 'src')
-rw-r--r--src/core/ngx_hash.c4
-rw-r--r--src/core/ngx_string.c11
-rw-r--r--src/core/ngx_string.h2
-rw-r--r--src/http/modules/ngx_http_fastcgi_module.c4
-rw-r--r--src/http/modules/ngx_http_proxy_module.c5
-rw-r--r--src/http/modules/ngx_http_sub_filter_module.c7
-rw-r--r--src/http/ngx_http.c8
-rw-r--r--src/http/ngx_http_request.c5
-rw-r--r--src/http/ngx_http_variables.c8
9 files changed, 24 insertions, 30 deletions
diff --git a/src/core/ngx_hash.c b/src/core/ngx_hash.c
index abd2cf173..c39395c7b 100644
--- a/src/core/ngx_hash.c
+++ b/src/core/ngx_hash.c
@@ -390,9 +390,7 @@ found:
elt->value = names[n].value;
elt->len = (u_char) names[n].key.len;
- for (i = 0; i < names[n].key.len; i++) {
- elt->name[i] = ngx_tolower(names[n].key.data[i]);
- }
+ ngx_strlow(elt->name, names[n].key.data, names[n].key.len);
test[key] = (u_short) (test[key] + NGX_HASH_ELT_SIZE(&names[n]));
}
diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c
index 2da6c8319..203cd3e37 100644
--- a/src/core/ngx_string.c
+++ b/src/core/ngx_string.c
@@ -8,6 +8,17 @@
#include <ngx_core.h>
+void
+ngx_strlow(u_char *dst, u_char *src, size_t n)
+{
+ while (n--) {
+ *dst = ngx_tolower(*src);
+ dst++;
+ src++;
+ }
+}
+
+
u_char *
ngx_cpystrn(u_char *dst, u_char *src, size_t n)
{
diff --git a/src/core/ngx_string.h b/src/core/ngx_string.h
index dfb3bc4cc..fff618b19 100644
--- a/src/core/ngx_string.h
+++ b/src/core/ngx_string.h
@@ -43,6 +43,8 @@ typedef struct {
#define ngx_tolower(c) (u_char) ((c >= 'A' && c <= 'Z') ? (c | 0x20) : c)
#define ngx_toupper(c) (u_char) ((c >= 'a' && c <= 'z') ? (c & ~0x20) : c)
+void ngx_strlow(u_char *dst, u_char *src, size_t n);
+
#define ngx_strncmp(s1, s2, n) strncmp((const char *) s1, (const char *) s2, n)
diff --git a/src/http/modules/ngx_http_fastcgi_module.c b/src/http/modules/ngx_http_fastcgi_module.c
index b975c0675..e310bbb6e 100644
--- a/src/http/modules/ngx_http_fastcgi_module.c
+++ b/src/http/modules/ngx_http_fastcgi_module.c
@@ -1120,9 +1120,7 @@ ngx_http_fastcgi_process_header(ngx_http_request_t *r)
ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len);
} else {
- for (i = 0; i < h->key.len; i++) {
- h->lowcase_key[i] = ngx_tolower(h->key.data[i]);
- }
+ ngx_strlow(h->lowcase_key, h->key.data, h->key.len);
}
hh = ngx_hash_find(&umcf->headers_in_hash, h->hash,
diff --git a/src/http/modules/ngx_http_proxy_module.c b/src/http/modules/ngx_http_proxy_module.c
index 8a7f2ab9e..880d99840 100644
--- a/src/http/modules/ngx_http_proxy_module.c
+++ b/src/http/modules/ngx_http_proxy_module.c
@@ -1196,7 +1196,6 @@ static ngx_int_t
ngx_http_proxy_process_header(ngx_http_request_t *r)
{
ngx_int_t rc;
- ngx_uint_t i;
ngx_table_elt_t *h;
ngx_http_upstream_header_t *hh;
ngx_http_upstream_main_conf_t *umcf;
@@ -1237,9 +1236,7 @@ ngx_http_proxy_process_header(ngx_http_request_t *r)
ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len);
} else {
- for (i = 0; i < h->key.len; i++) {
- h->lowcase_key[i] = ngx_tolower(h->key.data[i]);
- }
+ ngx_strlow(h->lowcase_key, h->key.data, h->key.len);
}
hh = ngx_hash_find(&umcf->headers_in_hash, h->hash,
diff --git a/src/http/modules/ngx_http_sub_filter_module.c b/src/http/modules/ngx_http_sub_filter_module.c
index e45ca6e49..62a8f0814 100644
--- a/src/http/modules/ngx_http_sub_filter_module.c
+++ b/src/http/modules/ngx_http_sub_filter_module.c
@@ -632,7 +632,6 @@ ngx_http_sub_filter(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
ngx_str_t *value;
ngx_int_t n;
- ngx_uint_t i;
ngx_http_script_compile_t sc;
if (slcf->match.len) {
@@ -641,11 +640,9 @@ ngx_http_sub_filter(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
value = cf->args->elts;
- slcf->match = value[1];
+ ngx_strlow(value[1].data, value[1].data, value[1].len);
- for (i = 0; i < value[1].len; i++) {
- value[1].data[i] = ngx_tolower(value[1].data[i]);
- }
+ slcf->match = value[1];
n = ngx_http_script_variables_count(&value[2]);
diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c
index ed4dacdbe..757ae17b3 100644
--- a/src/http/ngx_http.c
+++ b/src/http/ngx_http.c
@@ -1259,7 +1259,7 @@ static ngx_int_t
ngx_http_add_names(ngx_conf_t *cf, ngx_http_core_srv_conf_t *cscf,
ngx_http_conf_in_addr_t *in_addr)
{
- ngx_uint_t i, n;
+ ngx_uint_t i;
ngx_http_server_name_t *server_names, *name;
if (in_addr->names.elts == NULL) {
@@ -1275,10 +1275,8 @@ ngx_http_add_names(ngx_conf_t *cf, ngx_http_core_srv_conf_t *cscf,
for (i = 0; i < cscf->server_names.nelts; i++) {
- for (n = 0; n < server_names[i].name.len; n++) {
- server_names[i].name.data[n] =
- ngx_tolower(server_names[i].name.data[n]);
- }
+ ngx_strlow(server_names[i].name.data, server_names[i].name.data,
+ server_names[i].name.len);
ngx_log_debug1(NGX_LOG_DEBUG_HTTP, cf->log, 0,
"name: %V", &server_names[i].name);
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
index 9aad1a487..ec36f5086 100644
--- a/src/http/ngx_http_request.c
+++ b/src/http/ngx_http_request.c
@@ -818,7 +818,6 @@ ngx_http_process_request_headers(ngx_event_t *rev)
ssize_t n;
ngx_int_t rc, rv;
ngx_str_t header;
- ngx_uint_t i;
ngx_table_elt_t *h;
ngx_connection_t *c;
ngx_http_header_t *hh;
@@ -928,9 +927,7 @@ ngx_http_process_request_headers(ngx_event_t *rev)
ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len);
} else {
- for (i = 0; i < h->key.len; i++) {
- h->lowcase_key[i] = ngx_tolower(h->key.data[i]);
- }
+ ngx_strlow(h->lowcase_key, h->key.data, h->key.len);
}
hh = ngx_hash_find(&cmcf->headers_in_hash, h->hash,
diff --git a/src/http/ngx_http_variables.c b/src/http/ngx_http_variables.c
index e014170a0..b41572202 100644
--- a/src/http/ngx_http_variables.c
+++ b/src/http/ngx_http_variables.c
@@ -277,9 +277,7 @@ ngx_http_add_variable(ngx_conf_t *cf, ngx_str_t *name, ngx_uint_t flags)
return NULL;
}
- for (i = 0; i < name->len; i++) {
- v->name.data[i] = ngx_tolower(name->data[i]);
- }
+ ngx_strlow(v->name.data, name->data, name->len);
v->set_handler = NULL;
v->get_handler = NULL;
@@ -344,9 +342,7 @@ ngx_http_get_variable_index(ngx_conf_t *cf, ngx_str_t *name)
return NGX_ERROR;
}
- for (i = 0; i < name->len; i++) {
- v->name.data[i] = ngx_tolower(name->data[i]);
- }
+ ngx_strlow(v->name.data, name->data, name->len);
v->set_handler = NULL;
v->get_handler = NULL;