From nobody Wed May 18 10:13:10 2022 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 79E741AE5045; Wed, 18 May 2022 10:13:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4L382G30jRz3hkZ; Wed, 18 May 2022 10:13:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1652868790; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XXx2VjBry7nu+CPWgsTNtq2+zfilplj0aPS2WRrECs8=; b=uJrxlsq48c1meHPZqX4wMXgsC2vxp+SGchmLUBaA2JYbkAy5siln6EAyFFbYWm7fT1vaDt lEApHj3GQ/n4qcqqssSulHI4pNiI9MBXXHgUVNiVxXHIM69R5cQI7KNZ+DirVn39Ti8hW5 TRfsJ6u/4D4g+2PdVaf5Tr89pmOa6xFEj8n+9lU6NmsvAeWZ5Ek/NDaq8NIjXElyYDNVpg sJcAOvktqeZogsAcdHGKPaqC85QG4z/SQJ0mKp9mw9CxbqEvDnae0ul3PWG1fJYFl3Ij8k H/+KTBcNisbeVxLZeJHZ57el7oNhpYMuhYg67yCCgsGUQIi9R7nUEEzJSUMd1g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4779427409; Wed, 18 May 2022 10:13:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 24IADAEE073973; Wed, 18 May 2022 10:13:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 24IADACo073972; Wed, 18 May 2022 10:13:10 GMT (envelope-from git) Date: Wed, 18 May 2022 10:13:10 GMT Message-Id: <202205181013.24IADACo073972@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Gmelin Subject: git: ed87ff4e95d9 - main - hidraw: Return string lengths for certain ioctls List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: grembo X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ed87ff4e95d92033d161e93ec1a35ce001638bae Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1652868790; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XXx2VjBry7nu+CPWgsTNtq2+zfilplj0aPS2WRrECs8=; b=CGlEw+opshXf+EkaRiorwEE6RTFh1C79vo50Iow8VM2HAj3uqInA3ONIDljMYsSWyRANNh lipjdMxhcqR+PPBe4LuITFYbRM3l9kANrHgFm/spE32MYYjg/7+N/hdqA2gojg2tXgTlDa RoK96EnSAREGxXaYGC1BWqoP8Q2mdUBBKWP+RiJCY+xERDNrYmyoUDAthuCyIXJ5ew5jS5 a5rwFfOk4qd6NW5OkB9f07bmXS1LQVaCm+oHvslAPyqJ+46tVlVA3W1AdYTx+Te0ORYjDM /OkgXmp/o4oNgcPpVD1ZRoUav+IMeGJRJNL6U0X98x9TMW+5QEWpIpJpBlSX+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1652868790; a=rsa-sha256; cv=none; b=cOPX/wmMKVmcEzc+MOFR4BQP8wko4tqEbGx4EG+5OiDik6EZmfruRKhTQvtHzGmbbA1uDk uaFOatxyFINrGpfe+JWXKAU5BjoN7hK2Fp8EjChd89G9bWo2DdDJ9VciMXStw/s7ZoCzo6 jmWrn06r8VZjwIrUc4fvx0OWzH3XVrQBPKZozmlfGSJZIag6KqKmJuDeLrXYE1eG+rkEIK oYQEJBwr0dbGYmz0c9cxqD6cNkc3Q6zAfs7bDyXmmNNIcMeCDRl86SCuTxlGLBBFveFp7V 5ZDlLtd2TR16+DFxUPUtC62OLgSf2zMXmAcQjSqwMYhVE/UlEV8rlt/PZznG8Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by grembo (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=ed87ff4e95d92033d161e93ec1a35ce001638bae commit ed87ff4e95d92033d161e93ec1a35ce001638bae Author: Michael Gmelin AuthorDate: 2022-05-17 09:37:21 +0000 Commit: Michael Gmelin CommitDate: 2022-05-18 10:12:19 +0000 hidraw: Return string lengths for certain ioctls Make HIDIOCGRAWPHYS, HIDIOCGRAWNAME, and HIDIOCGRAWUNIQ return the length of the copied out string (including the trailing NUL character), so they behave like their Linux hidraw counterparts. Reviewed by: wulf Differential Revision: https://reviews.freebsd.org/D35233 --- sys/dev/hid/hidraw.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sys/dev/hid/hidraw.c b/sys/dev/hid/hidraw.c index c8e36a186aaf..8964e31f7bba 100644 --- a/sys/dev/hid/hidraw.c +++ b/sys/dev/hid/hidraw.c @@ -569,6 +569,7 @@ hidraw_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct hidraw_gen_descriptor *hgd; struct hidraw_report_descriptor *hrd; struct hidraw_devinfo *hdi; + const char *devname; uint32_t size; int id, len; int error = 0; @@ -825,10 +826,13 @@ hidraw_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, switch (IOCBASECMD(cmd)) { case HIDIOCGRAWNAME(0): strlcpy(addr, sc->sc_hw->name, len); + td->td_retval[0] = min(strlen(sc->sc_hw->name) + 1, len); return (0); case HIDIOCGRAWPHYS(0): - strlcpy(addr, device_get_nameunit(sc->sc_dev), len); + devname = device_get_nameunit(sc->sc_dev); + strlcpy(addr, devname, len); + td->td_retval[0] = min(strlen(devname) + 1, len); return (0); case HIDIOCSFEATURE(0): @@ -859,6 +863,7 @@ hidraw_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, case HIDIOCGRAWUNIQ(0): strlcpy(addr, sc->sc_hw->serial, len); + td->td_retval[0] = min(strlen(sc->sc_hw->serial) + 1, len); return (0); }