summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAhmad Khalifa <vexeduxr@FreeBSD.org>2026-01-06 04:07:29 +0200
committerAhmad Khalifa <vexeduxr@FreeBSD.org>2026-01-12 19:28:02 +0200
commitda358db1cba7402059187bd74313fa18601df609 (patch)
treeda9d1c4b8c392bd7e836cc85a1bcd9b4bbcfd326
parent61b429198db7af6451ffdeeec95e65562b45f575 (diff)
ng_tty: avoid the sign extention of char
When c is compared to sc->hotchar, both undergo integer promotion, which can lead to c being sign extended. Fix this by casting c to an unsigned char. Reviewed by: kevans MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54544 (cherry picked from commit 9b2478f60bfda663c84b48e272a2293159e1b0a0)
-rw-r--r--sys/netgraph/ng_tty.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netgraph/ng_tty.c b/sys/netgraph/ng_tty.c
index 0e3230a66f66..200a72336110 100644
--- a/sys/netgraph/ng_tty.c
+++ b/sys/netgraph/ng_tty.c
@@ -489,7 +489,8 @@ ngt_rint(struct tty *tp, char c, int flags)
m->m_pkthdr.len++;
/* Ship off mbuf if it's time */
- if (sc->hotchar == -1 || c == sc->hotchar || m->m_len >= MHLEN) {
+ if (sc->hotchar == -1 || (u_char)c == sc->hotchar ||
+ m->m_len >= MHLEN) {
sc->m = NULL;
NG_SEND_DATA_ONLY(error, sc->hook, m); /* Will queue */
}