extract: rework the extraction of a package
modified libpkg/pkg_add.c
@@ -1,5 +1,5 @@
|
|
| - | |
| + | |
|
|
|
|
|
@@ -309,7 +309,7 @@ fill_timespec_buf(const struct stat *aest, struct timespec tspec[2])
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -339,7 +339,7 @@ create_dir(struct pkg *pkg, struct pkg_dir *d)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -358,7 +358,7 @@ do_extract_dir(struct pkg* pkg, struct archive *a __unused, struct archive_entry
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -384,24 +384,47 @@ try_mkdir(int fd, const char *path)
|
|
|
|
|
|
| - | |
| + | |
|
|
| + | |
| + | |
| + | |
|
|
|
|
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| + | |
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -411,7 +434,7 @@ retry:
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -431,7 +454,7 @@ do_extract_symlink(struct pkg *pkg, struct archive *a __unused, struct archive_e
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -442,25 +465,51 @@ do_extract_symlink(struct pkg *pkg, struct archive *a __unused, struct archive_e
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
| + | |
| + | |
| + | |
|
|
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
|
|
|
|
|
|
|
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
| - | |
| + | |
|
|
|
|
|
@@ -474,7 +523,7 @@ retry:
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -488,7 +537,7 @@ do_extract_hardlink(struct pkg *pkg, struct archive *a __unused, struct archive_
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -499,30 +548,59 @@ do_extract_hardlink(struct pkg *pkg, struct archive *a __unused, struct archive_
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
| - | |
| + | |
|
|
| - | |
| - | |
| - | |
| - | |
|
|
|
|
| - | |
| - | |
| - | |
| + | |
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -560,11 +638,17 @@ retry:
|
|
|
|
|
|
| - | |
| + | |
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -573,7 +657,7 @@ retry:
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -593,7 +677,7 @@ do_extract_regfile(struct pkg *pkg, struct archive *a, struct archive_entry *ae,
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -605,13 +689,14 @@ do_extract_regfile(struct pkg *pkg, struct archive *a, struct archive_entry *ae,
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -674,7 +759,7 @@ do_extract(struct archive *a, struct archive_entry *ae,
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -698,7 +783,7 @@ cleanup:
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -711,6 +796,18 @@ pkg_extract_finalize(struct pkg *pkg)
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -782,6 +879,8 @@ pkg_extract_finalize(struct pkg *pkg)
|
|
|
|
|
|
| + | |
| + | |
|
|
|
|
|
@@ -1044,6 +1143,7 @@ pkg_add_common(struct pkgdb *db, const char *path, unsigned flags,
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -1153,7 +1253,7 @@ pkg_add_common(struct pkgdb *db, const char *path, unsigned flags,
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -1178,7 +1278,7 @@ pkg_add_common(struct pkgdb *db, const char *path, unsigned flags,
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -1302,6 +1402,7 @@ pkg_add_fromdir(struct pkg *pkg, const char *src)
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -1357,7 +1458,7 @@ pkg_add_fromdir(struct pkg *pkg, const char *src)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -1429,7 +1530,7 @@ pkg_add_fromdir(struct pkg *pkg, const char *src)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -1450,13 +1551,13 @@ pkg_add_fromdir(struct pkg *pkg, const char *src)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -1475,7 +1576,7 @@ pkg_add_fromdir(struct pkg *pkg, const char *src)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified tests/frontend/upgrade.sh
@@ -6,7 +6,9 @@ tests_init \
|
|
|
|
|
|
| - | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -227,3 +229,36 @@ EOF
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |