#ifndef ETHERLIB_CONNECTION_BLOCK_H #define ETHERLIB_CONNECTION_BLOCK_H #include "packet_sieve.h" struct ConnBlock_; typedef int (*ConnBlockTransmitFn)(struct EthInterface_ * intf, const uint8_t * data, uint32_t size, const struct ConnBlock_ * connBlock); /** * Connection block. */ typedef struct ConnBlock_ { struct EthInterface_ * intf; ///< Ethernet interface PcktSieveLayer * sieveLayer; ///< Sieve layer void * tag; ///< Arbitrary tagging } ConnBlock; /** * Remove connection block. * @param connb pointer to existing connection block */ void connb_remove(ConnBlock * connb); #endif //ETHERLIB_CONNECTION_BLOCK_H