]> git.ipfire.org Git - pakfire.git/commitdiff
packager: Reset permissions/ownership for all files in source archives
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 24 Sep 2021 18:03:31 +0000 (18:03 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 24 Sep 2021 18:03:31 +0000 (18:03 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/packager.c

index 6c45127dd4ecea31cca9ba14e387e3594f4d9730..19583f1ada21bb5ff1e0c73c6e12a5562883cb6b 100644 (file)
@@ -1026,6 +1026,18 @@ int pakfire_packager_add(struct pakfire_packager* packager,
                goto ERROR;
        }
 
+       // Overwrite a couple of things for source archives
+       if (pakfire_package_is_source(packager->pkg)) {
+               // Reset permissions
+               archive_entry_set_perm(entry, 0644);
+
+               // Reset file ownership
+               archive_entry_set_uname(entry, "root");
+               archive_entry_set_gname(entry, "root");
+               archive_entry_set_uid(entry, 0);
+               archive_entry_set_gid(entry, 0);
+       }
+
        // Write the header
        r = archive_write_header(packager->payload, entry);
        if (r) {