@@ -75,13 +75,19 @@ func (b *EthAPIBackend) HeaderByNumber(ctx context.Context, number rpc.BlockNumb
7575 return b .eth .blockchain .CurrentBlock (), nil
7676 }
7777 if number == rpc .FinalizedBlockNumber {
78+ if ! b .eth .Merger ().TDDReached () {
79+ return nil , errors .New ("'finalized' tag not supported on pre-merge network" )
80+ }
7881 block := b .eth .blockchain .CurrentFinalBlock ()
7982 if block != nil {
8083 return block , nil
8184 }
8285 return nil , errors .New ("finalized block not found" )
8386 }
8487 if number == rpc .SafeBlockNumber {
88+ if ! b .eth .Merger ().TDDReached () {
89+ return nil , errors .New ("'safe' tag not supported on pre-merge network" )
90+ }
8591 block := b .eth .blockchain .CurrentSafeBlock ()
8692 if block != nil {
8793 return block , nil
@@ -124,10 +130,16 @@ func (b *EthAPIBackend) BlockByNumber(ctx context.Context, number rpc.BlockNumbe
124130 return b .eth .blockchain .GetBlock (header .Hash (), header .Number .Uint64 ()), nil
125131 }
126132 if number == rpc .FinalizedBlockNumber {
133+ if ! b .eth .Merger ().TDDReached () {
134+ return nil , errors .New ("'finalized' tag not supported on pre-merge network" )
135+ }
127136 header := b .eth .blockchain .CurrentFinalBlock ()
128137 return b .eth .blockchain .GetBlock (header .Hash (), header .Number .Uint64 ()), nil
129138 }
130139 if number == rpc .SafeBlockNumber {
140+ if ! b .eth .Merger ().TDDReached () {
141+ return nil , errors .New ("'safe' tag not supported on pre-merge network" )
142+ }
131143 header := b .eth .blockchain .CurrentSafeBlock ()
132144 return b .eth .blockchain .GetBlock (header .Hash (), header .Number .Uint64 ()), nil
133145 }
0 commit comments