Follow up r352244: kenv: tighten up assertions
As I like to forget: static kenv var formatting is actually such that an empty environment would be double null bytes. We should make sure that a non-zero buffer has at least enough for this, though most of the current usage is with a 4k buffer.
This commit is contained in:
parent
a93af05fb9
commit
ae79efc996
@ -250,7 +250,15 @@ init_static_kenv(char *buf, size_t len)
|
||||
char *eval;
|
||||
|
||||
KASSERT(!dynamic_kenv, ("kenv: dynamic_kenv already initialized"));
|
||||
KASSERT(len == 0 || *buf == '\0',
|
||||
/*
|
||||
* Suitably sized means it must be able to hold at least one empty
|
||||
* variable, otherwise things go belly up if a kern_getenv call is
|
||||
* made without a prior call to kern_setenv as we have a malformed
|
||||
* environment.
|
||||
*/
|
||||
KASSERT(len == 0 || len >= 2,
|
||||
("kenv: static env must be initialized or suitably sized"));
|
||||
KASSERT(len == 0 || (*buf == '\0' && *(buf + 1) == '\0'),
|
||||
("kenv: sized buffer must be initially empty"));
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user