Add new user mode option -ignore-environment

An empty environment is sometimes useful in user mode.
The new option provides it for linux-user and bsd-user
(darwin-user still has no environment related options).

The patch also adds the documentation for other
environment related options.

Signed-off-by: Stefan Weil <weil@mail.berlios.de>
This commit is contained in:
Stefan Weil 2010-07-15 22:28:02 +02:00 committed by Anthony Liguori
parent 999fa40e43
commit f66724c99a
3 changed files with 26 additions and 0 deletions

View File

@ -795,6 +795,12 @@ int main(int argc, char **argv)
r = argv[optind++]; r = argv[optind++];
if (envlist_setenv(envlist, r) != 0) if (envlist_setenv(envlist, r) != 0)
usage(); usage();
} else if (!strcmp(r, "ignore-environment")) {
envlist_free(envlist);
if ((envlist = envlist_create()) == NULL) {
(void) fprintf(stderr, "Unable to allocate envlist\n");
exit(1);
}
} else if (!strcmp(r, "U")) { } else if (!strcmp(r, "U")) {
r = argv[optind++]; r = argv[optind++];
if (envlist_unsetenv(envlist, r) != 0) if (envlist_unsetenv(envlist, r) != 0)

View File

@ -2790,6 +2790,12 @@ int main(int argc, char **argv, char **envp)
r = argv[optind++]; r = argv[optind++];
if (envlist_setenv(envlist, r) != 0) if (envlist_setenv(envlist, r) != 0)
usage(); usage();
} else if (!strcmp(r, "ignore-environment")) {
envlist_free(envlist);
if ((envlist = envlist_create()) == NULL) {
(void) fprintf(stderr, "Unable to allocate envlist\n");
exit(1);
}
} else if (!strcmp(r, "U")) { } else if (!strcmp(r, "U")) {
r = argv[optind++]; r = argv[optind++];
if (envlist_unsetenv(envlist, r) != 0) if (envlist_unsetenv(envlist, r) != 0)

View File

@ -2186,6 +2186,13 @@ Set the x86 elf interpreter prefix (default=/usr/local/qemu-i386)
Set the x86 stack size in bytes (default=524288) Set the x86 stack size in bytes (default=524288)
@item -cpu model @item -cpu model
Select CPU model (-cpu ? for list and additional feature selection) Select CPU model (-cpu ? for list and additional feature selection)
@item -ignore-environment
Start with an empty environment. Without this option,
the inital environment is a copy of the caller's environment.
@item -E @var{var}=@var{value}
Set environment @var{var} to @var{value}.
@item -U @var{var}
Remove @var{var} from the environment.
@item -B offset @item -B offset
Offset guest address by the specified number of bytes. This is useful when Offset guest address by the specified number of bytes. This is useful when
the address region required by guest applications is reserved on the host. the address region required by guest applications is reserved on the host.
@ -2409,6 +2416,13 @@ Print the help
Set the library root path (default=/) Set the library root path (default=/)
@item -s size @item -s size
Set the stack size in bytes (default=524288) Set the stack size in bytes (default=524288)
@item -ignore-environment
Start with an empty environment. Without this option,
the inital environment is a copy of the caller's environment.
@item -E @var{var}=@var{value}
Set environment @var{var} to @var{value}.
@item -U @var{var}
Remove @var{var} from the environment.
@item -bsd type @item -bsd type
Set the type of the emulated BSD Operating system. Valid values are Set the type of the emulated BSD Operating system. Valid values are
FreeBSD, NetBSD and OpenBSD (default). FreeBSD, NetBSD and OpenBSD (default).