summaryrefslogtreecommitdiff
path: root/accel-pptpd/ppp_fsm.h
diff options
context:
space:
mode:
Diffstat (limited to 'accel-pptpd/ppp_fsm.h')
-rw-r--r--accel-pptpd/ppp_fsm.h84
1 files changed, 27 insertions, 57 deletions
diff --git a/accel-pptpd/ppp_fsm.h b/accel-pptpd/ppp_fsm.h
index 3ed6284d..eddafcfd 100644
--- a/accel-pptpd/ppp_fsm.h
+++ b/accel-pptpd/ppp_fsm.h
@@ -1,9 +1,6 @@
#ifndef PPP_FSM_H
#define PPP_FSM_H
-#include "triton/triton.h"
-#include "list.h"
-
typedef enum {FSM_Initial=0,FSM_Starting,FSM_Closed,FSM_Stopped,FSM_Closing,FSM_Stopping,FSM_Req_Sent,FSM_Ack_Rcvd,FSM_Ack_Sent,FSM_Opened} FSM_STATE;
/*
* CP (LCP, IPCP, etc.) codes.
@@ -18,35 +15,13 @@ typedef enum {FSM_Initial=0,FSM_Starting,FSM_Closed,FSM_Stopped,FSM_Closing,FSM_
#define ECHOREQ 9 /* Echo Request */
#define ECHOREP 10 /* Echo Reply */
-struct ppp_hdr_t;
-
-#define AUTH_MAX 3
-struct lcp_options_t
-{
- int magic;
- int mtu;
- int mru;
- int accomp; // 0 - disabled, 1 - enable, 2 - allow, disabled, 3 - allow,enabled
- int pcomp; // 0 - disabled, 1 - enable, 2 - allow, disabled, 3 - allow,enabled
- // negotiated options;
- int neg_mru;
- int neg_mtu;
- int neg_accomp; // -1 - rejected
- int neg_pcomp;
- int neg_auth[AUTH_MAX];
-};
+struct ppp_t;
-struct ppp_layer_t
+struct ppp_fsm_t
{
- struct ppp_handler_t h;
struct ppp_t *ppp;
FSM_STATE fsm_state;
- union
- {
- struct lcp_options_t lcp;
- } options;
-
struct triton_timer_t restart_timer;
int restart_counter;
int max_terminate;
@@ -56,38 +31,33 @@ struct ppp_layer_t
int id;
int recv_id;
- int opt_restart:1;
- int opt_passive:1;
-
- void *last_conf_req;
//fsm handling
- void (*layer_up)(struct ppp_layer_t*);
- void (*layer_down)(struct ppp_layer_t*);
- void (*layer_started)(struct ppp_layer_t*);
- void (*layer_finished)(struct ppp_layer_t*);
- void (*send_conf_req)(struct ppp_layer_t*);
- void (*send_conf_ack)(struct ppp_layer_t*);
- void (*send_conf_nak)(struct ppp_layer_t*);
- void (*send_conf_rej)(struct ppp_layer_t*);
+ void (*layer_up)(struct ppp_fsm_t*);
+ void (*layer_down)(struct ppp_fsm_t*);
+ void (*layer_started)(struct ppp_fsm_t*);
+ void (*layer_finished)(struct ppp_fsm_t*);
+ void (*send_conf_req)(struct ppp_fsm_t*);
+ void (*send_conf_ack)(struct ppp_fsm_t*);
+ void (*send_conf_nak)(struct ppp_fsm_t*);
+ void (*send_conf_rej)(struct ppp_fsm_t*);
};
-void ppp_fsm_init(struct ppp_layer_t*);
-void ppp_fsm_recv(struct ppp_layer_t*);
-
-void ppp_fsm_lower_up(struct ppp_layer_t *layer);
-void ppp_fsm_lower_down(struct ppp_layer_t *layer);
-void ppp_fsm_open(struct ppp_layer_t *layer);
-void ppp_fsm_close(struct ppp_layer_t *layer);
-void ppp_fsm_timeout0(struct ppp_layer_t *layer);
-void ppp_fsm_timeout1(struct ppp_layer_t *layer);
-void ppp_fsm_recv_conf_req_good(struct ppp_layer_t *layer);
-void ppp_fsm_recv_conf_req_bad(struct ppp_layer_t *layer);
-void ppp_fsm_recv_conf_ack(struct ppp_layer_t *layer);
-void ppp_fsm_recv_conf_rej(struct ppp_layer_t *layer);
-void ppp_fsm_recv_term_req(struct ppp_layer_t *layer);
-void ppp_fsm_recv_term_ack(struct ppp_layer_t *layer);
-void ppp_fsm_recv_unk(struct ppp_layer_t *layer);
-void ppp_fsm_recv_code_rej_bad(struct ppp_layer_t *layer);
-void ppp_fsm_recv_echo(struct ppp_layer_t *layer);
+void ppp_fsm_init(struct ppp_fsm_t*);
+
+void ppp_fsm_lower_up(struct ppp_fsm_t*);
+void ppp_fsm_lower_down(struct ppp_fsm_t*);
+void ppp_fsm_open(struct ppp_fsm_t*);
+void ppp_fsm_close(struct ppp_fsm_t*);
+void ppp_fsm_timeout0(struct ppp_fsm_t *layer);
+void ppp_fsm_timeout1(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_conf_req_ack(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_conf_req_nak(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_conf_req_rej(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_conf_ack(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_conf_rej(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_term_req(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_term_ack(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_unk(struct ppp_fsm_t *layer);
+void ppp_fsm_recv_code_rej_bad(struct ppp_fsm_t *layer);
#endif