DOKK / manpages / debian 11 / libexplain-dev / explain_fread_or_die.3.en
explain_fread_or_die(3) Library Functions Manual explain_fread_or_die(3)

explain_fread_or_die - binary stream input and report errors

#include <libexplain/fread.h>

void explain_fread_or_die(void *ptr, size_t size, size_t nmemb, FILE *fp);

The explain_fread_or_die function is used to call the fread(3) system call. On failure an explanation will be printed to stderr, obtained from explain_fread(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:

size_t how_many = explain_fread_or_die(ptr, size, nmemb, fp);
The ptr, exactly as to be passed to the fread(3) system call.
The size, exactly as to be passed to the fread(3) system call.
The nmemb, exactly as to be passed to the fread(3) system call.
The fp, exactly as to be passed to the fread(3) system call.
This function only returns on success, the number read or 0 on end‐of‐input. On failure, prints an explanation and exits.

fread(3)
binary stream input
explain_fread(3)
explain fread(3) errors
exit(2)
terminate the calling process

libexplain version 1.4
Copyright (C) 2008 Peter Miller