I would have thought so, but I am not seeing it: code snippet:
if ((fp = popen(command, "r")) == NULL) { log_severe ("file pointer is null"); return; } char path[100]; while (fgets(path, 100, fp) != NULL) log_finer ("%s", path); log_fine ("popen errno: %i: %s", errno, strerror(errno)); ret = pclose(fp); log_fine ("pclose errno: %i: %s", errno, strerror(errno)); outValues->valueList[0].u.intVal = ret; log_fine ("return value: %i", ret); Log output: +CALL ARFilterApiCall -- filter API ARSWIKI.ARF.PING <ARSWIKI.ARF.PING> <FINE> ping command: /usr/sbin/ping cipher <ARSWIKI.ARF.PING> <FINER> cipher is alive <ARSWIKI.ARF.PING> <FINE> popen errno: 0: Error 0 <ARSWIKI.ARF.PING> <FINE> pclose errno: 10: No child processes <ARSWIKI.ARF.PING> <FINE> return value: -1 >From ping man page: The following exit values are returned: 0 Successful operation; the machine is alive. non-zero An error has occurred. Either a malformed argument has been specified, or the machine was not alive. Not sure what I'm missing. Axton Grams On Feb 5, 2008 11:27 AM, Wayne Keenan <[EMAIL PROTECTED]> wrote: > ** The pclose() function waits for the associated process to terminate and > returns the exit status of the command > > > > On Feb 5, 2008 1:30 AM, Axton <[EMAIL PROTECTED]> wrote: > > > popen looks to be available on all platforms (posix compliant and > > windows). Windows defines the function as _popen though. > > > > http://msdn2.microsoft.com/en-us/library/96ayss4b(VS.80).aspx > > > > I wrote a filter plugin that executes ping via popen and returns the > > output, but it provides no more functionality or simplicity than > > running ping from a set fields process. What I can't figure out how > > to get is the exit code from ping when run via popen; only stdout. > > > > Axton Grams > > > > > > > > > > On Feb 4, 2008 3:25 PM, William H. Will Du Chene <[EMAIL PROTECTED]> > wrote: > > > Either way, there was no getting around it. It's a de facto standard > that > > > a child process inherits the same level of permissions - and the profile > - > > > of whatever the parent process is. Without that behavior on the > platform, > > > we would really have issues. > > > > > > Axton made an excellent catch and I am grateful for it. Knowing that > there > > > are alternative functions out there which can be used is a very good > > > thing. > > > > > > I didn't read the page close enough, so I am curious to know if these > > > functions are present on all platforms. Many of the open source > > > applications which I have had to tear apart and rewrite components of - > > > such as HtDig - make use of popen to process the results from the sort > > > utility that it uses. > > > > > > Unfortunately, implementations very here and there and this is something > > > that I ran into when I ported the search engine over to windows. > > > > > > > > > > > > > > Basically all that says is whatever is run under popen runs as the > > > > caller. In this case ARS, which should not have those privileges - and > > > > if they are running as root they deserve all they get :-) Calling > > > > something that uses popen from ARS is no better or worse than invoking > > > > any other command with a run process. > > > > > > > > > > -- > > > > > > > > > Will Du Chene > > > [EMAIL PROTECTED] > > > http://www.myspace.com/wduchene > > > > > > > _______________________________________________________________________________ > > > > > > > > > > > > UNSUBSCRIBE or access ARSlist Archives at www.arslist.org > > > Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > > > > > > > > _______________________________________________________________________________ > > UNSUBSCRIBE or access ARSlist Archives at www.arslist.org > > Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > > > > __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > html___ _______________________________________________________________________________ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"