explain_pclose_or_die(3)

NAME
explain_pclose_or_die - process I/O and report errors

SYNOPSIS
#include <libexplain/pclose.h>

int explain_pclose_or_die(FILE *fp);
int explain_pclose_success(FILE *fp);
void explain_pclose_success_or_die(FILE *fp);

DESCRIPTION
These functions may be used to wait for program termination, and then reprt errors returned by the pclose(3) system call.

  explain_pclose_or_die
int explain_pclose_or_die(FILE *fp);

The explain_pclose_or_die function is used to call the pclose(3) system call. On failure an explanation will be printed to stderr, obtained from explain_pclose(3), and then the process terminates by calling exit(EXIT_FAILURE).

This function is intended to be used in a fashion similar to the following example:
    int status = explain_pclose_or_die(fp);

fp  The fp, exactly as to be passed to the pclose(3) system call.

Returns:
    This function only returns on success, see pclose(3) for more information. On failure, prints an explanation and exits.

  explain_pclose_success_or_die
void explain_pclose_success_or_die(FILE *);

The explain_pclose_success_or_die function is used to call the pclose(3) system call. On failure, including any exit status other than EXIT_SUCCESS, an explanation will be printed to stderr, obtained from explain_pclose(3), and then the process terminates by calling exit(EXIT_FAILURE).

This function is intended to be used in a fashion similar to the following example:
    explain_pclose_success_or_die(fp);

fp  The fp, exactly as to be passed to the pclose(3) system call.

Returns:
    This function only returns on success. On failure, prints an explanation and exits.

  explain_pclose_success
int explain_pclose_success(FILE *fp);

The explain_pclose_success function is used to call the pclose(3) system call. On failure, including any exit status other than EXIT_SUCCESS, an explanation will be printed to stderr, obtained from explain_pclose(3). However, the priniting of an error message does not also cause exit(2) to be called.

This function is intended to be used in a fashion similar to the following example:
    int status = explain_pclose_success(command);

fp  The fp, exactly as to be passed to the pclose(3) system call.

Returns:
    the value returned by the pclose(3) system call. In all cases other than EXIT_SUCCESS, an error message will also have been printed to stderr.

SEE ALSO

pclose(3)
    process I/O

explain_pclose(3)
    explain pclose(3) errors

exit(2)
    terminate the calling process

COPYRIGHT
libexplain version 0.46
Copyright (C) 2009 Peter Miller