|
|
@ -58,17 +58,18 @@ communicate with new copies of itself under its control running on remote
|
|
|
|
machines, **using only an existing installed Python interpreter and SSH
|
|
|
|
machines, **using only an existing installed Python interpreter and SSH
|
|
|
|
client**, something that by default can be found on almost all contemporary
|
|
|
|
client**, something that by default can be found on almost all contemporary
|
|
|
|
machines in the wild. To accomplish bootstrap, Mitogen uses a single 600 byte
|
|
|
|
machines in the wild. To accomplish bootstrap, Mitogen uses a single 600 byte
|
|
|
|
SSH command line and 6KB of its own source code sent to stdin of the remote SSH
|
|
|
|
SSH command line and 8KB of its own source code sent to stdin of the remote SSH
|
|
|
|
connection.
|
|
|
|
connection.
|
|
|
|
|
|
|
|
|
|
|
|
.. code::
|
|
|
|
.. code::
|
|
|
|
|
|
|
|
|
|
|
|
$ python preamble_size.py
|
|
|
|
$ python preamble_size.py
|
|
|
|
SSH command size: 576
|
|
|
|
SSH command size: 624
|
|
|
|
Preamble size: 6360 (6.21KiB)
|
|
|
|
Preamble size: 7599 (7.42KiB)
|
|
|
|
mitogen.master size: 4104 (4.01KiB)
|
|
|
|
mitogen.master size: 5989 (5.85KiB)
|
|
|
|
mitogen.ssh size: 295 (0.29KiB)
|
|
|
|
mitogen.ssh size: 953 (0.93KiB)
|
|
|
|
mtiogen.sudo size: 1210 (1.18KiB)
|
|
|
|
mitogen.sudo size: 652 (0.64KiB)
|
|
|
|
|
|
|
|
mitogen.fakessh size: 2516 (2.46KiB)
|
|
|
|
|
|
|
|
|
|
|
|
Once bootstrapped, the remote process is configured with a customizable
|
|
|
|
Once bootstrapped, the remote process is configured with a customizable
|
|
|
|
**argv[0]**, readily visible to system administrators of the remote machine
|
|
|
|
**argv[0]**, readily visible to system administrators of the remote machine
|
|
|
|