diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2006-12-22 00:21:07 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2006-12-22 00:21:07 +0000 |
commit | 714701c890b5f03253c5ecdb7367c4258ce78715 (patch) | |
tree | 7ddaf73cf2deda0f357b21802dab4d42798dd778 /include | |
parent | 0a8a7741795880201bcf78231d1eab0e2538bb0b (diff) | |
download | busybox-714701c890b5f03253c5ecdb7367c4258ce78715.tar.gz |
tar et al: die if bb_copyfd_size copies less than asked for.
(we have bb_copyfd_exact_size now for that kind of usage)
Diffstat (limited to 'include')
-rw-r--r-- | include/libbb.h | 7 | ||||
-rw-r--r-- | include/unarchive.h | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/include/libbb.h b/include/libbb.h index 2fd54e789..2bfeba4e1 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -203,8 +203,13 @@ extern int recursive_action(const char *fileName, int recurse, extern int device_open(const char *device, int mode); extern int get_console_fd(void); extern char *find_block_device(char *path); -extern off_t bb_copyfd_size(int fd1, int fd2, off_t size); +/* bb_copyfd_XX print read/write errors and return -1 if they occur */ extern off_t bb_copyfd_eof(int fd1, int fd2); +extern off_t bb_copyfd_size(int fd1, int fd2, off_t size); +extern void bb_copyfd_exact_size(int fd1, int fd2, off_t size); +/* "short" copy can be detected by return value < size */ +/* this helper yells "short read!" if param is not -1 */ +extern void complain_copyfd_and_die(off_t sz) ATTRIBUTE_NORETURN; extern char bb_process_escape_sequence(const char **ptr); extern char *bb_get_last_path_component(char *path); extern int ndelay_on(int fd); diff --git a/include/unarchive.h b/include/unarchive.h index 7de6a63fe..88c00882c 100644 --- a/include/unarchive.h +++ b/include/unarchive.h @@ -24,7 +24,7 @@ typedef struct file_headers_s { } file_header_t; typedef struct archive_handle_s { - /* define if the header and data component should processed */ + /* define if the header and data component should be processed */ char (*filter)(struct archive_handle_s *); llist_t *accept; /* List of files that have been rejected */ |