Module Name: src
Committed By: riastradh
Date: Sun May 22 11:38:12 UTC 2022
Modified Files:
src/sys/arch/i386/pci: glxsb.c
Log Message:
glxsb(4): Prune dead branches. Assert session id validity.
To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/i386/pci/glxsb.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/i386/pci/glxsb.c
diff -u src/sys/arch/i386/pci/glxsb.c:1.17 src/sys/arch/i386/pci/glxsb.c:1.18
--- src/sys/arch/i386/pci/glxsb.c:1.17 Sun May 22 11:35:21 2022
+++ src/sys/arch/i386/pci/glxsb.c Sun May 22 11:38:12 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: glxsb.c,v 1.17 2022/05/22 11:35:21 riastradh Exp $ */
+/* $NetBSD: glxsb.c,v 1.18 2022/05/22 11:38:12 riastradh Exp $ */
/* $OpenBSD: glxsb.c,v 1.7 2007/02/12 14:31:45 tom Exp $ */
/*
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: glxsb.c,v 1.17 2022/05/22 11:35:21 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: glxsb.c,v 1.18 2022/05/22 11:38:12 riastradh Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -314,8 +314,7 @@ glxsb_crypto_newsession(void *aux, uint3
struct glxsb_session *ses = NULL;
int sesn;
- if (sc == NULL || sidp == NULL || cri == NULL ||
- cri->cri_next != NULL || cri->cri_alg != CRYPTO_AES_CBC ||
+ if (cri->cri_next != NULL || cri->cri_alg != CRYPTO_AES_CBC ||
cri->cri_klen != 128)
return (EINVAL);
@@ -360,11 +359,10 @@ glxsb_crypto_freesession(void *aux, uint
int sesn;
uint32_t sid = ((uint32_t)tid) & 0xffffffff;
- if (sc == NULL)
- return (EINVAL);
sesn = GLXSB_SESSION(sid);
- if (sesn >= sc->sc_nsessions)
- return (EINVAL);
+ KASSERTMSG(sesn < sc->sc_nsessions, "sesn=%d nsessions=%d",
+ sesn, sc->sc_nsessions);
+
memset(&sc->sc_sessions[sesn], 0, sizeof(sc->sc_sessions[sesn]));
return (0);
}