getpw(3) Library Functions Manual getpw(3)

getpw - re-construye una línea del fichero de cuentas de usuario

Biblioteca Estándar C (libc, -lc)

#define _GNU_SOURCE             /* Vea feature_test_macros(7) */
#include <sys/types.h>
#include <pwd.h>
[[deprecated]] int getpw(uid_t uid, char *buf);

La función getpw() reconstruye la línea del fichero de cuentas de usuario para el usuario cuyo UID se da como uid y el resultado se guarda en el sitio apuntado por buf. El búfer devuelto en buf contiene una línea con el formato


nombre:contraseña:uid:gid:gecos:dir:shell

La estructura passwd se define en <pwd.h> así:


struct passwd {
    char   *pw_name;       /* username */
    char   *pw_passwd;     /* user password */
    uid_t   pw_uid;        /* user ID */
    gid_t   pw_gid;        /* group ID */
    char   *pw_gecos;      /* user information */
    char   *pw_dir;        /* home directory */
    char   *pw_shell;      /* shell program */
};

For more information about the fields of this structure, see passwd(5).

The getpw() function returns 0 on success; on error, it returns -1, and errno is set to indicate the error.

If uid is not found in the password database, getpw() returns -1, sets errno to 0, and leaves buf unchanged.

0 o ENOENT
No user corresponding to uid.
buf is NULL.
Memoria insuficiente para alojar la estructura passwd.

/etc/passwd
archivo con los datos de las cuentas de usuario

Para obtener una explicación de los términos usados en esta sección, véase attributes(7).

Interfaz Atributo Valor
getpw() Seguridad del hilo Configuración regional de multi-hilo seguro

None.

SVr2.

La función getpw() es peligrosa ya que puede desbordar el búfer proporcionado, buf. Está obsoleta y en su lugar debería utilizar getpwuid(3).

endpwent(3), fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)

La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es> y Juan Piernas <piernas@ditec.um.es>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.

31 Octubre 2023 Páginas de manual de Linux 6.06