commit 4c56d2cd8df737a053cedbd5bb098746ca15cf42 Author: Kirill A. Korinskiy Date: Fri Jul 17 17:34:39 2009 +0400 Fix a md5 result string diff --git a/src/http/ngx_http_variables.c b/src/http/ngx_http_variables.c index bd64108..4218e3b 100644 --- a/src/http/ngx_http_variables.c +++ b/src/http/ngx_http_variables.c @@ -1002,9 +1002,9 @@ ngx_http_variable_md5(ngx_http_request_t *r, ngx_http_variable_value_t *v, ngx_str_t *name = (ngx_str_t *) data; ngx_str_t sub_name; - ngx_uint_t key; + ngx_uint_t key, i; ngx_md5_t md5; - uint32_t hash[4]; + u_char hash[16], *p; ngx_http_variable_value_t *vv; @@ -1036,7 +1036,11 @@ ngx_http_variable_md5(ngx_http_request_t *r, ngx_http_variable_value_t *v, ngx_md5_update(&md5, vv->data, vv->len); ngx_md5_final((u_char*)hash, &md5); - ngx_sprintf(v->data, "%08XD%08XD%08XD%08XD", hash[0], hash[1], hash[2], hash[3]); + p = v->data; + + for (i = 0; i < 16; i++) { + p = ngx_sprintf(p, "%01XD", hash[i]); + } v->valid = 1; v->not_found = 0;