Lines Matching defs:bp

45 static void rfc1048_print(u_char *bp, int length);
46 static void cmu_print(u_char *bp, int length);
47 static void other_print(u_char *bp, int length);
48 static void dump_hex(u_char *bp, int len);
54 bootp_print(struct bootp *bp, int length, u_short sport, u_short dport)
71 switch (bp->bp_op) {
86 printf(" bootp-#%d", bp->bp_op);
90 if (bp->bp_htype != 1)
91 printf(" htype:%d", bp->bp_htype);
94 if (bp->bp_hlen != 6)
95 printf(" hlen:%d", bp->bp_hlen);
98 if (bp->bp_hlen) {
102 TCHECK(bp->bp_chaddr[0], 6);
104 if (bp->bp_op == BOOTREQUEST)
106 else if (bp->bp_op == BOOTREPLY)
110 if (e == NULL || bcmp((char *) bp->bp_chaddr, e, 6))
111 dump_hex(bp->bp_chaddr, bp->bp_hlen);
114 if (bp->bp_hops)
115 printf(" hops:%d", bp->bp_hops);
117 if (bp->bp_xid)
118 printf(" xid:%ld", (long)ntohl(bp->bp_xid));
120 if (bp->bp_secs)
121 printf(" secs:%d", ntohs(bp->bp_secs));
124 TCHECK(bp->bp_ciaddr, sizeof(bp->bp_ciaddr));
125 if (bp->bp_ciaddr.s_addr)
126 printf(" C:%s", ipaddr_string(&bp->bp_ciaddr));
129 TCHECK(bp->bp_yiaddr, sizeof(bp->bp_yiaddr));
130 if (bp->bp_yiaddr.s_addr)
131 printf(" Y:%s", ipaddr_string(&bp->bp_yiaddr));
134 TCHECK(bp->bp_siaddr, sizeof(bp->bp_siaddr));
135 if (bp->bp_siaddr.s_addr)
136 printf(" S:%s", ipaddr_string(&bp->bp_siaddr));
139 TCHECK(bp->bp_giaddr, sizeof(bp->bp_giaddr));
140 if (bp->bp_giaddr.s_addr)
141 printf(" G:%s", ipaddr_string(&bp->bp_giaddr));
143 TCHECK(bp->bp_sname[0], sizeof(bp->bp_sname));
144 if (*bp->bp_sname) {
146 if (printfn(bp->bp_sname, ep)) {
151 TCHECK(bp->bp_file[0], sizeof(bp->bp_file));
152 if (*bp->bp_file) {
154 if (printfn(bp->bp_file, ep)) {
163 vdlen = sizeof(bp->bp_vend);
165 if (vdlen < (ep - bp->bp_vend))
166 vdlen = (ep - bp->bp_vend);
168 TCHECK(bp->bp_vend[0], vdlen);
170 if (!bcmp(bp->bp_vend, vm_rfc1048, sizeof(u_int32)))
171 rfc1048_print(bp->bp_vend, vdlen);
172 else if (!bcmp(bp->bp_vend, vm_cmu, sizeof(u_int32)))
173 cmu_print(bp->bp_vend, vdlen);
175 other_print(bp->bp_vend, vdlen);
273 rfc1048_print(u_char *bp, int length)
286 bp += sizeof(int32);
288 ep = bp + length;
289 while (bp < ep) {
290 tag = *bp++;
304 len = *bp++;
305 if (bp + len > ep) {
307 printf(" |(%d>%td)", len, ep - bp);
314 printfn(bp, bp + len);
315 bp += len;
321 bcopy((char *) bp, (char *) &us, 2);
323 bp += 2;
332 bcopy((char *) bp, (char *) &ul, 4);
334 bp += 4;
343 bcopy((char *) bp, (char *) &ia, 4);
345 bp += 4;
360 dump_hex(bp, len);
361 if (isascii(*bp) && isprint(*bp)) {
363 printfn(bp, bp + len);
366 bp += len;
369 } /* while bp < ep */
373 cmu_print(u_char *bp, int length)
379 v = (struct cmu_vend *) bp;
419 other_print(u_char *bp, int length)
425 ep = bp + length;
428 for (zp = ep; zp > bp; zp--) {
434 if (zp == bp) {
445 while (bp < zp) {
446 printf(".%02X", *bp);
447 bp++;
457 dump_hex(u_char *bp, int len)
460 printf("%02X", *bp);
461 bp++;