table of contents
SHADOW(3) | Chiamate di libreria | SHADOW(3) |
NOME¶
shadow, getspnam - routine per file delle password cifrate
SINTASSI¶
#include <shadow.h>
struct spwd *getspent();
struct spwd *getspnam(char *nome);
void setspent();
void endspent();
struct spwd *fgetspent(FILE *fp);
struct spwd *sgetspent(char *cp);
int putspent(struct spwd *p, FILE *fp);
int lckpwdf();
int ulckpwdf();
DESCRIZIONE¶
shadow manipola il contenuto del file delle password shadow, /etc/shadow. La struttura nel file #include è la seguente:
struct spwd {
char *sp_namp; /* login dell´utente */
char *sp_pwdp; /* password cifrata */
long int sp_lstchg; /* ultimo cambio della password */
long int sp_min; /* giorni minimi tra i cambi */
long int sp_max; /* giorni massimi tra i cambi */
long int sp_warn; /* giorni di preavviso */
long int sp_inact; /* giorni di inattività */
long int sp_expire; /* data di scadenza dell´account */
unsigned long int sp_flag; /* riservato per uso futuro */ }
Ciascun campo significa:
DESCRIZIONE¶
getspent, getspname, fgetspent e sgetspent restituiscono tutte un puntatore a uno struct spwd. getspent restituisce la voce successiva nel file, fgetspent la voce successiva nello stream specificato, che si suppone sia un file nel formato corretto. sgetspent restituisce un puntatore a uno struct spwd usando come input la stringa fornita. getspnam cerca una voce che corrisponde a name partendo dalla posizione corrente nel file.
setspent e endspent sono usate rispettivamente per iniziare e terminare l´accesso al file delle password shadow.
Le funzioni lckpwdf e ulckpwdf si usano per garantire l´accesso esclusivo al file /etc/shadow. lckpwdf prova ad acquisire il lock tramite pw_lock per un massimo di 15 secondi, dopodiché tenta di ottenere un secondo lock usando spw_lock per il tempo che rimane dei 15 secondi iniziali. Se anche uno solo dei due tentativi fallisce dopo un totale di 15 secondi, lckpwdf restituisce -1, mentre restituisce 0 se riesce ad acquisire entrambi i lock.
DIAGNOSTICA¶
Le funzioni restituiscono NULL se non ci sono altre voci disponibili o se si verifica un errore durante l´elaborazione. Le funzioni di tipo int restituiscono 0 in caso di successo e -1 in caso di errore.
AVVISI/CAVEAT¶
Queste funzioni possono essere usate solo dall´amministratore, perché l´accesso al file delle password shadow è riservato.
FILE¶
/etc/shadow
VEDERE ANCHE¶
11/05/2016 | shadow-utils 4.1.5.1 |