Lines Matching refs:async
59 async_Init(struct async *async) in async_Init() argument
61 async_Setup(async); in async_Init()
62 memset(async->cfg.EscMap, '\0', sizeof async->cfg.EscMap); in async_Init()
66 async_Setup(struct async *async) in async_Setup() argument
68 async->mode = MODE_HUNT; in async_Setup()
69 async->length = 0; in async_Setup()
70 async->my_accmap = async->his_accmap = 0xffffffff; in async_Setup()
74 async_SetLinkParams(struct async *async, u_int32_t mymap, u_int32_t hismap) in async_SetLinkParams() argument
76 async->my_accmap = mymap; in async_SetLinkParams()
77 async->his_accmap = hismap | mymap; in async_SetLinkParams()
84 async_Encode(struct async *async, u_char **cp, u_char c, int proto) in async_Encode() argument
89 if ((c < 0x20 && (proto == PROTO_LCP || (async->his_accmap & (1 << c)))) in async_Encode()
94 if (async->cfg.EscMap[32] && async->cfg.EscMap[c >> 3] & (1 << (c & 7))) { in async_Encode()
116 cp = p->async.xbuff; in async_LayerPush()
123 async_Encode(&p->async, &cp, *sp++, *proto); in async_LayerPush()
133 cnt = cp - p->async.xbuff; in async_LayerPush()
136 memcpy(MBUF_CTOP(bp), p->async.xbuff, cnt); in async_LayerPush()
143 async_Decode(struct async *async, u_char c) in async_Decode() argument
147 if ((async->mode & MODE_HUNT) && c != HDLC_SYN) in async_Decode()
152 async->mode &= ~MODE_HUNT; in async_Decode()
153 if (async->length) { /* packet is ready. */ in async_Decode()
154 bp = m_get(async->length, MB_ASYNCIN); in async_Decode()
155 mbuf_Write(bp, async->hbuff, async->length); in async_Decode()
156 async->length = 0; in async_Decode()
161 if (!(async->mode & MODE_ESC)) { in async_Decode()
162 async->mode |= MODE_ESC; in async_Decode()
167 if (async->length >= HDLCSIZE) { in async_Decode()
170 async->length); in async_Decode()
171 async->length = 0; in async_Decode()
172 async->mode = MODE_HUNT; in async_Decode()
175 if (async->mode & MODE_ESC) { in async_Decode()
177 async->mode &= ~MODE_ESC; in async_Decode()
179 async->hbuff[async->length++] = c; in async_Decode()
205 *last = async_Decode(&p->async, *ch++); in async_LayerPull()