From patchwork Mon Mar 26 10:26:46 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Engestrom X-Patchwork-Id: 10307613 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id A5EC4600F6 for ; Mon, 26 Mar 2018 10:27:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9A9982962C for ; Mon, 26 Mar 2018 10:27:21 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 8F82E2962E; Mon, 26 Mar 2018 10:27:21 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 93A8F2962C for ; Mon, 26 Mar 2018 10:27:20 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A786C6E479; Mon, 26 Mar 2018 10:27:18 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailapp01.imgtec.com (mailapp01.imgtec.com [195.59.15.196]) by gabe.freedesktop.org (Postfix) with ESMTP id 40C666E479 for ; Mon, 26 Mar 2018 10:27:17 +0000 (UTC) Received: from hhmail02.hh.imgtec.org (unknown [10.100.10.20]) by Forcepoint Email with ESMTPS id 3178C32C56071 for ; Mon, 26 Mar 2018 11:27:13 +0100 (IST) Received: from localhost.localdomain (10.60.4.28) by hhmail02.hh.imgtec.org (10.100.10.21) with Microsoft SMTP Server (TLS) id 14.3.382.0; Mon, 26 Mar 2018 11:27:15 +0100 From: Eric Engestrom To: Subject: [PATCH libdrm 1/3] xf86drm: replace sprintf()+strdup() with asprintf() Date: Mon, 26 Mar 2018 11:26:46 +0100 Message-ID: <20180326102648.1754-1-eric.engestrom@imgtec.com> X-Mailer: git-send-email 2.16.2 MIME-Version: 1.0 X-Originating-IP: [10.60.4.28] X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Signed-off-by: Eric Engestrom --- xf86drm.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/xf86drm.c b/xf86drm.c index 3a9d0ed2cc9b196ae7d1..b6e5d8cc1bb50ffe75a2 100644 --- a/xf86drm.c +++ b/xf86drm.c @@ -2823,7 +2823,7 @@ static char *drmGetMinorNameForFD(int fd, int type) struct stat sbuf; const char *name = drmGetMinorName(type); int len; - char dev_name[64], buf[64]; + char *dev_name, buf[64]; int maj, min; if (!name) @@ -2848,20 +2848,22 @@ static char *drmGetMinorNameForFD(int fd, int type) while ((ent = readdir(sysdir))) { if (strncmp(ent->d_name, name, len) == 0) { - snprintf(dev_name, sizeof(dev_name), DRM_DIR_NAME "/%s", - ent->d_name); + if (asprintf(&dev_name, DRM_DIR_NAME "/%s", + ent->d_name) < 0) { + dev_name = NULL; + } closedir(sysdir); - return strdup(dev_name); + return dev_name; } } return NULL; #else struct stat sbuf; - char buf[PATH_MAX + 1]; + char *buf; const char *dev_name; unsigned int maj, min; - int n, base; + int base; if (fstat(fd, &sbuf)) return NULL; @@ -2890,11 +2892,10 @@ static char *drmGetMinorNameForFD(int fd, int type) if (base < 0) return NULL; - n = snprintf(buf, sizeof(buf), dev_name, DRM_DIR_NAME, min - base); - if (n == -1 || n >= sizeof(buf)) + if (asprintf(&buf, dev_name, DRM_DIR_NAME, min - base) < 0) return NULL; - return strdup(buf); + return buf; #endif } @@ -4119,10 +4120,10 @@ char *drmGetDeviceNameFromFd2(int fd) return strdup(path); #else struct stat sbuf; - char node[PATH_MAX + 1]; + char *node; const char *dev_name; int node_type; - int maj, min, n, base; + int maj, min, base; if (fstat(fd, &sbuf)) return NULL; @@ -4155,11 +4156,10 @@ char *drmGetDeviceNameFromFd2(int fd) if (base < 0) return NULL; - n = snprintf(node, PATH_MAX, dev_name, DRM_DIR_NAME, min - base); - if (n == -1 || n >= PATH_MAX) + if (asprintf(&node, dev_name, DRM_DIR_NAME, min - base) < 0) return NULL; - return strdup(node); + return node; #endif }