Home | History | Annotate | Download | only in tcpdump

Lines Matching refs:dp

199 parse_sattr3(const u_int32_t *dp, struct nfsv3_sattr *sa3)
201 TCHECK(dp[0]);
202 sa3->sa_modeset = EXTRACT_32BITS(dp);
203 dp++;
205 TCHECK(dp[0]);
206 sa3->sa_mode = EXTRACT_32BITS(dp);
207 dp++;
210 TCHECK(dp[0]);
211 sa3->sa_uidset = EXTRACT_32BITS(dp);
212 dp++;
214 TCHECK(dp[0]);
215 sa3->sa_uid = EXTRACT_32BITS(dp);
216 dp++;
219 TCHECK(dp[0]);
220 sa3->sa_gidset = EXTRACT_32BITS(dp);
221 dp++;
223 TCHECK(dp[0]);
224 sa3->sa_gid = EXTRACT_32BITS(dp);
225 dp++;
228 TCHECK(dp[0]);
229 sa3->sa_sizeset = EXTRACT_32BITS(dp);
230 dp++;
232 TCHECK(dp[0]);
233 sa3->sa_size = EXTRACT_32BITS(dp);
234 dp++;
237 TCHECK(dp[0]);
238 sa3->sa_atimetype = EXTRACT_32BITS(dp);
239 dp++;
241 TCHECK(dp[1]);
242 sa3->sa_atime.nfsv3_sec = EXTRACT_32BITS(dp);
243 dp++;
244 sa3->sa_atime.nfsv3_nsec = EXTRACT_32BITS(dp);
245 dp++;
248 TCHECK(dp[0]);
249 sa3->sa_mtimetype = EXTRACT_32BITS(dp);
250 dp++;
252 TCHECK(dp[1]);
253 sa3->sa_mtime.nfsv3_sec = EXTRACT_32BITS(dp);
254 dp++;
255 sa3->sa_mtime.nfsv3_nsec = EXTRACT_32BITS(dp);
256 dp++;
259 return dp;
396 register const u_int32_t *dp;
402 dp = (u_int32_t *)&rp->rm_call.cb_cred;
403 TCHECK(dp[1]);
404 len = EXTRACT_32BITS(&dp[1]);
406 dp += (len + (2 * sizeof(*dp) + 3)) / sizeof(*dp);
407 TCHECK(dp[1]);
408 len = EXTRACT_32BITS(&dp[1]);
410 dp += (len + (2 * sizeof(*dp) + 3)) / sizeof(*dp);
411 TCHECK2(dp[0], 0);
412 return (dp);
424 parsefh(register const u_int32_t *dp, int v3)
429 TCHECK(dp[0]);
430 len = EXTRACT_32BITS(dp) / 4;
431 dp++;
435 if (TTEST2(*dp, len * sizeof(*dp))) {
436 nfs_printfh(dp, len);
437 return (dp + len);
448 parsefn(register const u_int32_t *dp)
454 TCHECK(*dp);
457 len = *dp++;
460 TCHECK2(*dp, ((len + 3) & ~3));
462 cp = (u_char *)dp;
464 dp += ((len + 3) & ~3) / sizeof(*dp);
472 return (dp);
483 parsefhn(register const u_int32_t *dp, int v3)
485 dp = parsefh(dp, v3);
486 if (dp == NULL)
489 return (parsefn(dp));
497 register const u_int32_t *dp;
536 if ((dp = parsereq(rp, length)) != NULL &&
537 parsefh(dp, v3) != NULL)
543 if ((dp = parsereq(rp, length)) != NULL &&
544 parsefh(dp, v3) != NULL)
550 if ((dp = parsereq(rp, length)) != NULL &&
551 parsefhn(dp, v3) != NULL)
557 if ((dp = parsereq(rp, length)) != NULL &&
558 (dp = parsefh(dp, v3)) != NULL) {
559 TCHECK(dp[0]);
560 printf(" %04x", EXTRACT_32BITS(&dp[0]));
567 if ((dp = parsereq(rp, length)) != NULL &&
568 parsefh(dp, v3) != NULL)
574 if ((dp = parsereq(rp, length)) != NULL &&
575 (dp = parsefh(dp, v3)) != NULL) {
577 TCHECK(dp[2]);
579 EXTRACT_32BITS(&dp[2]),
580 EXTRACT_64BITS(&dp[0]));
582 TCHECK(dp[1]);
584 EXTRACT_32BITS(&dp[1]),
585 EXTRACT_32BITS(&dp[0]));
593 if ((dp = parsereq(rp, length)) != NULL &&
594 (dp = parsefh(dp, v3)) != NULL) {
596 TCHECK(dp[2]);
598 EXTRACT_32BITS(&dp[4]),
599 EXTRACT_32BITS(&dp[2]),
600 EXTRACT_64BITS(&dp[0]));
602 dp += 3;
603 TCHECK(dp[0]);
606 NULL, EXTRACT_32BITS(dp)));
609 TCHECK(dp[3]);
611 EXTRACT_32BITS(&dp[3]),
612 EXTRACT_32BITS(&dp[2]),
613 EXTRACT_32BITS(&dp[1]),
614 EXTRACT_32BITS(&dp[0]));
622 if ((dp = parsereq(rp, length)) != NULL &&
623 parsefhn(dp, v3) != NULL)
629 if ((dp = parsereq(rp, length)) != 0 && parsefhn(dp, v3) != 0)
635 if ((dp = parsereq(rp, length)) != 0 &&
636 (dp = parsefhn(dp, v3)) != 0) {
638 if (v3 && (dp = parse_sattr3(dp, &sa3)) == 0)
640 if (parsefn(dp) == 0)
650 if ((dp = parsereq(rp, length)) != 0 &&
651 (dpdp, v3)) != 0) {
652 TCHECK(*dp);
653 type = (nfs_type)EXTRACT_32BITS(dp);
654 dp++;
655 if ((dp = parse_sattr3(dp, &sa3)) == 0)
659 TCHECK(dp[1]);
661 EXTRACT_32BITS(&dp[0]),
662 EXTRACT_32BITS(&dp[1]));
663 dp += 2;
673 if ((dp = parsereq(rp, length)) != NULL &&
674 parsefhn(dp, v3) != NULL)
680 if ((dp = parsereq(rp, length)) != NULL &&
681 parsefhn(dp, v3) != NULL)
687 if ((dp = parsereq(rp, length)) != NULL &&
688 (dp = parsefhn(dp, v3)) != NULL) {
690 if (parsefhn(dp, v3) != NULL)
697 if ((dp = parsereq(rp, length)) != NULL &&
698 (dp = parsefh(dp, v3)) != NULL) {
700 if (parsefhn(dp, v3) != NULL)
707 if ((dp = parsereq(rp, length)) != NULL &&
708 (dp = parsefh(dp, v3)) != NULL) {
710 TCHECK(dp[4]);
716 EXTRACT_32BITS(&dp[4]),
717 EXTRACT_64BITS(&dp[0]));
719 printf(" verf %08x%08x", dp[2],
720 dp[3]);
722 TCHECK(dp[1]);
728 EXTRACT_32BITS(&dp[1]),
729 EXTRACT_32BITS(&dp[0]));
737 if ((dp = parsereq(rp, length)) != NULL &&
738 (dp = parsefh(dp, v3)) != NULL) {
739 TCHECK(dp[4]);
745 EXTRACT_32BITS(&dp[4]),
746 EXTRACT_64BITS(&dp[0]));
748 TCHECK(dp[5]);
750 EXTRACT_32BITS(&dp[5]), dp[2], dp[3]);
758 if ((dp = parsereq(rp, length)) != NULL &&
759 parsefh(dp, v3) != NULL)
765 if ((dp = parsereq(rp, length)) != NULL &&
766 parsefh(dp, v3) != NULL)
772 if ((dp = parsereq(rp, length)) != NULL &&
773 parsefh(dp, v3) != NULL)
779 if ((dp = parsereq(rp, length)) != NULL &&
780 (dp = parsefh(dp, v3)) != NULL) {
781 TCHECK(dp[2]);
783 EXTRACT_32BITS(&dp[2]),
784 EXTRACT_64BITS(&dp[0]));
802 * file handle pointed to by dp.
809 nfs_printfh(register const u_int32_t *dp, const u_int len)
822 (void)printf("%s%x", sep, dp[i]);
829 Parse_fh((const u_char *)dp, len, &fsid, &ino, NULL, &sfsname, 0);
1007 register const u_int32_t *dp;
1015 * dp = (u_int32_t *)&rp->rm_reply.rp_acpt.ar_verf
1026 dp = ((const u_int32_t *)&rp->rm_reply) + 1;
1027 TCHECK(dp[1]);
1028 len = EXTRACT_32BITS(&dp[1]);
1034 dp += (len + (2*sizeof(u_int32_t) + 3)) / sizeof(u_int32_t);
1035 TCHECK2(dp[0], 0);
1040 astat = (enum sunrpc_accept_stat) EXTRACT_32BITS(dp);
1077 TCHECK2(*dp, sizeof(astat));
1078 return ((u_int32_t *) (sizeof(astat) + ((char *)dp)));
1084 parsestatus(const u_int32_t *dp, int *er)
1088 TCHECK(dp[0]);
1090 errnum = EXTRACT_32BITS(&dp[0]);
1099 return (dp + 1);
1105 parsefattr(const u_int32_t *dp, int verbose, int v3)
1109 fap = (const struct nfs_fattr *)dp;
1166 return ((const u_int32_t *)((unsigned char *)dp +
1173 parseattrstat(const u_int32_t *dp, int verbose, int v3)
1177 dp = parsestatus(dp, &er);
1178 if (dp == NULL)
1183 return (parsefattr(dp, verbose, v3) != NULL);
1187 parsediropres(const u_int32_t *dp)
1191 if (!(dp = parsestatus(dp, &er)))
1196 dp = parsefh(dp, 0);
1197 if (dp == NULL)
1200 return (parsefattr(dp, vflag, 0) != NULL);
1204 parselinkres(const u_int32_t *dp, int v3)
1208 dp = parsestatus(dp, &er);
1209 if (dp == NULL)
1213 if (v3 && !(dp = parse_post_op_attr(dp, vflag)))
1216 return (parsefn(dp) != NULL);
1220 parsestatfs(const u_int32_t *dp, int v3)
1225 dp = parsestatus(dp, &er);
1226 if (dp == NULL)
1237 if (!(dp = parse_post_op_attr(dp, vflag)))
1241 TCHECK2(*dp, (v3 ? NFSX_V3STATFS : NFSX_V2STATFS));
1243 sfsp = (const struct nfs_statfs *)dp;
1272 parserddires(const u_int32_t *dp)
1276 dp = parsestatus(dp, &er);
1277 if (dp == NULL)
1284 TCHECK(dp[2]);
1286 EXTRACT_32BITS(&dp[0]), EXTRACT_32BITS(&dp[1]));
1287 if (dp[2] != 0)
1296 parse_wcc_attr(const u_int32_t *dp)
1298 printf(" sz %" PRIu64, EXTRACT_64BITS(&dp[0]));
1300 EXTRACT_32BITS(&dp[2]), EXTRACT_32BITS(&dp[3]),
1301 EXTRACT_32BITS(&dp[4]), EXTRACT_32BITS(&dp[5]));
1302 return (dp + 6);
1309 parse_pre_op_attr(const u_int32_t *dp, int verbose)
1311 TCHECK(dp[0]);
1312 if (!EXTRACT_32BITS(&dp[0]))
1313 return (dp + 1);
1314 dp++;
1315 TCHECK2(*dp, 24);
1317 return parse_wcc_attr(dp);
1320 return (dp + 6);
1330 parse_post_op_attr(const u_int32_t *dp, int verbose)
1332 TCHECK(dp[0]);
1333 if (!EXTRACT_32BITS(&dp[0]))
1334 return (dp + 1);
1335 dp++;
1337 return parsefattr(dp, verbose, 1);
1339 return (dp + (NFSX_V3FATTR / sizeof (u_int32_t)));
1345 parse_wcc_data(const u_int32_t *dp, int verbose)
1349 if (!(dp = parse_pre_op_attr(dp, verbose)))
1354 return parse_post_op_attr(dp, verbose);
1358 parsecreateopres(const u_int32_t *dp, int verbose)
1362 if (!(dp = parsestatus(dp, &er)))
1365 dp = parse_wcc_data(dp, verbose);
1367 TCHECK(dp[0]);
1368 if (!EXTRACT_32BITS(&dp[0]))
1369 return (dp + 1);
1370 dp++;
1371 if (!(dp = parsefh(dp, 1)))
1374 if (!(dp = parse_post_op_attr(dp, verbose)))
1378 dp = parse_wcc_data(dp, verbose);
1382 return (dp);
1388 parsewccres(const u_int32_t *dp, int verbose)
1392 if (!(dp = parsestatus(dp, &er)))
1394 return parse_wcc_data(dp, verbose) != 0;
1398 parsev3rddirres(const u_int32_t *dp, int verbose)
1402 if (!(dp = parsestatus(dp, &er)))
1406 if (!(dp = parse_post_op_attr(dp, verbose)))
1409 return dp;
1411 TCHECK(dp[1]);
1412 printf(" verf %08x%08x", dp[0], dp[1]);
1413 dp += 2;
1415 return dp;
1421 parsefsinfo(const u_int32_t *dp)
1426 if (!(dp = parsestatus(dp, &er)))
1430 if (!(dp = parse_post_op_attr(dp, vflag)))
1435 sfp = (struct nfsv3_fsinfo *)dp;
1458 parsepathconf(const u_int32_t *dp)
1463 if (!(dp = parsestatus(dp, &er)))
1467 if (!(dp = parse_post_op_attr(dp, vflag)))
1472 spp = (struct nfsv3_pathconf *)dp;
1490 register const u_int32_t *dp;
1511 dp = parserep(rp, length);
1512 if (dp != NULL && parseattrstat(dp, !qflag, v3) != 0)
1518 if (!(dp = parserep(rp, length)))
1521 if (parsewccres(dp, vflag))
1524 if (parseattrstat(dp, !qflag, 0) != 0)
1531 if (!(dp = parserep(rp, length)))
1534 if (!(dp = parsestatus(dp, &er)))
1539 dp = parse_post_op_attr(dp, vflag);
1542 if (!(dp = parsefh(dp, v3)))
1544 if ((dp = parse_post_op_attr(dp, vflag)) &&
1547 dp = parse_post_op_attr(dp, vflag);
1550 if (dp)
1553 if (parsediropres(dp) != 0)
1560 if (!(dp = parserep(rp, length)))
1562 if (!(dp = parsestatus(dp, &er)))
1566 if (!(dp = parse_post_op_attr(dp, vflag)))
1569 printf(" c %04x", EXTRACT_32BITS(&dp[0]));
1574 dp = parserep(rp, length);
1575 if (dp != NULL && parselinkres(dp, v3) != 0)
1581 if (!(dp = parserep(rp, length)))
1584 if (!(dp = parsestatus(dp, &er)))
1586 if (!(dp = parse_post_op_attr(dp, vflag)))
1591 TCHECK(dp[1]);
1592 printf(" %u bytes", EXTRACT_32BITS(&dp[0]));
1593 if (EXTRACT_32BITS(&dp[1]))
1598 if (parseattrstat(dp, vflag, 0) != 0)
1605 if (!(dp = parserep(rp, length)))
1608 if (!(dp = parsestatus(dp, &er)))
1610 if (!(dp = parse_wcc_data(dp, vflag)))
1615 TCHECK(dp[0]);
1616 printf(" %u bytes", EXTRACT_32BITS(&dp[0]));
1618 TCHECK(dp[1]);
1621 NULL, EXTRACT_32BITS(&dp[1])));
1626 if (parseattrstat(dp, vflag, v3) != 0)
1633 if (!(dp = parserep(rp, length)))
1636 if (parsecreateopres(dp, vflag) != 0)
1639 if (parsediropres(dp) != 0)
1646 if (!(dp = parserep(rp, length)))
1649 if (parsecreateopres(dp, vflag) != 0)
1652 if (parsediropres(dp) != 0)
1659 if (!(dp = parserep(rp, length)))
1662 if (parsecreateopres(dp, vflag) != 0)
1665 if (parsestatus(dp, &er) != 0)
1672 if (!(dp = parserep(rp, length)))
1674 if (parsecreateopres(dp, vflag) != 0)
1680 if (!(dp = parserep(rp, length)))
1683 if (parsewccres(dp, vflag))
1686 if (parsestatus(dp, &er) != 0)
1693 if (!(dp = parserep(rp, length)))
1696 if (parsewccres(dp, vflag))
1699 if (parsestatus(dp, &er) != 0)
1706 if (!(dp = parserep(rp, length)))
1709 if (!(dp = parsestatus(dp, &er)))
1713 if (!(dp = parse_wcc_data(dp, vflag)))
1716 if (!(dp = parse_wcc_data(dp, vflag)))
1721 if (parsestatus(dp, &er) != 0)
1728 if (!(dp = parserep(rp, length)))
1731 if (!(dp = parsestatus(dp, &er)))
1735 if (!(dp = parse_post_op_attr(dp, vflag)))
1738 if (!(dp = parse_wcc_data(dp, vflag)))
1743 if (parsestatus(dp, &er) != 0)
1750 if (!(dp = parserep(rp, length)))
1753 if (parsev3rddirres(dp, vflag))
1756 if (parserddires(dp) != 0)
1763 if (!(dp = parserep(rp, length)))
1765 if (parsev3rddirres(dp, vflag))
1771 dp = parserep(rp, length);
1772 if (dp != NULL && parsestatfs(dp, v3) != 0)
1778 dp = parserep(rp, length);
1779 if (dp != NULL && parsefsinfo(dp) != 0)
1785 dp = parserep(rp, length);
1786 if (dp != NULL && parsepathconf(dp) != 0)
1792 dp = parserep(rp, length);
1793 if (dp != NULL && parsewccres(dp, vflag) != 0)