RTEMS | Reimplement POSIX passwd and group Entry APIs (#5420)
Joel Sherrill (@joel)
gitlab at rtems.org
Wed Mar 18 23:07:38 UTC 2026
Joel Sherrill commented: https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5420#note_146135
The goal is to replace the current implementations with ones that can be under a permissive license (e.g. BSD, MIT, etc.). The expectation is that the FreeBSD implementations are suitable. This is fairly logically isolated functionality so it should all be in _libcsupport/src_ with [pwd.h](https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/pwd.h.html) and [grp.h](https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/grp.h.html) provided by the Newlib C Library.
The RTEMS implementation has the added capability of writing default _/etc/passwd_ and _/etc/group_ files if they do not exist when the functions are called. This will need to be re-implemented. The current expectation is that the user application would include their own versions in the initial file system image. It would be nice to figure out a way for the user application to be able to override the default contents. There are existing cases where something similar is done. The user override would be an addition after it works.
The new implementation should be able to pass all existing tests without modifying the tests.
One thing to be aware of is that there is now a _contrib/_ directory at the top of the source tree. The unmodified versions of the FreeBSD files should be your first commit there with the commit containing the hash. Any changes should follow the pattern discussed in the [Coding Conventions](https://docs.rtems.org/docs/main/eng/coding-conventions.html).
Given our stronger handle on third party code modifications now, it probably makes sense for the functions writing the default versions of _/etc/passwd_ and _/etc/group_ in their own file in _libcsupport/src_.
When this works, it is important to make sure the POSIX Users Guide documents all the POSIX functions.
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5420#note_146135
You're receiving this email because of your account on gitlab.rtems.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20260318/b7029315/attachment.htm>
More information about the bugs
mailing list