Skip to content

Commit 644195e

Browse files
committed
Merge branch 'pw/ssh-sign-report-errors'
The codepath to sign learned to report errors when it fails to read from "ssh-keygen". * pw/ssh-sign-report-errors: ssh signing: return an error when signature cannot be read
2 parents 601bb23 + 36fb0d0 commit 644195e

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

gpg-interface.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1059,12 +1059,11 @@ static int sign_buffer_ssh(struct strbuf *buffer, struct strbuf *signature,
10591059
strbuf_addbuf(&ssh_signature_filename, &buffer_file->filename);
10601060
strbuf_addstr(&ssh_signature_filename, ".sig");
10611061
if (strbuf_read_file(signature, ssh_signature_filename.buf, 0) < 0) {
1062-
error_errno(
1062+
ret = error_errno(
10631063
_("failed reading ssh signing data buffer from '%s'"),
10641064
ssh_signature_filename.buf);
1065+
goto out;
10651066
}
1066-
unlink_or_warn(ssh_signature_filename.buf);
1067-
10681067
/* Strip CR from the line endings, in case we are on Windows. */
10691068
remove_cr_after(signature, bottom);
10701069

@@ -1073,6 +1072,8 @@ static int sign_buffer_ssh(struct strbuf *buffer, struct strbuf *signature,
10731072
delete_tempfile(&key_file);
10741073
if (buffer_file)
10751074
delete_tempfile(&buffer_file);
1075+
if (ssh_signature_filename.len)
1076+
unlink_or_warn(ssh_signature_filename.buf);
10761077
strbuf_release(&signer_stderr);
10771078
strbuf_release(&ssh_signature_filename);
10781079
FREE_AND_NULL(ssh_signing_key_file);

0 commit comments

Comments
 (0)