--- ipfw3-2012.orig/glue.h +++ ipfw3-2012/glue.h @@ -377,13 +377,29 @@ #define flow_daddr fl.nl_u.ip4_u #endif -#endif /* __linux__ */ - /* * Do not load prio_heap.h header because of conflicting names * with our heap functions defined in include/netinet/ipfw/dn_heap.h */ #define _LINUX_PRIO_HEAP_H + +/* Do however declare the structure... */ +/** + * struct ptr_heap - simple static-sized priority heap + * @ptrs - pointer to data area + * @max - max number of elements that can be stored in @ptrs + * @size - current number of valid elements in @ptrs (in the range 0..@size-1 + * @gt: comparison operator, which should implement "greater than" + */ +struct ptr_heap { + void **ptrs; + int max; + int size; + int (*gt)(void *, void *); +}; + +#endif /* __linux__ */ + /* * The following define prevent the ipv6.h header to be loaded. * Starting from the 2.6.38 kernel the ipv6.h file, which is included