mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 08:25:20 +09:00
sbsign: Copy source to dest later
Preparation for later commit.
This commit is contained in:
@@ -258,13 +258,9 @@ static int verb_sign(int argc, char *argv[], void *userdata) {
|
||||
if (r < 0)
|
||||
log_debug_errno(r, "Failed to change temporary file mode: %m");
|
||||
|
||||
r = copy_bytes(srcfd, dstfd, UINT64_MAX, COPY_REFLINK);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to copy %s to %s: %m", argv[1], tmp);
|
||||
|
||||
_cleanup_free_ void *hash = NULL;
|
||||
size_t hashsz;
|
||||
r = pe_hash(dstfd, EVP_sha256(), &hash, &hashsz);
|
||||
r = pe_hash(srcfd, EVP_sha256(), &hash, &hashsz);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to hash PE binary %s: %m", argv[0]);
|
||||
|
||||
@@ -411,6 +407,10 @@ static int verb_sign(int argc, char *argv[], void *userdata) {
|
||||
if (!certificate_table)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EBADMSG), "File lacks certificate table.");
|
||||
|
||||
r = copy_bytes(srcfd, dstfd, UINT64_MAX, COPY_REFLINK);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to copy %s to %s: %m", argv[1], tmp);
|
||||
|
||||
off_t end = st.st_size;
|
||||
ssize_t n;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user