github.com/coltonfike/e2c@v21.1.0+incompatible/params/network_params.go (about) 1 // Copyright 2017 The go-ethereum Authors 2 // This file is part of the go-ethereum library. 3 // 4 // The go-ethereum library is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU Lesser General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // The go-ethereum library is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU Lesser General Public License for more details. 13 // 14 // You should have received a copy of the GNU Lesser General Public License 15 // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>. 16 17 package params 18 19 // These are network parameters that need to be constant between clients, but 20 // aren't necessarily consensus related. 21 22 const ( 23 // BloomBitsBlocks is the number of blocks a single bloom bit section vector 24 // contains on the server side. 25 BloomBitsBlocks uint64 = 4096 26 27 // BloomBitsBlocksClient is the number of blocks a single bloom bit section vector 28 // contains on the light client side 29 BloomBitsBlocksClient uint64 = 32768 30 31 // BloomConfirms is the number of confirmation blocks before a bloom section is 32 // considered probably final and its rotated bits are calculated. 33 BloomConfirms = 256 34 35 // CHTFrequency is the block frequency for creating CHTs 36 CHTFrequency = 32768 37 38 // BloomTrieFrequency is the block frequency for creating BloomTrie on both 39 // server/client sides. 40 BloomTrieFrequency = 32768 41 42 // HelperTrieConfirmations is the number of confirmations before a client is expected 43 // to have the given HelperTrie available. 44 HelperTrieConfirmations = 2048 45 46 // HelperTrieProcessConfirmations is the number of confirmations before a HelperTrie 47 // is generated 48 HelperTrieProcessConfirmations = 256 49 50 // CheckpointFrequency is the block frequency for creating checkpoint 51 CheckpointFrequency = 32768 52 53 // CheckpointProcessConfirmations is the number before a checkpoint is generated 54 CheckpointProcessConfirmations = 256 55 56 // ImmutabilityThreshold is the number of blocks after which a chain segment is 57 // considered immutable (i.e. soft finality). It is used by the downloader as a 58 // hard limit against deep ancestors, by the blockchain against deep reorgs, by 59 // the freezer as the cutoff treshold and by clique as the snapshot trust limit. 60 ImmutabilityThreshold = 90000 61 ) 62 63 // //Quorum 64 var quorumImmutabilityThreshold int 65 66 // returns the immutability threshold set for the network 67 func GetImmutabilityThreshold() int { 68 69 if quorumImmutabilityThreshold > 0 { 70 return quorumImmutabilityThreshold 71 } 72 73 return ImmutabilityThreshold 74 } 75 76 // sets the immutability threshold and isQuorum to passed values 77 func SetQuorumImmutabilityThreshold(immutabilityThreshold int) { 78 quorumImmutabilityThreshold = immutabilityThreshold 79 } 80 81 // /Quorum