Hi Sapan!
Well, I was expecting the C program to be called from the same shell
script which assigns a value to the shell variable.
This works,
--- test.c -------------------------------
int main(int argc,char **argv,char **env)
{
int x=0;
for(;env[x];x++)
printf("%s\n",env[x]);
return 0;
}
-------------------------------------------
--- test.sh -------------------------------
#!/bin/bash
export SOMEPARAM="someval"
./test
-------------------------------------------
Manish, compile the C program to "test", make the shell script
executable and execute them with both in the same directory. You
should see the assignment of SOMEPARAM in the environment list. I
expect getenv() to work in that case.
- Sandip
On Mon, Apr 08, 2002 at 09:15:24PM +0530, Sapan J . Bhatia spoke out thus:
> Hi Sandip!
>
> Will this actually work from a shell script? Assuming that Manish was
> running it in a subshell, i.e.
>
> #!/bin/sh
> export a="boo"
>
> Doesn't "export" export a variable to the environment of the shell within
> which it's run? Child processes, of course inherit environment variables,
> but how would one pass it onto a parent?
>
> Also, even if it does work for the C program, assuming it's running in the
> same script, IMHO, it wouldn't work for the PHP script unless he's running
> the php binary under the same shell or the first httpd listener thread/process
> under the same shell...
>
> In Apache, mod_php, mod_cgid, mod_cgi fix up the environment for you before
> they do an execve+fork, which is why you can use them from PHP.
>
> So my bets would be:
> part 1- C program - no it won't work, and I don't know how to make it work.
> The first term that comes to mind is IPC and my mind jumps out of my skull
> and totters away every time I try to think any further.
> part 2- PHP script- um... ditto...
>
> Sapan
>
>
> On Mon, Apr 08, 2002 at 06:13:42PM +0530, Sandip Bhattacharya wrote:
> // do an EXPORT in the shell script or the environment variable value
> // won't be available after the shell script terminates.
> //
> // > MAILVAR="TEST MAIL VAULE"
> // EXPORT MAILVAR
> //
> // - Sandip
> //
> //
> // On Mon, Apr 08, 2002 at 05:15:44PM +0530, Manish K Arya spoke out thus:
> // > hi
> // > i m trying to get value of a environment var in C and php which was set in
>shell script
> // >
> // > #test.sh
> // > MAILVAR="TEST MAIL VAULE"
> // >
> // > /*test.c*/
> // > int main()
> // > {
> // > char *email;
> // > email=getenv("MAILVAR");
> // > printf("%s",email);
> // > }
> // >
> // > <?php
> // > /*test.php*/
> // > $email=getenv("MAILVAR");
> // > echo "$email";
> // > ?>
> // >
> // > i m getting NULL output in both programs
> // >
> // > pls advise
> // >
> // > ---
> // > Manish Kumar Arya
> // >
> // >
> // >
> // > See Dave Matthews Band live or win a signed guitar
> // >
>http://r.lycos.com/r/bmgfly_mail_dmb/http://win.ipromotions.com/lycos_020201/splash.asp
>
> // >
> // > ================================================
> // > To subscribe, send email to [EMAIL PROTECTED] with subscribe in subject
>header
> // > To unsubscribe, send email to [EMAIL PROTECTED] with unsubscribe in
>subject header
> // > Archives are available at http://www.mail-archive.com/ilugd%40wpaa.org
> // > =================================================
> //
> // --
> // Sandip Bhattacharya
> // Mindframe Software
> // Work: sandip @ mindsw.com, http://www.mindsw.com
> // Play: sandipb @ bigfoot.com, http://www.sandipb.net
> // -----------------------------------------------
> //
> // ================================================
> // To subscribe, send email to [EMAIL PROTECTED] with subscribe in subject
>header
> // To unsubscribe, send email to [EMAIL PROTECTED] with unsubscribe in subject
>header
> // Archives are available at http://www.mail-archive.com/ilugd%40wpaa.org
> // =================================================
> //
>
> ================================================
> To subscribe, send email to [EMAIL PROTECTED] with subscribe in subject header
> To unsubscribe, send email to [EMAIL PROTECTED] with unsubscribe in subject
>header
> Archives are available at http://www.mail-archive.com/ilugd%40wpaa.org
> =================================================
--
Sandip Bhattacharya
Mindframe Software
Work: sandip @ mindsw.com, http://www.mindsw.com
Play: sandipb @ bigfoot.com, http://www.sandipb.net
-----------------------------------------------
================================================
To subscribe, send email to [EMAIL PROTECTED] with subscribe in subject header
To unsubscribe, send email to [EMAIL PROTECTED] with unsubscribe in subject header
Archives are available at http://www.mail-archive.com/ilugd%40wpaa.org
=================================================