NAME
kjb_read_exact - Reads a specifed number of bytes from a file descriptor.
SYNOPSIS
#include "l/l_sys_io.h"
Example compile flags (system dependent):
-DLINUX_X86_64 -DLINUX_X86_64_OPTERON -DGNU_COMPILER
-I/home/kobus/include
-L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
-lKJB -lfftw3 -lgsl -lgslcblas -ljpeg -lSVM -lstdc++ -lpthread -lSLATEC -lg2c -lacml -lacml_mv -lblas -lg2c -lncursesw
int kjb_read_exact
(
int file_des,
void *buff,
size_t len
);
DESCRIPTION
This routine is very similar to kjb_read, execpt that exactly "len" bytes
must be successfully read for a successfull return. Otherwise, ERROR is
returned, with an approapriate error measure being set.
RETURNS
On success kjb_read_exact returns NO_ERROR. Since the number of bytes that
must be read is in the parameter, there is no need to return that (thus
avoiding problems due to signed versus unsigned types). On failure ERROR
is returned and an error message is set. Other kjb_read returns such as
EOF will not occur.
DISCLAIMER
This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.
AUTHOR
Kobus Barnard
DOCUMENTER
Kobus Barnard
SEE ALSO
set_low_level_io_options
,
kjb_read
,
kjb_read_2
,
safe_pipe_write
,
kjb_write
,
kjb_write_2
,
kjb_fread_exact
,
kjb_fread
,
kjb_fread_2
,
kjb_fwrite
,
kjb_fwrite_2
,
kjb_safe_fflush
,
kjb_fflush
,
kjb_ioctl
,
set_blocking
,
set_no_blocking
,
stdin_get_line
,
fget_line
,
dget_line
,
fput_line
,
kjb_mkdir
,
kjb_mkdir_2
,
kjb_unlink
,
kjb_unlink_2
,
kjb_rmdir
,
kjb_fopen
,
kjb_freopen
,
kjb_fdopen
,
kjb_fclose
,
kjb_realpath
,
get_fd_name
,
get_user_fd_name
,
kjb_fseek
,
kjb_ftell
,
kjb_fputs
,
kjb_fgetc
,
kjb_fputc
,
pso
,
p_stderr
,
kjb_fprintf
,
pdo
,
kjb_vfprintf
,
is_file
,
is_directory
,
fp_get_path_type
,
get_path_type
,
get_file_size
,
fp_get_byte_size
,
get_file_age
,
stream_younger
,
stream_older
,
get_file_mod_time
,
kjb_isatty
,
print_underlined
,
start_stdout_shadow
,
stop_stdout_shadow
,
start_stderr_shadow
,
stop_stderr_shadow
,
enable_stdout
,
disable_stdout
,
kjb_glob
,
kjb_simple_glob