Lines Matching full:fsm
51 #include "fsm.h"
91 static int ipv6cp_LayerUp(struct fsm *);
92 static void ipv6cp_LayerDown(struct fsm *);
93 static void ipv6cp_LayerStart(struct fsm *);
94 static void ipv6cp_LayerFinish(struct fsm *);
95 static void ipv6cp_InitRestartCounter(struct fsm *, int);
96 static void ipv6cp_SendConfigReq(struct fsm *);
97 static void ipv6cp_SentTerminateReq(struct fsm *);
98 static void ipv6cp_SendTerminateAck(struct fsm *, u_char);
99 static void ipv6cp_DecodeConfig(struct fsm *, u_char *, u_char *, int,
199 struct bundle *bundle = ipv6cp->fsm.bundle; in ipcp_SetIPv6address()
272 fsm_Init(&ipv6cp->fsm, "IPV6CP", PROTO_IPV6CP, 1, IPV6CP_MAXCODE, LogIPV6CP, in ipv6cp_Init()
275 ipv6cp->cfg.fsm.timeout = DEF_FSMRETRY; in ipv6cp_Init()
276 ipv6cp->cfg.fsm.maxreq = DEF_FSMTRIES; in ipv6cp_Init()
277 ipv6cp->cfg.fsm.maxtrm = DEF_FSMTRIES; in ipv6cp_Init()
320 ipv6cp->fsm.link = l; in ipv6cp_SetLink()
328 prompt_Printf(arg->prompt, "%s [%s]\n", ipv6cp->fsm.name, in ipv6cp_Show()
329 State2Nam(ipv6cp->fsm.state)); in ipv6cp_Show()
330 if (ipv6cp->fsm.state == ST_OPENED) { in ipv6cp_Show()
340 prompt_Printf(arg->prompt, " FSM retry = %us, max %u Config" in ipv6cp_Show()
341 " REQ%s, %u Term REQ%s\n\n", ipv6cp->cfg.fsm.timeout, in ipv6cp_Show()
342 ipv6cp->cfg.fsm.maxreq, ipv6cp->cfg.fsm.maxreq == 1 ? "" : "s", in ipv6cp_Show()
343 ipv6cp->cfg.fsm.maxtrm, ipv6cp->cfg.fsm.maxtrm == 1 ? "" : "s"); in ipv6cp_Show()
356 fsm_Input(&bundle->ncp.ipv6cp.fsm, bp); in ipv6cp_Input()
398 if (!iface_SetFlags(ipv6cp->fsm.bundle->iface->name, IFF_UP)) { in ipv6cp_InterfaceUp()
400 " flag on %s\n", ipv6cp->fsm.bundle->iface->name); in ipv6cp_InterfaceUp()
423 struct bundle *bundle = ipv6cp->fsm.bundle; in ipv6cp_PushPacket()
430 if (ipv6cp->fsm.state != ST_OPENED) in ipv6cp_PushPacket()
436 if (l->ccp.fsm.state != ST_OPENED && ccp_Required(&l->ccp)) { in ipv6cp_PushPacket()
464 ipv6cp_LayerUp(struct fsm *fp) in ipv6cp_LayerUp()
496 * XXX this stuff should really live in the FSM. Our config should in ipv6cp_LayerUp()
513 fp->more.reqs = fp->more.naks = fp->more.rejs = ipv6cp->cfg.fsm.maxreq * 3; in ipv6cp_LayerUp()
520 ipv6cp_LayerDown(struct fsm *fp) in ipv6cp_LayerDown()
549 * XXX this stuff should really live in the FSM. Our config should in ipv6cp_LayerDown()
572 ipv6cp_LayerStart(struct fsm *fp) in ipv6cp_LayerStart()
580 fp->more.reqs = fp->more.naks = fp->more.rejs = ipv6cp->cfg.fsm.maxreq * 3; in ipv6cp_LayerStart()
585 ipv6cp_LayerFinish(struct fsm *fp) in ipv6cp_LayerFinish()
596 ipv6cp_InitRestartCounter(struct fsm *fp, int what) in ipv6cp_InitRestartCounter()
598 /* Set fsm timer load */ in ipv6cp_InitRestartCounter()
601 fp->FsmTimer.load = ipv6cp->cfg.fsm.timeout * SECTICKS; in ipv6cp_InitRestartCounter()
604 fp->restart = ipv6cp->cfg.fsm.maxreq; in ipv6cp_InitRestartCounter()
607 fp->restart = ipv6cp->cfg.fsm.maxtrm; in ipv6cp_InitRestartCounter()
616 ipv6cp_SendConfigReq(struct fsm *fp) in ipv6cp_SendConfigReq()
636 ipv6cp_SentTerminateReq(struct fsm *fp __unused) in ipv6cp_SentTerminateReq()
638 /* Term REQ just sent by FSM */ in ipv6cp_SentTerminateReq()
642 ipv6cp_SendTerminateAck(struct fsm *fp, u_char id) in ipv6cp_SendTerminateAck()
682 ipv6cp_DecodeConfig(struct fsm *fp, u_char *cp, u_char *end, int mode_type, in ipv6cp_DecodeConfig()
717 fsm_Close(&ipv6cp->fsm); in ipv6cp_DecodeConfig()
736 fsm_Close(&ipv6cp->fsm); in ipv6cp_DecodeConfig()