Leaked source code of windows server 2003
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.

66 lines
1.4 KiB

  1. #include "stdinc.h"
  2. #include <setupapi.h>
  3. #include <sxsapi.h>
  4. #include "identhandles.h"
  5. NTSTATUS
  6. RtlAllocateIdentityHandle(
  7. PRTLSXS_ASM_IDENT_HANDLE_TABLE pHandleTable,
  8. PHANDLE pHandle,
  9. PASSEMBLY_IDENTITY pIdentity
  10. )
  11. {
  12. NTSTATUS status = STATUS_SUCCESS;
  13. PRTLSXS_ASM_IDENT_HANDLE_TABLE_SLOT pTargetSlot = NULL;
  14. ULONG ul = 0;
  15. for (ul = 0; ul < pHandleTable->ulInlineCount; ul++) {
  16. if (pHandleTable->InlineList[ul].pIdentity == NULL) {
  17. pTargetSlot = pHandleTable->InlineList + ul;
  18. break;
  19. }
  20. }
  21. if ((pTargetSlot == NULL) && pHandleTable->HeapList) {
  22. for (ul = 0; ul < pHandleTable->ulHeapCount; ul++) {
  23. if (pHandleTable->HeapList[ul].pIdentity == NULL) {
  24. pTargetSlot = pHandleTable->HeapList + ul;
  25. break;
  26. }
  27. }
  28. }
  29. //
  30. // Still no slot found? Resize the heap list
  31. //
  32. if (pTargetSlot == NULL) {
  33. }
  34. if (pTargetSlot == NULL) {
  35. }
  36. return status;
  37. }
  38. NTSTATUS
  39. RtlFreeIdentityHandle(
  40. PRTLSXS_ASM_IDENT_HANDLE_TABLE pHandleTable,
  41. PHANDLE pHandle,
  42. )
  43. {
  44. return STATUS_NOT_IMPLEMENTED;
  45. }
  46. NTSTATUS
  47. RtlDerefIdentityHandle(
  48. PRTLSXS_ASM_IDENT_HANDLE_TABLE pHandleTable,
  49. HANDLE hHandle,
  50. PASSEMBLY_IDENTITY *ppAsmIdent
  51. )
  52. {
  53. return STATUS_NOT_IMPLEMENTED;
  54. }