@@ -75,13 +75,19 @@ func (b *EthAPIBackend) HeaderByNumber(ctx context.Context, number rpc.BlockNumb
75
75
return b .eth .blockchain .CurrentBlock (), nil
76
76
}
77
77
if number == rpc .FinalizedBlockNumber {
78
+ if ! b .eth .Merger ().TDDReached () {
79
+ return nil , errors .New ("'finalized' tag not supported on pre-merge network" )
80
+ }
78
81
block := b .eth .blockchain .CurrentFinalBlock ()
79
82
if block != nil {
80
83
return block , nil
81
84
}
82
85
return nil , errors .New ("finalized block not found" )
83
86
}
84
87
if number == rpc .SafeBlockNumber {
88
+ if ! b .eth .Merger ().TDDReached () {
89
+ return nil , errors .New ("'safe' tag not supported on pre-merge network" )
90
+ }
85
91
block := b .eth .blockchain .CurrentSafeBlock ()
86
92
if block != nil {
87
93
return block , nil
@@ -124,10 +130,16 @@ func (b *EthAPIBackend) BlockByNumber(ctx context.Context, number rpc.BlockNumbe
124
130
return b .eth .blockchain .GetBlock (header .Hash (), header .Number .Uint64 ()), nil
125
131
}
126
132
if number == rpc .FinalizedBlockNumber {
133
+ if ! b .eth .Merger ().TDDReached () {
134
+ return nil , errors .New ("'finalized' tag not supported on pre-merge network" )
135
+ }
127
136
header := b .eth .blockchain .CurrentFinalBlock ()
128
137
return b .eth .blockchain .GetBlock (header .Hash (), header .Number .Uint64 ()), nil
129
138
}
130
139
if number == rpc .SafeBlockNumber {
140
+ if ! b .eth .Merger ().TDDReached () {
141
+ return nil , errors .New ("'safe' tag not supported on pre-merge network" )
142
+ }
131
143
header := b .eth .blockchain .CurrentSafeBlock ()
132
144
return b .eth .blockchain .GetBlock (header .Hash (), header .Number .Uint64 ()), nil
133
145
}
0 commit comments