Line data Source code
1 : #ifndef HEADER_fd_src_discof_genesis_fd_genesis_client_h 2 : #define HEADER_fd_src_discof_genesis_fd_genesis_client_h 3 : 4 : #include "../../util/net/fd_net_headers.h" 5 : 6 : #define FD_GENESIS_CLIENT_ALIGN 8UL 7 : 8 0 : #define FD_GENESIS_CLIENT_MAGIC (0xF17EDA2CE58E1EC0) /* FIREDANCER GENEC V0 */ 9 : 10 : struct fd_genesis_client_private; 11 : typedef struct fd_genesis_client_private fd_genesis_client_t; 12 : 13 : FD_FN_CONST ulong 14 : fd_genesis_client_align( void ); 15 : 16 : FD_FN_CONST ulong 17 : fd_genesis_client_footprint( void ); 18 : 19 : void * 20 : fd_genesis_client_new( void * shmem ); 21 : 22 : fd_genesis_client_t * 23 : fd_genesis_client_join( void * shgen ); 24 : 25 : void 26 : fd_genesis_client_init( fd_genesis_client_t * client, 27 : fd_ip4_port_t const * servers, 28 : ulong servers_len ); 29 : 30 : int 31 : fd_genesis_client_poll( fd_genesis_client_t * client, 32 : fd_ip4_port_t * peer, 33 : uchar ** buffer, 34 : ulong * buffer_sz, 35 : int * charge_busy ); 36 : 37 : struct pollfd const * 38 : fd_genesis_client_get_pollfds( fd_genesis_client_t * client ); 39 : 40 : #endif