From 3ff479bc941cba817e7986ea21504871df005d12 Mon Sep 17 00:00:00 2001 From: jwasinger Date: Mon, 23 May 2022 22:18:03 -1000 Subject: [PATCH] signer/core: always pad clique header extra data with space for sealer's signature (#24941) * signer/core: always pad clique header extra data with space for sealer's signature * capitalize comment --- signer/core/signed_data.go | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/signer/core/signed_data.go b/signer/core/signed_data.go index 03494c098d..9bf47be799 100644 --- a/signer/core/signed_data.go +++ b/signer/core/signed_data.go @@ -147,13 +147,11 @@ func (api *SignerAPI) determineSignatureFormat(ctx context.Context, contentType if err := rlp.DecodeBytes(cliqueData, header); err != nil { return nil, useEthereumV, err } - // The incoming clique header is already truncated, sent to us with a extradata already shortened - if len(header.Extra) < 65 { - // Need to add it back, to get a suitable length for hashing - newExtra := make([]byte, len(header.Extra)+65) - copy(newExtra, header.Extra) - header.Extra = newExtra - } + // Add space in the extradata to put the signature + newExtra := make([]byte, len(header.Extra)+65) + copy(newExtra, header.Extra) + header.Extra = newExtra + // Get back the rlp data, encoded by us sighash, cliqueRlp, err := cliqueHeaderHashAndRlp(header) if err != nil {