Line data Source code
1 : #include "fd_genesis_cluster.h" 2 : 3 : FD_FN_PURE ulong 4 0 : fd_genesis_cluster_identify( char const * expected_genesis_hash ) { 5 0 : char const * DEVNET_GENESIS_HASH = "EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG"; 6 0 : char const * TESTNET_GENESIS_HASH = "4uhcVJyU9pJkvQyS88uRDiswHXSCkY3zQawwpjk2NsNY"; 7 0 : char const * MAINNET_BETA_GENESIS_HASH = "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d"; 8 0 : char const * PYTHTEST_GENESIS_HASH = "EkCkB7RWVrgkcpariRpd3pjf7GwiCMZaMHKUpB5Na1Ve"; 9 0 : char const * PYTHNET_GENESIS_HASH = "GLKkBUr6r72nBtGrtBPJLRqtsh8wXZanX4xfnqKnWwKq"; 10 : 11 0 : ulong cluster = FD_CLUSTER_UNKNOWN; 12 0 : if( FD_LIKELY( expected_genesis_hash ) ) { 13 0 : if( FD_UNLIKELY( !strcmp( expected_genesis_hash, DEVNET_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_DEVNET; 14 0 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, TESTNET_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_TESTNET; 15 0 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, MAINNET_BETA_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_MAINNET_BETA; 16 0 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, PYTHTEST_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_PYTHTEST; 17 0 : else if( FD_UNLIKELY( !strcmp( expected_genesis_hash, PYTHNET_GENESIS_HASH ) ) ) cluster = FD_CLUSTER_PYTHNET; 18 0 : } 19 : 20 0 : return cluster; 21 0 : } 22 : 23 : FD_FN_CONST char const * 24 0 : fd_genesis_cluster_name( ulong cluster ) { 25 0 : switch( cluster ) { 26 0 : 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 0 : } 34 0 : }