- add central knob to turn off getopt_long everywhere. EXPERIMENTAL!
[oweals/busybox.git] / archival / libunarchive / unpack_ar_archive.c
1 /* vi:set ts=4:*/
2 /*
3  * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
4  */
5 #include <fcntl.h>
6 #include <stdlib.h>
7 #include <string.h>
8 #include "unarchive.h"
9 #include "libbb.h"
10
11 void unpack_ar_archive(archive_handle_t *ar_archive)
12 {
13         char magic[7];
14
15         archive_xread_all(ar_archive, magic, 7);
16         if (strncmp(magic, "!<arch>", 7) != 0) {
17                 bb_error_msg_and_die("Invalid ar magic");
18         }
19         ar_archive->offset += 7;
20
21         while (get_header_ar(ar_archive) == EXIT_SUCCESS);
22 }