Perform all archive extraction in a sandbox.
modified libpkg/pkg_repo.c
@@ -351,12 +351,19 @@ pkg_repo_signatures_free(struct sig_cert *sc)
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -367,7 +374,7 @@ pkg_repo_meta_extract_signature_pubkey(int fd, void *ud)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -394,13 +401,21 @@ pkg_repo_meta_extract_signature_pubkey(int fd, void *ud)
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| + | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
|
|
|
|
|
@@ -410,7 +425,7 @@ pkg_repo_meta_extract_signature_fingerprints(int fd, void *ud)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -423,7 +438,7 @@ pkg_repo_meta_extract_signature_fingerprints(int fd, void *ud)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -505,10 +520,16 @@ pkg_repo_meta_extract_signature_fingerprints(int fd, void *ud)
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
| + | |
|
|
|
|
|
@@ -646,9 +667,8 @@ pkg_repo_archive_extract_archive(int fd, const char *file,
|
|
|
|
|
|
| - | |
| - | |
|
|
| + | |
|
|
|
|
|
@@ -657,16 +677,32 @@ pkg_repo_archive_extract_archive(int fd, const char *file,
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -682,7 +718,7 @@ pkg_repo_archive_extract_archive(int fd, const char *file,
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -698,34 +734,8 @@ pkg_repo_archive_extract_archive(int fd, const char *file,
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -738,14 +748,9 @@ cleanup:
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|