From 4c5f8153f1cd1f97987a1c1399a7769596a4b90b Mon Sep 17 00:00:00 2001
From: Jaynti Kanani <jdkanani@gmail.com>
Date: Sat, 14 Nov 2020 15:36:39 +0530
Subject: [PATCH] chg: set signer for bor

---
 eth/backend.go             | 8 ++++++++
 params/config.go           | 2 ++
 signer/core/signed_data.go | 4 ++++
 3 files changed, 14 insertions(+)

diff --git a/eth/backend.go b/eth/backend.go
index 2d5993277..694d4c35d 100644
--- a/eth/backend.go
+++ b/eth/backend.go
@@ -473,6 +473,14 @@ func (s *Ethereum) StartMining(threads int) error {
 			}
 			clique.Authorize(eb, wallet.SignData)
 		}
+		if bor, ok := s.engine.(*bor.Bor); ok {
+			wallet, err := s.accountManager.Find(accounts.Account{Address: eb})
+			if wallet == nil || err != nil {
+				log.Error("Etherbase account unavailable locally", "err", err)
+				return fmt.Errorf("signer missing: %v", err)
+			}
+			bor.Authorize(eb, wallet.SignData)
+		}
 		// If mining is started, we can disable the transaction rejection mechanism
 		// introduced to speed sync times.
 		atomic.StoreUint32(&s.protocolManager.acceptTxs, 1)
diff --git a/params/config.go b/params/config.go
index d998c9491..e3924df14 100644
--- a/params/config.go
+++ b/params/config.go
@@ -371,6 +371,8 @@ func (c *ChainConfig) String() string {
 		engine = c.Ethash
 	case c.Clique != nil:
 		engine = c.Clique
+	case c.Bor != nil:
+		engine = c.Bor
 	default:
 		engine = "unknown"
 	}
diff --git a/signer/core/signed_data.go b/signer/core/signed_data.go
index 19377a521..9811178cc 100644
--- a/signer/core/signed_data.go
+++ b/signer/core/signed_data.go
@@ -58,6 +58,10 @@ var (
 		accounts.MimetypeClique,
 		0x02,
 	}
+	ApplicationBor = SigFormat{
+		accounts.MimetypeBor,
+		0x10,
+	}
 	TextPlain = SigFormat{
 		accounts.MimetypeTextPlain,
 		0x45,
-- 
GitLab