// ======================================================================================================== // ======================================================================================================== // ******************************************* device_common.h ******************************************** // ======================================================================================================== // ======================================================================================================== #include #include #include static volatile int keepRunning = 1; // MAX we can generate before overflow (where further nonce bytes are ignored). #define MAX_GENERATED_NONCE_BYTES 1000 void LoadUnloadBRAM(int max_string_len, int num_vals, volatile unsigned int *CtrlRegA, volatile unsigned int *DataRegA, unsigned int ctrl_mask, unsigned char *ByteData, signed short *WordData, int load_or_unload, int byte_or_word_data, int debug_flag); int ReceiveChlngsAndMasks(int max_string_len, int verifier_socket_desc, unsigned char ***challenges_b_ptr, int num_chlng_bits, int *num_rise_chlngs_ptr, int *has_masks_ptr, int num_POs, unsigned char ***masks_b_ptr); void LoadChlngAndMask(int max_string_len, volatile unsigned int *CtrlRegA, volatile unsigned int *DataRegA, int chlng_num, unsigned char **challenges_b, int ctrl_mask, int num_chlng_bits, int chlng_chunk_size, int has_masks, int num_POs, unsigned char **masks_b); void SaveASCIIChlngs(int max_string_len, int num_chlngs, unsigned char **challenges_b, int num_chlng_bits, int has_masks, int num_POs, unsigned char **masks_b); int GoGetChlngs(int max_string_len, int num_POs, int num_chlng_bits, int verifier_socket_desc, int *num_rise_chlngs_ptr, int *has_masks_ptr, unsigned char ***challenges_b_ptr, unsigned char ***masks_b_ptr, int send_GO, int debug_flag);