Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Течет память при проксировании
- To: "nginx-ru@xxxxxxxxx" <nginx-ru@xxxxxxxxx>
- Subject: Re: Течет память при проксировании
- From: Denis F. Latypoff <latypoff@xxxxxxxxx>
- Date: Mon, 28 May 2012 07:16:51 +0700
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1338164212; bh=r/QjmAinctCdaKUtGrDefvfU3G5HNaY4jM15zFEtYhI=; h=From:To:In-Reply-To:References:Subject:MIME-Version:Message-Id: Date:Content-Type; b=rlLRH+FcVPRdFTT7dmRfS46vd6X24BtLbWksZBS59xMQGKvfWe7z+wz70ORpooneh Kz2ss9VVezwyCDPDq59muESEeWM7lRf+wg+uyS3ktjWZLHeo5S1SNp9AkC3aj+qqa5 e6dKnZi2trvFuGTzJfdFVi+Nw7MpabpbFGUmIcj0=
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1338164212; bh=r/QjmAinctCdaKUtGrDefvfU3G5HNaY4jM15zFEtYhI=; h=From:To:In-Reply-To:References:Subject:MIME-Version:Message-Id: Date:Content-Type; b=rlLRH+FcVPRdFTT7dmRfS46vd6X24BtLbWksZBS59xMQGKvfWe7z+wz70ORpooneh Kz2ss9VVezwyCDPDq59muESEeWM7lRf+wg+uyS3ktjWZLHeo5S1SNp9AkC3aj+qqa5 e6dKnZi2trvFuGTzJfdFVi+Nw7MpabpbFGUmIcj0=
- In-reply-to: <20120527164545.GI31671@mdounin.ru>
- References: <210681338047095@web29g.yandex.ru> <20120527164545.GI31671@mdounin.ru>
27.05.2012, 23:45, "Maxim Dounin" <mdounin@xxxxxxxxxx>:
[...]
>
> 2)
>
>> geoip_city /usr/share/GeoIP/GeoIPCity.dat utf8;
>> geoip_org /usr/share/GeoIP/GeoIPASNum.dat utf8;
>
> Модуль geoip - он, конечно, хороший, но пользуется библиотекой
> от MaxMind'а. А та известна как минимум тем, что падает на
> некорректных данных в базе. Так что я бы рекомендовал выключить и
> посмотреть, что будет.
Всем патч!
--
br, Denis F. Latypoff. diff -ru nginx-1.3.0/src/http/modules/ngx_http_geoip_module.c
nginx-1.3.0.geoip/src/http/modules/ngx_http_geoip_module.c
--- nginx-1.3.0/src/http/modules/ngx_http_geoip_module.c 2012-05-14
09:00:17.000000000 -0500
+++ nginx-1.3.0.geoip/src/http/modules/ngx_http_geoip_module.c 2012-05-27
19:11:03.000000000 -0500
@@ -310,7 +310,14 @@
v->valid = 1;
v->no_cacheable = 0;
v->not_found = 0;
- v->data = (u_char *) val;
+ v->data = ngx_palloc(r->pool, v->len);
+
+ if (v->data == NULL) {
+ return NGX_ERROR;
+ }
+
+ memcpy (v->data, val, v->len);
+ free ((void *) val);
return NGX_OK;
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|