Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
1.6 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Copyright (C) 2000, Microsoft Corporation.
  4. //
  5. // File: name_table.h
  6. //
  7. // Contents: The DFS Name Table
  8. //
  9. //--------------------------------------------------------------------------
  10. #ifndef __DFSNAMETABLE_H__
  11. #define __DFSNAMETABLE_H__
  12. #include <dfsheader.h>
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. struct _DFS_NAME_TABLE;
  17. NTSTATUS
  18. DfsInitializeNameTable(
  19. IN ULONG NumBuckets,
  20. OUT struct _DFS_NAME_TABLE **ppNameTable);
  21. NTSTATUS
  22. DfsInsertInNameTableLocked(
  23. IN struct _DFS_NAME_TABLE *pNameTable,
  24. IN PUNICODE_STRING pName,
  25. IN PVOID pData );
  26. NTSTATUS
  27. DfsLookupNameTableLocked(
  28. IN struct _DFS_NAME_TABLE *pNameTable,
  29. IN PUNICODE_STRING pLookupName,
  30. OUT PVOID *ppData );
  31. NTSTATUS
  32. DfsGetEntryNameTableLocked(
  33. IN struct _DFS_NAME_TABLE *pNameTable,
  34. OUT PVOID *ppData );
  35. NTSTATUS
  36. DfsRemoveFromNameTableLocked(
  37. IN struct _DFS_NAME_TABLE *pNameTable,
  38. IN PUNICODE_STRING pLookupName,
  39. IN PVOID pData );
  40. NTSTATUS
  41. DfsReplaceInNameTableLocked(
  42. IN struct _DFS_NAME_TABLE *pNameTable,
  43. IN PUNICODE_STRING pLookupName,
  44. IN OUT PVOID *ppData );
  45. NTSTATUS
  46. DfsDereferenceNameTable(
  47. IN struct _DFS_NAME_TABLE *pNameTable );
  48. NTSTATUS
  49. DfsReferenceNameTable(
  50. IN struct _DFS_NAME_TABLE *pNameTable );
  51. NTSTATUS
  52. DfsNameTableAcquireReadLock(
  53. IN struct _DFS_NAME_TABLE *pNameTable );
  54. NTSTATUS
  55. DfsNameTableAcquireWriteLock(
  56. IN struct _DFS_NAME_TABLE *pNameTable );
  57. NTSTATUS
  58. DfsNameTableReleaseLock(
  59. IN struct _DFS_NAME_TABLE *pNameTable );
  60. #ifdef __cplusplus
  61. }
  62. #endif
  63. #endif // __DFSNAMETABLE_H__