leechcorepyc 2.22.3__tar.gz → 2.22.5__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.3/leechcorepyc.egg-info → leechcorepyc-2.22.5}/PKG-INFO +1 -1
  2. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/includes/leechcore.h +1 -1
  3. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/includes/leechcore_device.h +1 -1
  4. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/Makefile.macos +1 -1
  5. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_file.c +3 -3
  6. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_fpga.c +16 -1
  7. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_hibr.c +1 -1
  8. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_pmem.c +1 -1
  9. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_tmd.c +1 -1
  10. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_usb3380.c +1 -1
  11. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_vmm.c +1 -1
  12. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/device_vmware.c +1 -1
  13. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechcore.c +1 -1
  14. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechcore.h +1 -1
  15. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechcore_device.h +1 -1
  16. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechcore_internal.h +1 -1
  17. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechrpc.h +1 -1
  18. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechrpc_c.c +31 -56
  19. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechrpc_h.h +1 -1
  20. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechrpcclient.c +1 -1
  21. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechrpcshared.c +1 -1
  22. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/memmap.c +1 -1
  23. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/oscompatibility.c +1 -1
  24. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/oscompatibility.h +1 -1
  25. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/util.c +1 -1
  26. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/util.h +1 -1
  27. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/version.h +2 -2
  28. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcorepyc.c +1 -1
  29. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5/leechcorepyc.egg-info}/PKG-INFO +1 -1
  30. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcorepyc.h +1 -1
  31. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcorepyc_barrequest.c +1 -1
  32. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/oscompatibility.c +1 -1
  33. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/oscompatibility.h +1 -1
  34. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/setup.py +1 -1
  35. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/MANIFEST.in +0 -0
  36. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/Makefile +0 -0
  37. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/README +0 -0
  38. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/files/dummy +0 -0
  39. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/includes/leechgrpc.h +0 -0
  40. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/includes/libpdbcrust.h +0 -0
  41. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/includes/vmmdll.h +0 -0
  42. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/includes/vmmyara.h +0 -0
  43. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/Makefile +0 -0
  44. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechcore.rc +0 -0
  45. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/leechrpc.idl +0 -0
  46. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/ob/ob.h +0 -0
  47. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/ob/ob_bytequeue.c +0 -0
  48. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/ob/ob_core.c +0 -0
  49. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/ob/ob_map.c +0 -0
  50. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore/ob/ob_set.c +0 -0
  51. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_qemu/Makefile +0 -0
  52. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_qemu/leechcore_device_qemu.c +0 -0
  53. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_rawtcp/Makefile +0 -0
  54. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_rawtcp/leechcore_device_rawtcp.c +0 -0
  55. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_rawtcp/oscompatibility.c +0 -0
  56. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_rawtcp/oscompatibility.h +0 -0
  57. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_rawtcp/plugin.rc +0 -0
  58. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_rawtcp/resource.h +0 -0
  59. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_device_rawtcp/version.h +0 -0
  60. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_ft601_driver_linux/Makefile +0 -0
  61. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_ft601_driver_linux/fpga_libusb.c +0 -0
  62. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_ft601_driver_linux/fpga_libusb.h +0 -0
  63. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_ft601_driver_linux/leechcore_ft601_driver_linux.c +0 -0
  64. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcore_ft601_driver_linux/leechcore_ft601_driver_linux.h +0 -0
  65. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcorepyc/__init__.py +0 -0
  66. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcorepyc.egg-info/SOURCES.txt +0 -0
  67. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcorepyc.egg-info/dependency_links.txt +0 -0
  68. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/leechcorepyc.egg-info/top_level.txt +0 -0
  69. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/Makefile +0 -0
  70. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/lznt1.h +0 -0
  71. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/Array.h +0 -0
  72. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/Bitstream.h +0 -0
  73. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/CircularBuffer.h +0 -0
  74. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/HuffmanDecoder.h +0 -0
  75. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/HuffmanEncoder.h +0 -0
  76. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/LZNT1Dictionary.h +0 -0
  77. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/LZNT1Dictionary_SA.h +0 -0
  78. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/XpressDictionary.h +0 -0
  79. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/config.h +0 -0
  80. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/general.h +0 -0
  81. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/internal.h +0 -0
  82. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp/sorting.h +0 -0
  83. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/mscomp.h +0 -0
  84. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/xpress.h +0 -0
  85. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/include/xpress_huff.h +0 -0
  86. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/src/lznt1_compress.cpp +0 -0
  87. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/src/lznt1_decompress.cpp +0 -0
  88. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/src/mscomp.cpp +0 -0
  89. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/src/xpress_compress.cpp +0 -0
  90. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/src/xpress_decompress.cpp +0 -0
  91. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/src/xpress_huff_compress.cpp +0 -0
  92. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/ms-compress/src/xpress_huff_decompress.cpp +0 -0
  93. {leechcorepyc-2.22.3 → leechcorepyc-2.22.5}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: leechcorepyc
3
- Version: 2.22.3
3
+ Version: 2.22.5
4
4
  Summary: LeechCore for Python
5
5
  Home-page: https://github.com/ufrisk/LeechCore
6
6
  Author: Ulf Frisk
@@ -11,7 +11,7 @@
11
11
  // - README: https://github.com/ufrisk/LeechCore
12
12
  // - GUIDE: https://github.com/ufrisk/LeechCore/wiki
13
13
  //
14
- // (c) Ulf Frisk, 2020-2025
14
+ // (c) Ulf Frisk, 2020-2026
15
15
  // Author: Ulf Frisk, pcileech@frizk.net
16
16
  //
17
17
  // Header Version: 2.20.0
@@ -15,7 +15,7 @@
15
15
  // device may be created/opened - if only one instance may be open at the same
16
16
  // time this should be handled by the plugin module itself.
17
17
  //
18
- // (c) Ulf Frisk, 2020-2025
18
+ // (c) Ulf Frisk, 2020-2026
19
19
  // Author: Ulf Frisk, pcileech@frizk.net
20
20
  //
21
21
  // Header Version: 2.5
@@ -1,5 +1,5 @@
1
1
  CC=clang
2
- CFLAGS += -I. -D MACOS -D _GNU_SOURCE -fPIC -fvisibility=hidden -pthread
2
+ CFLAGS += -I. -I../includes -D MACOS -D _GNU_SOURCE -fPIC -fvisibility=hidden -pthread
3
3
  CFLAGS += -fPIC -fstack-protector-strong -D_FORTIFY_SOURCE=2 -O1
4
4
  CFLAGS += -Wall -Wno-multichar -Wno-unused-result -Wno-unused-variable -Wno-unused-value
5
5
  CFLAGS += -Wno-pointer-to-int-cast -Wno-int-to-pointer-cast
@@ -1,6 +1,6 @@
1
1
  // device_file.c : implementation related to file backed memory acquisition device.
2
2
  //
3
- // (c) Ulf Frisk, 2018-2025
3
+ // (c) Ulf Frisk, 2018-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #include "leechcore.h"
@@ -862,12 +862,12 @@ BOOL DeviceFile_Open(_Inout_ PLC_CONTEXT ctxLC, _Out_opt_ PPLC_CONFIG_ERRORINFO
862
862
  ctxLC->Config.fVolatile = FALSE; // Files are assumed to be static non-volatile.
863
863
  if(0 == _strnicmp("file://", ctxLC->Config.szDevice, 7)) {
864
864
  if((pParam = LcDeviceParameterGet(ctxLC, DEVICE_FILE_PARAMETER_FILE)) && pParam->szValue[0]) {
865
- // we have a file name on the new format, i.e. fpga://file=<filename> - use the new format.
865
+ // we have a file name on the new format, i.e. file://file=<filename> - use the new format.
866
866
  strncpy_s(ctx->szFileName, _countof(ctx->szFileName), pParam->szValue, _TRUNCATE);
867
867
  ctxLC->Config.fVolatile = LcDeviceParameterGetNumeric(ctxLC, DEVICE_FILE_PARAMETER_VOLATILE) ? TRUE : FALSE;
868
868
  ctxLC->Config.fWritable = LcDeviceParameterGetNumeric(ctxLC, DEVICE_FILE_PARAMETER_WRITE) ? TRUE : FALSE;
869
869
  } else {
870
- // we have a file name on the old format, i.e. fpga://<filename> - use the old format.
870
+ // we have a file name on the old format, i.e. file://<filename> - use the old format.
871
871
  strncpy_s(ctx->szFileName, _countof(ctx->szFileName), ctxLC->Config.szDevice + 7, _countof(ctxLC->Config.szDevice) - 7);
872
872
  }
873
873
  } else if(0 == _stricmp(ctxLC->Config.szDevice, "livekd")) {
@@ -7,7 +7,7 @@
7
7
  // - FT2232H/FT245 protocol - access FPGA via FT2232H USB2 instead of FT601 USB3.
8
8
  // - Other devices with plugin driver - ZDMA etc.
9
9
  //
10
- // (c) Ulf Frisk, 2017-2025
10
+ // (c) Ulf Frisk, 2017-2026
11
11
  // Author: Ulf Frisk, pcileech@frizk.net
12
12
  //
13
13
  #include "leechcore.h"
@@ -2648,6 +2648,21 @@ BOOL DeviceFPGA_Async2_Read_RxTlpFromBuffer(_In_ PLC_CONTEXT ctxLC, _In_ PDEVICE
2648
2648
  {
2649
2649
  BOOL fReadTlp = FALSE;
2650
2650
  DWORD cdwTlpDataConsumed = 1;
2651
+ PDWORD pdwSData = NULL;
2652
+ // FPGA USB core contains a bug in which the initial 0x55556666 fillers may
2653
+ // occur at start of buffer (or in rare cases, after the initial status dword).
2654
+ if(ctx->rxbuf.cb - ctx->rxbuf.o >= 20) {
2655
+ pdwSData = (PDWORD)(ctx->rxbuf.pb + ctx->rxbuf.o);
2656
+ if((pdwSData[1] == 0x55556666) && (pdwSData[2] == 0x55556666) && (pdwSData[3] == 0x55556666) && (pdwSData[4] == 0x55556666)) {
2657
+ if(pdwSData[0] == 0x55556666) {
2658
+ ctx->rxbuf.o += 20;
2659
+ } else if(((pdwSData[0] & 0xf0000000) == 0xe0000000) && (ctx->rxbuf.cb - ctx->rxbuf.o >= 24)) {
2660
+ pdwSData[5] = pdwSData[0];
2661
+ ctx->rxbuf.o += 20;
2662
+ }
2663
+ }
2664
+ }
2665
+ // Acquire one TLP at a time:
2651
2666
  while((ctx->rxbuf.o + 32 <= ctx->rxbuf.cb) && cdwTlpDataConsumed) {
2652
2667
  cdwTlpDataConsumed = DeviceFPGA_Async2_Read_RxTlpSingle(ctxLC, ctx, (ctx->rxbuf.cb - ctx->rxbuf.o) >> 2, (PDWORD)(ctx->rxbuf.pb + ctx->rxbuf.o));
2653
2668
  fReadTlp = fReadTlp || (cdwTlpDataConsumed & 0x80000000);
@@ -5,7 +5,7 @@
5
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
- // (c) Ulf Frisk, 2024-2025
8
+ // (c) Ulf Frisk, 2024-2026
9
9
  // Author: Ulf Frisk, pcileech@frizk.net
10
10
  //
11
11
  #include "leechcore.h"
@@ -1,6 +1,6 @@
1
1
  // device_pmem.c : implementation of the rekall winpmem memory acquisition device.
2
2
  //
3
- // (c) Ulf Frisk, 2018-2025
3
+ // (c) Ulf Frisk, 2018-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #include "leechcore.h"
@@ -2,7 +2,7 @@
2
2
  // Also known as: CVE-2018-1038. Please see Microsoft advisory for more information:
3
3
  // https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2018-1038
4
4
  //
5
- // (c) Ulf Frisk, 2020-2025
5
+ // (c) Ulf Frisk, 2020-2026
6
6
  // Author: Ulf Frisk, pcileech@frizk.net
7
7
  //
8
8
  #include "leechcore.h"
@@ -1,6 +1,6 @@
1
1
  // device_usb3380.c : implementation related to the USB3380 hardware device.
2
2
  //
3
- // (c) Ulf Frisk, 2017-2025
3
+ // (c) Ulf Frisk, 2017-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #include "leechcore.h"
@@ -3,7 +3,7 @@
3
3
  //
4
4
  // Syntax: vmm://hvmm=0x<VMM_HANDLE>,hvm=0x<VMMVM_HANDLE>,max=<MAX_ADDRESS>
5
5
  //
6
- // (c) Ulf Frisk, 2022-2025
6
+ // (c) Ulf Frisk, 2022-2026
7
7
  // Author: Ulf Frisk, pcileech@frizk.net
8
8
  //
9
9
  #include "leechcore.h"
@@ -2,7 +2,7 @@
2
2
  //
3
3
  // tested with vmware workstation 16.1.2
4
4
  //
5
- // (c) Ulf Frisk, 2022-2025
5
+ // (c) Ulf Frisk, 2022-2026
6
6
  // Author: Ulf Frisk, pcileech@frizk.net
7
7
  //
8
8
  #include "leechcore.h"
@@ -1,6 +1,6 @@
1
1
  // leechcore.c : core implementation of the the LeechCore physical memory acquisition library.
2
2
  //
3
- // (c) Ulf Frisk, 2020-2025
3
+ // (c) Ulf Frisk, 2020-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
 
@@ -11,7 +11,7 @@
11
11
  // - README: https://github.com/ufrisk/LeechCore
12
12
  // - GUIDE: https://github.com/ufrisk/LeechCore/wiki
13
13
  //
14
- // (c) Ulf Frisk, 2020-2025
14
+ // (c) Ulf Frisk, 2020-2026
15
15
  // Author: Ulf Frisk, pcileech@frizk.net
16
16
  //
17
17
  // Header Version: 2.20.0
@@ -15,7 +15,7 @@
15
15
  // device may be created/opened - if only one instance may be open at the same
16
16
  // time this should be handled by the plugin module itself.
17
17
  //
18
- // (c) Ulf Frisk, 2020-2025
18
+ // (c) Ulf Frisk, 2020-2026
19
19
  // Author: Ulf Frisk, pcileech@frizk.net
20
20
  //
21
21
  // Header Version: 2.5
@@ -1,7 +1,7 @@
1
1
  // leechcore_internal.h : definitions of internal leechcore functionality such
2
2
  // as non exported parts of memory map functionality.
3
3
  //
4
- // (c) Ulf Frisk, 2020-2025
4
+ // (c) Ulf Frisk, 2020-2026
5
5
  // Author: Ulf Frisk, pcileech@frizk.net
6
6
  //
7
7
 
@@ -1,6 +1,6 @@
1
1
  // leechrpcclient.h : definitions related to the leech rpc service.
2
2
  //
3
- // (c) Ulf Frisk, 2018-2025
3
+ // (c) Ulf Frisk, 2018-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #ifndef __LEECHRPC_H__
@@ -7,7 +7,7 @@
7
7
  /* at Tue Jan 19 04:14:07 2038
8
8
  */
9
9
  /* Compiler settings for leechrpc.idl:
10
- Oicf, W1, Zp8, env=Win64 (32b run), target_arch=ARM64 8.01.0628
10
+ Oicf, W1, Zp8, env=Win64 (32b run), target_arch=AMD64 8.01.0628
11
11
  protocol : all , ms_ext, c_ext, robust
12
12
  error checks: allocation ref bounds_check enum stub_data
13
13
  VC __declspec() decoration level:
@@ -16,7 +16,7 @@
16
16
  */
17
17
  /* @@MIDL_FILE_HEADING( ) */
18
18
 
19
- #if defined(_M_ARM64)
19
+ #if defined(_M_AMD64)
20
20
 
21
21
 
22
22
  #if _MSC_VER >= 1200
@@ -32,7 +32,7 @@
32
32
  #include "leechrpc_h.h"
33
33
 
34
34
  #define TYPE_FORMAT_STRING_SIZE 43
35
- #define PROC_FORMAT_STRING_SIZE 67
35
+ #define PROC_FORMAT_STRING_SIZE 61
36
36
  #define EXPR_FORMAT_STRING_SIZE 1
37
37
  #define TRANSMIT_AS_TABLE_SIZE 0
38
38
  #define WIRE_MARSHAL_TABLE_SIZE 0
@@ -185,7 +185,7 @@ error_status_t LeechRpc_ReservedSubmitCommand(
185
185
  }
186
186
 
187
187
 
188
- #if !defined(__RPC_ARM64__)
188
+ #if !defined(__RPC_WIN64__)
189
189
  #error Invalid build platform for this stub.
190
190
  #endif
191
191
 
@@ -200,58 +200,52 @@ static const leechrpc_MIDL_PROC_FORMAT_STRING leechrpc__MIDL_ProcFormatString =
200
200
  0x48, /* Old Flags: */
201
201
  /* 2 */ NdrFcLong( 0x0 ), /* 0 */
202
202
  /* 6 */ NdrFcShort( 0x0 ), /* 0 */
203
- /* 8 */ NdrFcShort( 0x30 ), /* ARM64 Stack size/offset = 48 */
203
+ /* 8 */ NdrFcShort( 0x30 ), /* X64 Stack size/offset = 48 */
204
204
  /* 10 */ 0x32, /* FC_BIND_PRIMITIVE */
205
205
  0x0, /* 0 */
206
- /* 12 */ NdrFcShort( 0x0 ), /* ARM64 Stack size/offset = 0 */
206
+ /* 12 */ NdrFcShort( 0x0 ), /* X64 Stack size/offset = 0 */
207
207
  /* 14 */ NdrFcShort( 0x8 ), /* 8 */
208
208
  /* 16 */ NdrFcShort( 0x24 ), /* 36 */
209
209
  /* 18 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */
210
210
  0x5, /* 5 */
211
- /* 20 */ 0x10, /* 16 */
211
+ /* 20 */ 0xa, /* 10 */
212
212
  0x7, /* Ext Flags: new corr desc, clt corr check, srv corr check, */
213
213
  /* 22 */ NdrFcShort( 0x1 ), /* 1 */
214
214
  /* 24 */ NdrFcShort( 0x1 ), /* 1 */
215
215
  /* 26 */ NdrFcShort( 0x0 ), /* 0 */
216
- /* 28 */ NdrFcShort( 0x5 ), /* 5 */
217
- /* 30 */ 0x5, /* 5 */
218
- 0x80, /* 128 */
219
- /* 32 */ 0x81, /* 129 */
220
- 0x82, /* 130 */
221
- /* 34 */ 0x83, /* 131 */
222
- 0x84, /* 132 */
216
+ /* 28 */ NdrFcShort( 0x0 ), /* 0 */
223
217
 
224
218
  /* Parameter cbIn */
225
219
 
226
- /* 36 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */
227
- /* 38 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */
228
- /* 40 */ 0x8, /* FC_LONG */
220
+ /* 30 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */
221
+ /* 32 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */
222
+ /* 34 */ 0x8, /* FC_LONG */
229
223
  0x0, /* 0 */
230
224
 
231
225
  /* Parameter pbIn */
232
226
 
233
- /* 42 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */
234
- /* 44 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */
235
- /* 46 */ NdrFcShort( 0x6 ), /* Type Offset=6 */
227
+ /* 36 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */
228
+ /* 38 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */
229
+ /* 40 */ NdrFcShort( 0x6 ), /* Type Offset=6 */
236
230
 
237
231
  /* Parameter pcbOut */
238
232
 
239
- /* 48 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */
240
- /* 50 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */
241
- /* 52 */ 0x8, /* FC_LONG */
233
+ /* 42 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */
234
+ /* 44 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */
235
+ /* 46 */ 0x8, /* FC_LONG */
242
236
  0x0, /* 0 */
243
237
 
244
238
  /* Parameter ppbOut */
245
239
 
246
- /* 54 */ NdrFcShort( 0x2013 ), /* Flags: must size, must free, out, srv alloc size=8 */
247
- /* 56 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */
248
- /* 58 */ NdrFcShort( 0x16 ), /* Type Offset=22 */
240
+ /* 48 */ NdrFcShort( 0x2013 ), /* Flags: must size, must free, out, srv alloc size=8 */
241
+ /* 50 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */
242
+ /* 52 */ NdrFcShort( 0x16 ), /* Type Offset=22 */
249
243
 
250
244
  /* Return value */
251
245
 
252
- /* 60 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
253
- /* 62 */ NdrFcShort( 0x28 ), /* ARM64 Stack size/offset = 40 */
254
- /* 64 */ 0x10, /* FC_ERROR_STATUS_T */
246
+ /* 54 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
247
+ /* 56 */ NdrFcShort( 0x28 ), /* X64 Stack size/offset = 40 */
248
+ /* 58 */ 0x10, /* FC_ERROR_STATUS_T */
255
249
  0x0, /* 0 */
256
250
 
257
251
  0x0
@@ -272,7 +266,7 @@ static const leechrpc_MIDL_TYPE_FORMAT_STRING leechrpc__MIDL_TypeFormatString =
272
266
  /* 8 */ NdrFcShort( 0x1 ), /* 1 */
273
267
  /* 10 */ 0x28, /* Corr desc: parameter, FC_LONG */
274
268
  0x0, /* */
275
- /* 12 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */
269
+ /* 12 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */
276
270
  /* 14 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
277
271
  /* 16 */ 0x1, /* FC_BYTE */
278
272
  0x5b, /* FC_END */
@@ -292,7 +286,7 @@ static const leechrpc_MIDL_TYPE_FORMAT_STRING leechrpc__MIDL_TypeFormatString =
292
286
  /* 32 */ NdrFcShort( 0x1 ), /* 1 */
293
287
  /* 34 */ 0x28, /* Corr desc: parameter, FC_LONG */
294
288
  0x54, /* FC_DEREFERENCE */
295
- /* 36 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */
289
+ /* 36 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */
296
290
  /* 38 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
297
291
  /* 40 */ 0x1, /* FC_BYTE */
298
292
  0x5b, /* FC_END */
@@ -308,7 +302,7 @@ static const unsigned short LeechRpc_FormatStringOffsetTable[] =
308
302
 
309
303
 
310
304
 
311
- #endif /* defined(_M_ARM64) */
305
+ #endif /* defined(_M_AMD64)*/
312
306
 
313
307
 
314
308
 
@@ -319,7 +313,7 @@ static const unsigned short LeechRpc_FormatStringOffsetTable[] =
319
313
  /* at Tue Jan 19 04:14:07 2038
320
314
  */
321
315
  /* Compiler settings for leechrpc.idl:
322
- Oicf, W1, Zp8, env=Win64 (32b run), target_arch=ARM64 8.01.0628
316
+ Oicf, W1, Zp8, env=Win64 (32b run), target_arch=AMD64 8.01.0628
323
317
  protocol : all , ms_ext, c_ext, robust
324
318
  error checks: allocation ref bounds_check enum stub_data
325
319
  VC __declspec() decoration level:
@@ -328,12 +322,12 @@ static const unsigned short LeechRpc_FormatStringOffsetTable[] =
328
322
  */
329
323
  /* @@MIDL_FILE_HEADING( ) */
330
324
 
331
- #if defined(_M_ARM64)
325
+ #if defined(_M_AMD64)
332
326
 
333
327
 
334
328
 
335
329
 
336
- #if !defined(__RPC_ARM64__)
330
+ #if !defined(__RPC_WIN64__)
337
331
  #error Invalid build platform for this stub.
338
332
  #endif
339
333
 
@@ -427,12 +421,6 @@ struct
427
421
  struct _NDR64_PARAM_FORMAT frag5;
428
422
  struct _NDR64_PARAM_FORMAT frag6;
429
423
  struct _NDR64_PARAM_FORMAT frag7;
430
- struct /* ARM Parameter Layout */
431
- {
432
- NDR64_UINT16 frag1;
433
- NDR64_UINT8 frag2;
434
- NDR64_UINT8 frag3[ 5 ];
435
- } frag8;
436
424
  }
437
425
  __midl_frag2_t;
438
426
  extern const __midl_frag2_t __midl_frag2;
@@ -583,7 +571,7 @@ static const __midl_frag2_t __midl_frag2 =
583
571
  /* LeechRpc_ReservedSubmitCommand */
584
572
  {
585
573
  /* LeechRpc_ReservedSubmitCommand */ /* procedure LeechRpc_ReservedSubmitCommand */
586
- (NDR64_UINT32) 91095104 /* 0x56e0040 */, /* explicit handle */ /* IsIntrepreted, ServerMustSize, ClientMustSize, HasReturn, ServerCorrelation, ClientCorrelation, HasExtensions, HasArmParamLayout */
574
+ (NDR64_UINT32) 23986240 /* 0x16e0040 */, /* explicit handle */ /* IsIntrepreted, ServerMustSize, ClientMustSize, HasReturn, ServerCorrelation, ClientCorrelation, HasExtensions */
587
575
  (NDR64_UINT32) 48 /* 0x30 */ , /* Stack size */
588
576
  (NDR64_UINT32) 8 /* 0x8 */,
589
577
  (NDR64_UINT32) 40 /* 0x28 */,
@@ -723,19 +711,6 @@ static const __midl_frag2_t __midl_frag2 =
723
711
  }, /* [out], IsReturn, Basetype, ByValue */
724
712
  (NDR64_UINT16) 0 /* 0x0 */,
725
713
  40 /* 0x28 */, /* Stack offset */
726
- },
727
- {
728
- /* LeechRpc_ReservedSubmitCommand */ /* ARM register placement data */
729
- (NDR64_UINT16) 5 /* 0x5 */ , /* Number of Entries */
730
- (NDR64_UINT8) 5 /* 0x5 */ , /* Slots Used */
731
- {
732
- /* LeechRpc_ReservedSubmitCommand */ /* Placement data octets */
733
- (NDR64_UINT8) 0x80,
734
- (NDR64_UINT8) 0x81,
735
- (NDR64_UINT8) 0x82,
736
- (NDR64_UINT8) 0x83,
737
- (NDR64_UINT8) 0x84
738
- }
739
714
  }
740
715
  };
741
716
 
@@ -825,5 +800,5 @@ static const MIDL_STUBLESS_PROXY_INFO LeechRpc_ProxyInfo =
825
800
  #endif
826
801
 
827
802
 
828
- #endif /* defined(_M_ARM64) */
803
+ #endif /* defined(_M_AMD64)*/
829
804
 
@@ -7,7 +7,7 @@
7
7
  /* at Tue Jan 19 04:14:07 2038
8
8
  */
9
9
  /* Compiler settings for leechrpc.idl:
10
- Oicf, W1, Zp8, env=Win64 (32b run), target_arch=ARM64 8.01.0628
10
+ Oicf, W1, Zp8, env=Win64 (32b run), target_arch=AMD64 8.01.0628
11
11
  protocol : all , ms_ext, c_ext, robust
12
12
  error checks: allocation ref bounds_check enum stub_data
13
13
  VC __declspec() decoration level:
@@ -1,6 +1,6 @@
1
1
  // leechrpcclient.c : implementation of the remote procedure call (RPC) client.
2
2
  //
3
- // (c) Ulf Frisk, 2018-2025
3
+ // (c) Ulf Frisk, 2018-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #include "leechcore.h"
@@ -1,6 +1,6 @@
1
1
  // leechrpcshared.c : implementation of the remote procedure call (RPC) shared functionality (client/server).
2
2
  //
3
- // (c) Ulf Frisk, 2018-2025
3
+ // (c) Ulf Frisk, 2018-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #include <stdio.h>
@@ -1,6 +1,6 @@
1
1
  // memmap.c : implementation : memory map.
2
2
  //
3
- // (c) Ulf Frisk, 2020-2025
3
+ // (c) Ulf Frisk, 2020-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
 
@@ -1,6 +1,6 @@
1
1
  // oscompatibility.c : LeechCore Windows/Linux compatibility layer.
2
2
  //
3
- // (c) Ulf Frisk, 2017-2025
3
+ // (c) Ulf Frisk, 2017-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #ifdef _WIN32
@@ -1,6 +1,6 @@
1
1
  // oscompatibility.h : LeechCore Windows/Linux compatibility layer.
2
2
  //
3
- // (c) Ulf Frisk, 2017-2025
3
+ // (c) Ulf Frisk, 2017-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #ifndef __OSCOMPATIBILITY_H__
@@ -1,6 +1,6 @@
1
1
  // util.c : implementation of various utility functions.
2
2
  //
3
- // (c) Ulf Frisk, 2018-2025
3
+ // (c) Ulf Frisk, 2018-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #include "util.h"
@@ -1,6 +1,6 @@
1
1
  // util.h : definitions of various utility functions.
2
2
  //
3
- // (c) Ulf Frisk, 2018-2025
3
+ // (c) Ulf Frisk, 2018-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #ifndef __UTIL_H__
@@ -3,8 +3,8 @@
3
3
 
4
4
  #define VERSION_MAJOR 2
5
5
  #define VERSION_MINOR 22
6
- #define VERSION_REVISION 3
7
- #define VERSION_BUILD 89
6
+ #define VERSION_REVISION 5
7
+ #define VERSION_BUILD 91
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
  // leechcorepyc.c : Implementation of the LeechCore Python API
2
2
  //
3
- // (c) Ulf Frisk, 2020-2025
3
+ // (c) Ulf Frisk, 2020-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #include "leechcorepyc.h"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: leechcorepyc
3
- Version: 2.22.3
3
+ Version: 2.22.5
4
4
  Summary: LeechCore for Python
5
5
  Home-page: https://github.com/ufrisk/LeechCore
6
6
  Author: Ulf Frisk
@@ -1,6 +1,6 @@
1
1
  // leechcorepyc.c : Implementation of the LeechCore Python API
2
2
  //
3
- // (c) Ulf Frisk, 2020-2025
3
+ // (c) Ulf Frisk, 2020-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #ifndef __LEECHCOREPYC_H__
@@ -1,6 +1,6 @@
1
1
  // leechcorepyc_barrequest.c : implementation of LeechCore PCIe BAR request.
2
2
  //
3
- // (c) Ulf Frisk, 2024-2025
3
+ // (c) Ulf Frisk, 2024-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
 
@@ -1,6 +1,6 @@
1
1
  // oscompatibility.c : LeechCore Windows/Linux compatibility layer.
2
2
  //
3
- // (c) Ulf Frisk, 2017-2025
3
+ // (c) Ulf Frisk, 2017-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #ifdef _WIN32
@@ -1,6 +1,6 @@
1
1
  // oscompatibility.h : LeechCore Windows/Linux compatibility layer.
2
2
  //
3
- // (c) Ulf Frisk, 2017-2025
3
+ // (c) Ulf Frisk, 2017-2026
4
4
  // Author: Ulf Frisk, pcileech@frizk.net
5
5
  //
6
6
  #ifndef __OSCOMPATIBILITY_H__
@@ -19,7 +19,7 @@ leechcorepyc = Extension(
19
19
 
20
20
  setup(
21
21
  name='leechcorepyc',
22
- version='2.22.3', # VERSION_END
22
+ version='2.22.5', # 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