diff options
author | Glenn L McGrath | 2001-04-11 16:31:20 +0000 |
---|---|---|
committer | Glenn L McGrath | 2001-04-11 16:31:20 +0000 |
commit | b3f23d4c6a34b190d3fe0b73ed3c25e4af611749 (patch) | |
tree | 9966ebb52afc74d1cf85c4b7f5c670545b137007 /libbb/seek_ared_file.c | |
parent | 988be100e246cd4b78c60082ce74a77894a903b7 (diff) | |
download | busybox-b3f23d4c6a34b190d3fe0b73ed3c25e4af611749.zip busybox-b3f23d4c6a34b190d3fe0b73ed3c25e4af611749.tar.gz |
Seek to start of an entry inside an ar file
Diffstat (limited to 'libbb/seek_ared_file.c')
-rw-r--r-- | libbb/seek_ared_file.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libbb/seek_ared_file.c b/libbb/seek_ared_file.c new file mode 100644 index 0000000..67c789d --- /dev/null +++ b/libbb/seek_ared_file.c @@ -0,0 +1,17 @@ +#include <stdio.h> +#include <stdlib.h> +#include "libbb.h" + +extern int seek_ared_file(FILE *in_file, ar_headers_t *headers, const char *tar_gz_file) +{ + /* find the headers for the specified .tar.gz file */ + while (headers->next != NULL) { + if (strcmp(headers->name, tar_gz_file) == 0) { + fseek(in_file, headers->offset, SEEK_SET); + return(EXIT_SUCCESS); + } + headers = headers->next; + } + + return(EXIT_FAILURE); +}
\ No newline at end of file |