ipt_ULOG.h
上传用户:szlgq88
上传日期:2009-04-28
资源大小:48287k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /* Header file for IP tables userspace logging, Version 1.8
  2.  *
  3.  * (C) 2000-2002 by Harald Welte <laforge@gnumonks.org>
  4.  * 
  5.  * Distributed under the terms of GNU GPL */
  6. #ifndef _IPT_ULOG_H
  7. #define _IPT_ULOG_H
  8. #ifndef NETLINK_NFLOG
  9. #define NETLINK_NFLOG  5
  10. #endif
  11. #define ULOG_DEFAULT_NLGROUP 1
  12. #define ULOG_DEFAULT_QTHRESHOLD 1
  13. #define ULOG_MAC_LEN 80
  14. #define ULOG_PREFIX_LEN 32
  15. #define ULOG_MAX_QLEN 50
  16. /* Why 50? Well... there is a limit imposed by the slab cache 131000
  17.  * bytes. So the multipart netlink-message has to be < 131000 bytes.
  18.  * Assuming a standard ethernet-mtu of 1500, we could define this up
  19.  * to 80... but even 50 seems to be big enough. */
  20. /* private data structure for each rule with a ULOG target */
  21. struct ipt_ulog_info {
  22. unsigned int nl_group;
  23. size_t copy_range;
  24. size_t qthreshold;
  25. char prefix[ULOG_PREFIX_LEN];
  26. };
  27. /* Format of the ULOG packets passed through netlink */
  28. typedef struct ulog_packet_msg {
  29. unsigned long mark;
  30. long timestamp_sec;
  31. long timestamp_usec;
  32. unsigned int hook;
  33. char indev_name[IFNAMSIZ];
  34. char outdev_name[IFNAMSIZ];
  35. size_t data_len;
  36. char prefix[ULOG_PREFIX_LEN];
  37. unsigned char mac_len;
  38. unsigned char mac[ULOG_MAC_LEN];
  39. unsigned char payload[0];
  40. } ulog_packet_msg_t;
  41. #endif /*_IPT_ULOG_H*/