Lines Matching +full:no +full:- +full:ref +full:- +full:current +full:- +full:limit

1 /*-
2 * SPDX-License-Identifier: BSD-3-Clause
25 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
49 #define NFS_MINIDEMTIMEO (5 * NFS_HZ) /* Min timeout for non-idempotent ops*/
99 #define NFSLAYOUTHIGHWATER 1000000 /* Upper limit for # of layouts */
101 #define NFSCLDELEGHIGHWATER 10000 /* limit for client delegations */
104 #define NFSCLLAYOUTHIGHWATER 10000 /* limit for client pNFS layouts */
145 * The NFSv4 RFCs do not define an upper limit on the length of Owner and
147 * length, set a generous sanity limit of 10Kbytes.
155 ((n)->n_fhp->nfh_len == (s) && !NFSBCMP((n)->n_fhp->nfh_fh, (caddr_t)(f), (s)))
163 (((n)->nd_flag & (ND_NFSV3 | ND_NFSV4)) ? \
183 const char *principal; /* GSS-API service principal name */
199 * NFSDEV_MAXMIRRORS - Maximum level of mirroring for a DS.
201 * NFSDEV_MAXVERS - maximum number of NFS versions supported by Flex File.
210 char *curdspath; /* Path of current DS mounted on dir. */
219 const char *principal; /* GSS-API service principal name */
228 const char *principal; /* GSS-API service principal name */
423 (b)->bits[0] = 0; \
424 (b)->bits[1] = 0; \
425 (b)->bits[2] = 0; \
429 (t)->bits[0] = (f)->bits[0]; \
430 (t)->bits[1] = (f)->bits[1]; \
431 (t)->bits[2] = (f)->bits[2]; \
435 (b)->bits[0] = NFSATTRBIT_SUPP0; \
436 (b)->bits[1] = (NFSATTRBIT_SUPP1 | NFSATTRBIT_SUPPSETONLY1); \
437 (b)->bits[2] = (NFSATTRBIT_SUPP2 | NFSATTRBIT_SUPPSETONLY2); \
438 if (((n)->nd_flag & ND_NFSV41) == 0) { \
439 (b)->bits[1] &= ~NFSATTRBIT_NFSV41_1; \
440 (b)->bits[2] &= ~NFSATTRBIT_NFSV41_2; \
442 if (((n)->nd_flag & ND_NFSV42) == 0) \
443 (b)->bits[2] &= ~NFSATTRBIT_NFSV42_2; \
446 #define NFSISSET_ATTRBIT(b, p) ((b)->bits[(p) / 32] & (1 << ((p) % 32)))
447 #define NFSSETBIT_ATTRBIT(b, p) ((b)->bits[(p) / 32] |= (1 << ((p) % 32)))
448 #define NFSCLRBIT_ATTRBIT(b, p) ((b)->bits[(p) / 32] &= ~(1 << ((p) % 32)))
451 (b)->bits[0] &= ~((a)->bits[0]); \
452 (b)->bits[1] &= ~((a)->bits[1]); \
453 (b)->bits[2] &= ~((a)->bits[2]); \
457 (b)->bits[0] &= ((a)->bits[0]); \
458 (b)->bits[1] &= ((a)->bits[1]); \
459 (b)->bits[2] &= ((a)->bits[2]); \
463 (b)->bits[0] &= NFSATTRBIT_SUPP0; \
464 (b)->bits[1] &= NFSATTRBIT_SUPP1; \
465 (b)->bits[2] &= NFSATTRBIT_SUPP2; \
466 if (((n)->nd_flag & ND_NFSV41) == 0) { \
467 (b)->bits[1] &= ~NFSATTRBIT_NFSV41_1; \
468 (b)->bits[2] &= ~NFSATTRBIT_NFSV41_2; \
470 if (((n)->nd_flag & ND_NFSV42) == 0) \
471 (b)->bits[2] &= ~NFSATTRBIT_NFSV42_2; \
475 (b)->bits[0] &= NFSATTRBIT_SETABLE0; \
476 (b)->bits[1] &= NFSATTRBIT_SETABLE1; \
477 (b)->bits[2] &= NFSATTRBIT_SETABLE2; \
478 if (((n)->nd_flag & ND_NFSV41) == 0) \
479 (b)->bits[2] &= ~NFSATTRBIT_NFSV41_2; \
480 if (((n)->nd_flag & ND_NFSV42) == 0) \
481 (b)->bits[2] &= ~NFSATTRBIT_NFSV42_2; \
484 #define NFSNONZERO_ATTRBIT(b) ((b)->bits[0] || (b)->bits[1] || (b)->bits[2])
485 #define NFSEQUAL_ATTRBIT(b, p) ((b)->bits[0] == (p)->bits[0] && \
486 (b)->bits[1] == (p)->bits[1] && (b)->bits[2] == (p)->bits[2])
489 (b)->bits[0] = NFSATTRBIT_GETATTR0; \
490 (b)->bits[1] = NFSATTRBIT_GETATTR1; \
491 (b)->bits[2] = NFSATTRBIT_GETATTR2; \
495 (b)->bits[0] = NFSATTRBIT_WCCATTR0; \
496 (b)->bits[1] = NFSATTRBIT_WCCATTR1; \
497 (b)->bits[2] = NFSATTRBIT_WCCATTR2; \
501 (b)->bits[0] = NFSATTRBIT_WRITEGETATTR0; \
502 (b)->bits[1] = NFSATTRBIT_WRITEGETATTR1; \
503 (b)->bits[2] = NFSATTRBIT_WRITEGETATTR2; \
507 (c)->bits[0] = ((b)->bits[0] & NFSATTRBIT_CBGETATTR0); \
508 (c)->bits[1] = ((b)->bits[1] & NFSATTRBIT_CBGETATTR1); \
509 (c)->bits[2] = ((b)->bits[2] & NFSATTRBIT_CBGETATTR2); \
513 (b)->bits[0] = NFSGETATTRBIT_PATHCONF0; \
514 (b)->bits[1] = NFSGETATTRBIT_PATHCONF1; \
515 (b)->bits[2] = NFSGETATTRBIT_PATHCONF2; \
519 (b)->bits[0] = NFSGETATTRBIT_STATFS0; \
520 (b)->bits[1] = NFSGETATTRBIT_STATFS1; \
521 (b)->bits[2] = NFSGETATTRBIT_STATFS2; \
525 (b)->bits[0] = NFSGETATTRBIT_STATFS0 | NFSATTRBIT_GETATTR0 | \
527 (b)->bits[1] = NFSGETATTRBIT_STATFS1 | NFSATTRBIT_GETATTR1; \
528 (b)->bits[2] = NFSGETATTRBIT_STATFS2 | NFSATTRBIT_GETATTR2; \
532 (((b)->bits[0] & NFSATTRBIT_STATFS0) || \
533 ((b)->bits[1] & NFSATTRBIT_STATFS1) || \
534 ((b)->bits[2] & NFSATTRBIT_STATFS2))
537 (b)->bits[0] &= ~NFSATTRBIT_STATFS0; \
538 (b)->bits[1] &= ~NFSATTRBIT_STATFS1; \
539 (b)->bits[2] &= ~NFSATTRBIT_STATFS2; \
543 (b)->bits[0] = NFSATTRBIT_READDIRPLUS0; \
544 (b)->bits[1] = NFSATTRBIT_READDIRPLUS1; \
545 (b)->bits[2] = NFSATTRBIT_READDIRPLUS2; \
549 (b)->bits[0] = NFSATTRBIT_REFERRAL0; \
550 (b)->bits[1] = NFSATTRBIT_REFERRAL1; \
551 (b)->bits[2] = NFSATTRBIT_REFERRAL2; \
567 (b)->bits[0] = 0; \
568 (b)->bits[1] = 0; \
569 (b)->bits[2] = 0; \
573 (t)->bits[0] = (f)->bits[0]; \
574 (t)->bits[1] = (f)->bits[1]; \
575 (t)->bits[2] = (f)->bits[2]; \
578 #define NFSISSET_OPBIT(b, p) ((b)->bits[(p) / 32] & (1 << ((p) % 32)))
579 #define NFSSETBIT_OPBIT(b, p) ((b)->bits[(p) / 32] |= (1 << ((p) % 32)))
580 #define NFSCLRBIT_OPBIT(b, p) ((b)->bits[(p) / 32] &= ~(1 << ((p) % 32)))
597 #define NFSV4ROOT_FSID0 ((int32_t) -1)
598 #define NFSV4ROOT_FSID1 ((int32_t) -1)
599 #define NFSV4ROOT_REFERRAL ((int32_t) -2)
607 * be minimal. My reasoning is that many current programs that use signals
684 struct mbuf *nd_md; /* Current dissect mbuf */
686 struct mbuf *nd_mb; /* Current build mbuf */
689 caddr_t nd_dpos; /* Current dissect pos */
690 caddr_t nd_bpos; /* Current build pos */
700 u_int64_t nd_sockref; /* Rcv socket ref# */
701 u_int64_t nd_compref; /* Compound RPC ref# */
711 nfsv4stateid_t nd_curstateid; /* Current StateID */
712 nfsv4stateid_t nd_savedcurstateid; /* Saved Current StateID */
715 int nd_bextpg; /* Current ext_pgs page */
797 if (((nhead)->lh_first = (ohead)->lh_first) != NULL) \
798 (ohead)->lh_first->field.le_prev = &(nhead)->lh_first; \
799 (ohead)->lh_first = NULL; \
803 if ((head)->lh_first != NULL) { \
804 (lelm)->field.le_next = (head)->lh_first; \
805 (lelm)->field.le_next->field.le_prev = \
806 &(lelm)->field.le_next; \
808 (head)->lh_first = (phead)->lh_first; \
809 (head)->lh_first->field.le_prev = &(head)->lh_first; \