Initial public busybox upstream commit
[busybox4maemo] / archival / libunarchive / unpack_ar_archive.c
1 /* vi: set sw=4 ts=4: */
2 /*
3  * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
4  */
5
6 #include "libbb.h"
7 #include "unarchive.h"
8
9 void unpack_ar_archive(archive_handle_t *ar_archive)
10 {
11         char magic[7];
12
13         xread(ar_archive->src_fd, magic, 7);
14         if (strncmp(magic, "!<arch>", 7) != 0) {
15                 bb_error_msg_and_die("invalid ar magic");
16         }
17         ar_archive->offset += 7;
18
19         while (get_header_ar(ar_archive) == EXIT_SUCCESS);
20 }