From 2b7182c6b7fc8c77f606926b42f471dfb9fa381b Mon Sep 17 00:00:00 2001 From: David Xu Date: Mon, 26 Sep 2005 14:14:55 +0000 Subject: Reorder statements to avoid accessing unknown memory. In theory, invoking kenv with very long string can panic kernel. --- sys/kern/kern_environment.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sys/kern/kern_environment.c') diff --git a/sys/kern/kern_environment.c b/sys/kern/kern_environment.c index 4fd84ae5310d..9bb88140e9a9 100644 --- a/sys/kern/kern_environment.c +++ b/sys/kern/kern_environment.c @@ -240,8 +240,8 @@ _getenv_dynamic(const char *name, int *idx) sx_assert(&kenv_lock, SX_LOCKED); len = strlen(name); for (cp = kenvp[0], i = 0; cp != NULL; cp = kenvp[++i]) { - if ((cp[len] == '=') && - (strncmp(cp, name, len) == 0)) { + if ((strncmp(cp, name, len) == 0) && + (cp[len] == '=')) { if (idx != NULL) *idx = i; return (cp + len + 1); -- cgit v1.2.3