leechcorepyc 2.22.1__tar.gz → 2.22.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. {leechcorepyc-2.22.1/leechcorepyc.egg-info → leechcorepyc-2.22.2}/PKG-INFO +1 -1
  2. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_hibr.c +17 -17
  3. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/version.h +2 -2
  4. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2/leechcorepyc.egg-info}/PKG-INFO +1 -1
  5. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/setup.py +1 -1
  6. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/MANIFEST.in +0 -0
  7. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/Makefile +0 -0
  8. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/README +0 -0
  9. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/files/dummy +0 -0
  10. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/includes/leechcore.h +0 -0
  11. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/includes/leechcore_device.h +0 -0
  12. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/includes/leechgrpc.h +0 -0
  13. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/includes/libpdbcrust.h +0 -0
  14. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/includes/vmmdll.h +0 -0
  15. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/includes/vmmyara.h +0 -0
  16. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/Makefile +0 -0
  17. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/Makefile.macos +0 -0
  18. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_file.c +0 -0
  19. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_fpga.c +0 -0
  20. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_pmem.c +0 -0
  21. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_tmd.c +0 -0
  22. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_usb3380.c +0 -0
  23. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_vmm.c +0 -0
  24. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/device_vmware.c +0 -0
  25. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechcore.c +0 -0
  26. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechcore.h +0 -0
  27. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechcore.rc +0 -0
  28. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechcore_device.h +0 -0
  29. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechcore_internal.h +0 -0
  30. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechrpc.h +0 -0
  31. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechrpc.idl +0 -0
  32. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechrpc_c.c +0 -0
  33. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechrpc_h.h +0 -0
  34. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechrpcclient.c +0 -0
  35. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/leechrpcshared.c +0 -0
  36. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/memmap.c +0 -0
  37. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/ob/ob.h +0 -0
  38. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/ob/ob_bytequeue.c +0 -0
  39. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/ob/ob_core.c +0 -0
  40. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/ob/ob_map.c +0 -0
  41. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/ob/ob_set.c +0 -0
  42. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/oscompatibility.c +0 -0
  43. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/oscompatibility.h +0 -0
  44. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/util.c +0 -0
  45. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore/util.h +0 -0
  46. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_qemu/Makefile +0 -0
  47. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_qemu/leechcore_device_qemu.c +0 -0
  48. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_rawtcp/Makefile +0 -0
  49. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_rawtcp/leechcore_device_rawtcp.c +0 -0
  50. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_rawtcp/oscompatibility.c +0 -0
  51. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_rawtcp/oscompatibility.h +0 -0
  52. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_rawtcp/plugin.rc +0 -0
  53. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_rawtcp/resource.h +0 -0
  54. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_device_rawtcp/version.h +0 -0
  55. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_ft601_driver_linux/Makefile +0 -0
  56. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_ft601_driver_linux/fpga_libusb.c +0 -0
  57. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_ft601_driver_linux/fpga_libusb.h +0 -0
  58. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_ft601_driver_linux/leechcore_ft601_driver_linux.c +0 -0
  59. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcore_ft601_driver_linux/leechcore_ft601_driver_linux.h +0 -0
  60. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcorepyc/__init__.py +0 -0
  61. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcorepyc.c +0 -0
  62. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcorepyc.egg-info/SOURCES.txt +0 -0
  63. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcorepyc.egg-info/dependency_links.txt +0 -0
  64. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcorepyc.egg-info/top_level.txt +0 -0
  65. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcorepyc.h +0 -0
  66. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/leechcorepyc_barrequest.c +0 -0
  67. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/Makefile +0 -0
  68. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/lznt1.h +0 -0
  69. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/Array.h +0 -0
  70. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/Bitstream.h +0 -0
  71. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/CircularBuffer.h +0 -0
  72. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/HuffmanDecoder.h +0 -0
  73. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/HuffmanEncoder.h +0 -0
  74. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/LZNT1Dictionary.h +0 -0
  75. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/LZNT1Dictionary_SA.h +0 -0
  76. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/XpressDictionary.h +0 -0
  77. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/config.h +0 -0
  78. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/general.h +0 -0
  79. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/internal.h +0 -0
  80. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp/sorting.h +0 -0
  81. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/mscomp.h +0 -0
  82. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/xpress.h +0 -0
  83. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/include/xpress_huff.h +0 -0
  84. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/src/lznt1_compress.cpp +0 -0
  85. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/src/lznt1_decompress.cpp +0 -0
  86. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/src/mscomp.cpp +0 -0
  87. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/src/xpress_compress.cpp +0 -0
  88. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/src/xpress_decompress.cpp +0 -0
  89. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/src/xpress_huff_compress.cpp +0 -0
  90. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/ms-compress/src/xpress_huff_decompress.cpp +0 -0
  91. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/oscompatibility.c +0 -0
  92. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/oscompatibility.h +0 -0
  93. {leechcorepyc-2.22.1 → leechcorepyc-2.22.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: leechcorepyc
3
- Version: 2.22.1
3
+ Version: 2.22.2
4
4
  Summary: LeechCore for Python
5
5
  Home-page: https://github.com/ufrisk/LeechCore
6
6
  Author: Ulf Frisk
@@ -2,7 +2,7 @@
2
2
  // Windows 8+.
3
3
  //
4
4
  // The hibernation file format of Windows 8+ is documented in the excellent
5
- // blog post by ForensicXlab at: https://www.forensicxlab.com/posts/hibernation/
5
+ // blog post by ForensicXlab at: https://www.forensicxlab.com/blog/hibernation
6
6
  // Also the original paper at: https://www.cct.lsu.edu/~golden/Papers/sylvehiber.pdf
7
7
  //
8
8
  // (c) Ulf Frisk, 2024-2025
@@ -32,7 +32,7 @@ typedef struct tdHIBR_OFFSET {
32
32
  } HIBR_OFFSET, *PHIBR_OFFSET;
33
33
 
34
34
  const HIBR_OFFSET HIBR_OFFSET_PROFILES[] = {
35
- {.LengthSelf = 0x4d8, .f32 = FALSE, .PageSize = 0x18, .SystemTime = 0x20, .NumPagesForLoader = 0x58, .FirstBootRestorePage = 0x68, .FirstKernelRestorePage = 0x70, .KernelPagesProcessed = 0x230, .HighestPhysicalPage = 0x498}, // 64-bit build 26100
35
+ {.LengthSelf = 0x4d8, .f32 = FALSE, .PageSize = 0x18, .SystemTime = 0x20, .NumPagesForLoader = 0x58, .FirstBootRestorePage = 0x68, .FirstKernelRestorePage = 0x70, .KernelPagesProcessed = 0x238, .HighestPhysicalPage = 0x498}, // 64-bit build 26100
36
36
  {.LengthSelf = 0x448, .f32 = FALSE, .PageSize = 0x18, .SystemTime = 0x20, .NumPagesForLoader = 0x58, .FirstBootRestorePage = 0x68, .FirstKernelRestorePage = 0x70, .KernelPagesProcessed = 0x230, .HighestPhysicalPage = 0x400}, // 64-bit build 22621
37
37
  {.LengthSelf = 0x448, .f32 = FALSE, .PageSize = 0x18, .SystemTime = 0x20, .NumPagesForLoader = 0x58, .FirstBootRestorePage = 0x68, .FirstKernelRestorePage = 0x70, .KernelPagesProcessed = 0x230, .HighestPhysicalPage = 0x400}, // 64-bit build 22000
38
38
  {.LengthSelf = 0x448, .f32 = FALSE, .PageSize = 0x18, .SystemTime = 0x20, .NumPagesForLoader = 0x58, .FirstBootRestorePage = 0x68, .FirstKernelRestorePage = 0x70, .KernelPagesProcessed = 0x230, .HighestPhysicalPage = 0x400}, // 64-bit build 20348
@@ -109,7 +109,7 @@ typedef struct tdHIBR_COMPRESSION_SET_TABLE {
109
109
  HIBR_COMPRESSION_SET v[HIBR_COMPRESSION_TABLE_SIZE];
110
110
  } HIBR_COMPRESSION_SET_TABLE, *PHIBR_COMPRESSION_SET_TABLE;
111
111
 
112
- typedef struct tdDEVICE_CONTEXT_FILE {
112
+ typedef struct tdDEVICE_CONTEXT_HIBRFILE {
113
113
  FILE *hFile;
114
114
  QWORD cbFile;
115
115
  CHAR szFileName[MAX_PATH];
@@ -128,7 +128,7 @@ typedef struct tdDEVICE_CONTEXT_FILE {
128
128
  } CS_Cache[HIBR_NUM_CACHE_ENTRIES];
129
129
  BYTE pbBufferCompressedData[0x10000];
130
130
  BYTE pbWorkSpace[0x00100000];
131
- } DEVICE_CONTEXT_FILE, *PDEVICE_CONTEXT_FILE;
131
+ } DEVICE_CONTEXT_HIBRFILE, *PDEVICE_CONTEXT_HIBRFILE;
132
132
 
133
133
 
134
134
  //-----------------------------------------------------------------------------
@@ -143,7 +143,7 @@ typedef struct tdDEVICE_CONTEXT_FILE {
143
143
  * -- return = TRUE on success, FALSE on failure.
144
144
  */
145
145
  _Success_(return)
146
- BOOL DeviceHibr_InitializeFunctions(_In_ PDEVICE_CONTEXT_FILE ctx)
146
+ BOOL DeviceHibr_InitializeFunctions(_In_ PDEVICE_CONTEXT_HIBRFILE ctx)
147
147
  {
148
148
  HMODULE hNtDll = NULL;
149
149
  if((hNtDll = LoadLibraryA("ntdll.dll"))) {
@@ -208,7 +208,7 @@ NTSTATUS OSCOMPAT_RtlDecompressBufferEx(USHORT CompressionFormat, PUCHAR Uncompr
208
208
  * -- return = TRUE on success, FALSE on failure.
209
209
  */
210
210
  _Success_(return)
211
- BOOL DeviceHibr_InitializeFunctions(_In_ PDEVICE_CONTEXT_FILE ctx)
211
+ BOOL DeviceHibr_InitializeFunctions(_In_ PDEVICE_CONTEXT_HIBRFILE ctx)
212
212
  {
213
213
  void *lib_mscompress;
214
214
  CHAR szPathLib[MAX_PATH] = { 0 };
@@ -241,7 +241,7 @@ BOOL DeviceHibr_InitializeFunctions(_In_ PDEVICE_CONTEXT_FILE ctx)
241
241
  _Success_(return != NULL)
242
242
  PBYTE DeviceHibr_ReadPage(_In_ PLC_CONTEXT ctxLC, _In_ PHIBR_COMPRESSION_SET pCS, _In_ DWORD iCS, _In_ DWORD iPG)
243
243
  {
244
- PDEVICE_CONTEXT_FILE ctx = (PDEVICE_CONTEXT_FILE)ctxLC->hDevice;
244
+ PDEVICE_CONTEXT_HIBRFILE ctx = (PDEVICE_CONTEXT_HIBRFILE)ctxLC->hDevice;
245
245
  NTSTATUS nt;
246
246
  PBYTE pbBufferUncompressed;
247
247
  DWORD i, cbUncompressed, cbUncompressedResult = 0;
@@ -287,7 +287,7 @@ PBYTE DeviceHibr_ReadPage(_In_ PLC_CONTEXT ctxLC, _In_ PHIBR_COMPRESSION_SET pCS
287
287
  */
288
288
  VOID DeviceHibr_ReadScatter(_In_ PLC_CONTEXT ctxLC, _In_ DWORD cpMEMs, _Inout_ PPMEM_SCATTER ppMEMs)
289
289
  {
290
- PDEVICE_CONTEXT_FILE ctx = (PDEVICE_CONTEXT_FILE)ctxLC->hDevice;
290
+ PDEVICE_CONTEXT_HIBRFILE ctx = (PDEVICE_CONTEXT_HIBRFILE)ctxLC->hDevice;
291
291
  DWORD iMEM, iCS, iPG;
292
292
  QWORD qwPfn;
293
293
  PBYTE pbPage;
@@ -335,7 +335,7 @@ VOID DeviceHibr_ReadScatter(_In_ PLC_CONTEXT ctxLC, _In_ DWORD cpMEMs, _Inout_ P
335
335
  */
336
336
  VOID DeviceHibr_HibrInitialize_RestoreSet(_In_ PLC_CONTEXT ctxLC, _In_ QWORD cbo, _In_ QWORD cPageTotal)
337
337
  {
338
- PDEVICE_CONTEXT_FILE ctx = (PDEVICE_CONTEXT_FILE)ctxLC->hDevice;
338
+ PDEVICE_CONTEXT_HIBRFILE ctx = (PDEVICE_CONTEXT_HIBRFILE)ctxLC->hDevice;
339
339
  BOOL fWarning = FALSE;
340
340
  BYTE i, j, cDescCS;
341
341
  BYTE pb[0x1000];
@@ -356,8 +356,8 @@ restart:
356
356
  if(fread(pb, 1, sizeof(pb), ctx->hFile) != sizeof(pb)) { return; }
357
357
  dwStatusCS = *(PDWORD)(pb + 0x000);
358
358
  cDescCS = dwStatusCS & 0xff;
359
- pCS->cb = (dwStatusCS >> 8) & 0x3fffff;
360
- pCS->tp = (dwStatusCS & 0x80000000) ? COMPRESS_ALGORITHM_XPRESS_HUFF : COMPRESS_ALGORITHM_XPRESS;
359
+ pCS->cb = (dwStatusCS >> 8) & 0x0fffff;
360
+ pCS->tp = (dwStatusCS & 0xC0000000) ? COMPRESS_ALGORITHM_XPRESS_HUFF : COMPRESS_ALGORITHM_XPRESS;
361
361
  if(!cDescCS || !pCS->cb) { return; }
362
362
  // 2: iterate over page descriptors in the compression set.
363
363
  pbo = 4;
@@ -381,7 +381,7 @@ restart:
381
381
  pCS->cpg += (WORD)cDescPages;
382
382
  }
383
383
  if((pCS->cpg > 0x10) && !fWarning) {
384
- lcprintf(ctxLC, "DEVICE: HIBR: WARNING: COMPRESSION SET #PAGES > 10 (only showed once).\n");
384
+ lcprintf(ctxLC, "DEVICE: HIBR: WARNING: COMPRESSION SET #PAGES > 16 (only showed once).\n");
385
385
  fWarning = TRUE;
386
386
  }
387
387
  if(pCS->cb == ((DWORD)pCS->cpg << 12)) {
@@ -404,7 +404,7 @@ restart:
404
404
  _Success_(return)
405
405
  BOOL DeviceHibr_HibrInitialize(_In_ PLC_CONTEXT ctxLC)
406
406
  {
407
- PDEVICE_CONTEXT_FILE ctx = (PDEVICE_CONTEXT_FILE)ctxLC->hDevice;
407
+ PDEVICE_CONTEXT_HIBRFILE ctx = (PDEVICE_CONTEXT_HIBRFILE)ctxLC->hDevice;
408
408
  BYTE pb[0x1000];
409
409
  DWORD i, cbPO_MEMORY_IMAGE;
410
410
  QWORD cboRestoreBoot = 0, cboRestoreKernel = 0, cPagesLoader = 0, cPagesKernel = 0;
@@ -462,7 +462,7 @@ fail:
462
462
  // OPEN/CLOSE FUNCTIONALITY BELOW:
463
463
  //-----------------------------------------------------------------------------
464
464
 
465
- VOID DeviceHibr_CloseInternal(_Frees_ptr_opt_ PDEVICE_CONTEXT_FILE ctx)
465
+ VOID DeviceHibr_CloseInternal(_Frees_ptr_opt_ PDEVICE_CONTEXT_HIBRFILE ctx)
466
466
  {
467
467
  DWORD i;
468
468
  if(ctx) {
@@ -477,7 +477,7 @@ VOID DeviceHibr_CloseInternal(_Frees_ptr_opt_ PDEVICE_CONTEXT_FILE ctx)
477
477
 
478
478
  VOID DeviceHibr_Close(_Inout_ PLC_CONTEXT ctxLC)
479
479
  {
480
- PDEVICE_CONTEXT_FILE ctx = (PDEVICE_CONTEXT_FILE)ctxLC->hDevice;
480
+ PDEVICE_CONTEXT_HIBRFILE ctx = (PDEVICE_CONTEXT_HIBRFILE)ctxLC->hDevice;
481
481
  DeviceHibr_CloseInternal(ctx);
482
482
  }
483
483
 
@@ -492,11 +492,11 @@ VOID DeviceHibr_Close(_Inout_ PLC_CONTEXT ctxLC)
492
492
  _Success_(return)
493
493
  BOOL DeviceHIBR_Open(_Inout_ PLC_CONTEXT ctxLC, _Out_opt_ PPLC_CONFIG_ERRORINFO ppLcCreateErrorInfo)
494
494
  {
495
- PDEVICE_CONTEXT_FILE ctx;
495
+ PDEVICE_CONTEXT_HIBRFILE ctx;
496
496
  PLC_DEVICE_PARAMETER_ENTRY pParam;
497
497
  QWORD tmEnd = 0, tmStart = GetTickCount64();
498
498
  if(ppLcCreateErrorInfo) { *ppLcCreateErrorInfo = NULL; }
499
- if(!(ctx = (PDEVICE_CONTEXT_FILE)LocalAlloc(LMEM_ZEROINIT, sizeof(DEVICE_CONTEXT_FILE)))) { return FALSE; }
499
+ if(!(ctx = (PDEVICE_CONTEXT_HIBRFILE)LocalAlloc(LMEM_ZEROINIT, sizeof(DEVICE_CONTEXT_HIBRFILE)))) { return FALSE; }
500
500
  if(!(ctx->CS_Directory[0] = (PHIBR_COMPRESSION_SET_TABLE)LocalAlloc(LMEM_ZEROINIT, sizeof(HIBR_COMPRESSION_SET_TABLE)))) { goto fail; }
501
501
  ctx->cCS = 1; // 0 = reserved for invalid/not set compression set.
502
502
  if(0 == _strnicmp("hibr://", ctxLC->Config.szDevice, 7)) {
@@ -3,8 +3,8 @@
3
3
 
4
4
  #define VERSION_MAJOR 2
5
5
  #define VERSION_MINOR 22
6
- #define VERSION_REVISION 1
7
- #define VERSION_BUILD 87
6
+ #define VERSION_REVISION 2
7
+ #define VERSION_BUILD 88
8
8
 
9
9
  #define VER_FILE_DESCRIPTION_STR "LeechCore Memory Acquisition Library"
10
10
  #define VER_FILE_VERSION VERSION_MAJOR, VERSION_MINOR, VERSION_REVISION, VERSION_BUILD
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: leechcorepyc
3
- Version: 2.22.1
3
+ Version: 2.22.2
4
4
  Summary: LeechCore for Python
5
5
  Home-page: https://github.com/ufrisk/LeechCore
6
6
  Author: Ulf Frisk
@@ -19,7 +19,7 @@ leechcorepyc = Extension(
19
19
 
20
20
  setup(
21
21
  name='leechcorepyc',
22
- version='2.22.1', # VERSION_END
22
+ version='2.22.2', # VERSION_END
23
23
  description='LeechCore for Python',
24
24
  long_description='LeechCore for Python : native extension for physical memory access',
25
25
  url='https://github.com/ufrisk/LeechCore',
File without changes
File without changes
File without changes
File without changes
File without changes