Lines Matching defs:bc

95             BOOTPClient *bc;
97 bc = &bootp_clients[i];
98 memset(bc, 0, sizeof(BOOTPClient));
99 bc->allocated = 1;
100 bc->number = i;
101 LogFlowFunc(("LEAVE: bc:%d\n", bc->number));
102 return bc;
111 BOOTPClient *bc;
113 bc = bc_alloc_client(pData);
114 if (!bc)
117 paddr->s_addr = RT_H2N_U32(RT_N2H_U32(pData->special_addr.s_addr) | (bc->number + START_ADDR));
118 bc->addr.s_addr = paddr->s_addr;
119 LogFlowFunc(("LEAVE: paddr:%RTnaipv4, bc:%d\n", paddr->s_addr, bc->number));
120 return bc;
195 BOOTPClient *bc;
197 bc = &bootp_clients[i];
198 bc->allocated = 1;
200 LogFlowFunc(("LEAVE: paddr:%RTnaipv4 bc:%d\n", paddr->s_addr, bc->number));
201 return bc;
243 static int dhcp_do_ack_offer(PNATState pData, struct mbuf *m, BOOTPClient *bc, int fDhcpRequest)
270 rbp->bp_yiaddr = bc->addr; /* Client IP address */
276 rbp->bp_ciaddr.s_addr = bc->addr.s_addr; /* Client IP address */
348 //slirp_arp_cache_update_or_add(pData, rbp->bp_yiaddr.s_addr, bc->macaddr);
352 static int dhcp_send_nack(PNATState pData, struct bootp_t *bp, BOOTPClient *bc, struct mbuf *m)
354 NOREF(bc);
360 static int dhcp_send_ack(PNATState pData, struct bootp_t *bp, BOOTPClient *bc, struct mbuf *m, int fDhcpRequest)
365 offReply = dhcp_do_ack_offer(pData, m, bc, fDhcpRequest);
369 static int dhcp_send_offer(PNATState pData, struct bootp_t *bp, BOOTPClient *bc, struct mbuf *m)
374 offReply = dhcp_do_ack_offer(pData, m, bc, /* fDhcpRequest=*/ 0);
402 BOOTPClient *bc = NULL;
414 bc = find_addr(pData, &daddr, bp->bp_hwaddr);
419 if (!bc)
435 Assert((bp->bp_xid == bc->xid));
478 if (bc != NULL)
480 Assert((bc->addr.s_addr == bp->bp_ciaddr.s_addr));
488 offReply = dhcp_send_nack(pData, bp, bc, m);
492 bc = bc_alloc_client(pData);
493 if (!bc)
500 memcpy(bc->macaddr, bp->bp_hwaddr, bp->bp_hlen);
501 bc->addr.s_addr = bp->bp_ciaddr.s_addr;
531 offReply = dhcp_send_nack(pData, bp, bc, m);
536 if (!bc)
538 bc = bc_alloc_client(pData);
539 if (!bc)
546 memcpy(bc->macaddr, bp->bp_hwaddr, bp->bp_hlen);
547 bc->addr.s_addr = ui32;
562 LogRel(("NAT: DHCP offered IP address %RTnaipv4\n", bc->addr));
563 offReply = dhcp_send_ack(pData, bp, bc, m, /* fDhcpRequest=*/ 1);
569 BOOTPClient *bc;
575 bc = find_addr(pData, &daddr, bp->bp_hwaddr);
576 if (!bc)
578 bc = get_new_addr(pData, &daddr);
579 if (!bc)
585 memcpy(bc->macaddr, bp->bp_hwaddr, 6);
588 bc->xid = bp->bp_xid;
589 LogRel(("NAT: DHCP offered IP address %RTnaipv4\n", bc->addr));
590 offReply = dhcp_send_offer(pData, bp, bc, m);
595 bc = find_addr(pData, &daddr, bp->bp_hwaddr);
596 if (!bc)
602 LogRel(("NAT: DHCP offered IP address %RTnaipv4\n", bc->addr));
603 offReply = dhcp_send_ack(pData, bp, bc, m, /* fDhcpRequest=*/ 0);
783 BOOTPClient *bc;
784 bc = bc_alloc_client(pData);
785 Assert(bc);
786 if (!bc)
791 bc->addr.s_addr = req_ip.s_addr;
792 slirp_arp_who_has(pData, bc->addr.s_addr);