BEZEICHNUNG
getpw - den Eintrag einer Passwortzeile rekonstruieren
ÜBERSICHT
#define
_GNU_SOURCE /* siehe feature_test_macros(7) */
#include <sys/types.h>
#include <pwd.h>
int getpw(uid_t uid, char *puffer);
BESCHREIBUNG
Die Funktion getpw() rekonstruiert eine Zeile in der Passwortdatei im Puffer puffer für die angegebene Benutzerkennung uid. Der zurückgegebene Puffer enthält eine Zeile im folgenden Format:
name:passwd:uid:gid:gecos:dir:shell
Die Struktur passwd ist in <pwd.h> wie folgt definiert:
struct passwd { char *pw_name; /* Benutzername */ char *pw_passwd; /* Passwort des Benutzers */ uid_t pw_uid; /* Benutzerkennung */ gid_t pw_gid; /* Gruppenkennung */ char *pw_gecos; /* Benutzerinformationen */ char *pw_dir; /* Home-Verzeichnis */ char *pw_shell; /* Anmelde-Shell */ };
Weitere Informationen über die Felder dieser Struktur finden Sie unter passwd(5).
RÜCKGABEWERT
Die Funktion getpw() gibt bei Erfolg 0 zurück. Bei einem Fehler wird -1 zurückgegeben und errno so gesetzt, dass es den Fehler anzeigt.
Falls uid nicht in der Passwortdatenbank gefunden wird, gibt getpw() -1 zurück, setzt errno auf 0 und lässt buf unverändert.
FEHLER
0 oder ENOENT
Zu uid gibt es keinen dazugehörigen Benutzer.
EINVAL |
puffer ist NULL. | ||
ENOMEM |
Der Speicher reicht nicht aus, um ihn für die Struktur passwd zu reservieren. |
DATEIEN
/etc/passwd
Passwortdatenbank
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
KONFORM ZU
SVr2.
FEHLER
Die Funktion getpw() ist gefährlich, da sie den bereitgestellten Puffer puffer zum Überlauf bringen kann. Sie wurde durch getpwuid(3) ersetzt.
SIEHE AUCH
endpwent(3), fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 5.07 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <joey [AT] infodrom.org> und Chris Leick <c.leick [AT] vollbio.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german [AT] lists.org>.