Pass environment variable via execve [message #15957] |
Thu, 16 August 2007 23:34 ![Go to next message Go to next message](/theme/ovz3/images/down.png) |
AngerMCS
Messages: 2 Registered: August 2007
|
Junior Member |
|
|
I have a "spawner" process that spawns other process within a vps. Problem is that the enivronment variables I pass with execve are not being passed to spawned processes. Does anyone know an easy way to do this?
Example code:
execve("/usr/sbin/vzctl", args, env);
where args={"exec", "101", "/path/to/process", ...}
Thanks!
|
|
|
|
Re: Pass environment variable via execve [message #15998 is a reply to message #15964] |
Fri, 17 August 2007 22:50 ![Go to previous message Go to previous message](/theme/ovz3/images/up.png) |
AngerMCS
Messages: 2 Registered: August 2007
|
Junior Member |
|
|
unfortunately that would require me to modify every single process that we spawn...
Anyone else have any ideas?
Edit: I tried recreating vzctl calls so that I could just use execve as though I were in the vps but that also failed.
syscall(511, 101);
env_create.veid=101;
env_create.flags=VE_ENTER;
fd=open("/dev/vzctl", O_RDWR);
ioctl(fd, VZCTL_ENV_CREATE, &env_create);
close(fd);
The box ended up hardlocking...
[Updated on: Fri, 17 August 2007 23:06] Report message to a moderator
|
|
|