Skip to content

Commit

Permalink
Make a filter program be called with its arguments.
Browse files Browse the repository at this point in the history
  • Loading branch information
ggcueroad committed Oct 5, 2012
1 parent 275000d commit 40722a2
Show file tree
Hide file tree
Showing 12 changed files with 1,050 additions and 65 deletions.
1 change: 1 addition & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,7 @@ libarchive_test_SOURCES= \
libarchive/test/test_read_disk_entry_from_file.c \
libarchive/test/test_read_extract.c \
libarchive/test/test_read_file_nonexistent.c \
libarchive/test/test_read_filter_program_signature.c \
libarchive/test/test_read_format_7zip.c \
libarchive/test/test_read_format_ar.c \
libarchive/test/test_read_format_cab.c \
Expand Down
19 changes: 18 additions & 1 deletion libarchive/archive.h
Original file line number Diff line number Diff line change
Expand Up @@ -328,9 +328,22 @@ __LA_DECL int archive_read_support_filter_lzma(struct archive *);
__LA_DECL int archive_read_support_filter_none(struct archive *);
__LA_DECL int archive_read_support_filter_program(struct archive *,
const char *command);
__LA_DECL int archive_read_support_filter_programl(struct archive *,
const char *command, const char *arg,
.../* (char *)0 */);
__LA_DECL int archive_read_support_filter_programv(struct archive *,
const char *command, char * const argv[]);
__LA_DECL int archive_read_support_filter_program_signature
(struct archive *, const char *,
(struct archive *, const char * /* cmd */,
const void * /* match */, size_t);
__LA_DECL int archive_read_support_filter_programl_signature
(struct archive *, const char * /* cmd */,
const char * /* arg */,
.../* , (char *)0, const void *, size_t */);
__LA_DECL int archive_read_support_filter_programv_signature
(struct archive *, const char * /* cmd */,
char * const [] /* argv */,
const void * /* match */, size_t);

__LA_DECL int archive_read_support_filter_rpm(struct archive *);
__LA_DECL int archive_read_support_filter_uu(struct archive *);
Expand Down Expand Up @@ -601,6 +614,10 @@ __LA_DECL int archive_write_add_filter_lzma(struct archive *);
__LA_DECL int archive_write_add_filter_none(struct archive *);
__LA_DECL int archive_write_add_filter_program(struct archive *,
const char *cmd);
__LA_DECL int archive_write_add_filter_programl(struct archive *,
const char *cmd, const char *arg, .../*, (char *)0 */);
__LA_DECL int archive_write_add_filter_programv(struct archive *,
const char *cmd, char * const argv[]);
__LA_DECL int archive_write_add_filter_xz(struct archive *);


Expand Down
4 changes: 4 additions & 0 deletions libarchive/archive_read_private.h
Original file line number Diff line number Diff line change
Expand Up @@ -226,4 +226,8 @@ int64_t __archive_read_filter_seek(struct archive_read_filter *, int64_t, int);
int64_t __archive_read_consume(struct archive_read *, int64_t);
int64_t __archive_read_filter_consume(struct archive_read_filter *, int64_t);
int __archive_read_program(struct archive_read_filter *, const char *);
int __archive_read_programl(struct archive_read_filter *, const char *,
const char *, .../*, (char *)0 */);
int __archive_read_programv(struct archive_read_filter *, const char *,
char * const argv[]);
#endif
Loading

0 comments on commit 40722a2

Please sign in to comment.