1
mirror of https://github.com/rapid7/metasploit-payloads synced 2025-05-18 22:02:23 +02:00

9 Commits

Author SHA1 Message Date
OJ
3dbff1e401
Clean and working builds with CMake 2020-04-24 13:31:34 +10:00
OJ
0e9a231e8a
First pass of CMake support (MSVC specific ATM)
This commit includes a bunch of changes that are working towards being
able to build the Meterpreter source from CMake. Changes include:

* Updated `make.bat` which does the stuff that we need.
* Removed a bunch of stuff from the python extension source tree so that
  CMake generator would not include them.
* Moved a few things around in the priv extension.
* Created `CMakeFileLists.txt` for all the projects.

There are a few hacks required in things like stdapi and kiwi to ignore
files that are on disk but shouldn't be included in the build.

Initial testing indicates that sessions run, extensions load, but some
things don't work as intended. It's a start! Still much to do.
2020-04-24 13:31:16 +10:00
OJ
8f5d4bef01
Replace OpenSSL with LibreSSL in the Python extension
This was a bit of a pain, but was well worth it. Had to add a couple of
hacks to make it all work, but this is a nicer solution than having to
depend on OpenSSL and its horrendous build experience.
2020-04-15 13:43:50 +10:00
OJ
078a3e960f
Finalise 'Release' build for both x86 and x64 _clean_
Still need to fix dependencies and whatnot as well.
2020-04-14 13:18:25 +10:00
OJ
712268fab7
Get Python extension building clean
Warnings as errors, builds clean. Had to do some horrible hacks:
1) Include custom implementation of a lib function just so we could
   link against stuff built with older VS.
2) Include legacy symbols for old io for the same reason.
2020-04-14 12:13:30 +10:00
OJ
4424029d3c Add python extension multiprocessing
This commit includes code that was missing from the original Python PR which adds support for the multiprocessing module in Python. I have no idea why this was missed, but it was. The code also includes adjustments to the loader which attempts to resolve modules appropriately based on name. This is a bit of a kludge thanks to the way that Python module resolution hooks work, as it's not clear exactly which namespace the module is intended to be loaded from at runtime as it's not passed to the resolver. Down the track we may need to get smarter with the resolver so that we have a per-module resolver (ie. a tree of resolvers).
2015-12-19 09:40:44 +10:00
Brent Cook
98fae3e075 change source perms back to non-executable 2015-11-09 21:10:30 -06:00
OJ
007afeae2a Stacks of work getting modules wired up 2015-10-30 15:23:00 -05:00
Brent Cook
e878ac3286 import 1cf077a from python 2.7 branch (2.7.10+) 2015-10-30 15:12:58 -05:00