version 1.1, 2008/06/12 22:26:01 |
version 1.2, 2008/07/16 10:23:39 |
|
|
#ifndef _CACHE_H_ |
#ifndef _CACHE_H_ |
#define _CACHE_H_ |
#define _CACHE_H_ |
|
|
#include "config.h" |
|
|
|
#include <sys/queue.h> |
#include <sys/queue.h> |
#ifdef HAVE_TREE_H |
|
#include <sys/tree.h> |
#include <sys/tree.h> |
#else |
#include <net/pfvar.h> |
#include "tree.h" |
|
#endif |
|
|
|
|
|
struct sc_ent { |
struct sc_ent { |
RB_ENTRY(sc_ent) tlink; |
RB_ENTRY(sc_ent) tlink; |
TAILQ_ENTRY(sc_ent) qlink; |
TAILQ_ENTRY(sc_ent) qlink; |
#ifdef HAVE_PFSYNC_STATE |
|
u_int32_t id[2]; |
u_int32_t id[2]; |
#else |
|
struct pf_addr addr[2]; |
|
#endif |
|
double peak; |
double peak; |
double rate; |
double rate; |
time_t t; |
time_t t; |
u_int32_t bytes; |
u_int32_t bytes; |
#ifndef HAVE_PFSYNC_STATE |
|
u_int16_t port[2]; |
|
u_int8_t af; |
|
u_int8_t proto; |
|
#endif |
|
}; |
}; |
|
|
int cache_init(int); |
int cache_init(int); |
void cache_endupdate(void); |
void cache_endupdate(void); |
struct sc_ent *cache_state(pf_state_t *); |
struct sc_ent *cache_state(struct pfsync_state *); |
extern int cache_max, cache_size; |
extern int cache_max, cache_size; |
|
|
|
#define COUNTER(c) ((((u_int64_t) ntohl(c[0]))<<32) + ntohl(c[1])) |
|
|
|
|
#endif |
#endif |