blob: bed8641a2b0713685f64ba978acccbf68d349705 [file] [log] [blame]
"Robert P. J. Day"63fc1a92006-07-02 19:47:05 +00001/* vi: set sw=4 ts=4: */
Glenn L McGrath95ebf612001-10-25 14:18:08 +00002/*
"Robert P. J. Day"801ab142006-07-12 07:56:04 +00003 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
Glenn L McGrath95ebf612001-10-25 14:18:08 +00004 */
5
Glenn L McGrath237ae422002-11-03 14:05:15 +00006#include <stdio.h>
Glenn L McGrath7ca04f32002-09-25 02:47:48 +00007#include <stdlib.h>
Glenn L McGrath237ae422002-11-03 14:05:15 +00008#include <string.h>
Glenn L McGrath7ca04f32002-09-25 02:47:48 +00009#include "unarchive.h"
10#include "libbb.h"
Glenn L McGrath95ebf612001-10-25 14:18:08 +000011
Rob Landleydfba7412006-03-06 20:47:33 +000012void archive_xread_all(const archive_handle_t *archive_handle, void *buf, const size_t count)
Glenn L McGrath95ebf612001-10-25 14:18:08 +000013{
Glenn L McGrath237ae422002-11-03 14:05:15 +000014 ssize_t size;
15
Glenn L McGrath7ffe1332003-11-21 22:24:57 +000016 size = bb_full_read(archive_handle->src_fd, buf, count);
Glenn L McGrath237ae422002-11-03 14:05:15 +000017 if (size != count) {
Manuel Novoa III cad53642003-03-19 09:13:01 +000018 bb_error_msg_and_die("Short read");
Glenn L McGrath95ebf612001-10-25 14:18:08 +000019 }
Glenn L McGrath237ae422002-11-03 14:05:15 +000020 return;
Eric Andersen2276d832002-07-11 11:11:56 +000021}