
\begin{DoxyItemize}
\item infos = Information about the passwd plugin is in keys below
\item infos/author = Thomas Waser \href{mailto:thomas.waser@libelektra.org}{\texttt{ thomas.\+waser@libelektra.\+org}}
\item infos/licence = BSD
\item infos/needs =
\item infos/provides = storage/passwd
\item infos/recommends =
\item infos/placements = getstorage setstorage
\item infos/status = maintained reviewed conformant compatible coverage specific unittest tested nodep libc configurable experimental limited
\item infos/metadata =
\item infos/description = storage plugin for passwd files
\end{DoxyItemize}\hypertarget{md_src_plugins_passwd_README_src_plugins_passwd_README_md}{}\doxysection{Introduction}\label{md_src_plugins_passwd_README_src_plugins_passwd_README_md}
This plugin parses {\ttfamily passwd} files, e.\+g. {\ttfamily /etc/passwd}.\hypertarget{md_src_plugins_passwd_README_autotoc_md380}{}\doxysection{Installation}\label{md_src_plugins_passwd_README_autotoc_md380}
See \mbox{\hyperlink{doc_INSTALL_md}{installation}}. The package is called {\ttfamily libelektra5-\/experimental}.\hypertarget{md_src_plugins_passwd_README_autotoc_md381}{}\doxysection{Implementation Details}\label{md_src_plugins_passwd_README_autotoc_md381}
The non-\/\+POSIX function {\ttfamily fgetpwent} (GNU\+\_\+\+SOURCE) will be used to read the file supplied by the resolver. As a fallback we implemented our own version based on musls {\ttfamily fgetpwent}.

For writing {\ttfamily putpwent} (GNU\+\_\+\+SOURCE) will be used. If it is not available the plugin will write straight to the config file.\hypertarget{md_src_plugins_passwd_README_autotoc_md382}{}\doxysection{Requirements}\label{md_src_plugins_passwd_README_autotoc_md382}
For the plugin to be build at least {\ttfamily POSIX\+\_\+\+C\+\_\+\+SOURCE $>$= 200809L} compatibility is required.\hypertarget{md_src_plugins_passwd_README_autotoc_md383}{}\doxysection{Configuration}\label{md_src_plugins_passwd_README_autotoc_md383}
If the config key {\ttfamily index} is set to {\ttfamily name} passwd entries will be sorted by name, if not set or set to {\ttfamily uid} passwd entries will be sorted by uid\hypertarget{md_src_plugins_passwd_README_autotoc_md384}{}\doxysection{Fields}\label{md_src_plugins_passwd_README_autotoc_md384}

\begin{DoxyItemize}
\item {\ttfamily gecos} contains the full name of the account
\item {\ttfamily gid} contains the accounts primary group id
\item {\ttfamily home} contains the path to the accounts home directory
\item {\ttfamily shell} contains the accounts default shell
\item {\ttfamily uid} contains the accounts uid
\item {\ttfamily name} contains the account name
\end{DoxyItemize}\hypertarget{md_src_plugins_passwd_README_autotoc_md385}{}\doxysection{Usage}\label{md_src_plugins_passwd_README_autotoc_md385}

\begin{DoxyCode}{0}
\DoxyCodeLine{kdb mount /etc/passwd system:/passwd passwd index=name}
\DoxyCodeLine{kdb export system:/passwd/root}
\DoxyCodeLine{\#> gecos = root}
\DoxyCodeLine{\#> gid = 0}
\DoxyCodeLine{\#> home = /root}
\DoxyCodeLine{\#> passwd = x}
\DoxyCodeLine{\#> shell = /bin/zsh}
\DoxyCodeLine{\#> uid = 0}

\end{DoxyCode}
 