Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Apr 2025 07:49:18 GMT
From:      Vladimir Kondratyev <wulf@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: d04cc28f9759 - stable/14 - hidraw(4): Return actual length of read data from HIDIOCG* ioctls
Message-ID:  <202504300749.53U7nI1P011297@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/14 has been updated by wulf:

URL: https://cgit.FreeBSD.org/src/commit/?id=d04cc28f9759829a74db30d067be8a5c5e304c8d

commit d04cc28f9759829a74db30d067be8a5c5e304c8d
Author:     Vladimir Kondratyev <wulf@FreeBSD.org>
AuthorDate: 2025-04-27 09:07:35 +0000
Commit:     Vladimir Kondratyev <wulf@FreeBSD.org>
CommitDate: 2025-04-30 07:32:23 +0000

    hidraw(4): Return actual length of read data from HIDIOCG* ioctls
    
    To match Linux.
    
    MFC after:      3 days
    
    (cherry picked from commit 8d4d08d571c64d8f040c2cd1d8f98844251a2238)
---
 sys/dev/hid/hidraw.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/sys/dev/hid/hidraw.c b/sys/dev/hid/hidraw.c
index f573b3db1391..c9d29b836d43 100644
--- a/sys/dev/hid/hidraw.c
+++ b/sys/dev/hid/hidraw.c
@@ -915,8 +915,14 @@ hidraw_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag,
 			default:
 				panic("Invalid report type");
 		}
-		return (hid_get_report(sc->sc_dev, addr, len, NULL,
-		    reptype, id));
+		error = hid_get_report(sc->sc_dev, addr, len, &actsize,
+		    reptype, id);
+		if (error == 0) {
+			if (id == 0)
+				actsize++;
+			td->td_retval[0] = actsize;
+		}
+		return (error);
 
 	case HIDIOCGRAWUNIQ(0):
 		strlcpy(addr, sc->sc_hw->serial, len);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202504300749.53U7nI1P011297>