Ü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 Benutzer-ID 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; /* Benutzer-ID */ gid_t pw_gid; /* Gruppen-ID */ 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.Schnittstelle | Attribut | Wert |
getpw() | Multithread-Fähigkeit | MT-Safe locale |
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.KOLOPHON
Diese Seite ist Teil der Veröffentlichung 4.06 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 <[email protected]> und Chris Leick <[email protected]> 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 <[email protected]>.