Lines Matching refs:p

176 static int ccp_printpkt(const u_char *p, int plen, void (*printer) (void *, const char *, ...), voi…
455 static void ccp_input(ppp_pcb *pcb, u_char *p, int len) { in ccp_input() argument
464 fsm_input(f, p, len); in ccp_input()
465 if (oldstate == PPP_FSM_OPENED && p[0] == TERMREQ && f->state != PPP_FSM_OPENED) { in ccp_input()
479 if (oldstate == PPP_FSM_REQSENT && p[0] == TERMACK in ccp_input()
487 static int ccp_extcode(fsm *f, int code, int id, u_char *p, int len) { in ccp_extcode() argument
489 LWIP_UNUSED_ARG(p); in ccp_extcode()
768 static void ccp_addci(fsm *f, u_char *p, int *lenp) { in ccp_addci() argument
771 u_char *p0 = p; in ccp_addci()
779 p[0] = CI_MPPE; in ccp_addci()
780 p[1] = CILEN_MPPE; in ccp_addci()
781 MPPE_OPTS_TO_CI(go->mppe, &p[2]); in ccp_addci()
783 p += CILEN_MPPE; in ccp_addci()
789 p[0] = CI_DEFLATE; in ccp_addci()
790 p[1] = CILEN_DEFLATE; in ccp_addci()
791 p[2] = DEFLATE_MAKE_OPT(go->deflate_size); in ccp_addci()
792 p[3] = DEFLATE_CHK_SEQUENCE; in ccp_addci()
793 p += CILEN_DEFLATE; in ccp_addci()
796 p[0] = CI_DEFLATE_DRAFT; in ccp_addci()
797 p[1] = CILEN_DEFLATE; in ccp_addci()
798 p[2] = p[2 - CILEN_DEFLATE]; in ccp_addci()
799 p[3] = DEFLATE_CHK_SEQUENCE; in ccp_addci()
800 p += CILEN_DEFLATE; in ccp_addci()
806 p[0] = CI_BSD_COMPRESS; in ccp_addci()
807 p[1] = CILEN_BSD_COMPRESS; in ccp_addci()
808 p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, go->bsd_bits); in ccp_addci()
809 p += CILEN_BSD_COMPRESS; in ccp_addci()
815 p[0] = CI_PREDICTOR_1; in ccp_addci()
816 p[1] = CILEN_PREDICTOR_1; in ccp_addci()
817 p += CILEN_PREDICTOR_1; in ccp_addci()
820 p[0] = CI_PREDICTOR_2; in ccp_addci()
821 p[1] = CILEN_PREDICTOR_2; in ccp_addci()
822 p += CILEN_PREDICTOR_2; in ccp_addci()
826 go->method = (p > p0)? p0[0]: 0; in ccp_addci()
828 *lenp = p - p0; in ccp_addci()
835 static int ccp_ackci(fsm *f, u_char *p, int len) { in ccp_ackci() argument
839 u_char *p0 = p; in ccp_ackci()
849 if (len < CILEN_MPPE || memcmp(opt_buf, p, CILEN_MPPE)) in ccp_ackci()
851 p += CILEN_MPPE; in ccp_ackci()
861 || p[0] != (go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT) in ccp_ackci()
862 || p[1] != CILEN_DEFLATE in ccp_ackci()
863 || p[2] != DEFLATE_MAKE_OPT(go->deflate_size) in ccp_ackci()
864 || p[3] != DEFLATE_CHK_SEQUENCE) in ccp_ackci()
866 p += CILEN_DEFLATE; in ccp_ackci()
873 || p[0] != CI_DEFLATE_DRAFT in ccp_ackci()
874 || p[1] != CILEN_DEFLATE in ccp_ackci()
875 || p[2] != DEFLATE_MAKE_OPT(go->deflate_size) in ccp_ackci()
876 || p[3] != DEFLATE_CHK_SEQUENCE) in ccp_ackci()
878 p += CILEN_DEFLATE; in ccp_ackci()
886 || p[0] != CI_BSD_COMPRESS || p[1] != CILEN_BSD_COMPRESS in ccp_ackci()
887 || p[2] != BSD_MAKE_OPT(BSD_CURRENT_VERSION, go->bsd_bits)) in ccp_ackci()
889 p += CILEN_BSD_COMPRESS; in ccp_ackci()
892 if (p == p0 && len == 0) in ccp_ackci()
899 || p[0] != CI_PREDICTOR_1 || p[1] != CILEN_PREDICTOR_1) in ccp_ackci()
901 p += CILEN_PREDICTOR_1; in ccp_ackci()
904 if (p == p0 && len == 0) in ccp_ackci()
909 || p[0] != CI_PREDICTOR_2 || p[1] != CILEN_PREDICTOR_2) in ccp_ackci()
911 p += CILEN_PREDICTOR_2; in ccp_ackci()
914 if (p == p0 && len == 0) in ccp_ackci()
928 static int ccp_nakci(fsm *f, u_char *p, int len, int treat_as_reject) { in ccp_nakci() argument
935 LWIP_UNUSED_ARG(p); in ccp_nakci()
944 && p[0] == CI_MPPE && p[1] == CILEN_MPPE) { in ccp_nakci()
950 MPPE_CI_TO_OPTS(&p[2], try_.mppe); in ccp_nakci()
967 && p[0] == (go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT) in ccp_nakci()
968 && p[1] == CILEN_DEFLATE) { in ccp_nakci()
974 if (DEFLATE_METHOD(p[2]) != DEFLATE_METHOD_VAL in ccp_nakci()
975 || DEFLATE_SIZE(p[2]) < DEFLATE_MIN_WORKS in ccp_nakci()
976 || p[3] != DEFLATE_CHK_SEQUENCE) in ccp_nakci()
978 else if (DEFLATE_SIZE(p[2]) < go->deflate_size) in ccp_nakci()
979 try_.deflate_size = DEFLATE_SIZE(p[2]); in ccp_nakci()
980 p += CILEN_DEFLATE; in ccp_nakci()
983 && len >= CILEN_DEFLATE && p[0] == CI_DEFLATE_DRAFT in ccp_nakci()
984 && p[1] == CILEN_DEFLATE) { in ccp_nakci()
985 p += CILEN_DEFLATE; in ccp_nakci()
992 && p[0] == CI_BSD_COMPRESS && p[1] == CILEN_BSD_COMPRESS) { in ccp_nakci()
998 if (BSD_VERSION(p[2]) != BSD_CURRENT_VERSION) in ccp_nakci()
1000 else if (BSD_NBITS(p[2]) < go->bsd_bits) in ccp_nakci()
1001 try_.bsd_bits = BSD_NBITS(p[2]); in ccp_nakci()
1002 p += CILEN_BSD_COMPRESS; in ccp_nakci()
1021 static int ccp_rejci(fsm *f, u_char *p, int len) { in ccp_rejci() argument
1037 && p[0] == CI_MPPE && p[1] == CILEN_MPPE) { in ccp_rejci()
1040 p += CILEN_MPPE; in ccp_rejci()
1046 && p[0] == CI_DEFLATE && p[1] == CILEN_DEFLATE) { in ccp_rejci()
1047 if (p[2] != DEFLATE_MAKE_OPT(go->deflate_size) in ccp_rejci()
1048 || p[3] != DEFLATE_CHK_SEQUENCE) in ccp_rejci()
1051 p += CILEN_DEFLATE; in ccp_rejci()
1055 && p[0] == CI_DEFLATE_DRAFT && p[1] == CILEN_DEFLATE) { in ccp_rejci()
1056 if (p[2] != DEFLATE_MAKE_OPT(go->deflate_size) in ccp_rejci()
1057 || p[3] != DEFLATE_CHK_SEQUENCE) in ccp_rejci()
1060 p += CILEN_DEFLATE; in ccp_rejci()
1068 && p[0] == CI_BSD_COMPRESS && p[1] == CILEN_BSD_COMPRESS) { in ccp_rejci()
1069 if (p[2] != BSD_MAKE_OPT(BSD_CURRENT_VERSION, go->bsd_bits)) in ccp_rejci()
1072 p += CILEN_BSD_COMPRESS; in ccp_rejci()
1078 && p[0] == CI_PREDICTOR_1 && p[1] == CILEN_PREDICTOR_1) { in ccp_rejci()
1080 p += CILEN_PREDICTOR_1; in ccp_rejci()
1084 && p[0] == CI_PREDICTOR_2 && p[1] == CILEN_PREDICTOR_2) { in ccp_rejci()
1086 p += CILEN_PREDICTOR_2; in ccp_rejci()
1105 static int ccp_reqci(fsm *f, u_char *p, int *lenp, int dont_nak) { in ccp_reqci() argument
1122 retp = p0 = p; in ccp_reqci()
1126 ho->method = (len > 0)? p[0]: 0; in ccp_reqci()
1130 if (len < 2 || p[1] < 2 || p[1] > len) { in ccp_reqci()
1136 type = p[0]; in ccp_reqci()
1137 clen = p[1]; in ccp_reqci()
1146 MPPE_CI_TO_OPTS(&p[2], ho->mppe); in ccp_reqci()
1206 MPPE_OPTS_TO_CI(ho->mppe, &p[2]); in ccp_reqci()
1242 ho->deflate_size = nb = DEFLATE_SIZE(p[2]); in ccp_reqci()
1243 if (DEFLATE_METHOD(p[2]) != DEFLATE_METHOD_VAL in ccp_reqci()
1244 || p[3] != DEFLATE_CHK_SEQUENCE in ccp_reqci()
1248 p[2] = DEFLATE_MAKE_OPT(ao->deflate_size); in ccp_reqci()
1249 p[3] = DEFLATE_CHK_SEQUENCE; in ccp_reqci()
1261 if (p == p0) { in ccp_reqci()
1263 res = ccp_test(pcb, p, CILEN_DEFLATE, 1); in ccp_reqci()
1268 p[2] = DEFLATE_MAKE_OPT(ho->deflate_size); in ccp_reqci()
1273 p[2] = DEFLATE_MAKE_OPT(nb); in ccp_reqci()
1286 ho->bsd_bits = nb = BSD_NBITS(p[2]); in ccp_reqci()
1287 if (BSD_VERSION(p[2]) != BSD_CURRENT_VERSION in ccp_reqci()
1291 p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, ao->bsd_bits); in ccp_reqci()
1303 if (p == p0) { in ccp_reqci()
1305 res = ccp_test(pcb, p, CILEN_BSD_COMPRESS, 1); in ccp_reqci()
1310 p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, in ccp_reqci()
1316 p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, nb); in ccp_reqci()
1329 if (p == p0 in ccp_reqci()
1330 && ccp_test(pcb, p, CILEN_PREDICTOR_1, 1) <= 0) { in ccp_reqci()
1342 if (p == p0 in ccp_reqci()
1343 && ccp_test(pcb, p, CILEN_PREDICTOR_2, 1) <= 0) { in ccp_reqci()
1361 if (p != retp) in ccp_reqci()
1362 MEMCPY(retp, p, clen); in ccp_reqci()
1366 p += clen; in ccp_reqci()
1400 char *p = result; in method_name() local
1403 ppp_slprintf(p, q - p, "MPPE "); in method_name()
1404 p += 5; in method_name()
1406 ppp_slprintf(p, q - p, "128-bit "); in method_name()
1407 p += 8; in method_name()
1410 ppp_slprintf(p, q - p, "40-bit "); in method_name()
1411 p += 7; in method_name()
1414 ppp_slprintf(p, q - p, "stateful"); in method_name()
1416 ppp_slprintf(p, q - p, "stateless"); in method_name()
1522 static int ccp_printpkt(const u_char *p, int plen, void (*printer) (void *, const char *, ...), voi… in ccp_printpkt() argument
1527 p0 = p; in ccp_printpkt()
1530 code = p[0]; in ccp_printpkt()
1531 id = p[1]; in ccp_printpkt()
1532 len = (p[2] << 8) + p[3]; in ccp_printpkt()
1542 p += HEADERLEN; in ccp_printpkt()
1551 code = p[0]; in ccp_printpkt()
1552 optlen = p[1]; in ccp_printpkt()
1557 optend = p + optlen; in ccp_printpkt()
1564 MPPE_CI_TO_OPTS(&p[2], mppe_opts); in ccp_printpkt()
1566 (p[2] & MPPE_H_BIT)? "+H": "-H", in ccp_printpkt()
1567 (p[5] & MPPE_M_BIT)? "+M": "-M", in ccp_printpkt()
1568 (p[5] & MPPE_S_BIT)? "+S": "-S", in ccp_printpkt()
1569 (p[5] & MPPE_L_BIT)? "+L": "-L", in ccp_printpkt()
1570 (p[5] & MPPE_D_BIT)? "+D": "-D", in ccp_printpkt()
1571 (p[5] & MPPE_C_BIT)? "+C": "-C", in ccp_printpkt()
1575 p[2], p[3], p[4], p[5]); in ccp_printpkt()
1576 p += CILEN_MPPE; in ccp_printpkt()
1586 DEFLATE_SIZE(p[2])); in ccp_printpkt()
1587 if (DEFLATE_METHOD(p[2]) != DEFLATE_METHOD_VAL) in ccp_printpkt()
1588 printer(arg, " method %d", DEFLATE_METHOD(p[2])); in ccp_printpkt()
1589 if (p[3] != DEFLATE_CHK_SEQUENCE) in ccp_printpkt()
1590 printer(arg, " check %d", p[3]); in ccp_printpkt()
1591 p += CILEN_DEFLATE; in ccp_printpkt()
1598 printer(arg, "bsd v%d %d", BSD_VERSION(p[2]), in ccp_printpkt()
1599 BSD_NBITS(p[2])); in ccp_printpkt()
1600 p += CILEN_BSD_COMPRESS; in ccp_printpkt()
1608 p += CILEN_PREDICTOR_1; in ccp_printpkt()
1614 p += CILEN_PREDICTOR_2; in ccp_printpkt()
1621 while (p < optend) in ccp_printpkt()
1622 printer(arg, " %.2x", *p++); in ccp_printpkt()
1629 if (len > 0 && *p >= ' ' && *p < 0x7f) { in ccp_printpkt()
1630 ppp_print_string(p, len, printer, arg); in ccp_printpkt()
1631 p += len; in ccp_printpkt()
1641 printer(arg, " %.2x", *p++); in ccp_printpkt()
1643 return p - p0; in ccp_printpkt()