geteuid / getpwnam not implemented

Josef Söntgen josef.soentgen at genode-labs.com
Tue Nov 27 13:41:56 CET 2018


Hello Wouter,

* Wouter van Oijen <wouter.van.oijen at technolution.nl>:
> I succeeded in building and starting Mosquitto under Genode, but it
> fails due to the not-implemented functions geteuid() and getpwnam().
> See log below. Are these functions already implemented somewhere? How
> should I continue from here?

At least 'getpwnam' got implemented by [1] but you need to configure the
libc (please look at the run script included in the commit). Most of the
time the user account/identity functions that are used to check various
properties in a multi-user system (e.g. to drop priviledges or check for
running as root) are of no concern on Genode - after all there is just a
single user and the seperation is done at another layer, not the libc.
You might have to check what your program expects and how, if necessary,
to adapt it.

 [1] https://github.com/genodelabs/genode/commit/874ba409ca

The back end implementation of the libc is located in [2].

 [2] repos/libports/src/lib/libc

> Also, what does the warning about exec_static_constructors() mean?
> 
> […]

Ported software might depend on calling static constructors but we
have to make sure to execute the functions at the proper time, i.e.,
after the component's environment has been completely initialized. For
now we do that for every libc based component unconditionally. The
dynamic run-time linker, however, will print this diagnostic message in
case the binary does not have any static constructors that need to be
executed.


Regards,
-- 
Josef Söntgen
Genode Labs

http://www.genode-labs.com/ · http://genode.org/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.genode.org/pipermail/users/attachments/20181127/df2b482a/attachment.sig>


More information about the users mailing list