Lines Matching defs:pl

217 remove_list(PKT_LIST *pl, int flag)
224 } else if (list_hd == pl) {
225 list_hd = pl->next;
227 } else if (list_tl == pl) {
231 pl->prev->next = pl->next;
232 pl->next->prev = pl->prev;
236 bkmem_free((char *)pl->pkt, pl->len);
237 bkmem_free((char *)pl, sizeof (PKT_LIST));
254 PKT_LIST *pl;
265 if (((pl = (PKT_LIST *)bkmem_zalloc(sizeof (PKT_LIST))) ==
266 NULL) || ((pl->pkt = (PKT *)bkmem_zalloc(len)) == NULL)) {
268 if (pl != NULL)
269 bkmem_free((char *)pl, sizeof (PKT_LIST));
272 bcopy(dhcp_rcv_bufp, pl->pkt, len);
273 pl->len = len;
275 list_hd = list_tl = pl;
276 pl->prev = NULL;
278 list_tl->next = pl;
279 pl->prev = list_tl;
280 list_tl = pl;
283 pl->next = NULL;
597 dhcp_decline(char *msg, PKT_LIST *pl)
604 if (pl != NULL) {
605 if (pl->opts[CD_SERVER_ID] != NULL &&
606 pl->opts[CD_SERVER_ID]->len == sizeof (struct in_addr)) {
607 bcopy(pl->opts[CD_SERVER_ID]->value,
608 &t_server, pl->opts[CD_SERVER_ID]->len);
611 t_yiaddr.s_addr = pl->pkt->yiaddr.s_addr;
711 PKT_LIST *pl, *wk;
723 if ((pl = select_best()) == NULL) {
729 pl_pkt = pl->pkt;
736 if (pl->opts[CD_DHCP_TYPE] == NULL) {
741 bkmem_free((char *)pl->pkt, pl->len);
742 bkmem_free((char *)pl, sizeof (PKT_LIST));
745 state_pl = pl;
752 if (pl->opts[CD_MESSAGE])
753 prt_server_msg(pl->opts[CD_MESSAGE]);
776 *opt++ = pl->opts[CD_SERVER_ID]->len;
777 bcopy(pl->opts[CD_SERVER_ID]->value, opt,
778 pl->opts[CD_SERVER_ID]->len);
779 opt += pl->opts[CD_SERVER_ID]->len;
784 bcopy(pl->opts[CD_LEASE_TIME]->value, &t_time,
815 bkmem_free((char *)pl->pkt, pl->len);
816 bkmem_free((char *)pl, sizeof (PKT_LIST));
1043 create_bootpresponse_bprop(PKT_LIST *pl)
1047 if (pl == NULL || bootp_response != NULL)
1050 buflen = (pl->len * 2) + 1; /* extra space for null (1) */
1054 if (octet_to_hexascii((uint8_t *)pl->pkt, pl->len, bootp_response,
1056 bkmem_free(bootp_response, (pl->len * 2) + 1);
1061 prom_create_encoded_prop("bootp-response", pl->pkt, pl->len,
1088 PKT_LIST *pl;
1103 if (((pl = (PKT_LIST *)bkmem_zalloc(sizeof (PKT_LIST))) == NULL) ||
1104 ((pl->pkt = (PKT *)bkmem_zalloc(len)) == NULL)) {
1106 if (pl != NULL)
1107 bkmem_free((char *)pl, sizeof (PKT_LIST));
1111 (void) prom_getprop(chosen, prop, (caddr_t)pl->pkt);
1113 pl->len = len;
1115 if (dhcp_options_scan(pl, B_TRUE) != 0) {
1117 bkmem_free((char *)pl->pkt, pl->len);
1118 bkmem_free((char *)pl, sizeof (PKT_LIST));
1122 state_pl = pl;