summaryrefslogtreecommitdiff
path: root/accel-pptpd/ctrl/pppoe/pppoe.h
diff options
context:
space:
mode:
authorKozlov Dmitry <dima@server>2010-11-11 16:06:01 +0300
committerKozlov Dmitry <dima@server>2010-11-11 16:06:01 +0300
commit734a3d3e93271cbde8584b303a5e2d7afab70016 (patch)
tree05de27c90b9e971053ce8c1fc2ae6bebcc66d9b1 /accel-pptpd/ctrl/pppoe/pppoe.h
parent15339d1df496dc3f9225157e97b07f96fa9bdf0b (diff)
downloadaccel-ppp-734a3d3e93271cbde8584b303a5e2d7afab70016.tar.gz
accel-ppp-734a3d3e93271cbde8584b303a5e2d7afab70016.zip
pppoe: implemented cli commands: interface add, interface del, interface show
Diffstat (limited to 'accel-pptpd/ctrl/pppoe/pppoe.h')
-rw-r--r--accel-pptpd/ctrl/pppoe/pppoe.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/accel-pptpd/ctrl/pppoe/pppoe.h b/accel-pptpd/ctrl/pppoe/pppoe.h
index f194172b..9ef44753 100644
--- a/accel-pptpd/ctrl/pppoe/pppoe.h
+++ b/accel-pptpd/ctrl/pppoe/pppoe.h
@@ -1,6 +1,7 @@
#ifndef __PPPOE_H
#define __PPPOE_H
+#include <pthread.h>
#include <linux/if.h>
#include <linux/if_pppox.h>
@@ -55,7 +56,33 @@ struct pppoe_packet_t
struct list_head tags;
};
+struct pppoe_serv_t
+{
+ struct list_head entry;
+ struct triton_context_t ctx;
+ struct triton_md_handler_t hnd;
+ uint8_t hwaddr[ETH_ALEN];
+ char *ifname;
+
+ pthread_mutex_t lock;
+ struct pppoe_conn_t *conn[MAX_SID];
+ uint16_t sid;
+ int stopping:1;
+
+ unsigned int conn_cnt;
+ struct list_head conn_list;
+ struct list_head pado_list;
+};
+
+extern uint32_t stat_active;
+extern uint32_t stat_delayed_pado;
+
+extern pthread_rwlock_t serv_lock;
+extern struct list_head serv_list;
+
int mac_filter_check(const uint8_t *addr);
+void pppoe_server_start(const char *intf, void *client);
+void pppoe_server_stop(const char *intf);
#endif