}
return pktb;
}
+EXPORT_SYMBOL(pktb_alloc);
/**
* pktb_data - return pointer to the beginning of the packet buffer
{
return pktb->data;
}
+EXPORT_SYMBOL(pktb_data);
/**
* pktb_len - return length of the packet buffer
{
return pktb->len;
}
+EXPORT_SYMBOL(pktb_len);
/**
* pktb_free - release packet buffer
{
free(pktb);
}
+EXPORT_SYMBOL(pktb_free);
/**
* pktb_push - update pointer to the beginning of the packet buffer
pktb->data -= len;
pktb->len += len;
}
+EXPORT_SYMBOL(pktb_push);
/**
* pktb_pull - update pointer to the beginning of the packet buffer
pktb->data += len;
pktb->len -= len;
}
+EXPORT_SYMBOL(pktb_pull);
/**
* pktb_put - add extra bytes to the tail of the packet buffer
pktb->tail += len;
pktb->len += len;
}
+EXPORT_SYMBOL(pktb_put);
/**
* pktb_trim - set new length for this packet buffer
{
pktb->len = len;
}
+EXPORT_SYMBOL(pktb_trim);
/**
* pktb_tailroom - get room in bytes in the tail of the packet buffer
{
return pktb->data_len - pktb->len;
}
+EXPORT_SYMBOL(pktb_tailroom);
/**
* pktb_mac_header - return pointer to layer 2 header (if any)
{
return pktb->mac_header;
}
+EXPORT_SYMBOL(pktb_mac_header);
/**
* pktb_network_header - return pointer to layer 3 header
{
return pktb->network_header;
}
+EXPORT_SYMBOL(pktb_network_header);
/**
* pktb_transport_header - return pointer to layer 4 header (if any)
{
return pktb->transport_header;
}
+EXPORT_SYMBOL(pktb_transport_header);
static int pktb_expand_tail(struct pkt_buff *pkt, int extra)
{
#include <libnfnetlink/libnfnetlink.h>
#include <libnetfilter_queue/libnetfilter_queue.h>
+#include "src/internal.h"
/**
* \mainpage
};
int nfq_errno;
+EXPORT_SYMBOL(nfq_errno);
/***********************************************************************
* low level stuff
{
return h->nfnlh;
}
+EXPORT_SYMBOL(nfq_nfnlh);
/**
*
{
return nfnl_fd(nfq_nfnlh(h));
}
-
+EXPORT_SYMBOL(nfq_fd);
/**
* @}
*/
return qh;
}
+EXPORT_SYMBOL(nfq_open);
/**
* @}
free(h);
return NULL;
}
+EXPORT_SYMBOL(nfq_open_nfnl);
/**
* \addtogroup LibrarySetup
free(h);
return ret;
}
+EXPORT_SYMBOL(nfq_close);
/**
* nfq_bind_pf - bind a nfqueue handler to a given protocol family
{
return __build_send_cfg_msg(h, NFQNL_CFG_CMD_PF_BIND, 0, pf);
}
+EXPORT_SYMBOL(nfq_bind_pf);
/**
* nfq_unbind_pf - unbind nfqueue handler from a protocol family
{
return __build_send_cfg_msg(h, NFQNL_CFG_CMD_PF_UNBIND, 0, pf);
}
-
+EXPORT_SYMBOL(nfq_unbind_pf);
/**
add_qh(qh);
return qh;
}
+EXPORT_SYMBOL(nfq_create_queue);
/**
* @}
return ret;
}
+EXPORT_SYMBOL(nfq_destroy_queue);
/**
* nfq_handle_packet - handle a packet received from the nfqueue subsystem
{
return nfnl_handle_packet(h->nfnlh, buf, len);
}
+EXPORT_SYMBOL(nfq_handle_packet);
/**
* nfq_set_mode - set the amount of packet data that nfqueue copies to userspace
return nfnl_query(qh->h->nfnlh, &u.nmh);
}
+EXPORT_SYMBOL(nfq_set_mode);
/**
* nfq_set_queue_flags - set flags (options) for the kernel queue
return nfnl_query(qh->h->nfnlh, &u.nmh);
}
+EXPORT_SYMBOL(nfq_set_queue_flags);
/**
* nfq_set_queue_maxlen - Set kernel queue maximum length parameter
return nfnl_query(qh->h->nfnlh, &u.nmh);
}
+EXPORT_SYMBOL(nfq_set_queue_maxlen);
/**
* @}
{
return __set_verdict(qh, id, verdict, 0, 0, data_len, buf,
NFQNL_MSG_VERDICT);
-}
+}
+EXPORT_SYMBOL(nfq_set_verdict);
/**
* nfq_set_verdict2 - like nfq_set_verdict, but you can set the mark.
return __set_verdict(qh, id, verdict, htonl(mark), 1, data_len,
buf, NFQNL_MSG_VERDICT);
}
+EXPORT_SYMBOL(nfq_set_verdict2);
/**
* nfq_set_verdict_batch - issue verdicts on several packets at once
return __set_verdict(qh, id, verdict, 0, 0, 0, NULL,
NFQNL_MSG_VERDICT_BATCH);
}
+EXPORT_SYMBOL(nfq_set_verdict_batch);
/**
* nfq_set_verdict_batch2 - like nfq_set_verdict_batch, but you can set a mark.
return __set_verdict(qh, id, verdict, htonl(mark), 1, 0,
NULL, NFQNL_MSG_VERDICT_BATCH);
}
+EXPORT_SYMBOL(nfq_set_verdict_batch2);
/**
* nfq_set_verdict_mark - like nfq_set_verdict, but you can set the mark.
return __set_verdict(qh, id, verdict, mark, 1, data_len, buf,
NFQNL_MSG_VERDICT);
}
+EXPORT_SYMBOL(nfq_set_verdict_mark);
/**
* @}
return nfnl_get_pointer_to_data(nfad->data, NFQA_PACKET_HDR,
struct nfqnl_msg_packet_hdr);
}
+EXPORT_SYMBOL(nfq_get_msg_packet_hdr);
/**
* nfq_get_nfmark - get the packet mark
{
return ntohl(nfnl_get_data(nfad->data, NFQA_MARK, u_int32_t));
}
+EXPORT_SYMBOL(nfq_get_nfmark);
/**
* nfq_get_timestamp - get the packet timestamp
return 0;
}
+EXPORT_SYMBOL(nfq_get_timestamp);
/**
* nfq_get_indev - get the interface that the packet was received through
{
return ntohl(nfnl_get_data(nfad->data, NFQA_IFINDEX_INDEV, u_int32_t));
}
+EXPORT_SYMBOL(nfq_get_indev);
/**
* nfq_get_physindev - get the physical interface that the packet was received
{
return ntohl(nfnl_get_data(nfad->data, NFQA_IFINDEX_PHYSINDEV, u_int32_t));
}
+EXPORT_SYMBOL(nfq_get_physindev);
/**
* nfq_get_outdev - gets the interface that the packet will be routed out
{
return ntohl(nfnl_get_data(nfad->data, NFQA_IFINDEX_OUTDEV, u_int32_t));
}
+EXPORT_SYMBOL(nfq_get_outdev);
/**
* nfq_get_physoutdev - get the physical interface that the packet output
{
return ntohl(nfnl_get_data(nfad->data, NFQA_IFINDEX_PHYSOUTDEV, u_int32_t));
}
+EXPORT_SYMBOL(nfq_get_physoutdev);
/**
* nfq_get_indev_name - get the name of the interface the packet
u_int32_t ifindex = nfq_get_indev(nfad);
return nlif_index2name(nlif_handle, ifindex, name);
}
+EXPORT_SYMBOL(nfq_get_indev_name);
/**
* nfq_get_physindev_name - get the name of the physical interface the
u_int32_t ifindex = nfq_get_physindev(nfad);
return nlif_index2name(nlif_handle, ifindex, name);
}
+EXPORT_SYMBOL(nfq_get_physindev_name);
/**
* nfq_get_outdev_name - get the name of the physical interface the
u_int32_t ifindex = nfq_get_outdev(nfad);
return nlif_index2name(nlif_handle, ifindex, name);
}
+EXPORT_SYMBOL(nfq_get_outdev_name);
/**
* nfq_get_physoutdev_name - get the name of the interface the
u_int32_t ifindex = nfq_get_physoutdev(nfad);
return nlif_index2name(nlif_handle, ifindex, name);
}
+EXPORT_SYMBOL(nfq_get_physoutdev_name);
/**
* nfq_get_packet_hw
return nfnl_get_pointer_to_data(nfad->data, NFQA_HWADDR,
struct nfqnl_msg_packet_hw);
}
+EXPORT_SYMBOL(nfq_get_packet_hw);
/**
* nfq_get_payload - get payload
return -1;
}
+EXPORT_SYMBOL(nfq_get_payload);
/**
* @}
return len;
}
+EXPORT_SYMBOL(nfq_snprintf_xml);
/**
* @}