Lines Matching +full:p +full:- +full:id

4  * SPDX-License-Identifier: Apache-2.0
28 if (fsm->protocol == PPP_LCP) { in ppp_fsm_ctx()
31 } else if (fsm->protocol == PPP_IPCP) { in ppp_fsm_ctx()
35 } else if (fsm->protocol == PPP_IPV6CP) { in ppp_fsm_ctx()
39 } else if (fsm->protocol == PPP_PAP) { in ppp_fsm_ctx()
51 NET_ASSERT(ctx->iface); in ppp_fsm_iface()
53 return ctx->iface; in ppp_fsm_iface()
60 if (fsm->state != PPP_ACK_RECEIVED && in fsm_send_configure_req()
61 fsm->state != PPP_ACK_SENT && in fsm_send_configure_req()
62 fsm->state != PPP_REQUEST_SENT) { in fsm_send_configure_req()
64 if (fsm->cb.config_info_reset) { in fsm_send_configure_req()
65 fsm->cb.config_info_reset(fsm); in fsm_send_configure_req()
68 fsm->recv_nack_loops = 0; in fsm_send_configure_req()
69 fsm->nack_loops = 0; in fsm_send_configure_req()
73 fsm->retransmits = MAX_CONFIGURE_REQ; in fsm_send_configure_req()
74 fsm->req_id = ++fsm->id; in fsm_send_configure_req()
77 fsm->ack_received = false; in fsm_send_configure_req()
79 if (fsm->cb.config_info_add) { in fsm_send_configure_req()
80 pkt = fsm->cb.config_info_add(fsm); in fsm_send_configure_req()
83 NET_DBG("[%s/%p] Sending %s (%d) id %d to peer while in %s (%d)", in fsm_send_configure_req()
84 fsm->name, fsm, ppp_pkt_type2str(PPP_CONFIGURE_REQ), in fsm_send_configure_req()
85 PPP_CONFIGURE_REQ, fsm->req_id, ppp_state_str(fsm->state), in fsm_send_configure_req()
86 fsm->state); in fsm_send_configure_req()
88 (void)ppp_send_pkt(fsm, NULL, PPP_CONFIGURE_REQ, fsm->req_id, in fsm_send_configure_req()
91 fsm->retransmits--; in fsm_send_configure_req()
93 (void)k_work_reschedule(&fsm->timer, FSM_TIMEOUT); in fsm_send_configure_req()
101 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_timeout()
102 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_timeout()
104 switch (fsm->state) { in ppp_fsm_timeout()
108 if (fsm->retransmits <= 0) { in ppp_fsm_timeout()
109 NET_DBG("[%s/%p] %s retransmit limit %d reached", in ppp_fsm_timeout()
110 fsm->name, fsm, in ppp_fsm_timeout()
112 fsm->retransmits); in ppp_fsm_timeout()
116 if (fsm->cb.finished) { in ppp_fsm_timeout()
117 fsm->cb.finished(fsm); in ppp_fsm_timeout()
120 if (fsm->cb.retransmit) { in ppp_fsm_timeout()
121 fsm->cb.retransmit(fsm); in ppp_fsm_timeout()
126 if (fsm->state == PPP_ACK_RECEIVED) { in ppp_fsm_timeout()
135 if (fsm->retransmits <= 0) { in ppp_fsm_timeout()
137 fsm->state == PPP_CLOSING ? in ppp_fsm_timeout()
140 if (fsm->cb.finished) { in ppp_fsm_timeout()
141 fsm->cb.finished(fsm); in ppp_fsm_timeout()
144 fsm->req_id = ++fsm->id; in ppp_fsm_timeout()
146 ppp_send_pkt(fsm, NULL, PPP_TERMINATE_REQ, fsm->req_id, in ppp_fsm_timeout()
147 fsm->terminate_reason, in ppp_fsm_timeout()
148 strlen(fsm->terminate_reason)); in ppp_fsm_timeout()
150 fsm->retransmits--; in ppp_fsm_timeout()
152 (void)k_work_reschedule(&fsm->timer, FSM_TIMEOUT); in ppp_fsm_timeout()
158 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in ppp_fsm_timeout()
159 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_timeout()
166 fsm->protocol = protocol; in ppp_fsm_init()
167 fsm->state = PPP_INITIAL; in ppp_fsm_init()
168 fsm->flags = 0U; in ppp_fsm_init()
170 k_work_init_delayable(&fsm->timer, ppp_fsm_timeout); in ppp_fsm_init()
177 for (i = 0; i < fsm->my_options.count; i++) { in fsm_down()
178 fsm->my_options.data[i].flags = 0; in fsm_down()
181 if (fsm->cb.down) { in fsm_down()
182 fsm->cb.down(fsm); in fsm_down()
188 if (fsm->state != PPP_OPENED) { in terminate()
189 k_work_cancel_delayable(&fsm->timer); in terminate()
194 fsm->retransmits = MAX_TERMINATE_REQ; in terminate()
195 fsm->req_id = ++fsm->id; in terminate()
197 (void)ppp_send_pkt(fsm, NULL, PPP_TERMINATE_REQ, fsm->req_id, in terminate()
198 fsm->terminate_reason, in terminate()
199 strlen(fsm->terminate_reason)); in terminate()
201 if (fsm->retransmits == 0) { in terminate()
204 if (fsm->cb.finished) { in terminate()
205 fsm->cb.finished(fsm); in terminate()
211 (void)k_work_reschedule(&fsm->timer, FSM_TIMEOUT); in terminate()
213 fsm->retransmits--; in terminate()
220 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_close()
221 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_close()
223 switch (fsm->state) { in ppp_fsm_close()
229 int limit_len = sizeof(fsm->terminate_reason) - 1; in ppp_fsm_close()
231 strncpy(fsm->terminate_reason, reason, limit_len); in ppp_fsm_close()
232 fsm->terminate_reason[limit_len] = '\0'; in ppp_fsm_close()
252 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in ppp_fsm_close()
253 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_close()
260 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_lower_down()
261 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_lower_down()
263 switch (fsm->state) { in ppp_fsm_lower_down()
269 k_work_cancel_delayable(&fsm->timer); in ppp_fsm_lower_down()
278 k_work_cancel_delayable(&fsm->timer); in ppp_fsm_lower_down()
289 if (fsm->cb.starting) { in ppp_fsm_lower_down()
290 fsm->cb.starting(fsm); in ppp_fsm_lower_down()
296 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in ppp_fsm_lower_down()
297 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_lower_down()
304 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_lower_up()
305 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_lower_up()
307 switch (fsm->state) { in ppp_fsm_lower_up()
322 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in ppp_fsm_lower_up()
323 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_lower_up()
330 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_open()
331 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_open()
333 switch (fsm->state) { in ppp_fsm_open()
341 if (fsm->flags & FSM_RESTART) { in ppp_fsm_open()
350 if (fsm->cb.starting) { in ppp_fsm_open()
351 fsm->cb.starting(fsm); in ppp_fsm_open()
358 if (fsm->flags & FSM_RESTART) { in ppp_fsm_open()
366 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in ppp_fsm_open()
367 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_open()
373 enum ppp_packet_type type, uint8_t id, in ppp_send_pkt() argument
388 return -ENOENT; in ppp_send_pkt()
395 return -ENETDOWN; in ppp_send_pkt()
399 protocol = fsm->protocol; in ppp_send_pkt()
407 len = MIN(len, ctx->lcp.my_options.mru); in ppp_send_pkt()
416 /* 2 + 1 + 1 (configure-[req|ack|nack|rej]) + in ppp_send_pkt()
449 return -EINVAL; in ppp_send_pkt()
453 ppp.id = id; in ppp_send_pkt()
499 if (ctx->lcp.magic) { in ppp_send_pkt()
500 ctx->lcp.magic = sys_rand32_get(); in ppp_send_pkt()
503 ret = net_pkt_write_be32(pkt, ctx->lcp.magic); in ppp_send_pkt()
508 data_len = MIN(data_len, ctx->lcp.my_options.mru); in ppp_send_pkt()
528 NET_DBG("[%s/%p] Sending %zd bytes pkt %p (options len %d)", in ppp_send_pkt()
529 fsm ? fsm->name : "?", fsm, net_pkt_get_len(pkt), pkt, in ppp_send_pkt()
557 return -ENOMEM; in ppp_send_pkt()
561 uint8_t id, in fsm_recv_configure_req() argument
569 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in fsm_recv_configure_req()
570 ppp_state_str(fsm->state), fsm->state); in fsm_recv_configure_req()
572 switch (fsm->state) { in fsm_recv_configure_req()
579 id, NULL, 0); in fsm_recv_configure_req()
603 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in fsm_recv_configure_req()
604 ppp_state_str(fsm->state), fsm->state); in fsm_recv_configure_req()
619 if (fsm->cb.config_info_req) { in fsm_recv_configure_req()
622 ret = fsm->cb.config_info_req(fsm, pkt, remaining_len, out); in fsm_recv_configure_req()
627 if (fsm->nack_loops >= MAX_NACK_LOOPS && in fsm_recv_configure_req()
643 NET_DBG("[%s/%p] Sending %s (%d) id %d to peer while in %s (%d)", in fsm_recv_configure_req()
644 fsm->name, fsm, ppp_pkt_type2str(code), code, id, in fsm_recv_configure_req()
645 ppp_state_str(fsm->state), fsm->state); in fsm_recv_configure_req()
647 (void)ppp_send_pkt(fsm, NULL, code, id, out, len); in fsm_recv_configure_req()
650 if (fsm->state == PPP_ACK_RECEIVED) { in fsm_recv_configure_req()
651 k_work_cancel_delayable(&fsm->timer); in fsm_recv_configure_req()
655 if (fsm->cb.up) { in fsm_recv_configure_req()
656 fsm->cb.up(fsm); in fsm_recv_configure_req()
662 fsm->nack_loops = 0; in fsm_recv_configure_req()
664 if (fsm->state != PPP_ACK_RECEIVED) { in fsm_recv_configure_req()
669 fsm->nack_loops++; in fsm_recv_configure_req()
681 static enum net_verdict fsm_recv_configure_ack(struct ppp_fsm *fsm, uint8_t id, in fsm_recv_configure_ack() argument
685 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in fsm_recv_configure_ack()
686 ppp_state_str(fsm->state), fsm->state); in fsm_recv_configure_ack()
688 if (id != fsm->req_id || fsm->ack_received) { in fsm_recv_configure_ack()
692 if (fsm->cb.config_info_ack) { in fsm_recv_configure_ack()
693 if (fsm->cb.config_info_ack(fsm, pkt, remaining_len) < 0) { in fsm_recv_configure_ack()
694 NET_DBG("[%s/%p] %s %s received", fsm->name, fsm, in fsm_recv_configure_ack()
701 fsm->ack_received = true; in fsm_recv_configure_ack()
702 fsm->recv_nack_loops = 0; in fsm_recv_configure_ack()
704 switch (fsm->state) { in fsm_recv_configure_ack()
706 k_work_cancel_delayable(&fsm->timer); in fsm_recv_configure_ack()
712 k_work_cancel_delayable(&fsm->timer); in fsm_recv_configure_ack()
714 fsm->retransmits = MAX_CONFIGURE_REQ; in fsm_recv_configure_ack()
715 if (fsm->cb.up) { in fsm_recv_configure_ack()
716 fsm->cb.up(fsm); in fsm_recv_configure_ack()
724 id, NULL, 0); in fsm_recv_configure_ack()
736 fsm->retransmits = MAX_CONFIGURE_REQ; in fsm_recv_configure_ack()
740 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in fsm_recv_configure_ack()
741 ppp_state_str(fsm->state), fsm->state); in fsm_recv_configure_ack()
750 uint8_t id, in fsm_recv_configure_nack_rej() argument
756 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in fsm_recv_configure_nack_rej()
757 ppp_state_str(fsm->state), fsm->state); in fsm_recv_configure_nack_rej()
759 if (id != fsm->req_id || fsm->ack_received) { in fsm_recv_configure_nack_rej()
766 fsm->recv_nack_loops++; in fsm_recv_configure_nack_rej()
768 if (fsm->recv_nack_loops >= MAX_NACK_LOOPS) { in fsm_recv_configure_nack_rej()
772 if (fsm->cb.config_info_nack) { in fsm_recv_configure_nack_rej()
775 err = fsm->cb.config_info_nack(fsm, pkt, length, in fsm_recv_configure_nack_rej()
778 NET_DBG("[%s/%p] %s failed (%d)", in fsm_recv_configure_nack_rej()
779 fsm->name, fsm, "Nack", err); in fsm_recv_configure_nack_rej()
786 NET_DBG("[%s/%p] %s %s (id %d)", fsm->name, fsm, in fsm_recv_configure_nack_rej()
787 "Invalid", ppp_pkt_type2str(code), id); in fsm_recv_configure_nack_rej()
791 fsm->recv_nack_loops = 0; in fsm_recv_configure_nack_rej()
793 if (fsm->cb.config_info_rej) { in fsm_recv_configure_nack_rej()
796 err = fsm->cb.config_info_rej(fsm, pkt, length); in fsm_recv_configure_nack_rej()
798 NET_DBG("[%s/%p] %s failed (%d)", in fsm_recv_configure_nack_rej()
799 fsm->name, fsm, "Reject", err); in fsm_recv_configure_nack_rej()
806 NET_DBG("[%s/%p] %s %s (id %d)", fsm->name, fsm, in fsm_recv_configure_nack_rej()
807 "Invalid", ppp_pkt_type2str(code), id); in fsm_recv_configure_nack_rej()
812 fsm->ack_received = true; in fsm_recv_configure_nack_rej()
814 switch (fsm->state) { in fsm_recv_configure_nack_rej()
816 k_work_cancel_delayable(&fsm->timer); in fsm_recv_configure_nack_rej()
823 k_work_cancel_delayable(&fsm->timer); in fsm_recv_configure_nack_rej()
830 id, NULL, 0); in fsm_recv_configure_nack_rej()
841 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in fsm_recv_configure_nack_rej()
842 ppp_state_str(fsm->state), fsm->state); in fsm_recv_configure_nack_rej()
849 static enum net_verdict fsm_recv_terminate_req(struct ppp_fsm *fsm, uint8_t id, in fsm_recv_terminate_req() argument
853 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in fsm_recv_terminate_req()
854 ppp_state_str(fsm->state), fsm->state); in fsm_recv_terminate_req()
856 switch (fsm->state) { in fsm_recv_terminate_req()
864 net_pkt_read(pkt, fsm->terminate_reason, in fsm_recv_terminate_req()
866 sizeof(fsm->terminate_reason) - 1)); in fsm_recv_terminate_req()
868 NET_DBG("[%s/%p] %s (%s)", in fsm_recv_terminate_req()
869 fsm->name, fsm, "Terminated by peer", in fsm_recv_terminate_req()
870 fsm->terminate_reason); in fsm_recv_terminate_req()
872 NET_DBG("[%s/%p] Terminated by peer", in fsm_recv_terminate_req()
873 fsm->name, fsm); in fsm_recv_terminate_req()
876 fsm->retransmits = 0; in fsm_recv_terminate_req()
881 (void)k_work_reschedule(&fsm->timer, FSM_TIMEOUT); in fsm_recv_terminate_req()
885 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in fsm_recv_terminate_req()
886 ppp_state_str(fsm->state), fsm->state); in fsm_recv_terminate_req()
890 (void)ppp_send_pkt(fsm, net_pkt_iface(pkt), PPP_TERMINATE_ACK, id, in fsm_recv_terminate_req()
896 static enum net_verdict fsm_recv_terminate_ack(struct ppp_fsm *fsm, uint8_t id, in fsm_recv_terminate_ack() argument
902 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in fsm_recv_terminate_ack()
903 ppp_state_str(fsm->state), fsm->state); in fsm_recv_terminate_ack()
905 switch (fsm->state) { in fsm_recv_terminate_ack()
926 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in fsm_recv_terminate_ack()
927 ppp_state_str(fsm->state), fsm->state); in fsm_recv_terminate_ack()
934 k_work_cancel_delayable(&fsm->timer); in fsm_recv_terminate_ack()
937 if (fsm->cb.finished) { in fsm_recv_terminate_ack()
938 fsm->cb.finished(fsm); in fsm_recv_terminate_ack()
947 uint8_t code, id; in fsm_recv_code_rej() local
950 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in fsm_recv_code_rej()
951 ppp_state_str(fsm->state), fsm->state); in fsm_recv_code_rej()
958 ret = net_pkt_read_u8(pkt, &id); in fsm_recv_code_rej()
963 NET_DBG("[%s/%p] Received Code-Rej code %d id %d", fsm->name, fsm, in fsm_recv_code_rej()
964 code, id); in fsm_recv_code_rej()
966 if (fsm->state == PPP_ACK_RECEIVED) { in fsm_recv_code_rej()
975 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_proto_reject()
976 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_proto_reject()
978 switch (fsm->state) { in ppp_fsm_proto_reject()
983 k_work_cancel_delayable(&fsm->timer); in ppp_fsm_proto_reject()
985 if (fsm->cb.finished) { in ppp_fsm_proto_reject()
986 fsm->cb.finished(fsm); in ppp_fsm_proto_reject()
993 if (fsm->cb.finished) { in ppp_fsm_proto_reject()
994 fsm->cb.finished(fsm); in ppp_fsm_proto_reject()
1000 k_work_cancel_delayable(&fsm->timer); in ppp_fsm_proto_reject()
1002 if (fsm->cb.finished) { in ppp_fsm_proto_reject()
1003 fsm->cb.finished(fsm); in ppp_fsm_proto_reject()
1014 if (fsm->cb.finished) { in ppp_fsm_proto_reject()
1015 fsm->cb.finished(fsm); in ppp_fsm_proto_reject()
1021 NET_DBG("[%s/%p] %s state %s (%d)", fsm->name, fsm, "Invalid", in ppp_fsm_proto_reject()
1022 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_proto_reject()
1030 uint8_t code, id; in ppp_fsm_input() local
1037 NET_DBG("[%s/%p] Cannot read %s (pkt len %zd)", in ppp_fsm_input()
1038 fsm->name, fsm, "code", net_pkt_get_len(pkt)); in ppp_fsm_input()
1042 ret = net_pkt_read_u8(pkt, &id); in ppp_fsm_input()
1044 NET_DBG("[%s/%p] Cannot read %s (pkt len %zd)", in ppp_fsm_input()
1045 fsm->name, fsm, "id", net_pkt_get_len(pkt)); in ppp_fsm_input()
1051 NET_DBG("[%s/%p] Cannot read %s (pkt len %zd)", in ppp_fsm_input()
1052 fsm->name, fsm, "length", net_pkt_get_len(pkt)); in ppp_fsm_input()
1056 if (length > ctx->lcp.my_options.mru) { in ppp_fsm_input()
1057 NET_DBG("[%s/%p] Too long msg %d", fsm->name, fsm, length); in ppp_fsm_input()
1061 if (fsm->state == PPP_INITIAL || fsm->state == PPP_STARTING) { in ppp_fsm_input()
1062 NET_DBG("[%s/%p] Received %s packet in wrong state %s (%d)", in ppp_fsm_input()
1063 fsm->name, fsm, ppp_proto2str(proto), in ppp_fsm_input()
1064 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_input()
1069 length -= sizeof(code) + sizeof(id) + sizeof(length); in ppp_fsm_input()
1071 NET_DBG("[%s/%p] %s %s (%d) id %d payload len %d", fsm->name, fsm, in ppp_fsm_input()
1072 ppp_proto2str(proto), ppp_pkt_type2str(code), code, id, in ppp_fsm_input()
1080 return fsm_recv_configure_ack(fsm, id, pkt, length); in ppp_fsm_input()
1083 return fsm_recv_configure_nack_rej(fsm, code, id, pkt, length); in ppp_fsm_input()
1086 return fsm_recv_configure_req(fsm, id, pkt, length); in ppp_fsm_input()
1089 return fsm_recv_configure_nack_rej(fsm, code, id, pkt, length); in ppp_fsm_input()
1092 return fsm_recv_terminate_ack(fsm, id, pkt, length); in ppp_fsm_input()
1095 return fsm_recv_terminate_req(fsm, id, pkt, length); in ppp_fsm_input()
1098 if (fsm->cb.proto_extension) { in ppp_fsm_input()
1101 verdict = fsm->cb.proto_extension(fsm, code, id, pkt); in ppp_fsm_input()
1108 id, pkt, 0); in ppp_fsm_input()
1115 uint8_t id, in ppp_fsm_recv_protocol_rej() argument
1118 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_recv_protocol_rej()
1119 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_recv_protocol_rej()
1125 uint8_t id, in ppp_fsm_recv_echo_req() argument
1128 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_recv_echo_req()
1129 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_recv_echo_req()
1132 id, pkt, 0); in ppp_fsm_recv_echo_req()
1138 uint8_t id, in ppp_fsm_recv_echo_reply() argument
1141 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_recv_echo_reply()
1142 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_recv_echo_reply()
1147 if (ctx->shell.echo_reply.cb) { in ppp_fsm_recv_echo_reply()
1148 ctx->shell.echo_reply.cb(ctx->shell.echo_reply.user_data, in ppp_fsm_recv_echo_reply()
1149 ctx->shell.echo_reply.user_data_len); in ppp_fsm_recv_echo_reply()
1157 uint8_t id, in ppp_fsm_recv_discard_req() argument
1160 NET_DBG("[%s/%p] Current state %s (%d)", fsm->name, fsm, in ppp_fsm_recv_discard_req()
1161 ppp_state_str(fsm->state), fsm->state); in ppp_fsm_recv_discard_req()
1169 uint8_t code, id; in ppp_send_proto_rej() local
1177 ret = net_pkt_read_u8(pkt, &id); in ppp_send_proto_rej()
1182 (void)ppp_send_pkt(NULL, iface, PPP_PROTOCOL_REJ, id, pkt, 0); in ppp_send_proto_rej()