From patchwork Mon Oct 3 15:24:44 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Jarosch X-Patchwork-Id: 117467 X-Patchwork-Delegate: shemminger@vyatta.com Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 1A014B6F6B for ; Tue, 4 Oct 2011 02:26:34 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932204Ab1JCP0c (ORCPT ); Mon, 3 Oct 2011 11:26:32 -0400 Received: from re04.intra2net.com ([82.165.46.26]:39575 "EHLO re04.intra2net.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756517Ab1JCP0S (ORCPT ); Mon, 3 Oct 2011 11:26:18 -0400 Received: from intranator.m.i2n (unknown [172.16.1.99]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by re04.intra2net.com (Postfix) with ESMTP id D760C30154 for ; Mon, 3 Oct 2011 17:26:17 +0200 (CEST) Received: from localhost (intranator.m.i2n [127.0.0.1]) by localhost (Postfix) with ESMTP id AC2022AC53 for ; Mon, 3 Oct 2011 17:26:17 +0200 (CEST) X-Virus-Scanned: by Intranator (www.intra2net.com) with AMaViS and F-Secure AntiVirus (fsavdb 2011-10-03_03) X-Spam-Status: X-Spam-Level: 0 Received: from pikkukde.a.i2n (unknown [192.168.12.2]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by intranator.m.i2n (Postfix) with ESMTPS id CCFA22AC57 for ; Mon, 3 Oct 2011 17:26:16 +0200 (CEST) Message-ID: <4E89D3BC.5050206@intra2net.com> Date: Mon, 03 Oct 2011 17:24:44 +0200 From: Thomas Jarosch User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.22) Gecko/20110906 Fedora/3.1.14-1.fc14 Thunderbird/3.1.14 MIME-Version: 1.0 To: netdev@vger.kernel.org Subject: [iproute2 PATCH 11/11] Fix file descriptor leak on error in read_igmp() Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Detected by cppcheck. Signed-off-by: Thomas Jarosch --- ip/ipmaddr.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/ip/ipmaddr.c b/ip/ipmaddr.c index 5a52c85..3ae9478 100644 --- a/ip/ipmaddr.c +++ b/ip/ipmaddr.c @@ -128,8 +128,10 @@ void read_igmp(struct ma_info **result_p) if (!fp) return; memset(&m, 0, sizeof(m)); - if (!fgets(buf, sizeof(buf), fp)) + if (!fgets(buf, sizeof(buf), fp)) { + fclose(fp); return; + } m.addr.family = AF_INET; m.addr.bitlen = 32;