Received: by 10.192.165.148 with SMTP id m20csp529923imm; Fri, 20 Apr 2018 10:39:27 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+yIxCaCuIysosNIQX9lDm1YkvS8u7hhU28U/y/POyIQL/eXmyoh83CUZD3aw6iplbWZbkY X-Received: by 10.99.0.213 with SMTP id 204mr9328054pga.256.1524245966991; Fri, 20 Apr 2018 10:39:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524245966; cv=none; d=google.com; s=arc-20160816; b=Z2Pzz8GYcTGvKwWdmJ9W95mgXUgyrBybb2Z412Tl9LDIDiSQcJ19Feq0K5mqR1/Mw4 MemY18qpLRJioRwZmSzq81PRjx7BegAYRDnjMILjQtXzXp4YLiukCTCeLtB/x2P5w7Fn uLjEcGCQWVKjXy+GKs+2zqji0obr5Q5YREOB+6EmviNvyNk1U/sQ90ALmDUfvVFXaP3v +q7px9/4IrK50qe/SdRpYOzM+k43/RCDIqIv2WJWp3kcSLrdnrJWny3/JJPUw8wD7yCN PHGkEhx6ovNydPKk/STjlcH6Ekq41qXejmKNLoq8XrwUAAJCmYGLe7IsZpFb8Yr7/2AR /M7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=/+cwsov57JzbviThcVdRQjzMp0rrd7j5zjHmhRzlncA=; b=gkeLnl1FGqTL//WYMmxDLp249S5KWxFXTBaMrrliGbi3rzdWrvD+Bobmq7cf2zJIx+ hFYAN+o7KJzNjOaFIaCCRduXuqhjrsAR1A3n/LA5wkvHZYWM+npRt3jVHzWn3civ4fdN DQH1KHPgMU1/FCGmA++hxStYcgWs6Dfvk8hs1miKCPTg5i6o2tey9v9HW+wB/5zJzK2g den7S4E4piwRm3QFur7Bf3RLFO9D+jR26ZXwpSnSOmeD8CEEeZ9irZ1hTipCXYvtJ2ib isU2fyMhg6QwJKtHrEIhAHzQIqPJDf3Rwp2odLRS73Y+1pRXxrGZxz5IQtjSsaDKDHuB 35ww== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=e2ZgeAXD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y11-v6si5971613plg.154.2018.04.20.10.39.12; Fri, 20 Apr 2018 10:39:26 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=e2ZgeAXD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753472AbeDTRh5 (ORCPT + 99 others); Fri, 20 Apr 2018 13:37:57 -0400 Received: from mail-pf0-f194.google.com ([209.85.192.194]:39949 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752427AbeDTRhz (ORCPT ); Fri, 20 Apr 2018 13:37:55 -0400 Received: by mail-pf0-f194.google.com with SMTP id q17so145484pfh.7; Fri, 20 Apr 2018 10:37:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=/+cwsov57JzbviThcVdRQjzMp0rrd7j5zjHmhRzlncA=; b=e2ZgeAXD4LuFZmsz6RwaMxUN0hDBx9kkWxVLtCh6Ma3G6ZXKjxVKlWO3g+AvI6eiO5 N7AoFfroHLCdjhIER41j3rx/oxMkm4YNYDTT1sQryNbC06wWg1XfjkAgtZsiWkmtOut2 slYMW6pGw9fYkdoQS5ocxylxoBfnRe3Z+8iApooj57j/sX6KJRz6K4kOfnSXCkpdyg5T kKL+80h8HSsaVsrn5Kl6IFJp1KD2fn6m0Hj3BOA6yP35yZDkd5uwnO4G7sbLEo7UNved xZia7iILaUCd3BrsDrO6iMXQpjEigzN9cxmYAQmqL3sVMH2dIBPIQfs7o29xwniqlnpL ZSqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=/+cwsov57JzbviThcVdRQjzMp0rrd7j5zjHmhRzlncA=; b=g2degw7HxEKtMF86xwiEh0l+KTn8VWf+eNhwWFYNv5Q6guM1pKnEw18se4B1gUSwo4 mC1OXlcbT/iopyrrAnG0ZAG2sXj9HTKRaodd3v15DgzrOMKvNh9MV1gokH+XsXQib7AC 8+hAvndhNSOtve3mj/8m+Mgifi+dJVWjZthpr7TZ9Vwo9gojcdoZEm+1cRkRfHGLFvGS mVFlZ2FiNerGKLfAsaO3cxEVvVJtudm76EKLnJ6tnzikPzUlHAbmKoTsCPncHlYI12l8 8Vnw3P+olZ77skOZSOeQGFRLFYL5tzrZj4eeYzCtSmvyc8EsSRTeLotd4RZ0qc6Qefqz A8IA== X-Gm-Message-State: ALQs6tDm9hkZ4DxtHFctyez7ZQ4n8LMJeonQljUOb/xUdtW6ZEsvpvBn JrtkUm8eO7ZuxhZ0QgB09ekZAaxWMG0W54kunoA= X-Received: by 10.99.2.199 with SMTP id 190mr9489912pgc.11.1524245874359; Fri, 20 Apr 2018 10:37:54 -0700 (PDT) MIME-Version: 1.0 Received: by 10.100.152.97 with HTTP; Fri, 20 Apr 2018 10:37:32 -0700 (PDT) In-Reply-To: <20180420131919.GA1766@embeddedor.com> References: <20180420131919.GA1766@embeddedor.com> From: Steve French Date: Fri, 20 Apr 2018 12:37:32 -0500 Message-ID: Subject: Re: [PATCH] cifs: dir: fix memory leak in cifs_mknod To: "Gustavo A. R. Silva" , Colin King Cc: Ronnie Sahlberg , Steve French , CIFS , samba-technical , LKML , kernel-janitors Content-Type: multipart/mixed; boundary="001a11469b8ae4cc20056a4b251f" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --001a11469b8ae4cc20056a4b251f Content-Type: text/plain; charset="UTF-8" I noticed a similar problem with the tcon link leak on that (which Colin and Gustavo pointed out - thank you!) but also in another return statement, so updated the original patch of Ronnie's merging the fixes https://git.samba.org/sfrench/cifs-2.6.git/?p=sfrench/cifs-2.6.git;a=commit;h=167bc5de08dc97695f9d5c7069c3e69f409ff80b Let me know if you see any problems with it. On Fri, Apr 20, 2018 at 8:19 AM, Gustavo A. R. Silva wrote: > Free allocated memory for full_path and xid before return. > > Addresses-Coverity-ID: 1468029 ("Resource leak") > Fixes: 49162bfde140 ("cifs: do not allow creating sockets except with > SMB1 posix exensions") > Signed-off-by: Gustavo A. R. Silva > --- > fs/cifs/dir.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/fs/cifs/dir.c b/fs/cifs/dir.c > index f0a759d..71e32d9 100644 > --- a/fs/cifs/dir.c > +++ b/fs/cifs/dir.c > @@ -684,8 +684,11 @@ int cifs_mknod(struct inode *inode, struct dentry *direntry, umode_t mode, > goto mknod_out; > } > > - if (!S_ISCHR(mode) && !S_ISBLK(mode)) > + if (!S_ISCHR(mode) && !S_ISBLK(mode)) { > + kfree(full_path); > + free_xid(xid); > return -EPERM; > + } > > if (!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_UNX_EMUL)) > goto mknod_out; > -- > 2.7.4 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-cifs" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- Thanks, Steve --001a11469b8ae4cc20056a4b251f Content-Type: text/x-patch; charset="US-ASCII"; name="0001-cifs-do-not-allow-creating-sockets-except-with-SMB1-.patch" Content-Disposition: attachment; filename="0001-cifs-do-not-allow-creating-sockets-except-with-SMB1-.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jg88jr3o0 RnJvbSAxNjdiYzVkZTA4ZGM5NzY5NWY5ZDVjNzA2OWMzZTY5ZjQwOWZmODBiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGV2ZSBGcmVuY2ggPHNtZnJlbmNoQGdtYWlsLmNvbT4KRGF0 ZTogRnJpLCAyMCBBcHIgMjAxOCAxMjoxOTowNyAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMS8yXSBj aWZzOiBkbyBub3QgYWxsb3cgY3JlYXRpbmcgc29ja2V0cyBleGNlcHQgd2l0aCBTTUIxCiBwb3Np eCBleGVuc2lvbnMKClJIQlo6IDE0NTMxMjMKClNpbmNlIGF0IGxlYXN0IHRoZSAzLjEwIGtlcm5l bCBhbmQgbGlrZWx5IGEgbG90IGVhcmxpZXIgd2UgaGF2ZQpub3QgYmVlbiBhYmxlIHRvIGNyZWF0 ZSB1bml4IGRvbWFpbiBzb2NrZXRzIGluIGEgY2lmcyBzaGFyZQp3aGVuIG1vdW50ZWQgdXNpbmcg dGhlIFNGVSBtb3VudCBvcHRpb24gKGV4Y2VwdCB3aGVuIG1vdW50ZWQKd2l0aCB0aGUgY2lmcyB1 bml4IGV4dGVuc2lvbnMgdG8gU2FtYmEgZS5nLikKVHJ5aW5nIHRvIGNyZWF0ZSBhIHNvY2tldCwg Zm9yIGV4YW1wbGUgdXNpbmcgdGhlIGFmX3VuaXggY29tbWFuZCBmcm9tCnhmc3Rlc3RzIHdpbGwg Y2F1c2UgOgpCVUc6IHVuYWJsZSB0byBoYW5kbGUga2VybmVsIE5VTEwgcG9pbnRlciBkZXJlZmVy ZW5jZSBhdCAwMDAwMDAwMAowMDAwMDA0MAoKU2luY2Ugbm8gb25lIHVzZXMgb3IgZGVwZW5kcyBv biBiZWluZyBhYmxlIHRvIGNyZWF0ZSB1bml4IGRvbWFpbnMgc29ja2V0cwpvbiBhIGNpZnMgc2hh cmUgdGhlIGVhc2llc3QgZml4IHRvIHN0b3AgdGhpcyB2dWxuZXJhYmlsaXR5IGlzIHRvIHNpbXBs eQpub3QgYWxsb3cgY3JlYXRpb24gb2YgYW55IG90aGVyIHNwZWNpYWwgZmlsZXMgdGhhbiBjaGFy IG9yIGJsb2NrIGRldmljZXMKd2hlbiBzZnUgaXMgdXNlZC4KCkFkZGVkIHVwZGF0ZSB0byBSb25u aWUncyBwYXRjaCB0byBoYW5kbGUgYSB0Y29uIGxpbmsgbGVhaywgYW5kCnRvIGFkZHJlc3MgYSBi dWYgbGVhayBub3RpY2VkIGJ5IEd1c3Rhdm8gYW5kIENvbGluLgoKQ0M6IEd1c3Rhdm8gQS4gUi4g U2lsdmEgPGd1c3Rhdm9AZW1iZWRkZWRvci5jb20+CkNDOiAgQ29saW4gSWFuIEtpbmcgPGNvbGlu LmtpbmdAY2Fub25pY2FsLmNvbT4KUmVwb3J0ZWQtYnk6IEVyeXUgR3VhbiA8ZWd1YW5AcmVkaGF0 LmNvbT4KU2lnbmVkLW9mZi1ieTogUm9ubmllIFNhaGxiZXJnIDxsc2FobGJlckByZWRoYXQuY29t PgpTaWduZWQtb2ZmLWJ5OiBTdGV2ZSBGcmVuY2ggPHNtZnJlbmNoQGdtYWlsLmNvbT4KQ2M6IHN0 YWJsZUB2Z2VyLmtlcm5lbC5vcmcKLS0tCiBmcy9jaWZzL2Rpci5jIHwgOSArKysrKy0tLS0KIDEg ZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZnMvY2lmcy9kaXIuYyBiL2ZzL2NpZnMvZGlyLmMKaW5kZXggODFiYTZlMGQ4OGQ4Li45MjU4 NDQzNDMwMzggMTAwNjQ0Ci0tLSBhL2ZzL2NpZnMvZGlyLmMKKysrIGIvZnMvY2lmcy9kaXIuYwpA QCAtNjg0LDYgKzY4NCw5IEBAIGludCBjaWZzX21rbm9kKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0 cnVjdCBkZW50cnkgKmRpcmVudHJ5LCB1bW9kZV90IG1vZGUsCiAJCWdvdG8gbWtub2Rfb3V0Owog CX0KIAorCWlmICghU19JU0NIUihtb2RlKSAmJiAhU19JU0JMSyhtb2RlKSkKKwkJZ290byBta25v ZF9vdXQ7CisKIAlpZiAoIShjaWZzX3NiLT5tbnRfY2lmc19mbGFncyAmIENJRlNfTU9VTlRfVU5Y X0VNVUwpKQogCQlnb3RvIG1rbm9kX291dDsKIApAQCAtNjkyLDEwICs2OTUsOCBAQCBpbnQgY2lm c19ta25vZChzdHJ1Y3QgaW5vZGUgKmlub2RlLCBzdHJ1Y3QgZGVudHJ5ICpkaXJlbnRyeSwgdW1v ZGVfdCBtb2RlLAogCiAJYnVmID0ga21hbGxvYyhzaXplb2YoRklMRV9BTExfSU5GTyksIEdGUF9L RVJORUwpOwogCWlmIChidWYgPT0gTlVMTCkgewotCQlrZnJlZShmdWxsX3BhdGgpOwogCQlyYyA9 IC1FTk9NRU07Ci0JCWZyZWVfeGlkKHhpZCk7Ci0JCXJldHVybiByYzsKKwkJZ290byBta25vZF9v dXQ7CiAJfQogCiAJaWYgKGJhY2t1cF9jcmVkKGNpZnNfc2IpKQpAQCAtNzQyLDcgKzc0Myw3IEBA IGludCBjaWZzX21rbm9kKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBkZW50cnkgKmRpcmVu dHJ5LCB1bW9kZV90IG1vZGUsCiAJCXBkZXYtPm1pbm9yID0gY3B1X3RvX2xlNjQoTUlOT1IoZGV2 aWNlX251bWJlcikpOwogCQlyYyA9IHRjb24tPnNlcy0+c2VydmVyLT5vcHMtPnN5bmNfd3JpdGUo eGlkLCAmZmlkLCAmaW9fcGFybXMsCiAJCQkJCQkJJmJ5dGVzX3dyaXR0ZW4sIGlvdiwgMSk7Ci0J fSAvKiBlbHNlIGlmIChTX0lTRklGTykgKi8KKwl9CiAJdGNvbi0+c2VzLT5zZXJ2ZXItPm9wcy0+ Y2xvc2UoeGlkLCB0Y29uLCAmZmlkKTsKIAlkX2Ryb3AoZGlyZW50cnkpOwogCi0tIAoyLjE0LjEK Cg== --001a11469b8ae4cc20056a4b251f--