| 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 +0700Dkim-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 
 |