--- libaitio/inc/aitio.h 2013/06/24 14:45:37 1.31.2.3 +++ libaitio/inc/aitio.h 2013/06/25 08:18:57 1.31.2.4 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.31.2.3 2013/06/24 14:45:37 misho Exp $ +* $Id: aitio.h,v 1.31.2.4 2013/06/25 08:18:57 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -415,6 +415,27 @@ int io_etherOpen(const char *csIface, int flags, int w * return: none */ void io_etherClose(int eth, void **zcbuf); + +/* + * io_etherSend() - Send packet to bpf + * + * @eth = bpf handle + * @buf = buffer + * @buflen = buffer length + * return: -1 error or !=-1 written bytes + */ +ssize_t io_etherSend(int eth, const void *buf, size_t buflen); +/* + * io_etherRecv() - Receive packet from bpf + * + * @eth = bpf handle + * @buf = buffer + * @buflen = buffer length + * @zcbuf = zero copy buffer, if BPF supports it and isn't NULL + * return: -1 error or !=-1 readed bytes + */ +ssize_t io_etherRecv(int eth, void * __restrict buf, + size_t buflen, void * __restrict zcbuf); #endif