Commit Graph

30 Commits

Author SHA1 Message Date
Oleksii Shevchuk d3deb41517 [WIP] Create skeleton which works for both shared and app 2019-12-22 18:11:54 +02:00
Oleksii Shevchuk bc8d99df44 CRLF, _pupy dynload (windows) etc 2019-09-07 19:18:07 +03:00
Oleksii Shevchuk e9afcbf8de Refactoring: merge pp.py and pupyimporter.py
New loader "module" based loader.
Source code deduplicated a bit. Common parts moved to client/common.

Everything moved to "pupy" namespace:

import pupy

Android known to be broken. Other regressions to be discovered.

Checked:
+ Linux 32/64 Native/py
+ Windows 32/64 Native/py/.NET/migrations
2019-08-17 21:13:45 +03:00
Oleksii Shevchuk 4a3ed2fe8a clients: x86 doesn't support big alignment, so don't try 2019-05-07 18:18:04 +03:00
Oleksii Shevchuk c4da44efe2 clients: variuos fixes. Linux - injector is broken 2019-05-07 15:34:19 +03:00
Oleksii Shevchuk 6629044331 [WIP] Rework JNI support 2019-04-26 18:54:59 +03:00
Oleksii Shevchuk e7ac1734da client/linux: in case we are loaded from JVM save pointer to JavaVM* 2019-04-24 20:56:39 +03:00
Oleksii Shevchuk 7e0dbad094 Do not use marshal module to load embedded library 2018-03-02 22:16:23 +02:00
Oleksii Shevchuk 1f58934e8b memfd workaround is no longer required 2018-02-04 17:30:56 +02:00
Oleksii Shevchuk 32a5eb55f5 Manage refcnt for module dicts properly 2018-01-13 11:24:37 +02:00
Oleksii Shevchuk 25fac6a96a Try to preserve arch specific library bundles between simple cleans 2017-07-03 23:09:53 +03:00
Oleksii Shevchuk 30c86f3948 Add more space for scriptlets 2017-06-18 16:17:09 +03:00
Oleksii Shevchuk cc0be30ac6 Initial SunOS Support
Also we have a problem with templates namings.. Again.
And with compatibility. To remove symlinks I introduced posix.
Let's move same stuff there.

Memorpy is to be proted to SunOS.
2017-05-24 15:48:16 +03:00
Oleksii Shevchuk 2488d37ae9 Compile git revision into pupy templates 2017-04-25 14:43:23 +03:00
Oleksii Shevchuk b1f285ef84 oooops 2017-04-05 11:00:24 +03:00
Oleksii Shevchuk 6a15067115 Warning fixes 2017-04-03 19:40:20 +03:00
n1nj4sec 620c951f19 add space in templates for scriptlets 2017-03-31 20:27:12 +02:00
Oleksii Shevchuk 5f78b6cbbe Add (initial) support for loading bundled libraries via ctypes 2017-03-21 22:18:21 +02:00
Oleksii Shevchuk 4fac6fe5e7 Use spaces instead of tabs+spaces mess in client-linux 2017-03-16 23:01:13 +02:00
Oleksii Shevchuk a66ff19f48 Add initial memexec support for linux (interactive mode doesn't work for now) 2017-03-08 19:41:15 +02:00
Oleksii Shevchuk 4f1a508dd0 Fix migration (linux client) /w memfd 2017-03-08 19:41:15 +02:00
Oleksii Shevchuk fec8025de7 Add memfd sealing 2017-03-08 19:41:15 +02:00
Oleksii Shevchuk bc62899b4f Prevent GC collection of modules and config 2017-03-08 19:41:15 +02:00
Oleksii Shevchuk 177fab2498 Reduce virtual size 2017-03-08 19:41:15 +02:00
Oleksii Shevchuk 45ac2bf02e "Securely" pass environment 2017-03-08 19:41:15 +02:00
Oleksii Shevchuk 8bfae8bb50 Rework pupy basic configuration
Improve compression:
[+] LMZA everywhere (uniformed)
[+] Config space 40690 -> 8192
[+] Compress payload libraries (libpython)
[+] Compress serialized objects (resources, bootloader, config)
[-] Windows build (Makefile) was removed

Improve cryptography/credentials default configuration
[+] Remove default secrets
[-] Android still there
[+] Add uniformed class to search proper credentials
[+] Generate all credentials on first launch
[+] Improve SSL -> CA/Client/Server + roles

Client default configuration
[+] Add stubbed site.py (to preserve pupy from search files on target device)

TODO:
[?] Test all that stuff?
[?] Rewrite all transport configs to honor roles
2017-03-08 19:41:14 +02:00
Oleksii Shevchuk 8dc9232450 Use LZMA instead of ZLib for resources 2017-03-08 19:40:25 +02:00
Oleksii Shevchuk dc9ebe63b9 Fix migration. Add compression. Fix build on ancient distros 2016-08-24 09:51:33 +03:00
Oleksii Shevchuk f2e749c71f Update migration support for Linux 2016-08-23 19:48:12 +03:00
Oleksii Shevchuk f840346daa Add trivial linux standalone client. No reflective loading, but it works somehow 2016-08-23 01:57:58 +03:00