Line data Source code
1 : #include "fd_genesis_cluster.h" 2 : 3 : FD_FN_PURE ulong 4 3 : fd_genesis_cluster_identify( char const * expected_genesis_hash ) { 5 3 : char const * DEVNET_GENESIS_HASH = "EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG"; 6 3 : char const * TESTNET_GENESIS_HASH = "4uhcVJyU9pJkvQyS88uRDiswHXSCkY3zQawwpjk2NsNY"; 7 3 : char const * MAINNET_BETA_GENESIS_HASH = "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d"; 8 3 : char const * PYTHTEST_GENESIS_HASH = "EkCkB7RWVrgkcpariRpd3pjf7GwiCMZaMHKUpB5Na1Ve"; 9 3 : char const * PYTHNET_GENESIS_HASH = "GLKkBUr6r72nBtGrtBPJLRqtsh8wXZanX4xfnqKnWwKq"; 10 : 11 3 : ulong cluster = FD_CLUSTER_UNKNOWN; 12 3 : if( FD_LIKELY( expected_genesis_hash ) ) { 13 3 : if( FD_UNLIKELY( !strcmp( expected_genesis_hash, DEVNET_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_DEVNET; 14 3 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, TESTNET_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_TESTNET; 15 3 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, MAINNET_BETA_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_MAINNET_BETA; 16 3 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, PYTHTEST_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_PYTHTEST; 17 3 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, PYTHNET_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_PYTHNET; 18 3 : } 19 : 20 3 : return cluster; 21 3 : } 22 : 23 : FD_FN_CONST char const * 24 3 : fd_genesis_cluster_name( ulong cluster ) { 25 3 : switch( cluster ) { 26 3 : case FD_CLUSTER_UNKNOWN: return "unknown"; 27 0 : case FD_CLUSTER_PYTHTEST: return "pythtest"; 28 0 : case FD_CLUSTER_TESTNET: return "testnet"; 29 0 : case FD_CLUSTER_DEVNET: return "devnet"; 30 0 : case FD_CLUSTER_PYTHNET: return "pythnet"; 31 0 : case FD_CLUSTER_MAINNET_BETA: return "mainnet-beta"; 32 0 : default: return "unknown"; 33 3 : } 34 3 : }