Man Linux: Main Page and Category List

NAME

       rfio_popen, rfio_pclose - start a process and open a pipe to it

SYNOPSIS

       #include <sys/types.h>
       #include "rfio_api.h"

       FILE *rfio_popen (const char *command, const char *type);

       int rfio_pclose (FILE *fs);

DESCRIPTION

       rfio_popen starts a process and opens a pipe to it.

       command  is  a  pointer  to a string specifying the shell command to be
       executed.

       type is a mode indicator for the pipe. One of  the  characters  "r"  or
       "w".

       rfio_pclose  waits  for the forked process to terminate and returns the
       exit status of the command.

EXAMPLE

            int c;
            FILE *rf;

            rf = rfio_popen (command, "r");
            if (rf == NULL) {
                 rfio_perror ("rfio_popen");
                 exit (1);
            }
            while ((c = rfio_pread (buf, 1, sizeof(buf), rf)) > 0) {
                 ...
            }
            c = rfio_pclose (rf);

RETURN VALUE

       This routine returns NULL if the operation failed or a non-NULL pointer
       to  a  FILE  structure  if  the  operation was successful. If it fails,
       serrno variable is set appropriately.

ERRORS

       ENOMEM       Not enough memory.

       EINVAL       The mode provided is invalid.

       ECONNRESET   Connection reset by peer

       ETIMEDOUT    Connection timed out

       ECONNREFUSED Connection refused

       EHOSTUNREACH No route to host

       SENOSHOST    Host unknown.

       SENOSSERV    Service unknown.

       SEUMSG2LONG  Command string too long.

       SECOMERR     Communication error.

SEE ALSO

       rfio_pread(3), rfio_pwrite(3)

AUTHOR

       LCG Grid Deployment Team