From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp53.i.mail.ru (smtp53.i.mail.ru [94.100.177.113]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 33AF246970F for ; Thu, 21 Nov 2019 20:30:01 +0300 (MSK) Date: Thu, 21 Nov 2019 20:30:00 +0300 From: Kirill Yukhin Message-ID: <20191121173000.ssqnv5d5lioksdnd@tarantool.org> References: <8a0ed2a5af17c887c8ca13f406852f76f742adb4.1573045803.git.v.shpilevoy@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <8a0ed2a5af17c887c8ca13f406852f76f742adb4.1573045803.git.v.shpilevoy@tarantool.org> Subject: Re: [Tarantool-patches] [PATCH 1/1] func: fix use after free on function unload List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Vladislav Shpilevoy Cc: tarantool-patches@dev.tarantool.org Hello, On 06 ноя 16:12, Vladislav Shpilevoy wrote: > Functions are stored in lists inside module objects. Module > objects are stored in a hash table, where key is a package name. > But the key was a pointer at one of module's function definition > object. Therefore, when that function was deleted, its freed > package name memory was still in the hash key, and could be > accessed, when another function was deleted. > > Now module does not use memory of its functions, and keep a copy > of the package name. > --- > Branch: https://github.com/tarantool/tarantool/tree/gerold103/func-unload-use-after-free > No issue. The patch LGTM. I've checked it into 1.10, 2.2 and master. -- Regards, Kirill Yukhin