--- libaitio/inc/aitio.h 2013/12/15 22:57:20 1.39 +++ libaitio/inc/aitio.h 2016/08/18 09:06:31 1.42 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.39 2013/12/15 22:57:20 misho Exp $ +* $Id: aitio.h,v 1.42 2016/08/18 09:06:31 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -12,7 +12,7 @@ terms: All of the documentation and software included in the ELWIX and AITNET Releases is copyrighted by ELWIX - Sofia/Bulgaria -Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 +Copyright 2004 - 2016 by Michael Pounov . All rights reserved. Redistribution and use in source and binary forms, with or without @@ -53,13 +53,15 @@ SUCH DAMAGE. #include #include #include -#include -#include #include #include #include +#ifndef __linux__ +#include +#include #include #include +#endif #include #include #include @@ -631,37 +633,22 @@ FILE *io_fd2buf(int fd, const char *mode); * return: -1 error or open file handle */ int io_dumbFile(const char *csFile, int mode, off_t size); +#define io_emptyFile io_dumbFile /* - * io_get1stiface() - Get first interface of host - * - * @szIface = interface string buffer - * @iflen = size of interface buffer - * return: -1 error or 0 ok - */ -int io_get1stiface(char *szIface, int iflen); -/* - * io_getmaciface() - Get MAC address from interface name - * - * @csIface = interface name - * @ea = ethernet address - * return: -1 error, 0 ok or 1 not found - */ -int io_getmaciface(const char *csIface, ether_addr_t * __restrict ea); -/* * io_etherOpen() - Open BPF interface to device * * @csIface = interface name * @flags = open flags * @whdr = with complete headers - * @wdlt = with data link type + * @wdlt = with data link type, on Linux is protocol number * @buflen = buffer length * @zcbuf = zero copy buffer, if BPF supports it and isn't NULL * return: -1 error or >-1 bpf handle */ -int io_etherOpen(const char *csIface, int flags, int whdr, int wdlt, - unsigned int *buflen, void **zcbuf); +int io_etherOpen(const char *csIface, int flags, unsigned int whdr, + unsigned int wdlt, unsigned int *buflen, void **zcbuf); /* * io_etherClose() - Close BPF interface * @@ -671,6 +658,7 @@ int io_etherOpen(const char *csIface, int flags, int w */ void io_etherClose(int eth, void **zcbuf); +#ifndef __linux__ /* * io_etherFilter() - BPF filter routine * @@ -682,6 +670,7 @@ void io_etherClose(int eth, void **zcbuf); * return: -1 error or 0 ok */ int io_etherFilter(int eth, int io, struct bpf_insn * __restrict insn, size_t insnlen); +#endif /* * io_etherSend() - Send packet to bpf