Re: Exodus: Lightweight relocation engine. Useful?

2018-02-02 Thread Dan Kaminsky
So Exodus will in fact compile an executable, via dietlibc or musl, but
it's an execve wrapper, and it seems you've stubbed that.

You have to change the relevant line in src/exodus_bundlers/launchers.py to:

args = initial_args + ['-shared', '-fPIC', '-O3', input_filename,
'-o', output_filename]

# ./scripts/run.py
OSv v0.24-488-g06704deb
eth0: 192.168.122.15
execve() stubbed

But at least it parses! :)

I suspect it's statically linking too much for you, and really needs to be
dynamic enough to pull in your libc.  But that might actually be possible.

On Fri, Feb 2, 2018 at 5:17 PM, Rick Payne  wrote:

> On Fri, 2018-02-02 at 16:28 -0800, Dan Kaminsky wrote:
> > That's where I hit my wall, but it seems pretty much a bullseye on
> > your wheelhouse.  Suggestions?
>
> I saw the exodus announcement too - very nice. I wondered if you could
> alter it to emit a C program that dlopen()s the binary, looks up main()
> and calls it? Thats what has been done in several places (for some of
> the erlang 'port' functionality for instance).
>
> The executable and libraries would still need to be pie, but with many
> linux distros using that by default, it may not be so limiting...
>
> Rick
>

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Exodus: Lightweight relocation engine. Useful?

2018-02-02 Thread Rick Payne
On Fri, 2018-02-02 at 16:28 -0800, Dan Kaminsky wrote:
> That's where I hit my wall, but it seems pretty much a bullseye on
> your wheelhouse.  Suggestions?

I saw the exodus announcement too - very nice. I wondered if you could
alter it to emit a C program that dlopen()s the binary, looks up main()
and calls it? Thats what has been done in several places (for some of
the erlang 'port' functionality for instance).

The executable and libraries would still need to be pie, but with many
linux distros using that by default, it may not be so limiting...

Rick

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.