draft-ietf-nfsv4-minorversion1-16.txt | draft-ietf-nfsv4-minorversion1-17.txt | |||
---|---|---|---|---|
NFSv4 S. Shepler | NFSv4 S. Shepler | |||
Internet-Draft M. Eisler | Internet-Draft M. Eisler | |||
Intended status: Standards Track D. Noveck | Intended status: Standards Track D. Noveck | |||
Expires: May 15, 2008 Editors | Expires: May 22, 2008 Editors | |||
November 12, 2007 | November 19, 2007 | |||
NFSv4 Minor Version 1 | NFSv4 Minor Version 1 | |||
draft-ietf-nfsv4-minorversion1-16.txt | draft-ietf-nfsv4-minorversion1-17.txt | |||
Status of this Memo | Status of this Memo | |||
By submitting this Internet-Draft, each author represents that any | By submitting this Internet-Draft, each author represents that any | |||
applicable patent or other IPR claims of which he or she is aware | applicable patent or other IPR claims of which he or she is aware | |||
have been or will be disclosed, and any of which he or she becomes | have been or will be disclosed, and any of which he or she becomes | |||
aware will be disclosed, in accordance with Section 6 of BCP 79. | aware will be disclosed, in accordance with Section 6 of BCP 79. | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
skipping to change at page 1, line 35 | skipping to change at page 1, line 35 | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
http://www.ietf.org/ietf/1id-abstracts.txt. | http://www.ietf.org/ietf/1id-abstracts.txt. | |||
The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
This Internet-Draft will expire on May 15, 2008. | This Internet-Draft will expire on May 22, 2008. | |||
Copyright Notice | Copyright Notice | |||
Copyright (C) The IETF Trust (2007). | Copyright (C) The IETF Trust (2007). | |||
Abstract | Abstract | |||
This Internet-Draft describes NFSv4 minor version one, including | This Internet-Draft describes NFSv4 minor version one, including | |||
features retained from the base protocol and protocol extensions made | features retained from the base protocol and protocol extensions made | |||
subsequently. The current draft includes description of the major | subsequently. The current draft includes description of the major | |||
skipping to change at page 6, line 51 | skipping to change at page 6, line 51 | |||
12.7.4. Recovery from Metadata Server Restart . . . . . . . 271 | 12.7.4. Recovery from Metadata Server Restart . . . . . . . 271 | |||
12.7.5. Operations During Metadata Server Grace Period . . . 273 | 12.7.5. Operations During Metadata Server Grace Period . . . 273 | |||
12.7.6. Storage Device Recovery . . . . . . . . . . . . . . 274 | 12.7.6. Storage Device Recovery . . . . . . . . . . . . . . 274 | |||
12.8. Metadata and Storage Device Roles . . . . . . . . . . . 274 | 12.8. Metadata and Storage Device Roles . . . . . . . . . . . 274 | |||
12.9. Security Considerations . . . . . . . . . . . . . . . . 276 | 12.9. Security Considerations . . . . . . . . . . . . . . . . 276 | |||
13. PNFS: NFSv4.1 File Layout Type . . . . . . . . . . . . . . . 277 | 13. PNFS: NFSv4.1 File Layout Type . . . . . . . . . . . . . . . 277 | |||
13.1. Client ID and Session Considerations . . . . . . . . . . 277 | 13.1. Client ID and Session Considerations . . . . . . . . . . 277 | |||
13.2. File Layout Definitions . . . . . . . . . . . . . . . . 278 | 13.2. File Layout Definitions . . . . . . . . . . . . . . . . 278 | |||
13.3. File Layout Data Types . . . . . . . . . . . . . . . . . 279 | 13.3. File Layout Data Types . . . . . . . . . . . . . . . . . 279 | |||
13.4. Interpreting the File Layout . . . . . . . . . . . . . . 282 | 13.4. Interpreting the File Layout . . . . . . . . . . . . . . 282 | |||
13.4.1. Interpreting the File Layout Using Sparse Packing . 282 | 13.4.1. Interpreting the File Layout Using Sparse Packing . 283 | |||
13.4.2. Interpreting the File Layout Using Dense Packing . . 285 | 13.4.2. Interpreting the File Layout Using Dense Packing . . 285 | |||
13.5. Sparse and Dense Stripe Unit Packing . . . . . . . . . . 287 | 13.5. Sparse and Dense Stripe Unit Packing . . . . . . . . . . 287 | |||
13.6. Data Server Multipathing . . . . . . . . . . . . . . . . 289 | 13.6. Data Server Multipathing . . . . . . . . . . . . . . . . 289 | |||
13.7. Operations Issued to NFSv4.1 Data Servers . . . . . . . 290 | 13.7. Operations Issued to NFSv4.1 Data Servers . . . . . . . 290 | |||
13.8. COMMIT Through Metadata Server . . . . . . . . . . . . . 292 | 13.8. COMMIT Through Metadata Server . . . . . . . . . . . . . 292 | |||
13.9. The Layout Iomode . . . . . . . . . . . . . . . . . . . 293 | 13.9. The Layout Iomode . . . . . . . . . . . . . . . . . . . 293 | |||
13.10. Metadata and Data Server State Coordination . . . . . . 293 | 13.10. Metadata and Data Server State Coordination . . . . . . 293 | |||
13.10.1. Global Stateid Requirements . . . . . . . . . . . . 293 | 13.10.1. Global Stateid Requirements . . . . . . . . . . . . 293 | |||
13.10.2. Data Server State Propagation . . . . . . . . . . . 295 | 13.10.2. Data Server State Propagation . . . . . . . . . . . 295 | |||
13.11. Data Server Component File Size . . . . . . . . . . . . 297 | 13.11. Data Server Component File Size . . . . . . . . . . . . 297 | |||
13.12. Recovery from Loss of Layout . . . . . . . . . . . . . . 297 | 13.12. Recovery from Loss of Layout . . . . . . . . . . . . . . 297 | |||
13.13. Security Considerations for the File Layout Type . . . . 298 | 13.13. Security Considerations for the File Layout Type . . . . 298 | |||
14. Internationalization . . . . . . . . . . . . . . . . . . . . 298 | 14. Internationalization . . . . . . . . . . . . . . . . . . . . 298 | |||
14.1. Stringprep profile for the utf8str_cs type . . . . . . . 300 | 14.1. Stringprep profile for the utf8str_cs type . . . . . . . 300 | |||
14.2. Stringprep profile for the utf8str_cis type . . . . . . 301 | 14.2. Stringprep profile for the utf8str_cis type . . . . . . 301 | |||
14.3. Stringprep profile for the utf8str_mixed type . . . . . 303 | 14.3. Stringprep profile for the utf8str_mixed type . . . . . 303 | |||
14.4. UTF-8 Related Errors . . . . . . . . . . . . . . . . . . 304 | 14.4. UTF-8 Related Errors . . . . . . . . . . . . . . . . . . 304 | |||
15. Error Values . . . . . . . . . . . . . . . . . . . . . . . . 304 | 15. Error Values . . . . . . . . . . . . . . . . . . . . . . . . 304 | |||
15.1. Error Definitions . . . . . . . . . . . . . . . . . . . 305 | 15.1. Error Definitions . . . . . . . . . . . . . . . . . . . 305 | |||
15.2. Operations and their valid errors . . . . . . . . . . . 319 | 15.2. Operations and their valid errors . . . . . . . . . . . 321 | |||
15.3. Callback operations and their valid errors . . . . . . . 333 | 15.3. Callback operations and their valid errors . . . . . . . 337 | |||
15.4. Errors and the operations that use them . . . . . . . . 334 | 15.4. Errors and the operations that use them . . . . . . . . 339 | |||
16. NFS version 4.1 Procedures . . . . . . . . . . . . . . . . . 341 | 16. NFS version 4.1 Procedures . . . . . . . . . . . . . . . . . 353 | |||
16.1. Procedure 0: NULL - No Operation . . . . . . . . . . . . 342 | 16.1. Procedure 0: NULL - No Operation . . . . . . . . . . . . 353 | |||
16.2. Procedure 1: COMPOUND - Compound Operations . . . . . . 342 | 16.2. Procedure 1: COMPOUND - Compound Operations . . . . . . 354 | |||
17. Operations: mandatory or optional . . . . . . . . . . . . . . 353 | 17. Operations: mandatory or optional . . . . . . . . . . . . . . 364 | |||
18. NFS version 4.1 Operations . . . . . . . . . . . . . . . . . 356 | 18. NFS version 4.1 Operations . . . . . . . . . . . . . . . . . 367 | |||
18.1. Operation 3: ACCESS - Check Access Rights . . . . . . . 356 | 18.1. Operation 3: ACCESS - Check Access Rights . . . . . . . 367 | |||
18.2. Operation 4: CLOSE - Close File . . . . . . . . . . . . 359 | 18.2. Operation 4: CLOSE - Close File . . . . . . . . . . . . 370 | |||
18.3. Operation 5: COMMIT - Commit Cached Data . . . . . . . . 360 | 18.3. Operation 5: COMMIT - Commit Cached Data . . . . . . . . 371 | |||
18.4. Operation 6: CREATE - Create a Non-Regular File Object . 362 | 18.4. Operation 6: CREATE - Create a Non-Regular File Object . 373 | |||
18.5. Operation 7: DELEGPURGE - Purge Delegations Awaiting | 18.5. Operation 7: DELEGPURGE - Purge Delegations Awaiting | |||
Recovery . . . . . . . . . . . . . . . . . . . . . . . . 365 | Recovery . . . . . . . . . . . . . . . . . . . . . . . . 376 | |||
18.6. Operation 8: DELEGRETURN - Return Delegation . . . . . . 366 | 18.6. Operation 8: DELEGRETURN - Return Delegation . . . . . . 377 | |||
18.7. Operation 9: GETATTR - Get Attributes . . . . . . . . . 366 | 18.7. Operation 9: GETATTR - Get Attributes . . . . . . . . . 377 | |||
18.8. Operation 10: GETFH - Get Current Filehandle . . . . . . 368 | 18.8. Operation 10: GETFH - Get Current Filehandle . . . . . . 379 | |||
18.9. Operation 11: LINK - Create Link to a File . . . . . . . 368 | 18.9. Operation 11: LINK - Create Link to a File . . . . . . . 379 | |||
18.10. Operation 12: LOCK - Create Lock . . . . . . . . . . . . 370 | 18.10. Operation 12: LOCK - Create Lock . . . . . . . . . . . . 381 | |||
18.11. Operation 13: LOCKT - Test For Lock . . . . . . . . . . 374 | 18.11. Operation 13: LOCKT - Test For Lock . . . . . . . . . . 385 | |||
18.12. Operation 14: LOCKU - Unlock File . . . . . . . . . . . 375 | 18.12. Operation 14: LOCKU - Unlock File . . . . . . . . . . . 386 | |||
18.13. Operation 15: LOOKUP - Lookup Filename . . . . . . . . . 377 | 18.13. Operation 15: LOOKUP - Lookup Filename . . . . . . . . . 388 | |||
18.14. Operation 16: LOOKUPP - Lookup Parent Directory . . . . 378 | 18.14. Operation 16: LOOKUPP - Lookup Parent Directory . . . . 389 | |||
18.15. Operation 17: NVERIFY - Verify Difference in | 18.15. Operation 17: NVERIFY - Verify Difference in | |||
Attributes . . . . . . . . . . . . . . . . . . . . . . . 379 | Attributes . . . . . . . . . . . . . . . . . . . . . . . 390 | |||
18.16. Operation 18: OPEN - Open a Regular File . . . . . . . . 380 | 18.16. Operation 18: OPEN - Open a Regular File . . . . . . . . 391 | |||
18.17. Operation 19: OPENATTR - Open Named Attribute | 18.17. Operation 19: OPENATTR - Open Named Attribute | |||
Directory . . . . . . . . . . . . . . . . . . . . . . . 396 | Directory . . . . . . . . . . . . . . . . . . . . . . . 407 | |||
18.18. Operation 21: OPEN_DOWNGRADE - Reduce Open File Access . 397 | 18.18. Operation 21: OPEN_DOWNGRADE - Reduce Open File Access . 408 | |||
18.19. Operation 22: PUTFH - Set Current Filehandle . . . . . . 398 | 18.19. Operation 22: PUTFH - Set Current Filehandle . . . . . . 409 | |||
18.20. Operation 23: PUTPUBFH - Set Public Filehandle . . . . . 399 | 18.20. Operation 23: PUTPUBFH - Set Public Filehandle . . . . . 410 | |||
18.21. Operation 24: PUTROOTFH - Set Root Filehandle . . . . . 400 | 18.21. Operation 24: PUTROOTFH - Set Root Filehandle . . . . . 411 | |||
18.22. Operation 25: READ - Read from File . . . . . . . . . . 400 | 18.22. Operation 25: READ - Read from File . . . . . . . . . . 411 | |||
18.23. Operation 26: READDIR - Read Directory . . . . . . . . . 402 | 18.23. Operation 26: READDIR - Read Directory . . . . . . . . . 413 | |||
18.24. Operation 27: READLINK - Read Symbolic Link . . . . . . 406 | 18.24. Operation 27: READLINK - Read Symbolic Link . . . . . . 417 | |||
18.25. Operation 28: REMOVE - Remove File System Object . . . . 407 | 18.25. Operation 28: REMOVE - Remove File System Object . . . . 418 | |||
18.26. Operation 29: RENAME - Rename Directory Entry . . . . . 409 | 18.26. Operation 29: RENAME - Rename Directory Entry . . . . . 420 | |||
18.27. Operation 31: RESTOREFH - Restore Saved Filehandle . . . 410 | 18.27. Operation 31: RESTOREFH - Restore Saved Filehandle . . . 421 | |||
18.28. Operation 32: SAVEFH - Save Current Filehandle . . . . . 411 | 18.28. Operation 32: SAVEFH - Save Current Filehandle . . . . . 422 | |||
18.29. Operation 33: SECINFO - Obtain Available Security . . . 412 | 18.29. Operation 33: SECINFO - Obtain Available Security . . . 423 | |||
18.30. Operation 34: SETATTR - Set Attributes . . . . . . . . . 415 | 18.30. Operation 34: SETATTR - Set Attributes . . . . . . . . . 426 | |||
18.31. Operation 37: VERIFY - Verify Same Attributes . . . . . 418 | 18.31. Operation 37: VERIFY - Verify Same Attributes . . . . . 429 | |||
18.32. Operation 38: WRITE - Write to File . . . . . . . . . . 419 | 18.32. Operation 38: WRITE - Write to File . . . . . . . . . . 430 | |||
18.33. Operation 40: BACKCHANNEL_CTL - Backchannel control . . 423 | 18.33. Operation 40: BACKCHANNEL_CTL - Backchannel control . . 434 | |||
18.34. Operation 41: BIND_CONN_TO_SESSION . . . . . . . . . . . 424 | 18.34. Operation 41: BIND_CONN_TO_SESSION . . . . . . . . . . . 435 | |||
18.35. Operation 42: EXCHANGE_ID - Instantiate Client ID . . . 427 | 18.35. Operation 42: EXCHANGE_ID - Instantiate Client ID . . . 438 | |||
18.36. Operation 43: CREATE_SESSION - Create New Session and | 18.36. Operation 43: CREATE_SESSION - Create New Session and | |||
Confirm Client ID . . . . . . . . . . . . . . . . . . . 443 | Confirm Client ID . . . . . . . . . . . . . . . . . . . 454 | |||
18.37. Operation 44: DESTROY_SESSION - Destroy existing | 18.37. Operation 44: DESTROY_SESSION - Destroy existing | |||
session . . . . . . . . . . . . . . . . . . . . . . . . 453 | session . . . . . . . . . . . . . . . . . . . . . . . . 464 | |||
18.38. Operation 45: FREE_STATEID - Free stateid with no | 18.38. Operation 45: FREE_STATEID - Free stateid with no | |||
locks . . . . . . . . . . . . . . . . . . . . . . . . . 455 | locks . . . . . . . . . . . . . . . . . . . . . . . . . 466 | |||
18.39. Operation 46: GET_DIR_DELEGATION - Get a directory | 18.39. Operation 46: GET_DIR_DELEGATION - Get a directory | |||
delegation . . . . . . . . . . . . . . . . . . . . . . . 455 | delegation . . . . . . . . . . . . . . . . . . . . . . . 466 | |||
18.40. Operation 47: GETDEVICEINFO - Get Device Information . . 460 | 18.40. Operation 47: GETDEVICEINFO - Get Device Information . . 471 | |||
18.41. Operation 48: GETDEVICELIST . . . . . . . . . . . . . . 461 | 18.41. Operation 48: GETDEVICELIST . . . . . . . . . . . . . . 472 | |||
18.42. Operation 49: LAYOUTCOMMIT - Commit writes made using | 18.42. Operation 49: LAYOUTCOMMIT - Commit writes made using | |||
a layout . . . . . . . . . . . . . . . . . . . . . . . . 463 | a layout . . . . . . . . . . . . . . . . . . . . . . . . 474 | |||
18.43. Operation 50: LAYOUTGET - Get Layout Information . . . . 467 | 18.43. Operation 50: LAYOUTGET - Get Layout Information . . . . 478 | |||
18.44. Operation 51: LAYOUTRETURN - Release Layout | 18.44. Operation 51: LAYOUTRETURN - Release Layout | |||
Information . . . . . . . . . . . . . . . . . . . . . . 470 | Information . . . . . . . . . . . . . . . . . . . . . . 481 | |||
18.45. Operation 52: SECINFO_NO_NAME - Get Security on | 18.45. Operation 52: SECINFO_NO_NAME - Get Security on | |||
Unnamed Object . . . . . . . . . . . . . . . . . . . . . 474 | Unnamed Object . . . . . . . . . . . . . . . . . . . . . 485 | |||
18.46. Operation 53: SEQUENCE - Supply per-procedure | 18.46. Operation 53: SEQUENCE - Supply per-procedure | |||
sequencing and control . . . . . . . . . . . . . . . . . 475 | sequencing and control . . . . . . . . . . . . . . . . . 486 | |||
18.47. Operation 54: SET_SSV . . . . . . . . . . . . . . . . . 481 | 18.47. Operation 54: SET_SSV . . . . . . . . . . . . . . . . . 492 | |||
18.48. Operation 55: TEST_STATEID - Test stateids for | 18.48. Operation 55: TEST_STATEID - Test stateids for | |||
validity . . . . . . . . . . . . . . . . . . . . . . . . 483 | validity . . . . . . . . . . . . . . . . . . . . . . . . 494 | |||
18.49. Operation 56: WANT_DELEGATION . . . . . . . . . . . . . 485 | 18.49. Operation 56: WANT_DELEGATION . . . . . . . . . . . . . 496 | |||
18.50. Operation 57: DESTROY_CLIENTID - Destroy existing | 18.50. Operation 57: DESTROY_CLIENTID - Destroy existing | |||
client ID . . . . . . . . . . . . . . . . . . . . . . . 488 | client ID . . . . . . . . . . . . . . . . . . . . . . . 500 | |||
18.51. Operation 58: RECLAIM_COMPLETE - Indicates Reclaims | 18.51. Operation 58: RECLAIM_COMPLETE - Indicates Reclaims | |||
Finished . . . . . . . . . . . . . . . . . . . . . . . . 489 | Finished . . . . . . . . . . . . . . . . . . . . . . . . 500 | |||
18.52. Operation 10044: ILLEGAL - Illegal operation . . . . . . 491 | 18.52. Operation 10044: ILLEGAL - Illegal operation . . . . . . 502 | |||
19. NFS version 4.1 Callback Procedures . . . . . . . . . . . . . 492 | 19. NFS version 4.1 Callback Procedures . . . . . . . . . . . . . 503 | |||
19.1. Procedure 0: CB_NULL - No Operation . . . . . . . . . . 492 | 19.1. Procedure 0: CB_NULL - No Operation . . . . . . . . . . 503 | |||
19.2. Procedure 1: CB_COMPOUND - Compound Operations . . . . . 493 | 19.2. Procedure 1: CB_COMPOUND - Compound Operations . . . . . 504 | |||
20. NFS version 4.1 Callback Operations . . . . . . . . . . . . . 496 | 20. NFS version 4.1 Callback Operations . . . . . . . . . . . . . 508 | |||
20.1. Operation 3: CB_GETATTR - Get Attributes . . . . . . . . 496 | 20.1. Operation 3: CB_GETATTR - Get Attributes . . . . . . . . 508 | |||
20.2. Operation 4: CB_RECALL - Recall an Open Delegation . . . 497 | 20.2. Operation 4: CB_RECALL - Recall an Open Delegation . . . 509 | |||
20.3. Operation 5: CB_LAYOUTRECALL . . . . . . . . . . . . . . 498 | 20.3. Operation 5: CB_LAYOUTRECALL . . . . . . . . . . . . . . 510 | |||
20.4. Operation 6: CB_NOTIFY - Notify directory changes . . . 502 | 20.4. Operation 6: CB_NOTIFY - Notify directory changes . . . 513 | |||
20.5. Operation 7: CB_PUSH_DELEG . . . . . . . . . . . . . . . 505 | 20.5. Operation 7: CB_PUSH_DELEG . . . . . . . . . . . . . . . 517 | |||
20.6. Operation 8: CB_RECALL_ANY - Keep any N delegations . . 506 | 20.6. Operation 8: CB_RECALL_ANY - Keep any N delegations . . 518 | |||
20.7. Operation 9: CB_RECALLABLE_OBJ_AVAIL . . . . . . . . . . 509 | 20.7. Operation 9: CB_RECALLABLE_OBJ_AVAIL . . . . . . . . . . 520 | |||
20.8. Operation 10: CB_RECALL_SLOT - change flow control | 20.8. Operation 10: CB_RECALL_SLOT - change flow control | |||
limits . . . . . . . . . . . . . . . . . . . . . . . . . 510 | limits . . . . . . . . . . . . . . . . . . . . . . . . . 521 | |||
20.9. Operation 11: CB_SEQUENCE - Supply backchannel | 20.9. Operation 11: CB_SEQUENCE - Supply backchannel | |||
sequencing and control . . . . . . . . . . . . . . . . . 511 | sequencing and control . . . . . . . . . . . . . . . . . 522 | |||
20.10. Operation 12: CB_WANTS_CANCELLED . . . . . . . . . . . . 513 | 20.10. Operation 12: CB_WANTS_CANCELLED . . . . . . . . . . . . 524 | |||
20.11. Operation 13: CB_NOTIFY_LOCK - Notify of possible | 20.11. Operation 13: CB_NOTIFY_LOCK - Notify of possible | |||
lock availability . . . . . . . . . . . . . . . . . . . 514 | lock availability . . . . . . . . . . . . . . . . . . . 525 | |||
20.12. Operation 10044: CB_ILLEGAL - Illegal Callback | 20.12. Operation 10044: CB_ILLEGAL - Illegal Callback | |||
Operation . . . . . . . . . . . . . . . . . . . . . . . 516 | Operation . . . . . . . . . . . . . . . . . . . . . . . 527 | |||
21. Security Considerations . . . . . . . . . . . . . . . . . . . 516 | 21. Security Considerations . . . . . . . . . . . . . . . . . . . 527 | |||
22. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 517 | 22. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 528 | |||
22.1. Defining New Notifications . . . . . . . . . . . . . . . 517 | 22.1. Named Attribute Definitions . . . . . . . . . . . . . . 528 | |||
22.2. Defining new layout types . . . . . . . . . . . . . . . 517 | 22.2. ONC RPC Network Identifiers (netids) . . . . . . . . . . 528 | |||
22.3. Named Attribute Definitions . . . . . . . . . . . . . . 518 | 22.3. Defining New Notifications . . . . . . . . . . . . . . . 529 | |||
22.4. Path Variable Definitions . . . . . . . . . . . . . . . 518 | 22.4. Defining new layout types . . . . . . . . . . . . . . . 530 | |||
22.4.1. Path Variable Values . . . . . . . . . . . . . . . . 518 | 22.5. Path Variable Definitions . . . . . . . . . . . . . . . 531 | |||
22.4.2. Path Variable Names . . . . . . . . . . . . . . . . 519 | 22.5.1. Path Variable Values . . . . . . . . . . . . . . . . 531 | |||
23. References . . . . . . . . . . . . . . . . . . . . . . . . . 519 | 22.5.2. Path Variable Names . . . . . . . . . . . . . . . . 531 | |||
23.1. Normative References . . . . . . . . . . . . . . . . . . 519 | 23. References . . . . . . . . . . . . . . . . . . . . . . . . . 532 | |||
23.2. Informative References . . . . . . . . . . . . . . . . . 520 | 23.1. Normative References . . . . . . . . . . . . . . . . . . 532 | |||
Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 522 | 23.2. Informative References . . . . . . . . . . . . . . . . . 533 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 524 | Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 535 | |||
Intellectual Property and Copyright Statements . . . . . . . . . 525 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 536 | |||
Intellectual Property and Copyright Statements . . . . . . . . . 538 | ||||
1. Introduction | 1. Introduction | |||
1.1. The NFSv4.1 Protocol | 1.1. The NFSv4.1 Protocol | |||
The NFSv4.1 protocol is a minor version of the NFSv4 protocol | The NFSv4.1 protocol is a minor version of the NFSv4 protocol | |||
described in [20]. It generally follows the guidelines for minor | described in [20]. It generally follows the guidelines for minor | |||
versioning model laid in Section 10 of RFC 3530. However, it | versioning model laid in Section 10 of RFC 3530. However, it | |||
diverges from guidelines 11 ("a client and server that supports minor | diverges from guidelines 11 ("a client and server that supports minor | |||
version X must support minor versions 0 through X-1"), and 12 ("no | version X must support minor versions 0 through X-1"), and 12 ("no | |||
skipping to change at page 55, line 8 | skipping to change at page 55, line 8 | |||
the tenth operation is a READ for one million bytes, the server may | the tenth operation is a READ for one million bytes, the server may | |||
return NFS4ERR_REP_TOO_BIG_TO_CACHE on the tenth operation. Since | return NFS4ERR_REP_TOO_BIG_TO_CACHE on the tenth operation. Since | |||
the server executed several operations, especially the non-idempotent | the server executed several operations, especially the non-idempotent | |||
RENAME, the client's request to cache the reply needs to be honored | RENAME, the client's request to cache the reply needs to be honored | |||
in order for correct operation of exactly once semantics. If the | in order for correct operation of exactly once semantics. If the | |||
client retries the request, the server will have cached a reply that | client retries the request, the server will have cached a reply that | |||
contains results for ten of the eleven requested operations, with the | contains results for ten of the eleven requested operations, with the | |||
tenth operation having a status of NFS4ERR_REP_TOO_BIG_TO_CACHE. | tenth operation having a status of NFS4ERR_REP_TOO_BIG_TO_CACHE. | |||
A client needs to take care that when sending operations that change | A client needs to take care that when sending operations that change | |||
the current filehandle (except for PUTFH, PUTPUBFH, and PUTROOTFH) | the current filehandle (except for PUTFH, PUTPUBFH, PUTROOTFH and | |||
that it not exceed the maximum reply buffer before the GETFH | RESTOREFH) that it not exceed the maximum reply buffer before the | |||
operation. Otherwise the client will have to retry the operation | GETFH operation. Otherwise the client will have to retry the | |||
that changed the current filehandle, in order to obtain the desired | operation that changed the current filehandle, in order to obtain the | |||
filehandle. For the OPEN operation (see Section 18.16), retry is not | desired filehandle. For the OPEN operation (see Section 18.16), | |||
always available as an option. The following guidelines for the | retry is not always available as an option. The following guidelines | |||
handling of filehandle changing operations are advised: | for the handling of filehandle changing operations are advised: | |||
o Within the same COMPOUND procedure, a client SHOULD issue GETFH | o Within the same COMPOUND procedure, a client SHOULD issue GETFH | |||
immediately after a current filehandle changing operation. A | immediately after a current filehandle changing operation. A | |||
client MUST issue GETFH after a current filehandle change | client MUST issue GETFH after a current filehandle changing | |||
operation that is also non-idempotent (for example, the OPEN | operation that is also non-idempotent (for example, the OPEN | |||
operation). | operation), unless the operation is RESTOREFH. RESTOREFH is an | |||
exception, because even though it is non-idempotent, the | ||||
filehandle RESTOREFH produced originated from an operation that is | ||||
either idempotent (e.g. PUTFH, LOOKUP), or non-idempotent (e.g. | ||||
OPEN, CREATE). If the origin is non-idempotent, then because the | ||||
client MUST issue GETFH after the origin operation, the client can | ||||
recover if RESTOREFH returns an error. | ||||
o A server MAY return NFS4ERR_REP_TOO_BIG or | o A server MAY return NFS4ERR_REP_TOO_BIG or | |||
NFS4ERR_REP_TOO_BIG_TO_CACHE (if sa_cachethis is TRUE) on a | NFS4ERR_REP_TOO_BIG_TO_CACHE (if sa_cachethis is TRUE) on a | |||
filehandle changing operation if the reply would be too large on | filehandle changing operation if the reply would be too large on | |||
the next operation. | the next operation. | |||
o A server SHOULD return NFS4ERR_REP_TOO_BIG or | o A server SHOULD return NFS4ERR_REP_TOO_BIG or | |||
NFS4ERR_REP_TOO_BIG_TO_CACHE (if sa_cachethis is TRUE) on a | NFS4ERR_REP_TOO_BIG_TO_CACHE (if sa_cachethis is TRUE) on a | |||
filehandle changing non-idempotent operation if the reply would be | filehandle changing non-idempotent operation if the reply would be | |||
too large on the next operation, especially if the operation is | too large on the next operation, especially if the operation is | |||
OPEN. | OPEN. | |||
o A server MAY return NFS4ERR_UNSAFE_COMPOUND to a non-idempotent | o A server MAY return NFS4ERR_UNSAFE_COMPOUND to a non-idempotent | |||
current filehandle change operation, if it looks at the next | current filehandle changing operation, if it looks at the next | |||
operation (in the same COMPOUND procedure) and finds it is not | operation (in the same COMPOUND procedure) and finds it is not | |||
GETFH. The server SHOULD do this if it is unable to determine in | GETFH. The server SHOULD do this if it is unable to determine in | |||
advance whether the total response size would exceed | advance whether the total response size would exceed | |||
ca_maxresponsesize_cached or ca_maxresponsesize. | ca_maxresponsesize_cached or ca_maxresponsesize. | |||
2.10.5.5. Persistence | 2.10.5.5. Persistence | |||
Since the reply cache is bounded, it is practical for the reply cache | Since the reply cache is bounded, it is practical for the reply cache | |||
to persist across server restarts. The replier MUST persist the | to persist across server restarts. The replier MUST persist the | |||
following information if it agreed to persist the session (when the | following information if it agreed to persist the session (when the | |||
skipping to change at page 80, line 10 | skipping to change at page 80, line 10 | |||
Section 2.9). | Section 2.9). | |||
For TCP over IPv6 and for UDP over IPv6, the format of r_addr is the | For TCP over IPv6 and for UDP over IPv6, the format of r_addr is the | |||
US-ASCII string: | US-ASCII string: | |||
x1:x2:x3:x4:x5:x6:x7:x8.p1.p2 | x1:x2:x3:x4:x5:x6:x7:x8.p1.p2 | |||
The suffix "p1.p2" is the service port, and is computed the same way | The suffix "p1.p2" is the service port, and is computed the same way | |||
as with universal addresses for TCP and UDP over IPv4. The prefix, | as with universal addresses for TCP and UDP over IPv4. The prefix, | |||
"x1:x2:x3:x4:x5:x6:x7:x8", is the standard textual form for | "x1:x2:x3:x4:x5:x6:x7:x8", is the standard textual form for | |||
representing an IPv6 address as defined in Section 2.2 of RFC1884 | representing an IPv6 address as defined in Section 2.2 of RFC2373 | |||
[12]. Additionally, the two alternative forms specified in Section | [12]. Additionally, the two alternative forms specified in Section | |||
2.2 of RFC1884 [12] are also acceptable. | 2.2 of RFC2373 [12] are also acceptable. | |||
For TCP over IPv6 the value of r_netid is the string "tcp6". For UDP | For TCP over IPv6 the value of r_netid is the string "tcp6". For UDP | |||
over IPv6 the value of r_netid is the string "udp6". That this | over IPv6 the value of r_netid is the string "udp6". That this | |||
document specifies the universal address and netid for UDP/IPv6 does | document specifies the universal address and netid for UDP/IPv6 does | |||
not imply that UDP/IPv6 is a legal transport for NFSv4.1 (see | not imply that UDP/IPv6 is a legal transport for NFSv4.1 (see | |||
Section 2.9). | Section 2.9). | |||
3.2.12. state_owner4 | 3.2.12. state_owner4 | |||
struct state_owner4 { | struct state_owner4 { | |||
skipping to change at page 81, line 43 | skipping to change at page 81, line 43 | |||
that clients have "layout drivers" that support one or more layout | that clients have "layout drivers" that support one or more layout | |||
types. The file server advertises the layout types it supports | types. The file server advertises the layout types it supports | |||
through the fs_layout_type file system attribute (Section 5.11.1). A | through the fs_layout_type file system attribute (Section 5.11.1). A | |||
client asks for layouts of a particular type in LAYOUTGET, and passes | client asks for layouts of a particular type in LAYOUTGET, and passes | |||
those layouts to its layout driver. | those layouts to its layout driver. | |||
The layouttype4 structure is 32 bits in length. The range | The layouttype4 structure is 32 bits in length. The range | |||
represented by the layout type is split into three parts. Type 0x0 | represented by the layout type is split into three parts. Type 0x0 | |||
is reserved. Types within the range 0x00000001-0x7FFFFFFF are | is reserved. Types within the range 0x00000001-0x7FFFFFFF are | |||
globally unique and are assigned according to the description in | globally unique and are assigned according to the description in | |||
Section 22.2; they are maintained by IANA. Types within the range | Section 22.4; they are maintained by IANA. Types within the range | |||
0x80000000-0xFFFFFFFF are site specific and for "private use" only. | 0x80000000-0xFFFFFFFF are site specific and for "private use" only. | |||
The LAYOUT4_NFSV4_1_FILES enumeration specifies that the NFSv4.1 file | The LAYOUT4_NFSV4_1_FILES enumeration specifies that the NFSv4.1 file | |||
layout type is to be used. The LAYOUT4_OSD2_OBJECTS enumeration | layout type is to be used. The LAYOUT4_OSD2_OBJECTS enumeration | |||
specifies that the object layout, as defined in [29], is to be used. | specifies that the object layout, as defined in [29], is to be used. | |||
Similarly, the LAYOUT4_BLOCK_VOLUME enumeration that the block/volume | Similarly, the LAYOUT4_BLOCK_VOLUME enumeration that the block/volume | |||
layout, as defined in [30], is to be used. | layout, as defined in [30], is to be used. | |||
3.2.16. deviceid4 | 3.2.16. deviceid4 | |||
skipping to change at page 93, line 51 | skipping to change at page 93, line 51 | |||
client should not depend on the ability to store any named attributes | client should not depend on the ability to store any named attributes | |||
in the server's file system. If a server does support named | in the server's file system. If a server does support named | |||
attributes, a client which is also able to handle them should be able | attributes, a client which is also able to handle them should be able | |||
to copy a file's data and meta-data with complete transparency from | to copy a file's data and meta-data with complete transparency from | |||
one location to another; this would imply that names allowed for | one location to another; this would imply that names allowed for | |||
regular directory entries are valid for named attribute names as | regular directory entries are valid for named attribute names as | |||
well. | well. | |||
Names of attributes will not be controlled by this document or other | Names of attributes will not be controlled by this document or other | |||
IETF standards track documents. See the section IANA Considerations | IETF standards track documents. See the section IANA Considerations | |||
(Section 22.3) for further discussion. | (Section 22.1) for further discussion. | |||
5.4. Classification of Attributes | 5.4. Classification of Attributes | |||
Each of the Mandatory and Recommended attributes can be classified in | Each of the Mandatory and Recommended attributes can be classified in | |||
one of three categories: per server, per file system, or per file | one of three categories: per server, per file system, or per file | |||
system object. Note that it is possible that some per file system | system object. Note that it is possible that some per file system | |||
attributes may vary within the file system. See the "homogeneous" | attributes may vary within the file system. See the "homogeneous" | |||
attribute for its definition. Note that the attributes | attribute for its definition. Note that the attributes | |||
time_access_set and time_modify_set are not listed in this section | time_access_set and time_modify_set are not listed in this section | |||
because they are write-only attributes corresponding to time_access | because they are write-only attributes corresponding to time_access | |||
skipping to change at page 257, line 31 | skipping to change at page 257, line 31 | |||
mandatory file locks simultaneously. | mandatory file locks simultaneously. | |||
12.5.2. Getting a Layout | 12.5.2. Getting a Layout | |||
A client obtains a layout with the LAYOUTGET operation. The metadata | A client obtains a layout with the LAYOUTGET operation. The metadata | |||
server will grant layouts of a particular type (e.g., block/volume, | server will grant layouts of a particular type (e.g., block/volume, | |||
object, or file). The client selects an appropriate layout type that | object, or file). The client selects an appropriate layout type that | |||
the server supports and the client is prepared to use. The layout | the server supports and the client is prepared to use. The layout | |||
returned to the client may not exactly align with the requested byte | returned to the client may not exactly align with the requested byte | |||
range. A field within the LAYOUTGET request, loga_minlength, | range. A field within the LAYOUTGET request, loga_minlength, | |||
specifies the minimum overlap that MUST exist between the requested | specifies the minimum length of the layout. The loga_minlength field | |||
layout and the layout returned by the metadata server. The | should be at least one. As needed a client may make multiple | |||
loga_minlength field should be at least one. As needed a client may | LAYOUTGET requests; these will result in multiple overlapping, non- | |||
make multiple LAYOUTGET requests; these will result in multiple | conflicting layouts. | |||
overlapping, non-conflicting layouts. | ||||
There is no required ordering between getting a layout and performing | There is no required ordering between getting a layout and performing | |||
a file OPEN. For example, a layout may first be retrieved by placing | a file OPEN. For example, a layout may first be retrieved by placing | |||
a LAYOUTGET operation in the same COMPOUND as the initial file OPEN. | a LAYOUTGET operation in the same COMPOUND as the initial file OPEN. | |||
Once the layout has been retrieved, it can be held across multiple | Once the layout has been retrieved, it can be held across multiple | |||
OPEN and CLOSE sequences. Therefore, a client may hold a layout for | OPEN and CLOSE sequences. Therefore, a client may hold a layout for | |||
a file that is not currently open by any user on the client. This | a file that is not currently open by any user on the client. This | |||
allows for the caching of layouts beyond CLOSE such that CLOSE to | allows for the caching of layouts beyond CLOSE such that CLOSE to | |||
OPEN sequences do not incur additional layout overhead. | OPEN sequences do not incur additional layout overhead. | |||
skipping to change at page 258, line 18 | skipping to change at page 258, line 16 | |||
pNFS introduces a layout_hint (Section 5.11.4) attribute that the | pNFS introduces a layout_hint (Section 5.11.4) attribute that the | |||
client can set at file creation time to provide a hint to the server | client can set at file creation time to provide a hint to the server | |||
for new files. Setting this attribute separately, after the file has | for new files. Setting this attribute separately, after the file has | |||
been created might make it difficult, or impossible, for the server | been created might make it difficult, or impossible, for the server | |||
implementation to comply. This further complicates the exclusive | implementation to comply. This further complicates the exclusive | |||
file creation via OPEN, which when done via the EXCLUSIVE4 createmode | file creation via OPEN, which when done via the EXCLUSIVE4 createmode | |||
does not allow the setting of attributes at file creation time. | does not allow the setting of attributes at file creation time. | |||
However as noted in Section 18.16.3, if the server supports a | However as noted in Section 18.16.3, if the server supports a | |||
persistent reply cache, the EXCLUSIVE4 createmode is not needed. | persistent reply cache, the EXCLUSIVE4 createmode is not needed. | |||
Therefore, a metadata server that supports the layout_hint attribute | Therefore, a metadata server that supports the layout_hint attribute | |||
MUST support a persistent session reply cache, and a pNFS client that | SHOULD support a persistent session reply cache. If a session is | |||
wants to set layout_hint at file creation (OPEN) time MUST NOT use | created on the metadata server with a persistent reply cache, a pNFS | |||
the EXCLUSIVE4 createmode, and instead MUST used GUARDED for an | client that wants to set layout_hint at file creation (OPEN) time | |||
exclusive regular file creation. | MUST NOT use the EXCLUSIVE4 createmode, and instead MUST use GUARDED | |||
for an exclusive regular file creation. | ||||
12.5.3. Committing a Layout | 12.5.3. Committing a Layout | |||
Allowing for varying storage protocols capabilities, the pNFS | Allowing for varying storage protocols capabilities, the pNFS | |||
protocol does not require the metadata server and storage devices to | protocol does not require the metadata server and storage devices to | |||
have a consistent view of file attributes and data location mappings. | have a consistent view of file attributes and data location mappings. | |||
Data location mapping refers to things like which offsets store data | Data location mapping refers to things like which offsets store data | |||
as opposed to storing holes (see Section 13.5 for a discussion). | as opposed to storing holes (see Section 13.5 for a discussion). | |||
Related issues arise for storage protocols where a layout may hold | Related issues arise for storage protocols where a layout may hold | |||
provisionally allocated blocks where the allocation of those blocks | provisionally allocated blocks where the allocation of those blocks | |||
skipping to change at page 282, line 6 | skipping to change at page 282, line 6 | |||
The nfsv4_1_file_layout4 data type represents the layout. It is | The nfsv4_1_file_layout4 data type represents the layout. It is | |||
composed of four fields: | composed of four fields: | |||
1. nfl_deviceid: The device ID which maps to a value of type | 1. nfl_deviceid: The device ID which maps to a value of type | |||
nfsv4_1_file_layout_ds_addr4. | nfsv4_1_file_layout_ds_addr4. | |||
2. nfl_util: Like the nflh_util field of data type | 2. nfl_util: Like the nflh_util field of data type | |||
nfsv4_1_file_layouthint4, a compact representation of how the | nfsv4_1_file_layouthint4, a compact representation of how the | |||
data on a file on each data server is packed, whether the client | data on a file on each data server is packed, whether the client | |||
should send COMMIT operations to the metadata server or data | should send COMMIT operations to the metadata server or data | |||
server, and the stripe unit size. | server, and the stripe unit size. If a server returns two or | |||
more overlapping layouts, each stripe unit size in each | ||||
overlapper layout MUST be the same. | ||||
3. nfl_first_stripe_index: The index into the first element of the | 3. nfl_first_stripe_index: The index into the first element of the | |||
nflda_stripe_indices array to use. | nflda_stripe_indices array to use. | |||
4. nfl_fh_list. An array of data server filehandles for each list | 4. nfl_fh_list. An array of data server filehandles for each list | |||
of data servers in each element of the nflda_multipath_ds_list | of data servers in each element of the nflda_multipath_ds_list | |||
array. The number of elements in nfl_fh_list depends on whether | array. The number of elements in nfl_fh_list depends on whether | |||
sparse or dense packing is being used. If sparse packing is | sparse or dense packing is being used. If sparse packing is | |||
being used, the number of elements in nfl_fh_list MUST be of | being used, the number of elements in nfl_fh_list MUST be of | |||
three values: | three values: | |||
skipping to change at page 305, line 36 | skipping to change at page 305, line 36 | |||
| | | user permission | | | | | user permission | | |||
| | | failures. | | | | | failures. | | |||
| NFS4ERR_ATTRNOTSUPP | 10032 | An attribute | | | NFS4ERR_ATTRNOTSUPP | 10032 | An attribute | | |||
| | | specified is not | | | | | specified is not | | |||
| | | supported by the | | | | | supported by the | | |||
| | | server. Does not | | | | | server. Does not | | |||
| | | apply to the GETATTR | | | | | apply to the GETATTR | | |||
| | | operation. | | | | | operation. | | |||
| NFS4ERR_ADMIN_REVOKED | 10047 | Due to administrator | | | NFS4ERR_ADMIN_REVOKED | 10047 | Due to administrator | | |||
| | | intervention, the | | | | | intervention, the | | |||
| | | lockowner's record | | ||||
| | | locks, share | | | | | locks, share | | |||
| | | reservations, and | | | | | reservations, | | |||
| | | delegations have | | | | | delegations, | | |||
| | | been revoked by the | | | | | layouts, or device | | |||
| | | maps, represented by | | ||||
| | | a stateid passed to | | ||||
| | | the current | | ||||
| | | operation have been | | ||||
| | | revoked by the | | ||||
| | | server. | | | | | server. | | |||
| NFS4ERR_BACK_CHAN_BUSY | 10057 | The session cannot | | | NFS4ERR_BACK_CHAN_BUSY | 10057 | The session cannot | | |||
| | | be destroyed because | | | | | be destroyed because | | |||
| | | the server has | | | | | the server has | | |||
| | | callback requests | | | | | callback requests | | |||
| | | outstanding. | | | | | outstanding. | | |||
| NFS4ERR_BADCHAR | 10040 | A UTF-8 string | | | NFS4ERR_BADCHAR | 10040 | A UTF-8 string | | |||
| | | contains a character | | | | | contains a character | | |||
| | | which is not | | | | | which is not | | |||
| | | supported by the | | | | | supported by the | | |||
| | | server in the | | | | | server in the | | |||
| | | context in which it | | | | | context in which it | | |||
| | | being used. | | | | | being used. | | |||
| NFS4ERR_BAD_COOKIE | 10003 | READDIR cookie is | | ||||
| | | stale. | | ||||
| NFS4ERR_BADHANDLE | 10001 | Illegal NFS | | | NFS4ERR_BADHANDLE | 10001 | Illegal NFS | | |||
| | | filehandle. The | | | | | filehandle. The | | |||
| | | filehandle failed | | | | | filehandle failed | | |||
| | | internal consistency | | | | | internal consistency | | |||
| | | checks. | | | | | checks. | | |||
| NFS4ERR_BAD_HIGH_SLOT | 10077 | The highest_slot | | ||||
| | | argument in SEQUENCE | | ||||
| | | or CB_SEQUENCE | | ||||
| | | exceeds the | | ||||
| | | replier's enforced | | ||||
| | | highest_slotid. | | ||||
| NFS4ERR_BADIOMODE | 10049 | Layout iomode is | | | NFS4ERR_BADIOMODE | 10049 | Layout iomode is | | |||
| | | invalid. | | | | | invalid. | | |||
| NFS4ERR_BADLAYOUT | 10050 | Layout specified is | | | NFS4ERR_BADLAYOUT | 10050 | Layout specified is | | |||
| | | invalid. | | | | | invalid. | | |||
| NFS4ERR_BADNAME | 10041 | A name string in a | | | NFS4ERR_BADNAME | 10041 | A name string in a | | |||
| | | request consists of | | | | | request consists of | | |||
| | | valid UTF-8 | | | | | valid UTF-8 | | |||
| | | characters supported | | | | | characters supported | | |||
| | | by the server but | | | | | by the server but | | |||
| | | the name is not | | | | | the name is not | | |||
| | | supported by the | | | | | supported by the | | |||
| | | server as a valid | | | | | server as a valid | | |||
| | | name for current | | | | | name for current | | |||
| | | operation. | | | | | operation. | | |||
| NFS4ERR_BADOWNER | 10039 | An owner, | | | NFS4ERR_BADOWNER | 10039 | An owner, | | |||
| | | owner_group, or ACL | | | | | owner_group, or ACL | | |||
| | | attribute value can | | | | | attribute value can | | |||
| | | not be translated to | | | | | not be translated to | | |||
| | | local | | | | | local | | |||
| | | representation. | | | | | representation. | | |||
| NFS4ERR_BAD_SESSION_DIGEST | 10051 | The digest used in a | | | NFS4ERR_BADSESSION | 10052 | The specified | | |||
| | | SET_SSV or | | | | | sessionid does not | | |||
| | | BIND_CONN_TO_SESSION | | | | | exist. | | |||
| | | request is not | | | NFS4ERR_BADSLOT | 10053 | The requester sent a | | |||
| | | valid. | | | | | SEQUENCE or | | |||
| | | CB_SEQUENCE request | | ||||
| | | that attempted to | | ||||
| | | use a slot the | | ||||
| | | replier does not | | ||||
| | | have in its slot | | ||||
| | | table. It is | | ||||
| | | possible the slot | | ||||
| | | may have been | | ||||
| | | retired. | | ||||
| NFS4ERR_BADTYPE | 10007 | An attempt was made | | | NFS4ERR_BADTYPE | 10007 | An attempt was made | | |||
| | | to create an object | | | | | to create an object | | |||
| | | of a type not | | | | | of a type not | | |||
| | | supported by the | | | | | supported by the | | |||
| | | server. | | | | | server. | | |||
| NFS4ERR_BADXDR | 10036 | The server | | ||||
| | | encountered an XDR | | ||||
| | | decoding error while | | ||||
| | | processing an | | ||||
| | | operation. | | ||||
| NFS4ERR_BAD_COOKIE | 10003 | READDIR cookie is | | ||||
| | | stale. | | ||||
| NFS4ERR_BAD_HIGH_SLOT | 10077 | The highest_slot | | ||||
| | | argument in SEQUENCE | | ||||
| | | or CB_SEQUENCE | | ||||
| | | exceeds the | | ||||
| | | replier's enforced | | ||||
| | | highest_slotid. | | ||||
| NFS4ERR_BAD_RANGE | 10042 | The range for a | | | NFS4ERR_BAD_RANGE | 10042 | The range for a | | |||
| | | LOCK, LOCKT, or | | | | | LOCK, LOCKT, or | | |||
| | | LOCKU operation is | | | | | LOCKU operation is | | |||
| | | not appropriate to | | | | | not appropriate to | | |||
| | | the allowable range | | | | | the allowable range | | |||
| | | of offsets for the | | | | | of offsets for the | | |||
| | | server. | | | | | server. | | |||
| NFS4ERR_BAD_SEQID | 10026 | The sequence number | | | NFS4ERR_BAD_SEQID | 10026 | The sequence number | | |||
| | | in a locking request | | | | | in a locking request | | |||
| | | is neither the next | | | | | is neither the next | | |||
| | | expected number or | | | | | expected number or | | |||
| | | the last number | | | | | the last number | | |||
| | | processed. This | | | | | processed. This | | |||
| | | error does not apply | | | | | error does not apply | | |||
| | | to and should never | | | | | to and should never | | |||
| | | be generated in | | | | | be generated in | | |||
| | | NFSv4.1. | | | | | NFSv4.1. | | |||
| NFS4ERR_BADSESSION | 10052 | The specified | | | NFS4ERR_BAD_SESSION_DIGEST | 10051 | The digest used in a | | |||
| | | sessionid does not | | | | | SET_SSV or | | |||
| | | exist. | | | | | BIND_CONN_TO_SESSION | | |||
| NFS4ERR_BADSLOT | 10053 | The requester sent a | | | | | request is not | | |||
| | | SEQUENCE or | | | | | valid. | | |||
| | | CB_SEQUENCE request | | ||||
| | | that attempted to | | ||||
| | | use a slot the | | ||||
| | | replier does not | | ||||
| | | have in its slot | | ||||
| | | table. It is | | ||||
| | | possible the slot | | ||||
| | | may have been | | ||||
| | | retired. | | ||||
| NFS4ERR_BAD_STATEID | 10025 | A stateid generated | | | NFS4ERR_BAD_STATEID | 10025 | A stateid generated | | |||
| | | by the current | | | | | by the current | | |||
| | | server instance, but | | | | | server instance, but | | |||
| | | which does not | | | | | which does not | | |||
| | | designate any | | | | | designate | | |||
| | | locking state | | | | | appropriate locking | | |||
| | | (either current or | | | | | state (either | | |||
| | | current or | | ||||
| | | superseded) for a | | | | | superseded) for a | | |||
| | | current | | | | | current | | |||
| | | lockowner-file pair, | | | | | lockowner-file pair, | | |||
| | | was used. | | | | | was used. This may | | |||
| NFS4ERR_BADXDR | 10036 | The server | | | | | because the stateid | | |||
| | | encountered an XDR | | | | | designates an | | |||
| | | decoding error while | | | | | inappropriate sort | | |||
| | | processing an | | | | | of state or one not | | |||
| | | operation. | | | | | associated with the | | |||
| | | current filehandle. | | ||||
| NFS4ERR_CLID_INUSE | 10017 | The EXCHANGE_ID | | | NFS4ERR_CLID_INUSE | 10017 | The EXCHANGE_ID | | |||
| | | operation has found | | | | | operation has found | | |||
| | | that a client ID is | | | | | that a client ID is | | |||
| | | already in use by | | | | | already in use by | | |||
| | | another client. | | | | | another client. | | |||
| NFS4ERR_CLIENTID_BUSY | 10074 | The DESTROY_CLIENTID | | | NFS4ERR_CLIENTID_BUSY | 10074 | The DESTROY_CLIENTID | | |||
| | | operation has found | | | | | operation has found | | |||
| | | there are sessions | | | | | there are sessions | | |||
| | | and/or unexpired | | | | | and/or unexpired | | |||
| | | state associated | | | | | state associated | | |||
| | | with the client ID. | | | | | with the client ID. | | |||
| NFS4ERR_COMPLETE_ALREADY | 10054 | The client | | | NFS4ERR_COMPLETE_ALREADY | 10054 | The client | | |||
| | | previously sent a | | | | | previously sent a | | |||
| | | successful | | | | | successful | | |||
| | | RECLAIM_COMPLETE | | | | | RECLAIM_COMPLETE | | |||
| | | operation; the | | | | | operation; the | | |||
| | | additional | | | | | additional | | |||
| | | RECLAIM_COMPLETE | | | | | RECLAIM_COMPLETE | | |||
| | | operation is not | | | | | operation is not | | |||
| | | needed. | | | | | needed. | | |||
| NFS4ERR_CONN_NOT_BOUND_TO_SESSION | 10055 | The connection is | | ||||
| | | not associated with | | ||||
| | | the specified | | ||||
| | | session. | | ||||
| NFS4ERR_CONN_BINDING_NOT_ENFORCED | 10073 | Client is trying use | | | NFS4ERR_CONN_BINDING_NOT_ENFORCED | 10073 | Client is trying use | | |||
| | | enforced connection | | | | | enforced connection | | |||
| | | association, but it | | | | | association, but it | | |||
| | | disabled enforcement | | | | | disabled enforcement | | |||
| | | when the client ID | | | | | when the client ID | | |||
| | | was created. | | | | | was created. | | |||
| NFS4ERR_CONN_NOT_BOUND_TO_SESSION | 10055 | The connection is | | ||||
| | | not associated with | | ||||
| | | the specified | | ||||
| | | session. | | ||||
| NFS4ERR_DEADLOCK | 10045 | The server has been | | | NFS4ERR_DEADLOCK | 10045 | The server has been | | |||
| | | able to determine a | | | | | able to determine a | | |||
| | | file locking | | | | | file locking | | |||
| | | deadlock condition | | | | | deadlock condition | | |||
| | | for a blocking lock | | | | | for a blocking lock | | |||
| | | request. | | | | | request. | | |||
| NFS4ERR_DEADSESSION | 10782 | The specified | | | NFS4ERR_DEADSESSION | 10782 | The specified | | |||
| | | session is dead and | | | | | session is dead and | | |||
| | | does not accept new | | | | | does not accept new | | |||
| | | requests. | | | | | requests. | | |||
skipping to change at page 311, line 25 | skipping to change at page 311, line 29 | |||
| | | in the protocol | | | | | in the protocol | | |||
| | | (e.g. nfs_ftype4). | | | | | (e.g. nfs_ftype4). | | |||
| NFS4ERR_IO | 5 | I/O error. A hard | | | NFS4ERR_IO | 5 | I/O error. A hard | | |||
| | | error (for example, | | | | | error (for example, | | |||
| | | a disk error) | | | | | a disk error) | | |||
| | | occurred while | | | | | occurred while | | |||
| | | processing the | | | | | processing the | | |||
| | | requested operation. | | | | | requested operation. | | |||
| NFS4ERR_ISDIR | 21 | Is a directory. The | | | NFS4ERR_ISDIR | 21 | Is a directory. The | | |||
| | | caller specified a | | | | | caller specified a | | |||
| | | directory in a | | | | | directory in an | | |||
| | | non-directory | | | | | operation which | | |||
| | | operation. | | | | | cannot be performed | | |||
| | | on a directory. | | ||||
| NFS4ERR_LAYOUTTRYLATER | 10058 | Layouts are | | | NFS4ERR_LAYOUTTRYLATER | 10058 | Layouts are | | |||
| | | temporarily | | | | | temporarily | | |||
| | | unavailable for the | | | | | unavailable for the | | |||
| | | file, client should | | | | | file, client should | | |||
| | | retry later. | | | | | retry later. | | |||
| NFS4ERR_LAYOUTUNAVAILABLE | 10059 | Layouts are not | | | NFS4ERR_LAYOUTUNAVAILABLE | 10059 | Layouts are not | | |||
| | | available for the | | | | | available for the | | |||
| | | file or its | | | | | file or its | | |||
| | | containing file | | | | | containing file | | |||
| | | system. | | | | | system. | | |||
| NFS4ERR_LEASE_MOVED | 10031 | A lease being | | | NFS4ERR_LEASE_MOVED | 10031 | A lease being | | |||
| | | renewed is | | | | | renewed is | | |||
| | | associated with a | | | | | associated with a | | |||
| | | file system that has | | | | | file system that has | | |||
| | | been migrated to a | | | | | been migrated to a | | |||
| | | new server. | | | | | new server. This | | |||
| | | error does not apply | | ||||
| | | to and should never | | ||||
| | | be generated in | | ||||
| | | NFSv4.1. | | ||||
| NFS4ERR_LOCKED | 10012 | A read or write | | | NFS4ERR_LOCKED | 10012 | A read or write | | |||
| | | operation was | | | | | operation was | | |||
| | | attempted on a | | | | | attempted on a | | |||
| | | locked file. | | | | | locked file. | | |||
| NFS4ERR_LOCKS_HELD | 10037 | An operation to free | | ||||
| | | locking state was | | ||||
| | | prevented by the | | ||||
| | | unexpected presence | | ||||
| | | of locks. | | ||||
| NFS4ERR_LOCK_NOTSUPP | 10043 | Server does not | | | NFS4ERR_LOCK_NOTSUPP | 10043 | Server does not | | |||
| | | support atomic | | | | | support atomic | | |||
| | | upgrade or downgrade | | | | | upgrade or downgrade | | |||
| | | of locks. | | | | | of locks. | | |||
| NFS4ERR_LOCK_RANGE | 10028 | A lock request is | | | NFS4ERR_LOCK_RANGE | 10028 | A lock request is | | |||
| | | operating on a | | | | | operating on a | | |||
| | | sub-range of a | | | | | sub-range of a | | |||
| | | current lock for the | | | | | current lock for the | | |||
| | | lock owner and the | | | | | lock owner and the | | |||
| | | server does not | | | | | server does not | | |||
| | | support this type of | | | | | support this type of | | |||
| | | request. | | | | | request. | | |||
| NFS4ERR_LOCKS_HELD | 10037 | A CLOSE was | | ||||
| | | attempted and file | | ||||
| | | locks would exist | | ||||
| | | after the CLOSE. | | ||||
| NFS4ERR_MINOR_VERS_MISMATCH | 10021 | The server has | | | NFS4ERR_MINOR_VERS_MISMATCH | 10021 | The server has | | |||
| | | received a request | | | | | received a request | | |||
| | | that specifies an | | | | | that specifies an | | |||
| | | unsupported minor | | | | | unsupported minor | | |||
| | | version. The server | | | | | version. The server | | |||
| | | must return a | | | | | must return a | | |||
| | | COMPOUND4res with a | | | | | COMPOUND4res with a | | |||
| | | zero length | | | | | zero length | | |||
| | | operations result | | | | | operations result | | |||
| | | array. | | | | | array. | | |||
| NFS4ERR_SEQ_MISORDERED | 10063 | The requester sent a | | ||||
| | | SEQUENCE or | | ||||
| | | CB_SEQUENCE | | ||||
| | | operation with an | | ||||
| | | invalid sequence id. | | ||||
| NFS4ERR_SEQ_FALSE_RETRY | 10076 | The requester sent a | | ||||
| | | SEQUENCE or | | ||||
| | | CB_SEQUENCE | | ||||
| | | operation with slot | | ||||
| | | id and sequence id | | ||||
| | | that are in the | | ||||
| | | reply cache, but | | ||||
| | | replier detects that | | ||||
| | | the retry is not the | | ||||
| | | same as the original | | ||||
| | | request. | | ||||
| NFS4ERR_SEQUENCE_POS | 10064 | The requester sent a | | ||||
| | | COMPOUND or | | ||||
| | | CB_COMPOUND with a | | ||||
| | | SEQUENCE or | | ||||
| | | CB_SEQUENCE | | ||||
| | | operation that was | | ||||
| | | not the first | | ||||
| | | operation. | | ||||
| NFS4ERR_MLINK | 31 | Too many hard links. | | | NFS4ERR_MLINK | 31 | Too many hard links. | | |||
| NFS4ERR_MOVED | 10019 | The file system | | | NFS4ERR_MOVED | 10019 | The file system | | |||
| | | which contains the | | | | | which contains the | | |||
| | | current filehandle | | | | | current filehandle | | |||
| | | object is not | | | | | object is not | | |||
| | | present at the | | | | | present at the | | |||
| | | server. It may have | | | | | server. It may have | | |||
| | | been relocated, | | | | | been relocated, | | |||
| | | migrated to another | | | | | migrated to another | | |||
| | | server or may have | | | | | server or may have | | |||
skipping to change at page 313, line 35 | skipping to change at page 313, line 35 | |||
| | | Space". | | | | | Space". | | |||
| NFS4ERR_NAMETOOLONG | 63 | The filename in an | | | NFS4ERR_NAMETOOLONG | 63 | The filename in an | | |||
| | | operation was too | | | | | operation was too | | |||
| | | long. | | | | | long. | | |||
| NFS4ERR_NOENT | 2 | No such file or | | | NFS4ERR_NOENT | 2 | No such file or | | |||
| | | directory. The file | | | | | directory. The file | | |||
| | | or directory name | | | | | or directory name | | |||
| | | specified does not | | | | | specified does not | | |||
| | | exist. | | | | | exist. | | |||
| NFS4ERR_NOFILEHANDLE | 10020 | The logical current | | | NFS4ERR_NOFILEHANDLE | 10020 | The logical current | | |||
| | | filehandle value | | | | | or saved filehandle | | |||
| | | (or, in the case of | | | | | value is required by | | |||
| | | RESTOREFH, the saved | | | | | the current | | |||
| | | filehandle value) | | | | | operation ans is not | | |||
| | | has not been set | | | | | set. This may be a | | |||
| | | properly. This may | | | | | result of a | | |||
| | | be a result of a | | ||||
| | | malformed COMPOUND | | | | | malformed COMPOUND | | |||
| | | operation (i.e. no | | | | | operation (i.e. no | | |||
| | | PUTFH or PUTROOTFH | | | | | PUTFH or PUTROOTFH | | |||
| | | before an operation | | | | | before an operation | | |||
| | | that requires the | | | | | that requires the | | |||
| | | current filehandle | | | | | current filehandle | | |||
| | | be set). | | | | | be set). | | |||
| NFS4ERR_NO_GRACE | 10033 | A reclaim of client | | ||||
| | | state was attempted | | ||||
| | | in circumstances in | | ||||
| | | which the server | | ||||
| | | cannot guarantee | | ||||
| | | that conflicting | | ||||
| | | state has not been | | ||||
| | | provided to another | | ||||
| | | client. This can | | ||||
| | | occur because the | | ||||
| | | reclaim has been | | ||||
| | | done outside of the | | ||||
| | | grace period of the | | ||||
| | | server, after the | | ||||
| | | client has done a | | ||||
| | | RECLAIM_COMPLETE | | ||||
| | | operation, or | | ||||
| | | because previous | | ||||
| | | operations have | | ||||
| | | created a situation | | ||||
| | | in which the server | | ||||
| | | is not able to | | ||||
| | | determine that a | | ||||
| | | reclaim-interfering | | ||||
| | | edge condition does | | ||||
| | | not exist. | | ||||
| NFS4ERR_NOMATCHING_LAYOUT | 10060 | Client has no | | | NFS4ERR_NOMATCHING_LAYOUT | 10060 | Client has no | | |||
| | | matching layout to | | | | | matching layout to | | |||
| | | return. | | | | | return. | | |||
| NFS4ERR_NOSPC | 28 | No space left on | | | NFS4ERR_NOSPC | 28 | No space left on | | |||
| | | device. The | | | | | device. The | | |||
| | | operation would have | | | | | operation would have | | |||
| | | caused the server's | | | | | caused the server's | | |||
| | | file system to | | | | | file system to | | |||
| | | exceed its limit. | | | | | exceed its limit. | | |||
| NFS4ERR_NOTDIR | 20 | Not a directory. | | | NFS4ERR_NOTDIR | 20 | Not a directory. | | |||
| | | The caller specified | | | | | The caller specified | | |||
| | | a non-directory in a | | | | | a non-directory in a | | |||
| | | directory operation. | | | | | directory operation. | | |||
| NFS4ERR_NOTEMPTY | 66 | An attempt was made | | | NFS4ERR_NOTEMPTY | 66 | An attempt was made | | |||
| | | to remove a | | | | | to remove a | | |||
| | | directory that was | | | | | directory that was | | |||
| | | not empty. | | | | | not empty. | | |||
| NFS4ERR_NOTSUPP | 10004 | Operation is not | | | NFS4ERR_NOTSUPP | 10004 | Operation is not | | |||
| | | supported. | | | | | supported. | | |||
| NFS4ERR_NOT_ONLY_OP | 10081 | An operation was | | ||||
| | | performed, which | | ||||
| | | requires that it be | | ||||
| | | the only operation | | ||||
| | | when not part of a | | ||||
| | | session and it was | | ||||
| | | not the only | | ||||
| | | operation. | | ||||
| NFS4ERR_NOT_SAME | 10027 | This error is | | | NFS4ERR_NOT_SAME | 10027 | This error is | | |||
| | | returned by the | | | | | returned by the | | |||
| | | VERIFY operation to | | | | | VERIFY operation to | | |||
| | | signify that the | | | | | signify that the | | |||
| | | attributes compared | | | | | attributes compared | | |||
| | | were not the same as | | | | | were not the same as | | |||
| | | provided in the | | | | | provided in the | | |||
| | | client's request. | | | | | client's request. | | |||
| NFS4ERR_NO_GRACE | 10033 | A reclaim of client | | ||||
| | | state was attempted | | ||||
| | | in circumstances in | | ||||
| | | which the server | | ||||
| | | cannot guarantee | | ||||
| | | that conflicting | | ||||
| | | state has not been | | ||||
| | | provided to another | | ||||
| | | client. This can | | ||||
| | | occur because the | | ||||
| | | reclaim has been | | ||||
| | | done outside of the | | ||||
| | | grace period of the | | ||||
| | | server, after the | | ||||
| | | client has done a | | ||||
| | | RECLAIM_COMPLETE | | ||||
| | | operation, or | | ||||
| | | because previous | | ||||
| | | operations have | | ||||
| | | created a situation | | ||||
| | | in which the server | | ||||
| | | is not able to | | ||||
| | | determine that a | | ||||
| | | reclaim-interfering | | ||||
| | | edge condition does | | ||||
| | | not exist. | | ||||
| NFS4ERR_NXIO | 6 | I/O error. No such | | | NFS4ERR_NXIO | 6 | I/O error. No such | | |||
| | | device or address. | | | | | device or address. | | |||
| | | This error does not | | ||||
| | | apply to and should | | ||||
| | | never be generated | | ||||
| | | in NFSv4.1. | | ||||
| NFS4ERR_OLD_STATEID | 10024 | A stateid which | | | NFS4ERR_OLD_STATEID | 10024 | A stateid which | | |||
| | | designates the | | | | | designates the | | |||
| | | locking state for a | | | | | locking state for a | | |||
| | | lockowner-file at an | | | | | lockowner-file at an | | |||
| | | earlier time was | | | | | earlier time was | | |||
| | | used. This error | | | | | used. | | |||
| | | does not apply to | | ||||
| | | and should never be | | ||||
| | | generated in | | ||||
| | | NFSv4.1. | | ||||
| NFS4ERR_OPENMODE | 10038 | The client attempted | | | NFS4ERR_OPENMODE | 10038 | The client attempted | | |||
| | | a READ, WRITE, LOCK | | | | | a READ, WRITE, LOCK | | |||
| | | or SETATTR operation | | | | | or other operation | | |||
| | | not sanctioned by | | | | | not sanctioned by | | |||
| | | the stateid passed | | | | | the stateid passed | | |||
| | | (e.g. writing to a | | | | | (e.g. writing to a | | |||
| | | file opened only for | | | | | file opened only for | | |||
| | | read). | | | | | read). | | |||
| NFS4ERR_OP_ILLEGAL | 10044 | An illegal operation | | | NFS4ERR_OP_ILLEGAL | 10044 | An illegal operation | | |||
| | | value has been | | | | | value has been | | |||
| | | specified in the | | | | | specified in the | | |||
| | | argop field of a | | | | | argop field of a | | |||
| | | COMPOUND or | | | | | COMPOUND or | | |||
skipping to change at page 316, line 26 | skipping to change at page 316, line 41 | |||
| | | file of a data | | | | | file of a data | | |||
| | | server that is using | | | | | server that is using | | |||
| | | the STRIPE4_SPARSE | | | | | the STRIPE4_SPARSE | | |||
| | | stripe type. See | | | | | stripe type. See | | |||
| | | Section 13.5. | | | | | Section 13.5. | | |||
| NFS4ERR_PNFS_NO_LAYOUT | 10080 | The pNFS client has | | | NFS4ERR_PNFS_NO_LAYOUT | 10080 | The pNFS client has | | |||
| | | attempted to read | | | | | attempted to read | | |||
| | | from or write to a | | | | | from or write to a | | |||
| | | file without a valid | | | | | file without a valid | | |||
| | | layout. | | | | | layout. | | |||
| NFS4ERR_RECALLCONFLICT | 10061 | Layout is | | | NFS4ERR_RECALLCONFLICT | 10061 | A layout, delgation, | | |||
| | | or device map is | | ||||
| | | unavailable due to a | | | | | unavailable due to a | | |||
| | | conflicting | | | | | conflicting recall | | |||
| | | LAYOUTRECALL that is | | | | | operation that is in | | |||
| | | in progress. | | | | | progress. | | |||
| NFS4ERR_RECLAIM_BAD | 10034 | The reclaim provided | | | NFS4ERR_RECLAIM_BAD | 10034 | The reclaim provided | | |||
| | | by the client does | | | | | by the client does | | |||
| | | not match any of the | | | | | not match any of the | | |||
| | | server's state | | | | | server's state | | |||
| | | consistency checks | | | | | consistency checks | | |||
| | | and is bad. | | | | | and is bad. | | |||
| NFS4ERR_RECLAIM_CONFLICT | 10035 | The reclaim provided | | | NFS4ERR_RECLAIM_CONFLICT | 10035 | The reclaim provided | | |||
| | | by the client has | | | | | by the client has | | |||
| | | encountered a | | | | | encountered a | | |||
| | | conflict and can not | | | | | conflict and can not | | |||
skipping to change at page 317, line 24 | skipping to change at page 317, line 44 | |||
| | | exceeds the | | | | | exceeds the | | |||
| | | channel's negotiated | | | | | channel's negotiated | | |||
| | | maximum size for | | | | | maximum size for | | |||
| | | requests. | | | | | requests. | | |||
| NFS4ERR_RESTOREFH | 10030 | The RESTOREFH | | | NFS4ERR_RESTOREFH | 10030 | The RESTOREFH | | |||
| | | operation does not | | | | | operation does not | | |||
| | | have a saved | | | | | have a saved | | |||
| | | filehandle | | | | | filehandle | | |||
| | | (identified by | | | | | (identified by | | |||
| | | SAVEFH) to operate | | | | | SAVEFH) to operate | | |||
| | | upon. | | | | | upon. This error | | |||
| | | does not apply to | | ||||
| | | and should never be | | ||||
| | | generated in | | ||||
| | | NFSv4.1. | | ||||
| NFS4ERR_RETRY_UNCACHED_REP | 10068 | The requester has | | | NFS4ERR_RETRY_UNCACHED_REP | 10068 | The requester has | | |||
| | | attempted a retry of | | | | | attempted a retry of | | |||
| | | COMPOUND or | | | | | COMPOUND or | | |||
| | | CB_COMPOUND which it | | | | | CB_COMPOUND which it | | |||
| | | previously requested | | | | | previously requested | | |||
| | | not be placed in the | | | | | not be placed in the | | |||
| | | reply cache. | | | | | reply cache. | | |||
| NFS4ERR_ROFS | 30 | Read-only file | | | NFS4ERR_ROFS | 30 | Read-only file | | |||
| | | system. A modifying | | | | | system. A modifying | | |||
| | | operation was | | | | | operation was | | |||
skipping to change at page 318, line 4 | skipping to change at page 318, line 25 | |||
| | | read-only file | | | | | read-only file | | |||
| | | system. | | | | | system. | | |||
| NFS4ERR_SAME | 10009 | This error is | | | NFS4ERR_SAME | 10009 | This error is | | |||
| | | returned by the | | | | | returned by the | | |||
| | | NVERIFY operation to | | | | | NVERIFY operation to | | |||
| | | signify that the | | | | | signify that the | | |||
| | | attributes compared | | | | | attributes compared | | |||
| | | were the same as | | | | | were the same as | | |||
| | | provided in the | | | | | provided in the | | |||
| | | client's request. | | | | | client's request. | | |||
| NFS4ERR_SHARE_DENIED | 10015 | An attempt to OPEN a | | ||||
| | | file with a share | | ||||
| | | reservation has | | ||||
| | | failed because of a | | ||||
| | | share conflict. | | ||||
| NFS4ERR_SEQUENCE_POS | 10064 | The requester sent a | | ||||
| | | COMPOUND or | | ||||
| | | CB_COMPOUND with a | | ||||
| | | SEQUENCE or | | ||||
| | | CB_SEQUENCE | | ||||
| | | operation that was | | ||||
| | | not the first | | ||||
| | | operation. | | ||||
| NFS4ERR_SEQ_FALSE_RETRY | 10076 | The requester sent a | | ||||
| | | SEQUENCE or | | ||||
| | | CB_SEQUENCE | | ||||
| | | operation with slot | | ||||
| | | id and sequence id | | ||||
| | | that are in the | | ||||
| | | reply cache, but | | ||||
| | | replier detects that | | ||||
| | | the retry is not the | | ||||
| | | same as the original | | ||||
| | | request. | | ||||
| NFS4ERR_SEQ_MISORDERED | 10063 | The requester sent a | | ||||
| | | SEQUENCE or | | ||||
| | | CB_SEQUENCE | | ||||
| | | operation with an | | ||||
| | | invalid sequence id. | | ||||
| NFS4ERR_SERVERFAULT | 10006 | An error occurred on | | | NFS4ERR_SERVERFAULT | 10006 | An error occurred on | | |||
| | | the server which | | | | | the server which | | |||
| | | does not map to any | | | | | does not map to any | | |||
| | | of the legal NFS | | | | | of the legal NFS | | |||
| | | version 4 protocol | | | | | version 4 protocol | | |||
| | | error values. The | | | | | error values. The | | |||
| | | client should | | | | | client should | | |||
| | | translate this into | | | | | translate this into | | |||
| | | an appropriate | | | | | an appropriate | | |||
| | | error. UNIX clients | | | | | error. UNIX clients | | |||
| | | may choose to | | | | | may choose to | | |||
| | | translate this to | | | | | translate this to | | |||
| | | EIO. | | | | | EIO. | | |||
| NFS4ERR_SHARE_DENIED | 10015 | An attempt to OPEN a | | ||||
| | | file with a share | | ||||
| | | reservation has | | ||||
| | | failed because of a | | ||||
| | | share conflict. | | ||||
| NFS4ERR_STALE | 70 | Invalid filehandle. | | | NFS4ERR_STALE | 70 | Invalid filehandle. | | |||
| | | The filehandle given | | | | | The filehandle given | | |||
| | | in the arguments was | | | | | in the arguments was | | |||
| | | invalid. The file | | | | | invalid. The file | | |||
| | | referred to by that | | | | | referred to by that | | |||
| | | filehandle no longer | | | | | filehandle no longer | | |||
| | | exists or access to | | | | | exists or access to | | |||
| | | it has been revoked. | | | | | it has been revoked. | | |||
| NFS4ERR_STALE_CLIENTID | 10022 | A client ID not | | | NFS4ERR_STALE_CLIENTID | 10022 | A client ID not | | |||
| | | recognized by the | | | | | recognized by the | | |||
| | | server was used in a | | | | | server was passed to | | |||
| | | locking or | | | | | an operation. | | |||
| | | CREATE_SESSION | | ||||
| | | request. | | ||||
| NFS4ERR_STALE_STATEID | 10023 | A stateid generated | | | NFS4ERR_STALE_STATEID | 10023 | A stateid generated | | |||
| | | by an earlier server | | | | | by an earlier server | | |||
| | | instance was used. | | | | | instance was used. | | |||
| | | This error does not | | ||||
| | | apply to and should | | ||||
| | | never be generated | | ||||
| | | in NFSv4.1. | | ||||
| NFS4ERR_SYMLINK | 10029 | The current | | | NFS4ERR_SYMLINK | 10029 | The current | | |||
| | | filehandle provided | | | | | filehandle provided | | |||
| | | for a LOOKUP is not | | | | | for a LOOKUP is not | | |||
| | | a directory but a | | | | | a directory but a | | |||
| | | symbolic link. Also | | | | | symbolic link. Also | | |||
| | | used if the final | | | | | used if the final | | |||
| | | component of the | | | | | component of the | | |||
| | | OPEN path is a | | | | | OPEN path is a | | |||
| | | symbolic link. | | | | | symbolic link. | | |||
| NFS4ERR_TOOSMALL | 10005 | The encoded response | | | NFS4ERR_TOOSMALL | 10005 | The encoded response | | |||
skipping to change at page 319, line 18 | skipping to change at page 320, line 18 | |||
| | | initial request. | | | | | initial request. | | |||
| NFS4ERR_TOO_MANY_OPS | 10070 | The COMPOUND or | | | NFS4ERR_TOO_MANY_OPS | 10070 | The COMPOUND or | | |||
| | | CB_COMPOUND request | | | | | CB_COMPOUND request | | |||
| | | has too many | | | | | has too many | | |||
| | | operations. | | | | | operations. | | |||
| NFS4ERR_UNKNOWN_LAYOUTTYPE | 10062 | Layout type is | | | NFS4ERR_UNKNOWN_LAYOUTTYPE | 10062 | Layout type is | | |||
| | | unknown. | | | | | unknown. | | |||
| NFS4ERR_UNSAFE_COMPOUND | 10069 | The client has sent | | | NFS4ERR_UNSAFE_COMPOUND | 10069 | The client has sent | | |||
| | | a COMPOUND request | | | | | a COMPOUND request | | |||
| | | with an unsafe mix | | | | | with an unsafe mix | | |||
| | | of operations. | | | | | of operations, | | |||
| | | specifically with a | | ||||
| | | non-idempotent | | ||||
| | | operation changing | | ||||
| | | the current | | ||||
| | | filehandle which is | | ||||
| | | not followed by a | | ||||
| | | GETFH | | ||||
| NFS4ERR_WRONGSEC | 10016 | The security | | | NFS4ERR_WRONGSEC | 10016 | The security | | |||
| | | mechanism being used | | | | | mechanism being used | | |||
| | | by the client for | | | | | by the client for | | |||
| | | the operation does | | | | | the operation does | | |||
| | | not match the | | | | | not match the | | |||
| | | server's security | | | | | server's security | | |||
| | | policy. The client | | | | | policy. The client | | |||
| | | should change the | | | | | should change the | | |||
| | | security mechanism | | | | | security mechanism | | |||
| | | being used and retry | | | | | being used and retry | | |||
| | | the operation. | | | | | the operation. | | |||
| NFS4ERR_WRONG_CRED | 10082 | An operation | | ||||
| | | mannipulating state | | ||||
| | | was performed by a | | ||||
| | | principal that was | | ||||
| | | not allowed to | | ||||
| | | modify that piece of | | ||||
| | | state. | | ||||
| NFS4ERR_WRONG_TYPE | 10083 | An operation was | | ||||
| | | passed a file object | | ||||
| | | that was not of the | | ||||
| | | required type, and | | ||||
| | | that type was not | | ||||
| | | representable, for | | ||||
| | | the current | | ||||
| | | operation, by a more | | ||||
| | | specific error, such | | ||||
| | | as NFS4ERR_ISDIR or | | ||||
| | | NFS4ERR_SYMLINK. | | ||||
| NFS4ERR_XDEV | 18 | Attempt to do an | | | NFS4ERR_XDEV | 18 | Attempt to do an | | |||
| | | operation between | | | | | operation between | | |||
| | | different fsids. | | | | | different fsids. | | |||
+-----------------------------------+--------+----------------------+ | +-----------------------------------+--------+----------------------+ | |||
Table 11 | Table 11 | |||
15.2. Operations and their valid errors | 15.2. Operations and their valid errors | |||
Mappings of valid error returns for each protocol operation | Mappings of valid error returns for each protocol operation | |||
skipping to change at page 320, line 4 | skipping to change at page 321, line 25 | |||
| NFS4ERR_XDEV | 18 | Attempt to do an | | | NFS4ERR_XDEV | 18 | Attempt to do an | | |||
| | | operation between | | | | | operation between | | |||
| | | different fsids. | | | | | different fsids. | | |||
+-----------------------------------+--------+----------------------+ | +-----------------------------------+--------+----------------------+ | |||
Table 11 | Table 11 | |||
15.2. Operations and their valid errors | 15.2. Operations and their valid errors | |||
Mappings of valid error returns for each protocol operation | Mappings of valid error returns for each protocol operation | |||
+----------------------+--------------------------------------------+ | +----------------------+--------------------------------------------+ | |||
| Operation | Errors | | | Operation | Errors | | |||
+----------------------+--------------------------------------------+ | +----------------------+--------------------------------------------+ | |||
| ACCESS | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | ACCESS | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | |||
| | NFS4ERR_IO, NFS4ERR_MOVED, | | | | NFS4ERR_IO, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS | | |||
| BIND_CONN_TO_SESSION | NFS4ERR_BADSESSION, | | | BACKCHANNEL_CTL | NFS4ERR_BADXDR, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_INVAL, | | ||||
| | NFS4ERR_NOENT, NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS | | ||||
| BIND_CONN_TO_SESSION | NFS4ERR_BADSESSION, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_BAD_SESSION_DIGEST, | | | | NFS4ERR_BAD_SESSION_DIGEST, | | |||
| | NFS4ERR_CONN_BINDING_NOT_ENFORCED, | | | | NFS4ERR_CONN_BINDING_NOT_ENFORCED, | | |||
| | NFS4ERR_DEADSESSION | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| CLOSE | NFS4ERR_ADMIN_REVOKED, NFS4ERR_BADHANDLE, | | | | NFS4ERR_INVAL, NFS4ERR_NOT_ONLY_OP, | | |||
| | NFS4ERR_BAD_STATEID, NFS4ERR_BADXDR, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| CLOSE | NFS4ERR_ADMIN_REVOKED, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_BAD_STATEID, NFS4ERR_DEADSESSION, | | ||||
| | NFS4ERR_DELAY, NFS4ERR_EXPIRED, | | | | NFS4ERR_DELAY, NFS4ERR_EXPIRED, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_LOCKS_HELD, | | |||
| | NFS4ERR_ISDIR, NFS4ERR_LEASE_MOVED, | | | | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_LOCKS_HELD, NFS4ERR_MOVED, | | | | NFS4ERR_OLD_STATEID, | | |||
| | NFS4ERR_NOFILEHANDLE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_WRONG_CRED | | |||
| COMMIT | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | COMMIT | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_ISDIR, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_IO, | | |||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_ISDIR, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_SYMLINK, | | |||
| | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_TYPE | | ||||
| CREATE | NFS4ERR_ACCESS, NFS4ERR_ATTRNOTSUPP, | | | CREATE | NFS4ERR_ACCESS, NFS4ERR_ATTRNOTSUPP, | | |||
| | NFS4ERR_BADCHAR, NFS4ERR_BADHANDLE, | | | | NFS4ERR_BADCHAR, NFS4ERR_BADNAME, | | |||
| | NFS4ERR_BADNAME, NFS4ERR_BADOWNER, | | | | NFS4ERR_BADOWNER, NFS4ERR_BADTYPE, | | |||
| | NFS4ERR_BADTYPE, NFS4ERR_BADXDR, | | | | NFS4ERR_BADXDR, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_DQUOT, | | | | NFS4ERR_DELAY, NFS4ERR_DQUOT, | | |||
| | NFS4ERR_EXIST, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_EXIST, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | | | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MLINK, | | |||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_MOVED, NFS4ERR_NAMETOOLONG, | | |||
| | NFS4ERR_NOSPC, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, NFS4ERR_PERM, | | | | NFS4ERR_NOTDIR, NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_PERM, NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| EXCHANGE_ID | NFS4ERR_BADXDR, NFS4ERR_CLID_INUSE, | | | | NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_ENCR_ALG_UNSUPP, | | | | NFS4ERR_UNSAFE_COMPOUND | | |||
| EXCHANGE_ID | NFS4ERR_BADCHAR, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_CLID_INUSE, NFS4ERR_DEADSESSION, | | ||||
| | NFS4ERR_DELAY, NFS4ERR_ENCR_ALG_UNSUPP, | | ||||
| | NFS4ERR_HASH_ALG_UNSUPP, NFS4ERR_INVAL, | | | | NFS4ERR_HASH_ALG_UNSUPP, NFS4ERR_INVAL, | | |||
| | NFS4ERR_SERVERFAULT | | | | NFS4ERR_NOENT, NFS4ERR_NOT_SAME, | | |||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_CRED | | ||||
| CREATE_SESSION | NFS4ERR_BADXDR, NFS4ERR_CLID_INUSE, | | | CREATE_SESSION | NFS4ERR_BADXDR, NFS4ERR_CLID_INUSE, | | |||
| | NFS4ERR_DELAY, NFS4ERR_SERVERFAULT, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_STALE_CLIENTID | | | | NFS4ERR_INVAL, NFS4ERR_NOENT, | | |||
| DELEGPURGE | NFS4ERR_BADXDR, NFS4ERR_NOTSUPP, | | | | NFS4ERR_NOSPC, NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_LEASE_MOVED, NFS4ERR_MOVED, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_SEQ_MISORDERED, | | ||||
| | NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_STALE_CLIENTID, NFS4ERR_TOOSMALL, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| DELEGPURGE | NFS4ERR_BADXDR, NFS4ERR_DEADSESSION, | | ||||
| | NFS4ERR_DELAY, NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_CRED | | |||
| | NFS4ERR_STALE_CLIENTID | | | DELEGRETURN | NFS4ERR_ADMIN_REVOKED, NFS4ERR_BADXDR, | | |||
| DELEGRETURN | NFS4ERR_ADMIN_REVOKED, | | | | NFS4ERR_BAD_STATEID, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_BAD_STATEID, NFS4ERR_BADXDR, | | | | NFS4ERR_DELAY, NFS4ERR_DELEG_REVOKED, | | |||
| | NFS4ERR_EXPIRED, NFS4ERR_INVAL, | | | | NFS4ERR_EXPIRED, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_LEASE_MOVED, NFS4ERR_MOVED, | | | | NFS4ERR_INVAL, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTSUPP, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTSUPP, | | |||
| | NFS4ERR_OLD_STATEID, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_WRONG_CRED | | |||
| DESTROY_CLIENTID | NFS4ERR_CLIENTID_BUSY, | | | DESTROY_CLIENTID | NFS4ERR_BADXDR, NFS4ERR_CLIENTID_BUSY, | | |||
| | NFS4ERR_STALE_CLIENTID | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_NOT_ONLY_OP, NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_STALE_CLIENTID, | | ||||
| | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_CRED | | ||||
| DESTROY_SESSION | NFS4ERR_BACK_CHAN_BUSY, | | | DESTROY_SESSION | NFS4ERR_BACK_CHAN_BUSY, | | |||
| | NFS4ERR_BADSESSION, NFS4ERR_DEADSESSION, | | | | NFS4ERR_BADSESSION, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_STALE_CLIENTID | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| GET_DIR_DELEGATION | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | | NFS4ERR_NOT_ONLY_OP, NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_INVAL, NFS4ERR_MOVED, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_STALE_CLIENTID, | | ||||
| | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_CRED | | ||||
| FREE_STATEID | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID, | | ||||
| | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_LOCKS_HELD, NFS4ERR_OLD_STATEID, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_CRED | | ||||
| GET_DIR_DELEGATION | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_DIRDELEG_UNAVAIL, | | ||||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | ||||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | ||||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | |||
| | NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS | | |||
| | NFS4ERR_WRONGSEC, NFS4ERR_EIO, | | | GETATTR | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_NOTSUPP | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| GETATTR | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | ||||
| | NFS4ERR_IO, NFS4ERR_MOVED, | | ||||
| | NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| GETDEVICEINFO | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | | | NFS4ERR_WRONG_TYPE | | |||
| | NFS4ERR_TOOSMALL, | | | GETDEVICEINFO | NFS4ERR_BADXDR, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE | | | | NFS4ERR_DELAY, NFS4ERR_INVAL, | | |||
| GETDEVICELIST | NFS4ERR_BAD_COOKIE, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_NOENT, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_INVAL, NFS4ERR_TOOSMALL, | | | | NFS4ERR_NOTSUPP, | | |||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE | | ||||
| GETFH | NFS4ERR_BADHANDLE, NFS4ERR_FHEXPIRED, | | ||||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_RECALLCONFLICT, | | |||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_TOOSMALL, NFS4ERR_TOO_MANY_OPS, | | |||
| ILLEGAL | NFS4ERR_OP_ILLEGAL | | | | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | |||
| LAYOUTCOMMIT | NFS4ERR_BADLAYOUT, NFS4ERR_BADIOMODE, | | | | NFS4ERR_UNSAFE_COMPOUND | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | | GETDEVICELIST | NFS4ERR_BADXDR, NFS4ERR_BAD_COOKIE, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NO_GRACE, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_RECLAIM_BAD, NFS4ERR_STALE, | | | | NFS4ERR_INVAL, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_STALE_CLIENTID, | | | | NFS4ERR_NOTSUPP, | | |||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| LAYOUTGET | NFS4ERR_BADLAYOUT, NFS4ERR_BADIOMODE, | | | | NFS4ERR_RECALLCONFLICT, | | |||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOOSMALL, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | ||||
| | NFS4ERR_UNSAFE_COMPOUND | | ||||
| GETFH | NFS4ERR_FHEXPIRED, NFS4ERR_MOVED, | | ||||
| | NFS4ERR_NOFILEHANDLE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, NFS4ERR_STALE | | ||||
| ILLEGAL | NFS4ERR_BADXDR NFS4ERR_OP_ILLEGAL | | ||||
| LAYOUTCOMMIT | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | ||||
| | NFS4ERR_ATTRNOTSUPP, NFS4ERR_BADIOMODE, | | ||||
| | NFS4ERR_BADLAYOUT, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_EXPIRED, NFS4ERR_FBIG, | | ||||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_INVAL, NFS4ERR_LAYOUTUNAVAILABLE, | | | | NFS4ERR_IO, NFS4ERR_ISDIR NFS4ERR_MOVED, | | |||
| | NFS4ERR_LAYOUTTRYLATER, NFS4ERR_LOCKED, | | ||||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTSUPP, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTSUPP, | | |||
| | NFS4ERR_RECALLCONFLICT, NFS4ERR_STALE, | | | | NFS4ERR_NO_GRACE, | | |||
| | NFS4ERR_STALE_CLIENTID, NFS4ERR_TOOSMALL, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE | | | | NFS4ERR_RECLAIM_BAD, | | |||
| LAYOUTRETURN | NFS4ERR_BADLAYOUT, NFS4ERR_BADIOMODE, | | | | NFS4ERR_RECLAIM_CONFLICT, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NO_GRACE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_STALE, NFS4ERR_STALE_CLIENTID, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE | | | | NFS4ERR_STALE, NFS4ERR_SYMLINK, | | |||
| | NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | ||||
| | NFS4ERR_WRONG_CRED | | ||||
| LAYOUTGET | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | ||||
| | NFS4ERR_BADIOMODE, NFS4ERR_BADLAYOUT, | | ||||
| | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID, | | ||||
| | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_DELEG_REVOKED, NFS4ERR_DQUOT, | | ||||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | ||||
| | NFS4ERR_INVAL, NFS4ERR_IO, | | ||||
| | NFS4ERR_LAYOUTTRYLATER, | | ||||
| | NFS4ERR_LAYOUTUNAVAILABLE, NFS4ERR_LOCKED, | | ||||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | ||||
| | NFS4ERR_NOSPC, NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OLD_STATEID, NFS4ERR_OPENMODE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_RECALLCONFLICT, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_STALE, NFS4ERR_TOOSMALL, | | ||||
| | NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | ||||
| | NFS4ERR_WRONG_TYPE | | ||||
| LAYOUTRETURN | NFS4ERR_ADMIN_REVOKED, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_BAD_STATEID, NFS4ERR_DEADSESSION, | | ||||
| | NFS4ERR_DELAY, NFS4ERR_DELEG_REVOKED, | | ||||
| | NFS4ERR_EXPIRED, NFS4ERR_FHEXPIRED, | | ||||
| | NFS4ERR_GRACE, NFS4ERR_INVAL, | | ||||
| | NFS4ERR_ISDIR, NFS4ERR_MOVED, | | ||||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_NO_GRACE, NFS4ERR_OLD_STATEID, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | ||||
| | NFS4ERR_WRONG_CRED, NFS4ERR_WRONG_TYPE | | ||||
| LINK | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | | LINK | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADNAME, | | | | NFS4ERR_BADNAME, NFS4ERR_BADTYPE, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_BADXDR, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DQUOT, NFS4ERR_EXIST, | | | | NFS4ERR_DELAY, NFS4ERR_DQUOT, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_FILE_OPEN, | | | | NFS4ERR_EXIST, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_ISDIR, | | | | NFS4ERR_FILE_OPEN, NFS4ERR_GRACE, | | |||
| | NFS4ERR_INVAL, NFS4ERR_ISDIR, NFS4ERR_IO, | | ||||
| | NFS4ERR_MLINK, NFS4ERR_MOVED, | | | | NFS4ERR_MLINK, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | | | NFS4ERR_NAMETOOLONG, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | | | NFS4ERR_NOSPC, NFS4ERR_NOTDIR, | | |||
| | NFS4ERR_NOTDIR, NFS4ERR_NOTSUPP, | | | | NFS4ERR_NOTSUPP, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_WRONGSEC, NFS4ERR_XDEV | | | | NFS4ERR_SYMLINK, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_XDEV | | ||||
| LOCK | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | | LOCK | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BAD_RANGE, | | | | NFS4ERR_BADXDR, NFS4ERR_BAD_RANGE, | | |||
| | NFS4ERR_BAD_STATEID, NFS4ERR_BADXDR, | | | | NFS4ERR_BAD_STATEID, NFS4ERR_DEADLOCK, | | |||
| | NFS4ERR_DEADLOCK, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_DENIED, NFS4ERR_EXPIRED, | | | | NFS4ERR_DENIED, NFS4ERR_EXPIRED, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_INVAL, NFS4ERR_ISDIR, | | | | NFS4ERR_INVAL, NFS4ERR_ISDIR, | | |||
| | NFS4ERR_LEASE_MOVED, NFS4ERR_LOCK_NOTSUPP, | | | | NFS4ERR_LOCK_NOTSUPP, NFS4ERR_LOCK_RANGE, | | |||
| | NFS4ERR_LOCK_RANGE, NFS4ERR_MOVED, | | | | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NO_GRACE, | | | | NFS4ERR_NO_GRACE, NFS4ERR_OLD_STATEID, | | |||
| | NFS4ERR_OPENMODE, | | | | NFS4ERR_OPENMODE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_RECLAIM_BAD, | | | | NFS4ERR_RECLAIM_BAD, | | |||
| | NFS4ERR_RECLAIM_CONFLICT, | | | | NFS4ERR_RECLAIM_CONFLICT, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_STALE_CLIENTID, | | | | NFS4ERR_SYMLINK, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_WRONG_CRED, NFS4ERR_WRONG_TYPE | | |||
| LOCKT | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | LOCKT | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BAD_RANGE, NFS4ERR_BADXDR, | | | | NFS4ERR_BAD_RANGE, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_DENIED, | | | | NFS4ERR_DELAY, NFS4ERR_DENIED, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_INVAL, NFS4ERR_ISDIR, | | | | NFS4ERR_INVAL, NFS4ERR_ISDIR, | | |||
| | NFS4ERR_LEASE_MOVED, NFS4ERR_LOCK_RANGE, | | | | NFS4ERR_LOCK_RANGE, NFS4ERR_MOVED, | | |||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_SYMLINK, | | |||
| | NFS4ERR_STALE_CLIENTID | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_CRED, | | |||
| | NFS4ERR_WRONG_TYPE | | ||||
| LOCKU | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | | LOCKU | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BAD_RANGE, | | | | NFS4ERR_BADXDR, NFS4ERR_BAD_RANGE, | | |||
| | NFS4ERR_BAD_STATEID, NFS4ERR_BADXDR, | | | | NFS4ERR_BAD_STATEID, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_EXPIRED, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DELAY, NFS4ERR_EXPIRED, | | |||
| | NFS4ERR_GRACE, NFS4ERR_INVAL, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | |||
| | NFS4ERR_ISDIR, NFS4ERR_LEASE_MOVED, | | ||||
| | NFS4ERR_LOCK_RANGE, NFS4ERR_MOVED, | | | | NFS4ERR_LOCK_RANGE, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_OLD_STATEID, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_WRONG_CRED | | |||
| LOOKUP | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | | LOOKUP | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADNAME, | | | | NFS4ERR_BADNAME, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | |||
| | NFS4ERR_IO, NFS4ERR_MOVED, | | ||||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | | | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_SYMLINK, | | |||
| | NFS4ERR_SYMLINK, NFS4ERR_WRONGSEC | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONGSEC | | |||
| LOOKUPP | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | LOOKUPP | NFS4ERR_ACCESS, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_IO, | | | | NFS4ERR_DELAY, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_MOVED, NFS4ERR_NOENT, | | | | NFS4ERR_IO, NFS4ERR_MOVED, NFS4ERR_NOENT, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_SYMLINK, | | |||
| | NFS4ERR_WRONGSEC | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONGSEC | | |||
| NVERIFY | NFS4ERR_ACCESS, NFS4ERR_ATTRNOTSUPP, | | | NVERIFY | NFS4ERR_ACCESS, NFS4ERR_ATTRNOTSUPP, | | |||
| | NFS4ERR_BADCHAR, NFS4ERR_BADHANDLE, | | | | NFS4ERR_BADCHAR, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_IO, NFS4ERR_MOVED, | | | | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_SAME, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SAME, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | ||||
| | NFS4ERR_WRONG_TYPE | | ||||
| OPEN | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | | OPEN | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | |||
| | NFS4ERR_ATTRNOTSUPP, NFS4ERR_BADCHAR, | | | | NFS4ERR_ATTRNOTSUPP, NFS4ERR_BADCHAR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADNAME, | | | | NFS4ERR_BADNAME, NFS4ERR_BADOWNER, | | |||
| | NFS4ERR_BADOWNER, NFS4ERR_BADXDR, | | | | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID, | | |||
| | NFS4ERR_DELAY, NFS4ERR_DQUOT, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_DELEG_ALREADY_WANTED, | | ||||
| | NFS4ERR_DELEG_REVOKED, NFS4ERR_DQUOT, | | ||||
| | NFS4ERR_EXIST, NFS4ERR_EXPIRED, | | | | NFS4ERR_EXIST, NFS4ERR_EXPIRED, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | | | NFS4ERR_FBIG, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_IO, NFS4ERR_INVAL, NFS4ERR_ISDIR, | | | | NFS4ERR_GRACE, NFS4ERR_INVAL, | | |||
| | NFS4ERR_LEASE_MOVED, NFS4ERR_MOVED, | | | | NFS4ERR_ISDIR, NFS4ERR_IO, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | | | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | |||
| | NFS4ERR_NOTDIR, NFS4ERR_NO_GRACE, | | | | NFS4ERR_NOTDIR, NFS4ERR_NO_GRACE, | | |||
| | NFS4ERR_PERM, NFS4ERR_RECLAIM_BAD, | | | | NFS4ERR_OLD_STATEID, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, NFS4ERR_PERM, | | ||||
| | NFS4ERR_RECLAIM_BAD, | | ||||
| | NFS4ERR_RECLAIM_CONFLICT, | | | | NFS4ERR_RECLAIM_CONFLICT, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_SHARE_DENIED, | | | | NFS4ERR_SERVERFAULT, NFS4ERR_SHARE_DENIED, | | |||
| | NFS4ERR_STALE, NFS4ERR_STALE_CLIENTID, | | | | NFS4ERR_STALE, NFS4ERR_SYMLINK, | | |||
| | NFS4ERR_SYMLINK, NFS4ERR_WRONGSEC | | | | NFS4ERR_TOO_MANY_OPS, | | |||
| OPEN_DOWNGRADE | NFS4ERR_ADMIN_REVOKED, NFS4ERR_BADHANDLE, | | | | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_WRONGSEC, | | |||
| | NFS4ERR_BAD_STATEID, NFS4ERR_BADXDR, | | | | NFS4ERR_WRONG_TYPE | | |||
| | NFS4ERR_EXPIRED, NFS4ERR_FHEXPIRED, | | | OPEN_CONFIRM | NFS4ERR_NOTSUPP | | |||
| | NFS4ERR_INVAL, NFS4ERR_MOVED, | | | OPEN_DOWNGRADE | NFS4ERR_ADMIN_REVOKED, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_BAD_STATEID, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_EXPIRED, | | ||||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | ||||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | ||||
| | NFS4ERR_OLD_STATEID, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_CRED | | |||
| OPENATTR | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | OPENATTR | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_DQUOT, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DQUOT, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_IO, NFS4ERR_MOVED, NFS4ERR_NOENT, | | | | NFS4ERR_IO, NFS4ERR_MOVED, NFS4ERR_NOENT, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | |||
| | NFS4ERR_NOTSUPP, | | | | NFS4ERR_NOTSUPP, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_UNSAFE_COMPOUND, | | ||||
| | NFS4ERR_WRONG_TYPE | | ||||
| PUTFH | NFS4ERR_BADHANDLE, NFS4ERR_BADXDR, | | | PUTFH | NFS4ERR_BADHANDLE, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_MOVED, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_MOVED, NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_WRONGSEC | | | | NFS4ERR_WRONGSEC | | |||
| PUTPUBFH | NFS4ERR_OP_NOT_IN_SESSION, | | | PUTPUBFH | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_WRONGSEC | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONGSEC | | |||
| PUTROOTFH | NFS4ERR_OP_NOT_IN_SESSION, | | | PUTROOTFH | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_WRONGSEC | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONGSEC | | |||
| READ | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | | READ | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BAD_STATEID, | | | | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_EXPIRED, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DELEG_REVOKED, NFS4ERR_EXPIRED, | | |||
| | NFS4ERR_GRACE, NFS4ERR_IO, NFS4ERR_INVAL, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_ISDIR, NFS4ERR_LEASE_MOVED, | | | | NFS4ERR_INVAL, NFS4ERR_ISDIR, NFS4ERR_IO, | | |||
| | NFS4ERR_LOCKED, NFS4ERR_MOVED, | | | | NFS4ERR_LOCKED, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NXIO, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_OLD_STATEID, | | |||
| | NFS4ERR_OPENMODE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_OPENMODE, NFS4ERR_PNFS_IO_HOLE, | | | | NFS4ERR_PNFS_IO_HOLE, | | |||
| | NFS4ERR_PNFS_NO_LAYOUT, | | | | NFS4ERR_PNFS_NO_LAYOUT, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_SYMLINK, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_TYPE | | |||
| READDIR | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | READDIR | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BAD_COOKIE, NFS4ERR_BADXDR, | | | | NFS4ERR_BAD_COOKIE, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DELAY, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | | | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | |||
| | NFS4ERR_NOT_SAME, | | | | NFS4ERR_NOT_SAME, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_STALE, NFS4ERR_TOOSMALL, | | |||
| | NFS4ERR_TOOSMALL | | | | NFS4ERR_TOO_MANY_OPS | | |||
| READLINK | NFS4ERR_ACCESS, NFS4ERR_BADHANDLE, | | | READLINK | NFS4ERR_ACCESS, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DELAY, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_ISDIR, | | | | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_ISDIR, | | |||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| RECLAIM_COMPLETE | NFS4ERR_COMPLETE_ALREADY | | | | NFS4ERR_WRONG_TYPE | | |||
| RELEASE_LOCKOWNER | NFS4ERR_ADMIN_REVOKED, NFS4ERR_BADXDR, | | | RECLAIM_COMPLETE | NFS4ERR_BADXDR, NFS4ERR_COMPLETE_ALREADY, | | |||
| | NFS4ERR_EXPIRED, NFS4ERR_LEASE_MOVED, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_LOCKS_HELD, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | |||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_STALE_CLIENTID | | | | NFS4ERR_WRONG_CRED, NFS4ERR_WRONG_TYPE | | |||
| RELEASE_LOCKOWNER | NFS4ERR_NOTSUPP | | ||||
| REMOVE | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | | REMOVE | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADNAME, | | | | NFS4ERR_BADNAME, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_FILE_OPEN, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_FILE_OPEN, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | | | NFS4ERR_GRACE, NFS4ERR_INVAL, NFS4ERR_IO, | | |||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | | | NFS4ERR_MOVED, NFS4ERR_NAMETOOLONG, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOENT, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_NOTEMPTY, | | | | NFS4ERR_NOTDIR, NFS4ERR_NOTEMPTY, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| RENAME | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | | RENAME | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADNAME, | | | | NFS4ERR_BADNAME, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_DQUOT, NFS4ERR_EXIST, | | | | NFS4ERR_DQUOT, NFS4ERR_EXIST, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_FILE_OPEN, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_FILE_OPEN, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | | | NFS4ERR_GRACE, NFS4ERR_INVAL, NFS4ERR_IO, | | |||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | | | NFS4ERR_MOVED, NFS4ERR_NAMETOOLONG, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | | | NFS4ERR_NOENT, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_NOTDIR, NFS4ERR_NOTEMPTY, | | | | NFS4ERR_NOSPC, NFS4ERR_NOTDIR, | | |||
| | NFS4ERR_NOTEMPTY, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_WRONGSEC, NFS4ERR_XDEV | | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_XDEV | | |||
| RESTOREFH | NFS4ERR_BADHANDLE, NFS4ERR_FHEXPIRED, | | | RESTOREFH | NFS4ERR_DEADSESSION, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_MOVED, NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_RESTOREFH, NFS4ERR_SERVERFAULT, | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_STALE, NFS4ERR_WRONGSEC | | | | NFS4ERR_WRONGSEC | | |||
| SAVEFH | NFS4ERR_BADHANDLE, NFS4ERR_FHEXPIRED, | | | SAVEFH | NFS4ERR_DEADSESSION, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS | | |||
| SECINFO | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | | SECINFO | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADNAME, | | | | NFS4ERR_BADNAME, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_INVAL, NFS4ERR_MOVED, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | |||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | | | NFS4ERR_MOVED, NFS4ERR_NAMETOOLONG, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOENT, NFS4ERR_NOFILEHANDLE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_NOTDIR, NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS | | |||
| SECINFO_NO_NAME | NFS4ERR_ACCESS, NFS4ERR_BADCHAR, | | | SECINFO_NO_NAME | NFS4ERR_ACCESS, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADNAME, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | |||
| | NFS4ERR_INVAL, NFS4ERR_MOVED, | | | | NFS4ERR_MOVED, NFS4ERR_NOENT, | | |||
| | NFS4ERR_NAMETOOLONG, NFS4ERR_NOENT, | | ||||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTDIR, | | |||
| | NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS | | |||
| SEQUENCE | NFS4ERR_BADSESSION, NFS4ERR_BADSLOT, | | | SEQUENCE | NFS4ERR_BADSESSION, NFS4ERR_BADSLOT, | | |||
| | NFS4ERR_BAD_HIGH_SLOT, | | | | NFS4ERR_BADXDR, NFS4ERR_BAD_HIGH_SLOT, | | |||
| | NFS4ERR_CONN_NOT_BOUND_TO_SESSION, | | | | NFS4ERR_CONN_NOT_BOUND_TO_SESSION, | | |||
| | NFS4ERR_DEADSESSION, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_RETRY_UNCACHED_REP, | | ||||
| | NFS4ERR_SEQUENCE_POS, | | ||||
| | NFS4ERR_SEQ_FALSE_RETRY, | | | | NFS4ERR_SEQ_FALSE_RETRY, | | |||
| | NFS4ERR_SEQ_MISORDERED, | | | | NFS4ERR_SEQ_MISORDERED, | | |||
| | NFS4ERR_SEQUENCE_POS, NFS4ERR_REQ_TOO_BIG, | | | | NFS4ERR_TOO_MANY_OPS | | |||
| | NFS4ERR_TOO_MANY_OPS, NFS4ERR_REP_TOO_BIG, | | | SET_SSV | NFS4ERR_BADXDR, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE | | | | NFS4ERR_BAD_SESSION_DIGEST, | | |||
| SET_SSV | NFS4ERR_BAD_SESSION_DIGEST, | | | | NFS4ERR_CONN_BINDING_NOT_ENFORCED, | | |||
| | NFS4ERR_CONN_BINDING_NOT_ENFORCED | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS | | ||||
| SETATTR | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | | SETATTR | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | |||
| | NFS4ERR_ATTRNOTSUPP, NFS4ERR_BADCHAR, | | | | NFS4ERR_ATTRNOTSUPP, NFS4ERR_BADCHAR, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BADOWNER, | | | | NFS4ERR_BADOWNER, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BAD_STATEID, NFS4ERR_BADXDR, | | | | NFS4ERR_BAD_STATEID, NFS4ERR_DEADSESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_DQUOT, | | | | NFS4ERR_DELAY, NFS4ERR_DELEG_REVOKED, | | |||
| | NFS4ERR_EXPIRED, NFS4ERR_FBIG, | | | | NFS4ERR_DQUOT, NFS4ERR_EXPIRED, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | | | NFS4ERR_FBIG, NFS4ERR_FHEXPIRED, | | |||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_ISDIR, | | | | NFS4ERR_GRACE, NFS4ERR_INVAL, NFS4ERR_IO, | | |||
| | NFS4ERR_LOCKED, NFS4ERR_MOVED, | | | | NFS4ERR_LOCKED, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | |||
| | NFS4ERR_OPENMODE, NFS4ERR_PERM, | | | | NFS4ERR_OLD_STATEID, NFS4ERR_OPENMODE, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, NFS4ERR_PERM, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | ||||
| | NFS4ERR_WRONG_TYPE | | ||||
| SETCLIENTID | NFS4ERR_NOTSUPP | | ||||
| SETCLIENTID_CONFIRM | NFS4ERR_NOTSUPP | | ||||
| TEST_STATEID | NFS4ERR_BADXDR, NFS4ERR_DEADSESSION, | | ||||
| | NFS4ERR_DELAY, NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| VERIFY | NFS4ERR_ACCESS, NFS4ERR_ATTRNOTSUPP, | | | VERIFY | NFS4ERR_ACCESS, NFS4ERR_ATTRNOTSUPP, | | |||
| | NFS4ERR_BADCHAR, NFS4ERR_BADHANDLE, | | | | NFS4ERR_BADCHAR, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_FHEXPIRED, NFS4ERR_INVAL, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE, | | | | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOT_SAME, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOT_SAME, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE | | | | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | |||
| WANT_DELEGATION | | | | | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | |||
| | NFS4ERR_WRONG_TYPE | | ||||
| WANT_DELEGATION | NFS4ERR_BADXDR, NFS4ERR_DEADSESSION, | | ||||
| | NFS4ERR_DELAY, | | ||||
| | NFS4ERR_DELEG_ALREADY_WANTED, | | ||||
| | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | ||||
| | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_MOVED, | | ||||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_NO_GRACE, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_RECALLCONFLICT, | | ||||
| | NFS4ERR_RECLAIM_BAD, | | ||||
| | NFS4ERR_RECLAIM_CONFLICT, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_STALE, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_WRONG_TYPE | | ||||
| WRITE | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | | WRITE | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED, | | |||
| | NFS4ERR_BADHANDLE, NFS4ERR_BAD_STATEID, | | | | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID, | | |||
| | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | | | NFS4ERR_DEADSESSION, NFS4ERR_DELAY, | | |||
| | NFS4ERR_DQUOT, NFS4ERR_EXPIRED, | | | | NFS4ERR_DELEG_REVOKED, NFS4ERR_DQUOT, | | |||
| | NFS4ERR_FBIG, NFS4ERR_FHEXPIRED, | | | | NFS4ERR_EXPIRED, NFS4ERR_FBIG, | | |||
| | NFS4ERR_GRACE, NFS4ERR_INVAL, NFS4ERR_IO, | | | | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE, | | |||
| | NFS4ERR_ISDIR, NFS4ERR_LEASE_MOVED, | | | | NFS4ERR_INVAL, NFS4ERR_IO, NFS4ERR_ISDIR, | | |||
| | NFS4ERR_LOCKED, NFS4ERR_MOVED, | | | | NFS4ERR_LOCKED, NFS4ERR_MOVED, | | |||
| | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | | | NFS4ERR_NOFILEHANDLE, NFS4ERR_NOSPC, | | |||
| | NFS4ERR_NXIO, NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OLD_STATEID, NFS4ERR_OPENMODE, | | |||
| | NFS4ERR_OPENMODE, NFS4ERR_PNFS_IO_HOLE, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_PNFS_IO_HOLE, | | ||||
| | NFS4ERR_PNFS_NO_LAYOUT, | | | | NFS4ERR_PNFS_NO_LAYOUT, | | |||
| | NFS4ERR_REQ_TOO_BIG, NFS4ERR_TOO_MANY_OPS, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, NFS4ERR_ROFS, | | | | NFS4ERR_REQ_TOO_BIG, NFS4ERR_ROFS, | | |||
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | |||
| | NFS4ERR_STALE_STATEID | | | | NFS4ERR_SYMLINK, NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_WRONG_TYPE | | ||||
+----------------------+--------------------------------------------+ | +----------------------+--------------------------------------------+ | |||
Table 12 | Table 12 | |||
15.3. Callback operations and their valid errors | 15.3. Callback operations and their valid errors | |||
Mappings of valid error returns for each protocol callback operation | Mappings of valid error returns for each protocol callback operation | |||
+-------------------------+-----------------------------------------+ | +-------------------------+-----------------------------------------+ | |||
| Callback Operation | Errors | | | Callback Operation | Errors | | |||
+-------------------------+-----------------------------------------+ | +-------------------------+-----------------------------------------+ | |||
| CB_GETATTR | NFS4ERR_BADHANDLE NFS4ERR_BADXDR | | | CB_GETATTR | NFS4ERR_BADHANDLE, NFS4ERR_BADXDR, | | |||
| | NFS4ERR_DELAY, NFS4ERR_INVAL, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | | | NFS4ERR_OP_NOT_IN_SESSION, | | |||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | | | NFS4ERR_REQ_TOO_BIG, | | |||
| | NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_TOO_MANY_OPS, | | |||
| CB_ILLEGAL | NFS4ERR_BADXDR, NFS4ERR_OP_ILLEGAL | | ||||
| CB_LAYOUTRECALL | NFS4ERR_BADHANDLE, NFS4ERR_BADIOMODE, | | ||||
| | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID, | | ||||
| | NFS4ERR_DELAY, NFS4ERR_INVAL, | | ||||
| | NFS4ERR_NOMATCHING_LAYOUT, | | ||||
| | NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_UNSAFE_COMPOUND, | | ||||
| | NFS4ERR_SERVERFAULT | | ||||
| CB_ILLEGAL | NFS4ERR_OP_ILLEGAL | | ||||
| CB_LAYOUTRECALL | NFS4ERR_NOMATCHING_LAYOUT | | ||||
| CB_NOTIFY | NFS4ERR_BAD_STATEID NFS4ERR_INVAL | | ||||
| | NFS4ERR_BADXDR NFS4ERR_SERVERFAULT | | ||||
| CB_PUSH_DELEG | | | ||||
| CB_RECALL | NFS4ERR_BADHANDLE NFS4ERR_BAD_STATEID | | ||||
| | NFS4ERR_BADXDR | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | | | NFS4ERR_REQ_TOO_BIG, | | |||
| | NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_UNKNOWN_LAYOUTTYPE, | | ||||
| | NFS4ERR_WRONG_TYPE | | ||||
| CB_NOTIFY | NFS4ERR_BADHANDLE, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_BAD_STATEID, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_INVAL, NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| CB_NOTIFY_LOCK | NFS4ERR_BADHANDLE, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_BAD_STATEID, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_SERVERFAULT | | ||||
| CB_RECALL_ANY | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | | | NFS4ERR_REQ_TOO_BIG, | | |||
| | NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| CB_PUSH_DELEG | NFS4ERR_BADHANDLE, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_DELAY, NFS4ERR_INVAL, | | ||||
| | NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REJECT_DELEG, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_TOO_MANY_OPS, | | |||
| | NFS4ERR_WRONG_TYPE | | ||||
| CB_RECALL | NFS4ERR_BADHANDLE, NFS4ERR_BADXDR, | | ||||
| | NFS4ERR_BAD_STATEID, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_INVAL | | | | NFS4ERR_REQ_TOO_BIG, | | |||
| CB_RECALLABLE_OBJ_AVAIL | | | | | NFS4ERR_SERVERFAULT, | | |||
| CB_RECALL_CREDIT | | | | | NFS4ERR_TOO_MANY_OPS | | |||
| CB_RECALL_ANY | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_INVAL, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| CB_RECALLABLE_OBJ_AVAIL | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | ||||
| | NFS4ERR_INVAL, NFS4ERR_NOTSUPP, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| CB_RECALL_SLOT | NFS4ERR_BADXDR, NFS4ERR_BAD_HIGH_SLOT, | | ||||
| | NFS4ERR_DELAY, | | ||||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
| CB_SEQUENCE | NFS4ERR_BADSESSION, NFS4ERR_BADSLOT, | | | CB_SEQUENCE | NFS4ERR_BADSESSION, NFS4ERR_BADSLOT, | | |||
| | NFS4ERR_BAD_HIGH_SLOT, | | | | NFS4ERR_BADXDR, NFS4ERR_BAD_HIGH_SLOT, | | |||
| | NFS4ERR_CONN_NOT_BOUND_TO_SESSION, | | | | NFS4ERR_CONN_NOT_BOUND_TO_SESSION, | | |||
| | NFS4ERR_DELAY, NFS4ERR_REP_TOO_BIG, | | ||||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | ||||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_RETRY_UNCACHED_REP, | | ||||
| | NFS4ERR_SEQUENCE_POS, | | ||||
| | NFS4ERR_SEQ_FALSE_RETRY, | | | | NFS4ERR_SEQ_FALSE_RETRY, | | |||
| | NFS4ERR_SEQ_MISORDERED, | | | | NFS4ERR_SEQ_MISORDERED, | | |||
| | NFS4ERR_SEQUENCE_POS, | | | | NFS4ERR_TOO_MANY_OPS | | |||
| | NFS4ERR_REQ_TOO_BIG, | | | CB_WANTS_CANCELLED | NFS4ERR_BADXDR, NFS4ERR_DELAY, | | |||
| | NFS4ERR_TOO_MANY_OPS, | | | | NFS4ERR_NOTSUPP, | | |||
| | NFS4ERR_OP_NOT_IN_SESSION, | | ||||
| | NFS4ERR_REP_TOO_BIG, | | | | NFS4ERR_REP_TOO_BIG, | | |||
| | NFS4ERR_REP_TOO_BIG_TO_CACHE | | | | NFS4ERR_REP_TOO_BIG_TO_CACHE, | | |||
| | NFS4ERR_REQ_TOO_BIG, | | ||||
| | NFS4ERR_SERVERFAULT, | | ||||
| | NFS4ERR_TOO_MANY_OPS | | ||||
+-------------------------+-----------------------------------------+ | +-------------------------+-----------------------------------------+ | |||
Table 13 | Table 13 | |||
15.4. Errors and the operations that use them | 15.4. Errors and the operations that use them | |||
+-----------------------------------+-------------------------------+ | +-----------------------------------+-------------------------------+ | |||
| Error | Operations | | | Error | Operations | | |||
+-----------------------------------+-------------------------------+ | +-----------------------------------+-------------------------------+ | |||
| NFS4ERR_ACCESS | ACCESS, COMMIT, CREATE, | | | NFS4ERR_ACCESS | ACCESS, COMMIT, CREATE, | | |||
| | GETATTR, GET_DIR_DELEGATION, | | | | GETATTR, GET_DIR_DELEGATION, | | |||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LINK, LOCK, LOCKT, LOCKU, | | | | LINK, LOCK, LOCKT, LOCKU, | | |||
| | LOOKUP, LOOKUPP, NVERIFY, | | | | LOOKUP, LOOKUPP, NVERIFY, | | |||
| | OPEN, OPENATTR, READ, | | | | OPEN, OPENATTR, READ, | | |||
| | READDIR, READLINK, REMOVE, | | | | READDIR, READLINK, REMOVE, | | |||
| | RENAME, SECINFO, | | | | RENAME, SECINFO, | | |||
| | SECINFO_NO_NAME, SETATTR, | | | | SECINFO_NO_NAME, SETATTR, | | |||
| | VERIFY, WRITE | | | | VERIFY, WRITE | | |||
| NFS4ERR_ADMIN_REVOKED | CLOSE, DELEGRETURN, LOCK, | | | NFS4ERR_ADMIN_REVOKED | CLOSE, DELEGRETURN, | | |||
| | LOCKU, OPEN, OPEN_DOWNGRADE, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | READ, RELEASE_LOCKOWNER, | | | | LAYOUTRETURN, LOCK, LOCKU, | | |||
| | OPEN, OPEN_DOWNGRADE, READ, | | ||||
| | SETATTR, WRITE | | | | SETATTR, WRITE | | |||
| NFS4ERR_ATTRNOTSUPP | CREATE, NVERIFY, OPEN, | | | NFS4ERR_ATTRNOTSUPP | CREATE, LAYOUTCOMMIT, | | |||
| | SETATTR, VERIFY | | | | NVERIFY, OPEN, SETATTR, | | |||
| NFS4ERR_BACK_CHAN_BUSY | DESTROY_SESSION | | ||||
| NFS4ERR_BADCHAR | CREATE, LINK, LOOKUP, | | ||||
| | NVERIFY, OPEN, REMOVE, | | ||||
| | RENAME, SECINFO, | | ||||
| | SECINFO_NO_NAME, SETATTR, | | ||||
| | VERIFY | | | | VERIFY | | |||
| NFS4ERR_BADHANDLE | ACCESS, CB_GETATTR, | | | NFS4ERR_BACK_CHAN_BUSY | DESTROY_SESSION | | |||
| | CB_RECALL, CLOSE, COMMIT, | | | NFS4ERR_BADCHAR | CREATE, EXCHANGE_ID, LINK, | | |||
| | CREATE, GETATTR, GETFH, | | | | LOOKUP, NVERIFY, OPEN, | | |||
| | GET_DIR_DELEGATION, LINK, | | ||||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | ||||
| | OPENATTR, OPEN_DOWNGRADE, | | ||||
| | PUTFH, READ, READDIR, | | ||||
| | READLINK, REMOVE, RENAME, | | ||||
| | RESTOREFH, SAVEFH, SECINFO, | | ||||
| | SECINFO_NO_NAME, SETATTR, | | ||||
| | VERIFY, WRITE | | ||||
| NFS4ERR_BADIOMODE | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN | | ||||
| NFS4ERR_BADLAYOUT | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN | | ||||
| NFS4ERR_BADNAME | CREATE, LINK, LOOKUP, OPEN, | | ||||
| | REMOVE, RENAME, SECINFO, | | | | REMOVE, RENAME, SECINFO, | | |||
| | SECINFO_NO_NAME | | | | SETATTR, VERIFY | | |||
| NFS4ERR_BADHANDLE | CB_GETATTR, CB_LAYOUTRECALL, | | ||||
| | CB_NOTIFY, CB_NOTIFY_LOCK, | | ||||
| | CB_PUSH_DELEG, CB_RECALL, | | ||||
| | PUTFH | | ||||
| NFS4ERR_BADIOMODE | CB_LAYOUTRECALL, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET | | ||||
| NFS4ERR_BADLAYOUT | LAYOUTCOMMIT, LAYOUTGET | | ||||
| NFS4ERR_BADNAME | CREATE, LINK, LOOKUP, OPEN, | | ||||
| | REMOVE, RENAME, SECINFO | | ||||
| NFS4ERR_BADOWNER | CREATE, OPEN, SETATTR | | | NFS4ERR_BADOWNER | CREATE, OPEN, SETATTR | | |||
| NFS4ERR_BADSESSION | BIND_CONN_TO_SESSION, | | | NFS4ERR_BADSESSION | BIND_CONN_TO_SESSION, | | |||
| | CB_SEQUENCE, DESTROY_SESSION, | | | | CB_SEQUENCE, DESTROY_SESSION, | | |||
| | SEQUENCE | | | | SEQUENCE | | |||
| NFS4ERR_BADSLOT | CB_SEQUENCE, SEQUENCE | | | NFS4ERR_BADSLOT | CB_SEQUENCE, SEQUENCE | | |||
| NFS4ERR_BADTYPE | CREATE | | | NFS4ERR_BADTYPE | CREATE, LINK | | |||
| NFS4ERR_BADXDR | ACCESS, CB_GETATTR, | | | NFS4ERR_BADXDR | ACCESS, BACKCHANNEL_CTL, | | |||
| | CB_NOTIFY, CB_RECALL, CLOSE, | | | | BIND_CONN_TO_SESSION, | | |||
| | CB_GETATTR, CB_ILLEGAL, | | ||||
| | CB_LAYOUTRECALL, CB_NOTIFY, | | ||||
| | CB_NOTIFY_LOCK, | | ||||
| | CB_PUSH_DELEG, CB_RECALL, | | ||||
| | CB_RECALLABLE_OBJ_AVAIL, | | ||||
| | CB_RECALL_ANY, | | ||||
| | CB_RECALL_SLOT, CB_SEQUENCE, | | ||||
| | CB_WANTS_CANCELLED, CLOSE, | | ||||
| | COMMIT, CREATE, | | | | COMMIT, CREATE, | | |||
| | CREATE_SESSION, DELEGPURGE, | | | | CREATE_SESSION, DELEGPURGE, | | |||
| | DELEGRETURN, EXCHANGE_ID, | | | | DELEGRETURN, | | |||
| | GETATTR, GET_DIR_DELEGATION, | | | | DESTROY_CLIENTID, | | |||
| | LINK, LOCK, LOCKT, LOCKU, | | | | DESTROY_SESSION, EXCHANGE_ID, | | |||
| | LOOKUP, NVERIFY, OPEN, | | | | FREE_STATEID, GETATTR, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | GETDEVICEINFO, GETDEVICELIST, | | |||
| | PUTFH, READ, READDIR, | | | | GET_DIR_DELEGATION, ILLEGAL, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | RENAME, SECINFO, | | | | LAYOUTRETURN, LINK, LOCK, | | |||
| | SECINFO_NO_NAME, SETATTR, | | | | LOCKT, LOCKU, LOOKUP, | | |||
| | VERIFY, WRITE | | | | NVERIFY, OPEN, OPENATTR, | | |||
| | OPEN_DOWNGRADE, PUTFH, READ, | | ||||
| | READDIR, RECLAIM_COMPLETE, | | ||||
| | REMOVE, RENAME, SECINFO, | | ||||
| | SECINFO_NO_NAME, SEQUENCE, | | ||||
| | SETATTR, SET_SSV, | | ||||
| | TEST_STATEID, VERIFY, | | ||||
| | WANT_DELEGATION, WRITE | | ||||
| NFS4ERR_BAD_COOKIE | GETDEVICELIST, READDIR | | | NFS4ERR_BAD_COOKIE | GETDEVICELIST, READDIR | | |||
| NFS4ERR_BAD_HIGH_SLOT | CB_SEQUENCE, SEQUENCE | | | NFS4ERR_BAD_HIGH_SLOT | CB_RECALL_SLOT, CB_SEQUENCE, | | |||
| | SEQUENCE | | ||||
| NFS4ERR_BAD_RANGE | LOCK, LOCKT, LOCKU | | | NFS4ERR_BAD_RANGE | LOCK, LOCKT, LOCKU | | |||
| NFS4ERR_BAD_SESSION_DIGEST | BIND_CONN_TO_SESSION, SET_SSV | | | NFS4ERR_BAD_SESSION_DIGEST | BIND_CONN_TO_SESSION, SET_SSV | | |||
| NFS4ERR_BAD_STATEID | CB_NOTIFY, CB_RECALL, CLOSE, | | | NFS4ERR_BAD_STATEID | CB_LAYOUTRECALL, CB_NOTIFY, | | |||
| | DELEGRETURN, LOCK, LOCKU, | | | | CB_NOTIFY_LOCK, CB_RECALL, | | |||
| | OPEN_DOWNGRADE, READ, | | | | CLOSE, DELEGRETURN, | | |||
| | FREE_STATEID, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LOCK, LOCKU, | | ||||
| | OPEN, OPEN_DOWNGRADE, READ, | | ||||
| | SETATTR, WRITE | | | | SETATTR, WRITE | | |||
| NFS4ERR_CLID_INUSE | CREATE_SESSION, EXCHANGE_ID | | | NFS4ERR_CLID_INUSE | CREATE_SESSION, EXCHANGE_ID | | |||
| NFS4ERR_CLIENTID_BUSY | DESTROY_CLIENTID | | | NFS4ERR_CLIENTID_BUSY | DESTROY_CLIENTID | | |||
| NFS4ERR_COMPLETE_ALREADY | RECLAIM_COMPLETE | | | NFS4ERR_COMPLETE_ALREADY | RECLAIM_COMPLETE | | |||
| NFS4ERR_CONN_BINDING_NOT_ENFORCED | BIND_CONN_TO_SESSION, SET_SSV | | | NFS4ERR_CONN_BINDING_NOT_ENFORCED | BIND_CONN_TO_SESSION, SET_SSV | | |||
| NFS4ERR_CONN_NOT_BOUND_TO_SESSION | CB_SEQUENCE, SEQUENCE | | | NFS4ERR_CONN_NOT_BOUND_TO_SESSION | CB_SEQUENCE, SEQUENCE | | |||
| NFS4ERR_DEADLOCK | LOCK | | | NFS4ERR_DEADLOCK | LOCK | | |||
| NFS4ERR_DEADSESSION | BIND_CONN_TO_SESSION, | | | NFS4ERR_DEADSESSION | ACCESS, BACKCHANNEL_CTL, | | |||
| | DESTROY_SESSION, SEQUENCE | | | | BIND_CONN_TO_SESSION, CLOSE, | | |||
| NFS4ERR_DELAY | ACCESS, CLOSE, CREATE, | | | | COMMIT, CREATE, | | |||
| | CREATE_SESSION, GETATTR, | | | | CREATE_SESSION, DELEGPURGE, | | |||
| | LINK, LOCK, LOCKT, NVERIFY, | | | | DELEGRETURN, | | |||
| | OPEN, OPENATTR, READ, | | | | DESTROY_CLIENTID, | | |||
| | READDIR, READLINK, REMOVE, | | | | DESTROY_SESSION, EXCHANGE_ID, | | |||
| | RENAME, SETATTR, VERIFY, | | | | FREE_STATEID, GETATTR, | | |||
| | WRITE | | | | GETDEVICEINFO, GETDEVICELIST, | | |||
| | GET_DIR_DELEGATION, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | ||||
| | OPENATTR, OPEN_DOWNGRADE, | | ||||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | ||||
| | READ, READDIR, READLINK, | | ||||
| | RECLAIM_COMPLETE, REMOVE, | | ||||
| | RENAME, RESTOREFH, SAVEFH, | | ||||
| | SECINFO, SECINFO_NO_NAME, | | ||||
| | SEQUENCE, SETATTR, SET_SSV, | | ||||
| | TEST_STATEID, VERIFY, | | ||||
| | WANT_DELEGATION, WRITE | | ||||
| NFS4ERR_DELAY | ACCESS, BACKCHANNEL_CTL, | | ||||
| | BIND_CONN_TO_SESSION, | | ||||
| | CB_GETATTR, CB_LAYOUTRECALL, | | ||||
| | CB_NOTIFY, CB_NOTIFY_LOCK, | | ||||
| | CB_PUSH_DELEG, CB_RECALL, | | ||||
| | CB_RECALLABLE_OBJ_AVAIL, | | ||||
| | CB_RECALL_ANY, | | ||||
| | CB_RECALL_SLOT, CB_SEQUENCE, | | ||||
| | CB_WANTS_CANCELLED, CLOSE, | | ||||
| | COMMIT, CREATE, | | ||||
| | CREATE_SESSION, DELEGPURGE, | | ||||
| | DELEGRETURN, | | ||||
| | DESTROY_CLIENTID, | | ||||
| | DESTROY_SESSION, EXCHANGE_ID, | | ||||
| | FREE_STATEID, GETATTR, | | ||||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | GET_DIR_DELEGATION, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | ||||
| | OPENATTR, OPEN_DOWNGRADE, | | ||||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | ||||
| | READ, READDIR, READLINK, | | ||||
| | RECLAIM_COMPLETE, REMOVE, | | ||||
| | RENAME, SECINFO, | | ||||
| | SECINFO_NO_NAME, SEQUENCE, | | ||||
| | SETATTR, SET_SSV, | | ||||
| | TEST_STATEID, VERIFY, | | ||||
| | WANT_DELEGATION, WRITE | | ||||
| NFS4ERR_DELEG_ALREADY_WANTED | OPEN, WANT_DELEGATION | | ||||
| NFS4ERR_DELEG_REVOKED | DELEGRETURN, LAYOUTGET, | | ||||
| | LAYOUTRETURN, OPEN, READ, | | ||||
| | SETATTR, WRITE | | ||||
| NFS4ERR_DENIED | LOCK, LOCKT | | | NFS4ERR_DENIED | LOCK, LOCKT | | |||
| NFS4ERR_DQUOT | CREATE, LINK, OPEN, OPENATTR, | | | NFS4ERR_DIRDELEG_UNAVAIL | GET_DIR_DELEGATION | | |||
| | RENAME, SETATTR, WRITE | | | NFS4ERR_DQUOT | CREATE, LAYOUTGET, LINK, | | |||
| NFS4ERR_EIO | GET_DIR_DELEGATION | | | | OPEN, OPENATTR, RENAME, | | |||
| | SETATTR, WRITE | | ||||
| NFS4ERR_ENCR_ALG_UNSUPP | EXCHANGE_ID | | | NFS4ERR_ENCR_ALG_UNSUPP | EXCHANGE_ID | | |||
| NFS4ERR_EXIST | CREATE, LINK, OPEN, RENAME | | | NFS4ERR_EXIST | CREATE, LINK, OPEN, RENAME | | |||
| NFS4ERR_EXPIRED | CLOSE, DELEGRETURN, LOCK, | | | NFS4ERR_EXPIRED | CLOSE, DELEGRETURN, | | |||
| | LOCKU, OPEN, OPEN_DOWNGRADE, | | | | LAYOUTCOMMIT, LAYOUTRETURN, | | |||
| | READ, RELEASE_LOCKOWNER, | | | | LOCK, LOCKU, OPEN, | | |||
| | OPEN_DOWNGRADE, READ, | | ||||
| | SETATTR, WRITE | | | | SETATTR, WRITE | | |||
| NFS4ERR_FBIG | SETATTR, WRITE | | | NFS4ERR_FBIG | LAYOUTCOMMIT, OPEN, SETATTR, | | |||
| | WRITE | | ||||
| NFS4ERR_FHEXPIRED | ACCESS, CLOSE, COMMIT, | | | NFS4ERR_FHEXPIRED | ACCESS, CLOSE, COMMIT, | | |||
| | CREATE, GETATTR, | | | | CREATE, DELEGRETURN, GETATTR, | | |||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | GETFH, GET_DIR_DELEGATION, | | | | GETFH, GET_DIR_DELEGATION, | | |||
| | LAYOUTCOMMIT, LAYOUTGET, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | LAYOUTRETURN, LINK, LOCK, | | | | LAYOUTRETURN, LINK, LOCK, | | |||
| | LOCKT, LOCKU, LOOKUP, | | | | LOCKT, LOCKU, LOOKUP, | | |||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, READ, READDIR, | | | | READ, READDIR, READLINK, | | |||
| | READLINK, REMOVE, RENAME, | | | | RECLAIM_COMPLETE, REMOVE, | | |||
| | RESTOREFH, SAVEFH, SECINFO, | | | | RENAME, RESTOREFH, SAVEFH, | | |||
| | SECINFO_NO_NAME, SETATTR, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | VERIFY, WRITE | | | | SETATTR, VERIFY, | | |||
| | WANT_DELEGATION, WRITE | | ||||
| NFS4ERR_FILE_OPEN | LINK, REMOVE, RENAME | | | NFS4ERR_FILE_OPEN | LINK, REMOVE, RENAME | | |||
| NFS4ERR_GRACE | LAYOUTGET, LOCK, LOCKT, | | | NFS4ERR_GRACE | GETATTR, GET_DIR_DELEGATION, | | |||
| | LOCKU, OPEN, READ, SETATTR, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, NVERIFY, OPEN, READ, | | ||||
| | REMOVE, RENAME, SETATTR, | | ||||
| | VERIFY, WANT_DELEGATION, | | ||||
| | WRITE | | | | WRITE | | |||
| NFS4ERR_HASH_ALG_UNSUPP | EXCHANGE_ID | | | NFS4ERR_HASH_ALG_UNSUPP | EXCHANGE_ID | | |||
| NFS4ERR_INVAL | ACCESS, CB_NOTIFY, | | | NFS4ERR_INVAL | ACCESS, BACKCHANNEL_CTL, | | |||
| | CB_RECALL_ANY, CLOSE, COMMIT, | | | | BIND_CONN_TO_SESSION, | | |||
| | CREATE, DELEGRETURN, | | | | CB_GETATTR, CB_LAYOUTRECALL, | | |||
| | CB_NOTIFY, CB_PUSH_DELEG, | | ||||
| | CB_RECALLABLE_OBJ_AVAIL, | | ||||
| | CB_RECALL_ANY, CREATE, | | ||||
| | CREATE_SESSION, DELEGRETURN, | | ||||
| | EXCHANGE_ID, GETATTR, | | | | EXCHANGE_ID, GETATTR, | | |||
| | GETDEVICEINFO, GETDEVICELIST, | | | | GETDEVICEINFO, GETDEVICELIST, | | |||
| | GET_DIR_DELEGATION, | | | | GET_DIR_DELEGATION, | | |||
| | LAYOUTCOMMIT, LAYOUTGET, | | | | LAYOUTGET, LAYOUTRETURN, | | |||
| | LAYOUTRETURN, LINK, LOCK, | | | | LINK, LOCK, LOCKT, LOCKU, | | |||
| | LOCKT, LOCKU, LOOKUP, | | | | LOOKUP, NVERIFY, OPEN, | | |||
| | NVERIFY, OPEN, | | ||||
| | OPEN_DOWNGRADE, READ, | | | | OPEN_DOWNGRADE, READ, | | |||
| | READDIR, READLINK, REMOVE, | | | | READDIR, READLINK, | | |||
| | RECLAIM_COMPLETE, REMOVE, | | ||||
| | RENAME, SECINFO, | | | | RENAME, SECINFO, | | |||
| | SECINFO_NO_NAME, SETATTR, | | | | SECINFO_NO_NAME, SETATTR, | | |||
| | VERIFY, WRITE | | | | VERIFY, WANT_DELEGATION, | | |||
| | WRITE | | ||||
| NFS4ERR_IO | ACCESS, COMMIT, CREATE, | | | NFS4ERR_IO | ACCESS, COMMIT, CREATE, | | |||
| | GETATTR, LINK, LOOKUP, | | | | GETATTR, GET_DIR_DELEGATION, | | |||
| | LOOKUPP, NVERIFY, OPEN, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | OPENATTR, READ, READDIR, | | | | LINK, LOOKUP, LOOKUPP, | | |||
| | READLINK, REMOVE, RENAME, | | | | NVERIFY, OPEN, OPENATTR, | | |||
| | SETATTR, WRITE | | | | READ, READDIR, READLINK, | | |||
| NFS4ERR_ISDIR | CLOSE, COMMIT, LINK, LOCK, | | | | REMOVE, RENAME, SETATTR, | | |||
| | LOCKT, LOCKU, OPEN, READ, | | | | VERIFY, WANT_DELEGATION, | | |||
| | READLINK, SETATTR, WRITE | | | | WRITE | | |||
| NFS4ERR_ISDIR | COMMIT, LAYOUTCOMMIT, | | ||||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, OPEN, READ, READLINK, | | ||||
| | WRITE | | ||||
| NFS4ERR_LAYOUTTRYLATER | LAYOUTGET | | | NFS4ERR_LAYOUTTRYLATER | LAYOUTGET | | |||
| NFS4ERR_LAYOUTUNAVAILABLE | LAYOUTGET | | | NFS4ERR_LAYOUTUNAVAILABLE | LAYOUTGET | | |||
| NFS4ERR_LEASE_MOVED | CLOSE, DELEGPURGE, | | ||||
| | DELEGRETURN, LOCK, LOCKT, | | ||||
| | LOCKU, OPEN, READ, | | ||||
| | RELEASE_LOCKOWNER, WRITE | | ||||
| NFS4ERR_LOCKED | LAYOUTGET, READ, SETATTR, | | | NFS4ERR_LOCKED | LAYOUTGET, READ, SETATTR, | | |||
| | WRITE | | | | WRITE | | |||
| NFS4ERR_LOCKS_HELD | CLOSE, RELEASE_LOCKOWNER | | | NFS4ERR_LOCKS_HELD | CLOSE, FREE_STATEID | | |||
| NFS4ERR_LOCK_NOTSUPP | LOCK | | | NFS4ERR_LOCK_NOTSUPP | LOCK | | |||
| NFS4ERR_LOCK_RANGE | LOCK, LOCKT, LOCKU | | | NFS4ERR_LOCK_RANGE | LOCK, LOCKT, LOCKU | | |||
| NFS4ERR_MLINK | LINK | | | NFS4ERR_MLINK | CREATE, LINK | | |||
| NFS4ERR_MOVED | ACCESS, CLOSE, COMMIT, | | | NFS4ERR_MOVED | ACCESS, CLOSE, COMMIT, | | |||
| | CREATE, DELEGPURGE, | | | | CREATE, DELEGRETURN, GETATTR, | | |||
| | DELEGRETURN, GETATTR, GETFH, | | | | GETFH, GET_DIR_DELEGATION, | | |||
| | GET_DIR_DELEGATION, LINK, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | | | LAYOUTRETURN, LINK, LOCK, | | |||
| | LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, READ, READDIR, | | | | PUTFH, READ, READDIR, | | |||
| | READLINK, REMOVE, RENAME, | | | | READLINK, RECLAIM_COMPLETE, | | |||
| | RESTOREFH, SAVEFH, SECINFO, | | | | REMOVE, RENAME, RESTOREFH, | | |||
| | SAVEFH, SECINFO, | | ||||
| | SECINFO_NO_NAME, SETATTR, | | | | SECINFO_NO_NAME, SETATTR, | | |||
| | VERIFY, WRITE | | | | VERIFY, WANT_DELEGATION, | | |||
| | WRITE | | ||||
| NFS4ERR_NAMETOOLONG | CREATE, LINK, LOOKUP, OPEN, | | | NFS4ERR_NAMETOOLONG | CREATE, LINK, LOOKUP, OPEN, | | |||
| | REMOVE, RENAME, SECINFO | | ||||
| NFS4ERR_NOENT | BACKCHANNEL_CTL, | | ||||
| | CREATE_SESSION, EXCHANGE_ID, | | ||||
| | GETDEVICEINFO, LOOKUP, | | ||||
| | LOOKUPP, OPEN, OPENATTR, | | ||||
| | REMOVE, RENAME, SECINFO, | | | | REMOVE, RENAME, SECINFO, | | |||
| | SECINFO_NO_NAME | | | | SECINFO_NO_NAME | | |||
| NFS4ERR_NOENT | LINK, LOOKUP, LOOKUPP, OPEN, | | ||||
| | OPENATTR, REMOVE, RENAME, | | ||||
| | SECINFO, SECINFO_NO_NAME | | ||||
| NFS4ERR_NOFILEHANDLE | ACCESS, CLOSE, COMMIT, | | | NFS4ERR_NOFILEHANDLE | ACCESS, CLOSE, COMMIT, | | |||
| | CREATE, DELEGRETURN, GETATTR, | | | | CREATE, DELEGRETURN, GETATTR, | | |||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | GETFH, GET_DIR_DELEGATION, | | | | GETFH, GET_DIR_DELEGATION, | | |||
| | LAYOUTCOMMIT, LAYOUTGET, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | LAYOUTRETURN, LINK, LOCK, | | | | LAYOUTRETURN, LINK, LOCK, | | |||
| | LOCKT, LOCKU, LOOKUP, | | | | LOCKT, LOCKU, LOOKUP, | | |||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | READ, READDIR, READLINK, | | | | READ, READDIR, READLINK, | | |||
| | REMOVE, RENAME, SAVEFH, | | | | RECLAIM_COMPLETE, REMOVE, | | |||
| | RENAME, RESTOREFH, SAVEFH, | | ||||
| | SECINFO, SECINFO_NO_NAME, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | SETATTR, VERIFY, WRITE | | | | SETATTR, VERIFY, | | |||
| | WANT_DELEGATION, WRITE | | ||||
| NFS4ERR_NOMATCHING_LAYOUT | CB_LAYOUTRECALL | | | NFS4ERR_NOMATCHING_LAYOUT | CB_LAYOUTRECALL | | |||
| NFS4ERR_NOSPC | CREATE, LINK, OPEN, OPENATTR, | | | NFS4ERR_NOSPC | CREATE, CREATE_SESSION, | | |||
| | RENAME, SETATTR, WRITE | | | | LAYOUTGET, LINK, OPEN, | | |||
| | OPENATTR, RENAME, SETATTR, | | ||||
| | WRITE | | ||||
| NFS4ERR_NOTDIR | CREATE, GET_DIR_DELEGATION, | | | NFS4ERR_NOTDIR | CREATE, GET_DIR_DELEGATION, | | |||
| | LINK, LOOKUP, LOOKUPP, OPEN, | | | | LINK, LOOKUP, LOOKUPP, OPEN, | | |||
| | READDIR, REMOVE, RENAME, | | | | READDIR, REMOVE, RENAME, | | |||
| | SECINFO, SECINFO_NO_NAME | | | | SECINFO, SECINFO_NO_NAME | | |||
| NFS4ERR_NOTEMPTY | REMOVE, RENAME | | | NFS4ERR_NOTEMPTY | REMOVE, RENAME | | |||
| NFS4ERR_NOTSUPP | DELEGPURGE, DELEGRETURN, | | | NFS4ERR_NOTSUPP | CB_LAYOUTRECALL, CB_NOTIFY, | | |||
| | CB_NOTIFY_LOCK, | | ||||
| | CB_PUSH_DELEG, | | ||||
| | CB_RECALLABLE_OBJ_AVAIL, | | ||||
| | CB_WANTS_CANCELLED, | | ||||
| | DELEGPURGE, DELEGRETURN, | | ||||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | GET_DIR_DELEGATION, | | | | GET_DIR_DELEGATION, | | |||
| | LAYOUTGET, LINK, OPENATTR, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | READLINK | | | | LAYOUTRETURN, LINK, OPENATTR, | | |||
| NFS4ERR_NOT_SAME | READDIR, VERIFY | | | | OPEN_CONFIRM, | | |||
| | RELEASE_LOCKOWNER, | | ||||
| | SECINFO_NO_NAME, SETCLIENTID, | | ||||
| | SETCLIENTID_CONFIRM, | | ||||
| | WANT_DELEGATION | | ||||
| NFS4ERR_NOT_ONLY_OP | BIND_CONN_TO_SESSION, | | ||||
| | DESTROY_CLIENTID, | | ||||
| | DESTROY_SESSION | | ||||
| NFS4ERR_NOT_SAME | EXCHANGE_ID, READDIR, VERIFY | | ||||
| NFS4ERR_NO_GRACE | LAYOUTCOMMIT, LAYOUTRETURN, | | | NFS4ERR_NO_GRACE | LAYOUTCOMMIT, LAYOUTRETURN, | | |||
| | LOCK, OPEN | | | | LOCK, OPEN, WANT_DELEGATION | | |||
| NFS4ERR_NXIO | READ, WRITE | | | NFS4ERR_OLD_STATEID | CLOSE, DELEGRETURN, | | |||
| NFS4ERR_OPENMODE | LOCK, READ, SETATTR, WRITE | | | | FREE_STATEID, LAYOUTGET, | | |||
| | LAYOUTRETURN, LOCK, LOCKU, | | ||||
| | OPEN, OPEN_DOWNGRADE, READ, | | ||||
| | SETATTR, WRITE | | ||||
| NFS4ERR_OPENMODE | LAYOUTGET, LOCK, READ, | | ||||
| | SETATTR, WRITE | | ||||
| NFS4ERR_OP_ILLEGAL | CB_ILLEGAL, ILLEGAL | | | NFS4ERR_OP_ILLEGAL | CB_ILLEGAL, ILLEGAL | | |||
| NFS4ERR_OP_NOT_IN_SESSION | ACCESS, CB_GETATTR, | | | NFS4ERR_OP_NOT_IN_SESSION | ACCESS, CB_GETATTR, | | |||
| | CB_RECALL, CB_RECALL_ANY, | | | | CB_LAYOUTRECALL, CB_NOTIFY, | | |||
| | CLOSE, COMMIT, CREATE, | | | | CB_NOTIFY_LOCK, | | |||
| | DELEGPURGE, DELEGRETURN, | | | | CB_PUSH_DELEG, CB_RECALL, | | |||
| | GETATTR, GETFH, | | | | CB_RECALLABLE_OBJ_AVAIL, | | |||
| | GET_DIR_DELEGATION, LINK, | | | | CB_RECALL_ANY, | | |||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | | | CB_RECALL_SLOT, | | |||
| | CB_WANTS_CANCELLED, CLOSE, | | ||||
| | COMMIT, CREATE, DELEGPURGE, | | ||||
| | DELEGRETURN, FREE_STATEID, | | ||||
| | GETATTR, GETDEVICEINFO, | | ||||
| | GETDEVICELIST, GETFH, | | ||||
| | GET_DIR_DELEGATION, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | | | PUTFH, PUTPUBFH, PUTROOTFH, | | |||
| | READ, READDIR, READLINK, | | | | READ, READDIR, READLINK, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | RECLAIM_COMPLETE, REMOVE, | | |||
| | RENAME, RESTOREFH, SAVEFH, | | | | RENAME, RESTOREFH, SAVEFH, | | |||
| | SECINFO, SECINFO_NO_NAME, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | SETATTR, VERIFY, WRITE | | | | SETATTR, SET_SSV, | | |||
| | TEST_STATEID, VERIFY, | | ||||
| | WANT_DELEGATION, WRITE | | ||||
| NFS4ERR_PERM | CREATE, OPEN, SETATTR | | | NFS4ERR_PERM | CREATE, OPEN, SETATTR | | |||
| NFS4ERR_PNFS_IO_HOLE | READ, WRITE | | | NFS4ERR_PNFS_IO_HOLE | READ, WRITE | | |||
| NFS4ERR_PNFS_NO_LAYOUT | READ, WRITE | | | NFS4ERR_PNFS_NO_LAYOUT | READ, WRITE | | |||
| NFS4ERR_RECALLCONFLICT | LAYOUTGET | | | NFS4ERR_RECALLCONFLICT | GETDEVICEINFO, GETDEVICELIST, | | |||
| NFS4ERR_RECLAIM_BAD | LAYOUTCOMMIT, LOCK, OPEN | | | | LAYOUTGET, WANT_DELEGATION | | |||
| NFS4ERR_RECLAIM_CONFLICT | LOCK, OPEN | | | NFS4ERR_RECLAIM_BAD | LAYOUTCOMMIT, LOCK, OPEN, | | |||
| NFS4ERR_REP_TOO_BIG | ACCESS, CB_GETATTR, | | | | WANT_DELEGATION | | |||
| | CB_RECALL, CB_RECALL_ANY, | | | NFS4ERR_RECLAIM_CONFLICT | LAYOUTCOMMIT, LOCK, OPEN, | | |||
| | CB_SEQUENCE, CLOSE, COMMIT, | | | | WANT_DELEGATION | | |||
| | CREATE, DELEGPURGE, | | | NFS4ERR_REJECT_DELEG | CB_PUSH_DELEG | | |||
| | DELEGRETURN, GETATTR, GETFH, | | | NFS4ERR_REP_TOO_BIG | ACCESS, BACKCHANNEL_CTL, | | |||
| | GET_DIR_DELEGATION, LINK, | | | | BIND_CONN_TO_SESSION, | | |||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | | | CB_GETATTR, CB_LAYOUTRECALL, | | |||
| | CB_NOTIFY, CB_NOTIFY_LOCK, | | ||||
| | CB_PUSH_DELEG, CB_RECALL, | | ||||
| | CB_RECALLABLE_OBJ_AVAIL, | | ||||
| | CB_RECALL_ANY, | | ||||
| | CB_RECALL_SLOT, CB_SEQUENCE, | | ||||
| | CB_WANTS_CANCELLED, CLOSE, | | ||||
| | COMMIT, CREATE, | | ||||
| | CREATE_SESSION, DELEGPURGE, | | ||||
| | DELEGRETURN, | | ||||
| | DESTROY_CLIENTID, | | ||||
| | DESTROY_SESSION, EXCHANGE_ID, | | ||||
| | FREE_STATEID, GETATTR, | | ||||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | GET_DIR_DELEGATION, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | | | PUTFH, PUTPUBFH, PUTROOTFH, | | |||
| | READ, READDIR, READLINK, | | | | READ, READDIR, READLINK, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | RECLAIM_COMPLETE, REMOVE, | | |||
| | RENAME, RESTOREFH, SAVEFH, | | | | RENAME, RESTOREFH, SAVEFH, | | |||
| | SECINFO, SECINFO_NO_NAME, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | SEQUENCE, SETATTR, VERIFY, | | | | SEQUENCE, SETATTR, SET_SSV, | | |||
| | WRITE | | | | TEST_STATEID, VERIFY, | | |||
| NFS4ERR_REP_TOO_BIG_TO_CACHE | ACCESS, CB_GETATTR, | | | | WANT_DELEGATION, WRITE | | |||
| | CB_RECALL, CB_RECALL_ANY, | | | NFS4ERR_REP_TOO_BIG_TO_CACHE | ACCESS, BACKCHANNEL_CTL, | | |||
| | CB_SEQUENCE, CLOSE, COMMIT, | | | | BIND_CONN_TO_SESSION, | | |||
| | CREATE, DELEGPURGE, | | | | CB_GETATTR, CB_LAYOUTRECALL, | | |||
| | DELEGRETURN, GETATTR, GETFH, | | | | CB_NOTIFY, CB_NOTIFY_LOCK, | | |||
| | GET_DIR_DELEGATION, LINK, | | | | CB_PUSH_DELEG, CB_RECALL, | | |||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | | | CB_RECALLABLE_OBJ_AVAIL, | | |||
| | CB_RECALL_ANY, | | ||||
| | CB_RECALL_SLOT, CB_SEQUENCE, | | ||||
| | CB_WANTS_CANCELLED, CLOSE, | | ||||
| | COMMIT, CREATE, | | ||||
| | CREATE_SESSION, DELEGPURGE, | | ||||
| | DELEGRETURN, | | ||||
| | DESTROY_CLIENTID, | | ||||
| | DESTROY_SESSION, EXCHANGE_ID, | | ||||
| | FREE_STATEID, GETATTR, | | ||||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | GET_DIR_DELEGATION, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | | | PUTFH, PUTPUBFH, PUTROOTFH, | | |||
| | READ, READDIR, READLINK, | | | | READ, READDIR, READLINK, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | RECLAIM_COMPLETE, REMOVE, | | |||
| | RENAME, RESTOREFH, SAVEFH, | | | | RENAME, RESTOREFH, SAVEFH, | | |||
| | SECINFO, SECINFO_NO_NAME, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | SEQUENCE, SETATTR, VERIFY, | | | | SEQUENCE, SETATTR, SET_SSV, | | |||
| | WRITE | | | | TEST_STATEID, VERIFY, | | |||
| NFS4ERR_REQ_TOO_BIG | ACCESS, CB_GETATTR, | | | | WANT_DELEGATION, WRITE | | |||
| | CB_RECALL, CB_RECALL_ANY, | | | NFS4ERR_REQ_TOO_BIG | ACCESS, BACKCHANNEL_CTL, | | |||
| | CB_SEQUENCE, CLOSE, COMMIT, | | | | BIND_CONN_TO_SESSION, | | |||
| | CREATE, DELEGPURGE, | | | | CB_GETATTR, CB_LAYOUTRECALL, | | |||
| | DELEGRETURN, GETATTR, GETFH, | | | | CB_NOTIFY, CB_NOTIFY_LOCK, | | |||
| | GET_DIR_DELEGATION, LINK, | | | | CB_PUSH_DELEG, CB_RECALL, | | |||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | | | CB_RECALLABLE_OBJ_AVAIL, | | |||
| | CB_RECALL_ANY, | | ||||
| | CB_RECALL_SLOT, CB_SEQUENCE, | | ||||
| | CB_WANTS_CANCELLED, CLOSE, | | ||||
| | COMMIT, CREATE, | | ||||
| | CREATE_SESSION, DELEGPURGE, | | ||||
| | DELEGRETURN, | | ||||
| | DESTROY_CLIENTID, | | ||||
| | DESTROY_SESSION, EXCHANGE_ID, | | ||||
| | FREE_STATEID, GETATTR, | | ||||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | GET_DIR_DELEGATION, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LINK, LOCK, | | ||||
| | LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | | | PUTFH, PUTPUBFH, PUTROOTFH, | | |||
| | READ, READDIR, READLINK, | | | | READ, READDIR, READLINK, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | RECLAIM_COMPLETE, REMOVE, | | |||
| | RENAME, RESTOREFH, SAVEFH, | | | | RENAME, RESTOREFH, SAVEFH, | | |||
| | SECINFO, SECINFO_NO_NAME, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | SEQUENCE, SETATTR, VERIFY, | | | | SEQUENCE, SETATTR, SET_SSV, | | |||
| | WRITE | | | | TEST_STATEID, VERIFY, | | |||
| NFS4ERR_RESTOREFH | RESTOREFH | | | | WANT_DELEGATION, WRITE | | |||
| NFS4ERR_ROFS | COMMIT, CREATE, LINK, OPEN, | | | NFS4ERR_RETRY_UNCACHED_REP | CB_SEQUENCE, SEQUENCE | | |||
| | OPENATTR, REMOVE, RENAME, | | | NFS4ERR_ROFS | CREATE, LINK, LOCK, LOCKT, | | |||
| | SETATTR, WRITE | | | | OPEN, OPENATTR, | | |||
| | OPEN_DOWNGRADE, REMOVE, | | ||||
| | RENAME, SETATTR, WRITE | | ||||
| NFS4ERR_SAME | NVERIFY | | | NFS4ERR_SAME | NVERIFY | | |||
| NFS4ERR_SEQUENCE_POS | CB_SEQUENCE, SEQUENCE | | | NFS4ERR_SEQUENCE_POS | CB_SEQUENCE, SEQUENCE | | |||
| NFS4ERR_SEQ_FALSE_RETRY | CB_SEQUENCE, SEQUENCE | | | NFS4ERR_SEQ_FALSE_RETRY | CB_SEQUENCE, SEQUENCE | | |||
| NFS4ERR_SEQ_MISORDERED | CB_SEQUENCE, SEQUENCE | | | NFS4ERR_SEQ_MISORDERED | CB_SEQUENCE, CREATE_SESSION, | | |||
| NFS4ERR_SERVERFAULT | ACCESS, CB_GETATTR, | | | | SEQUENCE | | |||
| | CB_NOTIFY, CB_RECALL, CLOSE, | | | NFS4ERR_SERVERFAULT | ACCESS, BIND_CONN_TO_SESSION, | | |||
| | CB_GETATTR, CB_NOTIFY, | | ||||
| | CB_NOTIFY_LOCK, | | ||||
| | CB_PUSH_DELEG, CB_RECALL, | | ||||
| | CB_RECALLABLE_OBJ_AVAIL, | | ||||
| | CB_WANTS_CANCELLED, CLOSE, | | ||||
| | COMMIT, CREATE, | | | | COMMIT, CREATE, | | |||
| | CREATE_SESSION, DELEGPURGE, | | | | CREATE_SESSION, DELEGPURGE, | | |||
| | DELEGRETURN, EXCHANGE_ID, | | | | DELEGRETURN, | | |||
| | GETATTR, GETFH, | | | | DESTROY_CLIENTID, | | |||
| | GET_DIR_DELEGATION, LINK, | | | | DESTROY_SESSION, EXCHANGE_ID, | | |||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | | | FREE_STATEID, GETATTR, | | |||
| | LOOKUPP, NVERIFY, OPEN, | | | | GETDEVICEINFO, GETDEVICELIST, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | GET_DIR_DELEGATION, | | |||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | READ, READDIR, READLINK, | | | | LAYOUTRETURN, LINK, LOCK, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | LOCKU, LOOKUP, LOOKUPP, | | |||
| | NVERIFY, OPEN, OPENATTR, | | ||||
| | OPEN_DOWNGRADE, PUTFH, | | ||||
| | PUTPUBFH, PUTROOTFH, READ, | | ||||
| | READDIR, READLINK, | | ||||
| | RECLAIM_COMPLETE, REMOVE, | | ||||
| | RENAME, RESTOREFH, SAVEFH, | | | | RENAME, RESTOREFH, SAVEFH, | | |||
| | SECINFO, SECINFO_NO_NAME, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | SETATTR, VERIFY, WRITE | | | | SETATTR, TEST_STATEID, | | |||
| | VERIFY, WANT_DELEGATION, | | ||||
| | WRITE | | ||||
| NFS4ERR_SHARE_DENIED | OPEN | | | NFS4ERR_SHARE_DENIED | OPEN | | |||
| NFS4ERR_STALE | ACCESS, CLOSE, COMMIT, | | | NFS4ERR_STALE | ACCESS, CLOSE, COMMIT, | | |||
| | CREATE, DELEGRETURN, GETATTR, | | | | CREATE, DELEGRETURN, GETATTR, | | |||
| | GETFH, GET_DIR_DELEGATION, | | | | GETFH, GET_DIR_DELEGATION, | | |||
| | LAYOUTCOMMIT, LAYOUTGET, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | LAYOUTRETURN, LINK, LOCK, | | | | LAYOUTRETURN, LINK, LOCK, | | |||
| | LOCKT, LOCKU, LOOKUP, | | | | LOCKT, LOCKU, LOOKUP, | | |||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, READ, READDIR, | | | | PUTFH, READ, READDIR, | | |||
| | READLINK, REMOVE, RENAME, | | | | READLINK, RECLAIM_COMPLETE, | | |||
| | RESTOREFH, SAVEFH, SECINFO, | | | | REMOVE, RENAME, RESTOREFH, | | |||
| | SAVEFH, SECINFO, | | ||||
| | SECINFO_NO_NAME, SETATTR, | | | | SECINFO_NO_NAME, SETATTR, | | |||
| | VERIFY, WRITE | | | | VERIFY, WANT_DELEGATION, | | |||
| NFS4ERR_STALE_CLIENTID | CREATE_SESSION, DELEGPURGE, | | | | WRITE | | |||
| NFS4ERR_STALE_CLIENTID | CREATE_SESSION, | | ||||
| | DESTROY_CLIENTID, | | | | DESTROY_CLIENTID, | | |||
| | DESTROY_SESSION, | | | | DESTROY_SESSION | | |||
| | LAYOUTCOMMIT, LAYOUTGET, | | | NFS4ERR_SYMLINK | COMMIT, LAYOUTCOMMIT, LINK, | | |||
| | LAYOUTRETURN, LOCK, LOCKT, | | | | LOCK, LOCKT, LOOKUP, LOOKUPP, | | |||
| | OPEN, RELEASE_LOCKOWNER | | | | OPEN, READ, WRITE | | |||
| NFS4ERR_STALE_STATEID | CLOSE, DELEGRETURN, LOCK, | | | NFS4ERR_TOOSMALL | CREATE_SESSION, | | |||
| | LOCKU, OPEN_DOWNGRADE, READ, | | | | GETDEVICEINFO, GETDEVICELIST, | | |||
| | SETATTR, WRITE | | ||||
| NFS4ERR_SYMLINK | LOOKUP, OPEN | | ||||
| NFS4ERR_TOOSMALL | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | LAYOUTGET, READDIR | | | | LAYOUTGET, READDIR | | |||
| NFS4ERR_TOO_MANY_OPS | ACCESS, CB_GETATTR, | | | NFS4ERR_TOO_MANY_OPS | ACCESS, BACKCHANNEL_CTL, | | |||
| | CB_RECALL, CB_RECALL_ANY, | | | | BIND_CONN_TO_SESSION, | | |||
| | CB_SEQUENCE, CLOSE, COMMIT, | | | | CB_GETATTR, CB_LAYOUTRECALL, | | |||
| | CREATE, DELEGPURGE, | | | | CB_NOTIFY, CB_NOTIFY_LOCK, | | |||
| | DELEGRETURN, GETATTR, GETFH, | | | | CB_PUSH_DELEG, CB_RECALL, | | |||
| | GET_DIR_DELEGATION, LINK, | | | | CB_RECALLABLE_OBJ_AVAIL, | | |||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | | | CB_RECALL_ANY, | | |||
| | LOOKUPP, NVERIFY, OPEN, | | | | CB_RECALL_SLOT, CB_SEQUENCE, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | CB_WANTS_CANCELLED, CLOSE, | | |||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | | | COMMIT, CREATE, | | |||
| | READ, READDIR, READLINK, | | | | CREATE_SESSION, DELEGPURGE, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | DELEGRETURN, | | |||
| | RENAME, RESTOREFH, SAVEFH, | | | | DESTROY_CLIENTID, | | |||
| | SECINFO, SECINFO_NO_NAME, | | | | DESTROY_SESSION, EXCHANGE_ID, | | |||
| | SEQUENCE, SETATTR, VERIFY, | | | | FREE_STATEID, GETATTR, | | |||
| | WRITE | | | | GETDEVICEINFO, GETDEVICELIST, | | |||
| NFS4ERR_UNKNOWN_LAYOUTTYPE | GETDEVICEINFO, GETDEVICELIST, | | | | GET_DIR_DELEGATION, | | |||
| | LAYOUTCOMMIT, LAYOUTGET, | | | | LAYOUTCOMMIT, LAYOUTGET, | | |||
| | LAYOUTRETURN | | | | LAYOUTRETURN, LINK, LOCK, | | |||
| NFS4ERR_UNSAFE_COMPOUND | ACCESS, CB_GETATTR, CLOSE, | | | | LOCKT, LOCKU, LOOKUP, | | |||
| | COMMIT, CREATE, DELEGPURGE, | | ||||
| | DELEGRETURN, GETATTR, GETFH, | | ||||
| | GET_DIR_DELEGATION, LINK, | | ||||
| | LOCK, LOCKT, LOCKU, LOOKUP, | | ||||
| | LOOKUPP, NVERIFY, OPEN, | | | | LOOKUPP, NVERIFY, OPEN, | | |||
| | OPENATTR, OPEN_DOWNGRADE, | | | | OPENATTR, OPEN_DOWNGRADE, | | |||
| | PUTFH, PUTPUBFH, PUTROOTFH, | | | | PUTFH, PUTPUBFH, PUTROOTFH, | | |||
| | READ, READDIR, READLINK, | | | | READ, READDIR, READLINK, | | |||
| | RELEASE_LOCKOWNER, REMOVE, | | | | RECLAIM_COMPLETE, REMOVE, | | |||
| | RENAME, RESTOREFH, SAVEFH, | | | | RENAME, RESTOREFH, SAVEFH, | | |||
| | SECINFO, SECINFO_NO_NAME, | | | | SECINFO, SECINFO_NO_NAME, | | |||
| | SETATTR, VERIFY, WRITE | | | | SEQUENCE, SETATTR, SET_SSV, | | |||
| NFS4ERR_WRONGSEC | GET_DIR_DELEGATION, LINK, | | | | TEST_STATEID, VERIFY, | | |||
| | LOOKUP, LOOKUPP, OPEN, PUTFH, | | | | WANT_DELEGATION, WRITE | | |||
| | PUTPUBFH, PUTROOTFH, RENAME, | | | NFS4ERR_UNKNOWN_LAYOUTTYPE | CB_LAYOUTRECALL, | | |||
| | GETDEVICEINFO, GETDEVICELIST, | | ||||
| | LAYOUTCOMMIT, LAYOUTGET, | | ||||
| | LAYOUTRETURN, NVERIFY, | | ||||
| | SETATTR, VERIFY | | ||||
| NFS4ERR_UNSAFE_COMPOUND | CREATE, GETDEVICEINFO, | | ||||
| | GETDEVICELIST, OPEN, OPENATTR | | ||||
| NFS4ERR_WRONGSEC | LOOKUP, LOOKUPP, OPEN, PUTFH, | | ||||
| | PUTPUBFH, PUTROOTFH, | | ||||
| | RESTOREFH | | | | RESTOREFH | | |||
| NFS4ERR_WRONG_CRED | CLOSE, DELEGPURGE, | | ||||
| | DELEGRETURN, | | ||||
| | DESTROY_CLIENTID, | | ||||
| | DESTROY_SESSION, EXCHANGE_ID, | | ||||
| | FREE_STATEID, LAYOUTCOMMIT, | | ||||
| | LAYOUTRETURN, LOCK, LOCKT, | | ||||
| | LOCKU, OPEN_DOWNGRADE, | | ||||
| | RECLAIM_COMPLETE | | ||||
| NFS4ERR_WRONG_TYPE | CB_LAYOUTRECALL, | | ||||
| | CB_PUSH_DELEG, COMMIT, | | ||||
| | GETATTR, LAYOUTGET, | | ||||
| | LAYOUTRETURN, LOCK, LOCKT, | | ||||
| | NVERIFY, OPEN, OPENATTR, | | ||||
| | READ, READLINK, | | ||||
| | RECLAIM_COMPLETE, SETATTR, | | ||||
| | VERIFY, WANT_DELEGATION, | | ||||
| | WRITE | | ||||
| NFS4ERR_XDEV | LINK, RENAME | | | NFS4ERR_XDEV | LINK, RENAME | | |||
+-----------------------------------+-------------------------------+ | +-----------------------------------+-------------------------------+ | |||
Table 14 | Table 14 | |||
16. NFS version 4.1 Procedures | 16. NFS version 4.1 Procedures | |||
16.1. Procedure 0: NULL - No Operation | 16.1. Procedure 0: NULL - No Operation | |||
16.1.1. ARGUMENTS | 16.1.1. ARGUMENTS | |||
skipping to change at page 468, line 51 | skipping to change at page 479, line 51 | |||
return the NFS4ERR_TOOSMALL error. | return the NFS4ERR_TOOSMALL error. | |||
The returned layout is expressed an array, logr_layout, of type | The returned layout is expressed an array, logr_layout, of type | |||
layout4. If a file has a single striping pattern, then logr_layout | layout4. If a file has a single striping pattern, then logr_layout | |||
will contain just one entry. Otherwise, if the requested range | will contain just one entry. Otherwise, if the requested range | |||
overlaps more than one striping pattern, logr_layout will contain the | overlaps more than one striping pattern, logr_layout will contain the | |||
required number of entries. | required number of entries. | |||
The metadata server may adjust the range of the returned layout based | The metadata server may adjust the range of the returned layout based | |||
on the usage implied by the loga_iomode. The client must be prepared | on the usage implied by the loga_iomode. The client must be prepared | |||
to get a layout that does not align exactly with its request. There | to get a layout that does not align exactly with its request. The | |||
MUST be at least an overlap of loga_minlength between the layout | lo_length field in each element of logr_layout SHOULD be at least as | |||
returned by the server and the client's request, or the server SHOULD | long as loga_minlength or the server SHOULD reject the request. See | |||
reject the request. See Section 12.5.2 for more details. | Section 12.5.2 for more details. | |||
The metadata server may also return a layout with an lo_iomode other | The metadata server may also return a layout with an lo_iomode other | |||
than that requested by the client. If it does so, it must ensure | than that requested by the client. If it does so, it must ensure | |||
that the lo_iomode is more permissive than the loga_iomode requested. | that the lo_iomode is more permissive than the loga_iomode requested. | |||
For example, this behavior allows an implementation to upgrade read- | For example, this behavior allows an implementation to upgrade read- | |||
only requests to read/write requests at its discretion, within the | only requests to read/write requests at its discretion, within the | |||
limits of the layout type specific protocol. A lo_iomode of either | limits of the layout type specific protocol. A lo_iomode of either | |||
LAYOUTIOMODE4_READ or LAYOUTIOMODE4_RW must be returned. | LAYOUTIOMODE4_READ or LAYOUTIOMODE4_RW must be returned. | |||
The logr_return_on_close result field is a directive to return the | The logr_return_on_close result field is a directive to return the | |||
skipping to change at page 471, line 34 | skipping to change at page 482, line 34 | |||
layoutreturn_stateid lorr_stateid; | layoutreturn_stateid lorr_stateid; | |||
default: | default: | |||
void; | void; | |||
}; | }; | |||
18.44.3. DESCRIPTION | 18.44.3. DESCRIPTION | |||
This operation returns one or more layouts represented by the client | This operation returns one or more layouts represented by the client | |||
ID (derived from the sessionid in the preceding SEQUENCE operation), | ID (derived from the sessionid in the preceding SEQUENCE operation), | |||
lora_layout_type, and lora_iomode. When lr_returntype is | lora_layout_type, and lora_iomode. When lr_returntype is | |||
LAYOUTRETURN4_FILE the returned layout is further identified by the | LAYOUTRETURN4_FILE, the returned layout is further identified by the | |||
current filehandle, lrf_offset, lrf_length, and lrf_stateid. When | current filehandle, lrf_offset, lrf_length, and lrf_stateid. If the | |||
lr_returntype is LAYOUTRETURN4_FSID the current filehandle is used to | lrf_length is all 1s, all bytes of the layout, starting at lrf_offset | |||
identify the file system and all layouts matching the client ID, | are returned. When lr_returntype is LAYOUTRETURN4_FSID the current | |||
lora_layout_type, and lora_iomode are returned. When lr_returntype | filehandle is used to identify the file system and all layouts | |||
is LAYOUTRETURN4_ALL all layouts matching the client ID, | matching the client ID, lora_layout_type, and lora_iomode are | |||
lora_layout_type, and lora_iomode are returned and the current | returned. When lr_returntype is LAYOUTRETURN4_ALL all layouts | |||
filehandle is not used. After this call, the client MUST NOT use the | matching the client ID, lora_layout_type, and lora_iomode are | |||
returned layout(s) and the associated storage protocol to access the | returned and the current filehandle is not used. After this call, | |||
file data. | the client MUST NOT use the returned layout(s) and the associated | |||
storage protocol to access the file data. | ||||
When lr_returntype is LAYOUTRETURN4_FILE, the layout being returned | If the set of layouts designated in the case of LAYOUTRETURN4_FSID or | |||
may be a subdivision of a layout previously obtained with LAYOUTGET. | LAYOUTRETURN4_ALL is empty, than no error results. In the case of | |||
The layout being returned may also be a subset or superset of a | LAYOUTRETURN4_FILE, the byte range specified is return evened if that | |||
layout specified by CB_LAYOUTRECALL. However, if it is a subset, the | is a subdivision of a layout previously obtained with LAYOUTGET, a | |||
recall is not complete until the full recalled scope has been | combination of multiple layouts previously obtained with LAYOUTGET, | |||
returned. Recalled scope refers to the byte range in the case of | or a combination including some layouts previously obtained with | |||
LAYOUTGET, and one or more subdivisions of such layouts. When the | ||||
byte range does not designate any bytes for which a layout is held | ||||
for the specified file, client ID, layout type and mode, no error | ||||
results. | ||||
The layout being returned may be a subset or superset of a layout | ||||
specified by CB_LAYOUTRECALL. However, if it is a subset, the recall | ||||
is not complete until the full recalled scope has been returned. | ||||
Recalled scope refers to the byte range in the case of | ||||
LAYOUTRETURN4_FILE, use of LAYOUTRETURN4_FSID, or the use of | LAYOUTRETURN4_FILE, use of LAYOUTRETURN4_FSID, or the use of | |||
LAYOUTRETURN4_ALL. It is also permissible, and no error should | LAYOUTRETURN4_ALL. There must be a LAYOUTRETURN with a matching | |||
result, for a client to return a byte range covering a layout it does | scope to complete the return even if all current layout ranges have | |||
not hold. If the lrf_length is all 1s, the layout covers the range | been previously individually returned. | |||
from lrf_offset to EOF. | ||||
For all lr_returntype values, an iomode of LAYOUTIOMODE4_ANY | For all lr_returntype values, an iomode of LAYOUTIOMODE4_ANY | |||
specifies that all layouts that match the other arguments to | specifies that all layouts that match the other arguments to | |||
LAYOUTRETURN (i.e., client ID, lora_layout_type, and one of current | LAYOUTRETURN (i.e., client ID, lora_layout_type, and one of current | |||
filehandle and range; fsid derived from current filehandle; or | filehandle and range; fsid derived from current filehandle; or | |||
LAYOUTRETURN4_ALL) are being returned. | LAYOUTRETURN4_ALL) are being returned. | |||
In the case that lr_returntype is LAYOUTRETURN4_FILE, the lrf_stateid | In the case that lr_returntype is LAYOUTRETURN4_FILE, the lrf_stateid | |||
provided by the client is a layout stateid as returned from previous | provided by the client is a layout stateid as returned from previous | |||
layout operations. | layout operations. Although the precise value returned (with a non- | |||
zero seqid) may be used, it is generally best to use the same "other" | ||||
value and set the seqid to zero. | ||||
When lr_returntype is set to LAYOUTRETURN4_FSID or LAYOUTRETURN4_ALL | Return of a layout or all layouts does not invalidate the mapping of | |||
the client also invalidates all the storage device ID to storage | storage device ID to storage device address which remains in effect | |||
device address in the affected file system(s). Any device ID | until specifically recalled or changed via notification callbacks. | |||
returned by a subsequent LAYOUTGET in the affected file system(s) | ||||
will have to be resolved using either GETDEVICEINFO or GETDEVICELIST. | ||||
The lora_reclaim field set to TRUE in a LAYOUTRETURN request | The lora_reclaim field set to TRUE in a LAYOUTRETURN request | |||
specifies that the client is attempting to return a layout that was | specifies that the client is attempting to return a layout that was | |||
acquired before the reboot of the metadata server during the metadata | acquired before the reboot of the metadata server during the metadata | |||
server's grace period. When returning layouts that were acquired | server's grace period. When returning layouts that were acquired | |||
during the metadata server's grace period MUST set the lora_reclaim | during the metadata server's grace period MUST set the lora_reclaim | |||
field to FALSE. The lora_reclaim field MUST be set to FALSE also | field to FALSE. The lora_reclaim field MUST be set to FALSE also | |||
when lr_layoutreturn is LAYOUTRETURN4_FSID or LAYOUTRETURN4_ALL. See | when lr_layoutreturn is LAYOUTRETURN4_FSID or LAYOUTRETURN4_ALL. See | |||
LAYOUTCOMMIT (Section 18.42) for more details. | LAYOUTCOMMIT (Section 18.42) for more details. | |||
Layouts may be returned when recalled or voluntarily (i.e., before | Layouts may be returned when recalled or voluntarily (i.e., before | |||
the server has recalled them). In either case the client must | the server has recalled them). In either case the client must | |||
properly propagate state changed under the context of the layout to | properly propagate state changed under the context of the layout to | |||
the storage device(s)or to the metadata server before returning the | the storage device(s)or to the metadata server before returning the | |||
layout. | layout. | |||
If the client is returning the layout in response to a | If the client is returning the layout in response to a | |||
CB_LAYOUTRECALL where the lor_recalltype was LAYOUTRECALL4_FILE, the | CB_LAYOUTRECALL where the lor_recalltype was LAYOUTRECALL4_FILE, the | |||
client should include the lor_stateid value as the lora_recallstateid | client should include the lor_stateid value as the lora_recallstateid | |||
value. If a client fails to return a layout in a timely manner, then | value. This is done to indicate the point in time (in terms of | |||
the metadata server should use its control protocol with the storage | layout stateid transitions) when the recall was issued. The client | |||
must use the precise lora_recallstateid value and not set the seqid | ||||
to zero. Otherwise NFS4ERR_BAD_STATEID will be returned. This | ||||
stateid is not subject to checking for the NFS4ERR_OLD_STATEID error. | ||||
When this LAYOUTRETURN is not in response to CB_LAYOUTRECALL where | ||||
the lor_recalltype was LAYOUTRECALL4_FILE, the lor_stateid should be | ||||
the special stateid consisting of all zeros. | ||||
If a client fails to return a layout in a timely manner, then the | ||||
metadata server should use its control protocol with the storage | ||||
devices to fence the client from accessing the data referenced by the | devices to fence the client from accessing the data referenced by the | |||
layout. See Section 12.5.4 for more details. | layout. See Section 12.5.4 for more details. | |||
If the layout identified in the arguments does not exist, the error | ||||
NFS4ERR_BADLAYOUT is returned. If a layout exists, but the iomode | ||||
does not match, NFS4ERR_BADIOMODE is returned. [[Comment.6: This | ||||
error return description does not align with the statement above that | ||||
the client should not receive an error when it returns a layout that | ||||
it does not hold.]] | ||||
If the LAYOUTRETURN request sets the lora_reclaim field to TRUE after | If the LAYOUTRETURN request sets the lora_reclaim field to TRUE after | |||
the metadata server's grace period, NFS4ERR_NO_GRACE is returned. | the metadata server's grace period, NFS4ERR_NO_GRACE is returned. | |||
If the LAYOUTRETURN request sets the lora_reclaim field to TRUE and | If the LAYOUTRETURN request sets the lora_reclaim field to TRUE and | |||
lr_returntype is set to LAYOUTRETURN4_FSID or LAYOUTRETURN4_ALL, | lr_returntype is set to LAYOUTRETURN4_FSID or LAYOUTRETURN4_ALL, | |||
NFS4ERR_INVAL is returned. | NFS4ERR_INVAL is returned. | |||
If the operation specified lr_returntype of LAYOUTRETURN4_FILE, then | If the operation specified lr_returntype of LAYOUTRETURN4_FILE, then | |||
the lorr_stateid will represent the layout stateid as updated for | the lorr_stateid will represent the layout stateid as updated for | |||
this operation's processing; the current stateid will also be updated | this operation's processing; the current stateid will also be updated | |||
to match the returned value. | to match the returned value. If the last byte of any layout for the | |||
current file, client ID, and layout type is being return and there | ||||
are not remaining pending CB_LAYOUTRECALL operation for which a | ||||
LAYOUTRETURN operation must be done as a completing operation, this | ||||
satteid value may be the speical stateid consisting of all zeros. | ||||
On success, the current filehandle retains its value. | On success, the current filehandle retains its value. | |||
The server MAY require that the principal, security flavor, and | The server MAY require that the principal, security flavor, and | |||
applicable, the GSS mechanism, combination that acquired the layout | applicable, the GSS mechanism, combination that acquired the layout | |||
also be the one to issue LAYOUTRETURN. This might not be possible if | also be the one to issue LAYOUTRETURN. This might not be possible if | |||
credentials for the principal are no longer available. The server | credentials for the principal are no longer available. The server | |||
MAY allow the machine credential or SSV credential (see | MAY allow the machine credential or SSV credential (see | |||
Section 18.35) to issue DELEGRETURN. | Section 18.35) to issue LAYOUTRETURN. | |||
18.44.4. IMPLEMENTATION | 18.44.4. IMPLEMENTATION | |||
The final LAYOUTRETURN operation in response to a CB_LAYOUTRECALL | The final LAYOUTRETURN operation in response to a CB_LAYOUTRECALL | |||
callback MUST be serialized with any outstanding, intersecting | callback MUST be serialized with any outstanding, intersecting | |||
LAYOUTRETURN operations. Note that it is possible that while a | LAYOUTRETURN operations. Note that it is possible that while a | |||
client is returning the layout for some recalled range the server may | client is returning the layout for some recalled range the server may | |||
recall a superset of that range (e.g. LAYOUTRECALL4_ALL); the final | recall a superset of that range (e.g. LAYOUTRECALL4_ALL); the final | |||
return operation for the latter must block until the former layout | return operation for the latter must block until the former layout | |||
recall is done - when its corresponding final return operation is | recall is done - when its corresponding final return operation is | |||
skipping to change at page 488, line 24 | skipping to change at page 499, line 24 | |||
client is indicating no desire for a delegation and the server MUST | client is indicating no desire for a delegation and the server MUST | |||
return NFS4ERR_INVAL. | return NFS4ERR_INVAL. | |||
The client uses the OPEN4_SHARE_ACCESS_WANT_NO_DELEG flag in the | The client uses the OPEN4_SHARE_ACCESS_WANT_NO_DELEG flag in the | |||
WANT_DELEGATION operation to cancel a previously requested want for a | WANT_DELEGATION operation to cancel a previously requested want for a | |||
delegation. Note that if the server is in the process of sending the | delegation. Note that if the server is in the process of sending the | |||
delegation (via CB_PUSH_DELEG) at the time the client issues a | delegation (via CB_PUSH_DELEG) at the time the client issues a | |||
cancellation of the want, the delegation might still be pushed to the | cancellation of the want, the delegation might still be pushed to the | |||
client. | client. | |||
If WANT_DELEGATION fails to return a delegation, and the server | ||||
returns NFS4_OK, the server MUST set the delegation type to | ||||
OPEN4_DELEGATE_NONE_EXT, and set od_whynone, as described in | ||||
Section 18.16. Write delegations are not available for file types | ||||
that are not writeable. This includes file objects of types: NF4BLK, | ||||
NF4CHR, NF4LNK, NF4SOCK, and NF4FIFO. If the client requests | ||||
OPEN4_SHARE_ACCESS_WANT_WRITE_DELEG without | ||||
OPEN4_SHARE_ACCESS_WANT_READ_DELEG on an object with one of the | ||||
aforementioned file types, the server must set | ||||
WND4_WRITE_DELEG_NOT_SUPP_FTYPE. | ||||
18.49.4. IMPLEMENTATION | 18.49.4. IMPLEMENTATION | |||
A request for a conflicting delegation is not normally intended to | A request for a conflicting delegation is not normally intended to | |||
trigger the recall of the existing delegation. Servers may choose to | trigger the recall of the existing delegation. Servers may choose to | |||
treat some clients as having higher priority such that their wants | treat some clients as having higher priority such that their wants | |||
will trigger recall of an existing delegation, although that is | will trigger recall of an existing delegation, although that is | |||
expected to be an unusual situation. | expected to be an unusual situation. | |||
Servers will generally recall delegations assigned by WANT_DELEGATION | Servers will generally recall delegations assigned by WANT_DELEGATION | |||
on the same basis as those assigned by OPEN. CB_RECALL will | on the same basis as those assigned by OPEN. CB_RECALL will | |||
skipping to change at page 517, line 7 | skipping to change at page 528, line 7 | |||
NFSv4.1 security considerations are primarily about protecting file | NFSv4.1 security considerations are primarily about protecting file | |||
objects, locking state, and session state. This specification | objects, locking state, and session state. This specification | |||
includes features for strong authentication (Section 2.2.1), | includes features for strong authentication (Section 2.2.1), | |||
integrity, and privacy, as well as a rich access control mechanism | integrity, and privacy, as well as a rich access control mechanism | |||
(Section 2.8.1) for protecting file objects. The specification uses | (Section 2.8.1) for protecting file objects. The specification uses | |||
the SSV is used to provide strong protection of lock and session | the SSV is used to provide strong protection of lock and session | |||
state from unauthorized changes (Section 2.10.7.3). | state from unauthorized changes (Section 2.10.7.3). | |||
22. IANA Considerations | 22. IANA Considerations | |||
22.1. Defining New Notifications | 22.1. Named Attribute Definitions | |||
The NFS version 4 protocol provides for the association of named | ||||
attributes to files. The name space identifiers for these attributes | ||||
are defined as string names. The protocol does not define the | ||||
specific assignment of the name space for these file attributes. | ||||
Even though the name space is not specifically controlled to prevent | ||||
collisions, an IANA registry has been created for the registration of | ||||
NFS version 4 named attributes. Registration will be achieved | ||||
through the publication of an Informational RFC and will require not | ||||
only the name of the attribute but the syntax and semantics of the | ||||
named attribute contents; the intent is to promote interoperability | ||||
where common interests exist. While application developers are | ||||
allowed to define and use attributes as needed, they are encouraged | ||||
to register the attributes with IANA. | ||||
Such registered named attributes are presumed to apply to all minor | ||||
versions of NFSv4, including those defined subsequently to the | ||||
registration. Where the named attribute is intended to be limited | ||||
with regard to the minor versions for which they are ot be used, the | ||||
Informational RFC must clearly state the applicable limits. | ||||
22.2. ONC RPC Network Identifiers (netids) | ||||
The sub-section on the netaddr4 data srucure within the section | ||||
"Structured Data Types" (Section 3.2.11) discussed the r_netid field | ||||
and the corresponding r_addr field within a netaddr4 structure. The | ||||
NFS version 4 protocol depends on the syntax and semantics of these | ||||
fields to effectively communicate callback information between client | ||||
and server. Therefore, an IANA registry has been created to include | ||||
the values defined in this document and to allow for future expansion | ||||
based on transport usage/availability. Additions to this ONC RPC | ||||
Network Identifier registry must be done with the publication of an | ||||
RFC. | ||||
The initial values for this registry are as follows (some of this | ||||
text is replicated from Section 3.2.11 for clarity): | ||||
The Network Identifier (or r_netid for short) is used to specify a | ||||
transport protocol and associated universal address (or r_addr for | ||||
short). The syntax of the Network Identifier is a US-ASCII string. | ||||
The initial definitions for r_netid are: | ||||
"tcp" - TCP over IP version 4 | ||||
"udp" - UDP over IP version 4 | ||||
"tcp6" - TCP over IP version 6 | ||||
"udp6" - UDP over IP version 6 | ||||
Note: the '"' marks are used for delimiting the strings for this | ||||
document and are not part of the Network Identifier string. | ||||
For the "tcp" and "udp" Network Identifiers the Universal Address or | ||||
r_addr (for IPv4) is a US-ASCII string and is of the form: | ||||
h1.h2.h3.h4.p1.p2 | ||||
The prefix, "h1.h2.h3.h4", is the standard textual form for | ||||
representing an IPv4 address, which is always four octets long. | ||||
Assuming big-endian ordering, h1, h2, h3, and h4, are respectively, | ||||
the first through fourth octets each converted to ASCII-decimal. | ||||
Assuming big-endian ordering, p1 and p2 are, respectively, the first | ||||
and second octets each converted to ASCII-decimal. For example, if a | ||||
host, in big-endian order, has an address of 0x0A010307 and there is | ||||
a service listening on, in big endian order, port 0x020F (decimal | ||||
527), then complete universal address is "10.1.3.7.2.15". | ||||
For the "tcp6" and "udp6" Network Identifiers the Universal Address | ||||
or r_addr (for IPv6) is a US-ASCII string and is of the form: | ||||
x1:x2:x3:x4:x5:x6:x7:x8.p1.p2 | ||||
The suffix "p1.p2" is the service port, and is computed the same way | ||||
as with universal addresses for "tcp" and "udp". The prefix, "x1:x2: | ||||
x3:x4:x5:x6:x7:x8", is the standard textual form for representing an | ||||
IPv6 address as defined in Section 2.2 of RFC2373 [12]. | ||||
Additionally, the two alternative forms specified in Section 2.2 of | ||||
RFC2373 [12] are also acceptable. | ||||
As mentioned, the registration of new Network Identifiers will | ||||
require the publication of an Informational RFC with similar detail | ||||
as listed above for the Network Identifier itself and corresponding | ||||
Universal Address. | ||||
22.3. Defining New Notifications | ||||
New notification types may be added to the CB_NOTIFY operation | New notification types may be added to the CB_NOTIFY operation | |||
Section 20.4. This can be done via changes to the operations that | Section 20.4. This can be done via changes to the operations that | |||
register notifications, or by adding new operations to NFSv4. This | register notifications, or by adding new operations to NFSv4. This | |||
requires a new minor version of NFSv4, and requires a standards track | requires a new minor version of NFSv4, and requires a standards track | |||
document from IETF. Another way to add a notification is to specify | document from IETF. Another way to add a notification is to specify | |||
a new layout type. Notifications for new layout types would be | a new layout type. Notifications for new layout types would be | |||
requested via GETDEVICELIST (Section 18.41) and GETDEVICEINFO | requested via GETDEVICELIST (Section 18.41) and GETDEVICEINFO | |||
(Section 18.40). See Section 22.2). | (Section 18.40). See Section 22.4). | |||
22.2. Defining new layout types | 22.4. Defining new layout types | |||
New layout type numbers will be requested from IANA. IANA will only | New layout type numbers will be requested from IANA. IANA will only | |||
provide layout type numbers for Standards Track RFCs approved by the | provide layout type numbers for Standards Track RFCs approved by the | |||
IESG, in accordance with Standards Action policy defined in RFC2434 | IESG, in accordance with Standards Action policy defined in RFC2434 | |||
[19]. | [19]. | |||
The author of a new pNFS layout specification must follow these steps | The author of a new pNFS layout specification must follow these steps | |||
to obtain acceptance of the layout type as a standard: | to obtain acceptance of the layout type as a standard: | |||
1. The author devises the new layout specification. | 1. The author devises the new layout specification. | |||
skipping to change at page 518, line 27 | skipping to change at page 531, line 22 | |||
4. The author submits the Internet Draft for review through the IETF | 4. The author submits the Internet Draft for review through the IETF | |||
standards process as defined in "Internet Official Protocol | standards process as defined in "Internet Official Protocol | |||
Standards" (STD 1). The new layout specification will be | Standards" (STD 1). The new layout specification will be | |||
submitted for eventual publication as a standards track RFC. | submitted for eventual publication as a standards track RFC. | |||
5. The layout specification progresses through the IETF standards | 5. The layout specification progresses through the IETF standards | |||
process; the new option will be reviewed by the NFSv4 Working | process; the new option will be reviewed by the NFSv4 Working | |||
Group (if that group still exists), or as an Internet Draft not | Group (if that group still exists), or as an Internet Draft not | |||
submitted by an IETF working group. | submitted by an IETF working group. | |||
22.3. Named Attribute Definitions | 22.5. Path Variable Definitions | |||
Named attribute definitions will be managed in accord with the | ||||
process described in Section 17.1 of [20], the RFC describing NFSv4. | ||||
Named attributes when registered by this process are presumed to be | ||||
valid for minor version 1 as well as for minor version 0. The | ||||
Informational RFC may specify otherwise however if the use of a | ||||
specific named attribute is intended to be restricted to to | ||||
particular minor version. | ||||
22.4. Path Variable Definitions | ||||
This section deal with the IANA considerations associated the the | This section deals with the IANA considerations associated the the | |||
variable substituion feature for location names as described in | variable substituion feature for location names as described in | |||
Section 11.9.3. As described there, variables subject to | Section 11.9.3. As described there, variables subject to | |||
substitution consist of a domain name and a specific name within that | substitution consist of a domain name and a specific name within that | |||
domain, with two separated by a colon. | domain, with two separated by a colon. | |||
22.4.1. Path Variable Values | 22.5.1. Path Variable Values | |||
For names with the domain "ietf.org" only three specific names are | For names with the domain "ietf.org" only three specific names are | |||
currently defined and additional names will only be created via | currently defined and additional names will only be created via | |||
standards-track RFC's. | standards-track RFC's. | |||
For the variable names ${ietf.org:CPU_ARCH} and ${ietf.org:OS_TYPE}, | For the variable names ${ietf.org:CPU_ARCH} and ${ietf.org:OS_TYPE}, | |||
IANA will have to create a registry of values to be used for that | IANA will have to create a registry of values to be used for that | |||
variable. | variable. Applications for such values must contain the variable | |||
name, the proposed value of that variable, and a brief (one or two | ||||
paragraphs) explanation of what is indicated by that specific value. | ||||
Such requests should be reviewed by nfsv4@ietf.org and a Designated | ||||
Expert. | ||||
For the name ${ietf.org:OS_VERSION}, no such registry need be created | For the name ${ietf.org:OS_VERSION}, no such registry need be created | |||
as the specifics of the values will vary with the value of | as the specifics of the values will vary with the value of | |||
${ietf.org:OS_TYPE}. | ${ietf.org:OS_TYPE}. | |||
22.4.2. Path Variable Names | 22.5.2. Path Variable Names | |||
IANA needs to set up a registry to help make generally available | IANA needs to set up a registry to help make generally available | |||
information about variables of the form ${domain:var}, domain is | information about variables of the form ${domain:var}, where domain | |||
something other than "ietf.org". The registery should consist of | is something other than "ietf.org". | |||
vaues of the domain together with a web address within the specified | ||||
domain where people can go to get current definitions of all the | Applications for the addition of variables to this registry should | |||
variable name values associated with that particular domain, and the | contain the name of the variable and a brief (one or a few | |||
specifics of each of those variable names, including the range of | paragraphs) explanation of the purpose of the variable. No review of | |||
acceptable values and their meanings. The format of this description | these applications by IANA is necessary. | |||
is up to the domain owner. | ||||
23. References | 23. References | |||
23.1. Normative References | 23.1. Normative References | |||
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement | [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement | |||
Levels", March 1997. | Levels", March 1997. | |||
[2] Eisler, M., "XDR: External Data Representation Standard", | [2] Eisler, M., "XDR: External Data Representation Standard", | |||
STD 67, RFC 4506, May 2006. | STD 67, RFC 4506, May 2006. | |||
skipping to change at page 520, line 18 | skipping to change at page 533, line 6 | |||
[10] Recio, P., Culley, P., Garcia, D., Hilland, J., and B. Metzler, | [10] Recio, P., Culley, P., Garcia, D., Hilland, J., and B. Metzler, | |||
"A Remote Direct Memory Access Protocol Specification - A Work | "A Remote Direct Memory Access Protocol Specification - A Work | |||
in Progress", Internet Draft draft-ietf-nfsv4-rpcrdma-05, | in Progress", Internet Draft draft-ietf-nfsv4-rpcrdma-05, | |||
September 2006. | September 2006. | |||
[11] Krawczyk, H., Bellare, M., and R. Canetti, "HMAC: Keyed-Hashing | [11] Krawczyk, H., Bellare, M., and R. Canetti, "HMAC: Keyed-Hashing | |||
for Message Authentication", RFC 2104, February 1997. | for Message Authentication", RFC 2104, February 1997. | |||
[12] Hinden, R. and S. Deering, "IP Version 6 Addressing | [12] Hinden, R. and S. Deering, "IP Version 6 Addressing | |||
Architecture", RFC 1884, December 1995. | Architecture", RFC 2373, July 1998. | |||
[13] International Organization for Standardization, "Information | [13] International Organization for Standardization, "Information | |||
Technology - Universal Multiple-octet coded Character Set (UCS) | Technology - Universal Multiple-octet coded Character Set (UCS) | |||
- Part 1: Architecture and Basic Multilingual Plane", | - Part 1: Architecture and Basic Multilingual Plane", | |||
ISO Standard 10646-1, May 1993. | ISO Standard 10646-1, May 1993. | |||
[14] Alvestrand, H., "IETF Policy on Character Sets and Languages", | [14] Alvestrand, H., "IETF Policy on Character Sets and Languages", | |||
BCP 18, RFC 2277, January 1998. | BCP 18, RFC 2277, January 1998. | |||
[15] Hoffman, P. and M. Blanchet, "Preparation of Internationalized | [15] Hoffman, P. and M. Blanchet, "Preparation of Internationalized | |||
End of changes. 274 change blocks. | ||||
864 lines changed or deleted | 1408 lines changed or added | |||
This html diff was produced by rfcdiff 1.34. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |