/* Copyright 2007-2010 Jozsef Kadlecsik (kadlec@blackhole.kfki.hu) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef LIBIPSET_TRANSPORT_H #define LIBIPSET_TRANSPORT_H #include /* uintxx_t */ #include /* struct nlmsghdr */ #include /* mnl_cb_t */ #include /* enum ipset_cmd */ struct ipset_handle; struct ipset_transport { struct ipset_handle * (*init)(mnl_cb_t *cb_ctl, void *data); int (*fini)(struct ipset_handle *handle); void (*fill_hdr)(struct ipset_handle *handle, enum ipset_cmd cmd, void *buffer, size_t len, uint8_t envflags); int (*query)(struct ipset_handle *handle, void *buffer, size_t len); }; #endif /* LIBIPSET_TRANSPORT_H */