summaryrefslogtreecommitdiff
path: root/accel-pptpd/ipdb.h
diff options
context:
space:
mode:
Diffstat (limited to 'accel-pptpd/ipdb.h')
-rw-r--r--accel-pptpd/ipdb.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/accel-pptpd/ipdb.h b/accel-pptpd/ipdb.h
index 6703a48..ebf3885 100644
--- a/accel-pptpd/ipdb.h
+++ b/accel-pptpd/ipdb.h
@@ -6,15 +6,22 @@
#include "ppp.h"
#include "list.h"
+struct ipdb_item_t
+{
+ struct ipdb_t *owner;
+ in_addr_t addr;
+ in_addr_t peer_addr;
+};
+
struct ipdb_t
{
struct list_head entry;
- int (*get)(struct ppp_t *ppp, in_addr_t *addr, in_addr_t *peer_addr);
- void (*put)(struct ppp_t *ppp, in_addr_t addr, in_addr_t peer_addr);
+ struct ipdb_item_t *(*get)(struct ppp_t *ppp);
+ void (*put)(struct ppp_t *ppp, struct ipdb_item_t *);
};
-int ipdb_get(struct ppp_t *ppp, in_addr_t *addr, in_addr_t *peer_addr);
-void ipdb_put(struct ppp_t *ppp, in_addr_t addr, in_addr_t peer_addr);
+struct ipdb_item_t *ipdb_get(struct ppp_t *ppp);
+void ipdb_put(struct ppp_t *ppp, struct ipdb_item_t *);
void ipdb_register(struct ipdb_t *);