Lines Matching refs:q6

170 	struct ip6q *q6;
267 for (q6 = ip6q.ip6q_next; q6 != &ip6q; q6 = q6->ip6q_next)
268 if (ip6f->ip6f_ident == q6->ip6q_ident &&
269 IN6_ARE_ADDR_EQUAL(&ip6->ip6_src, &q6->ip6q_src) &&
270 IN6_ARE_ADDR_EQUAL(&ip6->ip6_dst, &q6->ip6q_dst))
273 if (q6 == &ip6q) {
290 q6 = (struct ip6q *)_MALLOC(sizeof(struct ip6q), M_FTABLE,
292 if (q6 == NULL)
294 bzero(q6, sizeof(*q6));
296 frag6_insque(q6, &ip6q);
299 q6->ip6q_down = q6->ip6q_up = (struct ip6asfrag *)q6;
301 q6->ip6q_nxtp = (u_char *)nxtp;
303 q6->ip6q_ident = ip6f->ip6f_ident;
304 q6->ip6q_ttl = IPV6_FRAGTTL;
305 q6->ip6q_src = ip6->ip6_src;
306 q6->ip6q_dst = ip6->ip6_dst;
307 q6->ip6q_ecn =
309 q6->ip6q_unfrglen = -1; /* The 1st fragment has not arrived. */
311 q6->ip6q_nfrag = 0;
320 q6->ip6q_unfrglen = offset - sizeof(struct ip6_hdr)
322 q6->ip6q_nxt = ip6f->ip6f_nxt;
331 if (q6->ip6q_unfrglen >= 0) {
333 if (q6->ip6q_unfrglen + fragoff + frgpartlen > IPV6_MAXPACKET) {
357 for (af6 = q6->ip6q_down; af6 != (struct ip6asfrag *)q6;
361 if (q6->ip6q_unfrglen + af6->ip6af_off + af6->ip6af_frglen >
378 ip6err->ip6_src = q6->ip6q_src;
379 ip6err->ip6_dst = q6->ip6q_dst;
401 af6 = (struct ip6asfrag *)q6;
411 ecn0 = q6->ip6q_ecn;
418 q6->ip6q_ecn = IPTOS_ECN_CE;
428 for (af6 = q6->ip6q_down; af6 != (struct ip6asfrag *)q6;
439 if (af6->ip6af_up != (struct ip6asfrag *)q6) {
455 while (af6 != (struct ip6asfrag *)q6 &&
479 if (af6->ip6af_up != (struct ip6asfrag *)q6) {
486 i, ip6_sprintf(&q6->ip6q_src));
492 if (af6 != (struct ip6asfrag *)q6) {
498 i, ip6_sprintf(&q6->ip6q_src));
516 q6->ip6q_nfrag++;
518 if (q6 != ip6q.ip6q_next) {
519 frag6_remque(q6);
520 frag6_insque(q6, &ip6q);
524 for (af6 = q6->ip6q_down; af6 != (struct ip6asfrag *)q6;
544 ip6af = q6->ip6q_down;
548 while (af6 != (struct ip6asfrag *)q6) {
564 ip6->ip6_src = q6->ip6q_src;
565 ip6->ip6_dst = q6->ip6q_dst;
566 if (q6->ip6q_ecn == IPTOS_ECN_CE)
569 nxt = q6->ip6q_nxt;
571 *q6->ip6q_nxtp = (u_char)(nxt & 0xff);
584 frag6_remque(q6);
585 frag6_nfrags -= q6->ip6q_nfrag;
586 FREE(q6, M_FTABLE);
602 frag6_remque(q6);
603 frag6_nfrags -= q6->ip6q_nfrag;
604 FREE(q6, M_FTABLE);
644 frag6_freef(q6)
645 struct ip6q *q6;
649 for (af6 = q6->ip6q_down; af6 != (struct ip6asfrag *)q6;
667 ip6->ip6_src = q6->ip6q_src;
668 ip6->ip6_dst = q6->ip6q_dst;
676 frag6_remque(q6);
677 frag6_nfrags -= q6->ip6q_nfrag;
678 FREE(q6, M_FTABLE);
733 struct ip6q *q6;
737 q6 = ip6q.ip6q_next;
738 if (q6)
739 while (q6 != &ip6q) {
740 --q6->ip6q_ttl;
741 q6 = q6->ip6q_next;
742 if (q6->ip6q_prev->ip6q_ttl == 0) {
745 frag6_freef(q6->ip6q_prev);