From b7db2706e8c2834f08ee9c367106da80a261eeb4 Mon Sep 17 00:00:00 2001 From: phk Date: Thu, 9 Mar 2006 09:29:41 +0000 Subject: [PATCH] Ignore kenv strings which overflow the room we have, rather than pretend we have room for them. --- sys/kern/kern_environment.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_environment.c b/sys/kern/kern_environment.c index 9bb88140e9a9..c15e58d43e97 100644 --- a/sys/kern/kern_environment.c +++ b/sys/kern/kern_environment.c @@ -211,7 +211,12 @@ init_dynamic_kenv(void *data __unused) for (cp = kern_envp; cp != NULL; cp = kernenv_next(cp)) { len = strlen(cp) + 1; kenvp[i] = malloc(len, M_KENV, M_WAITOK); - strcpy(kenvp[i++], cp); + if (i < KENV_SIZE) + strcpy(kenvp[i++], cp); + else + printf( + "WARNING: too many kenv strings, ignoring %s\n", + cp); } kenvp[i] = NULL;