/** * https://ciapini.wiki.esiliati.org/view/ArNet */ #ifndef ARNET_H #define ARNET_H #include #include "arnet_types.h" #include "arnet_state.h" #include "arnet_header_fields.h" uint32_t arnet_generate_header(void); void arnet_parse_header_block(uint8_t *block, uint8_t block_size, net_packet *net_pck, arnet_packet *arnet_pck); uint32_t get_header_field(uint32_t InputHeaderBlock, uint32_t Mask); uint8_t clz(uint32_t in); uint32_t arnet_generate_ec(net_packet net_pck, uint8_t *data_queue, uint8_t algo); void arnet_prepare_packet(void); void arnet_packet_setup(void); void arnet_packet_finalize(void); #endif /* ARNET_H */