From 333f7ecfa3e040191c66b2b92f6c117ca2cbac1d Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 14:50:00 +0200 Subject: Adding upstream version 1:4.8.1. Signed-off-by: Daniel Baumann --- man/zh_CN/man3/getspnam.3 | 1 + man/zh_CN/man3/shadow.3 | 245 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 246 insertions(+) create mode 100644 man/zh_CN/man3/getspnam.3 create mode 100644 man/zh_CN/man3/shadow.3 (limited to 'man/zh_CN/man3') diff --git a/man/zh_CN/man3/getspnam.3 b/man/zh_CN/man3/getspnam.3 new file mode 100644 index 0000000..cd473da --- /dev/null +++ b/man/zh_CN/man3/getspnam.3 @@ -0,0 +1 @@ +.so man3/shadow.3 diff --git a/man/zh_CN/man3/shadow.3 b/man/zh_CN/man3/shadow.3 new file mode 100644 index 0000000..cb8e8b6 --- /dev/null +++ b/man/zh_CN/man3/shadow.3 @@ -0,0 +1,245 @@ +'\" t +.\" Title: shadow +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2020-01-23 +.\" Manual: 库函数调用 +.\" Source: shadow-utils 4.8.1 +.\" Language: Chinese Simplified +.\" +.TH "SHADOW" "3" "2020-01-23" "shadow\-utils 4\&.8\&.1" "库函数调用" +.\" ----------------------------------------------------------------- +.\" * Define some portability stuff +.\" ----------------------------------------------------------------- +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.\" http://bugs.debian.org/507673 +.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" ----------------------------------------------------------------- +.\" * set default formatting +.\" ----------------------------------------------------------------- +.\" disable hyphenation +.nh +.\" disable justification (adjust text to left margin only) +.ad l +.\" ----------------------------------------------------------------- +.\" * MAIN CONTENT STARTS HERE * +.\" ----------------------------------------------------------------- +.SH "名称" +shadow, getspnam \- 加密密码文件工具函数 +.SH "SYNTAX" +.PP +\fI#include \fR +.PP +\fIstruct spwd *getspent();\fR +.PP +\fIstruct spwd *getspnam(char\fR +\fI*name\fR\fI);\fR +.PP +\fIvoid setspent();\fR +.PP +\fIvoid endspent();\fR +.PP +\fIstruct spwd *fgetspent(FILE\fR +\fI*fp\fR\fI);\fR +.PP +\fIstruct spwd *sgetspent(char\fR +\fI*cp\fR\fI);\fR +.PP +\fIint putspent(struct spwd\fR +\fI*p,\fR +\fIFILE\fR +\fI*fp\fR\fI);\fR +.PP +\fIint lckpwdf();\fR +.PP +\fIint ulckpwdf();\fR +.SH "描述" +.PP +\fIshadow\fR +manipulates the contents of the shadow password file, +/etc/shadow\&. The structure in the +\fI#include\fR +file is: +.sp +.if n \{\ +.RS 4 +.\} +.nf +struct spwd { + char *sp_namp; /* user login name */ + char *sp_pwdp; /* encrypted password */ + long int sp_lstchg; /* last password change */ + long int sp_min; /* days until change allowed\&. */ + long int sp_max; /* days before change required */ + long int sp_warn; /* days warning for expiration */ + long int sp_inact; /* days before account inactive */ + long int sp_expire; /* date when account expires */ + unsigned long int sp_flag; /* reserved for future use */ +} + +.fi +.if n \{\ +.RE +.\} +.PP +每个字段的含义是: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_namp \- 指向以 null 结束的用户名的指针 +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_pwdp \- 指向 null 结束的密码的指针 +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_lstchg \- 最近更改密码的日期(日期计算方法是从1970年1月1日开始的天数) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_min \- days before which password may not be changed +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_max \- days after which password must be changed +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_warn \- days before password is to expire that user is warned of pending password expiration +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_inact \- days after password expires that account is considered inactive and disabled +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_expire \- days since Jan 1, 1970 when account will be disabled +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_flag \- reserved for future use +.RE +.SH "描述" +.PP +\fIgetspent\fR, +\fIgetspname\fR, +\fIfgetspent\fR, and +\fIsgetspent\fR +each return a pointer to a +\fIstruct spwd\fR\&. +\fIgetspent\fR +returns the next entry from the file, and +\fIfgetspent\fR +returns the next entry from the given stream, which is assumed to be a file of the proper format\&. +\fIsgetspent\fR +returns a pointer to a +\fIstruct spwd\fR +using the provided string as input\&. +\fIgetspnam\fR +searches from the current position in the file for an entry matching +\fIname\fR\&. +.PP +\fIsetspent\fR +and +\fIendspent\fR +may be used to begin and end, respectively, access to the shadow password file\&. +.PP +The +\fIlckpwdf\fR +and +\fIulckpwdf\fR +routines should be used to insure exclusive access to the +/etc/shadow +file\&. +\fIlckpwdf\fR +attempts to acquire a lock using +\fIpw_lock\fR +for up to 15 seconds\&. It continues by attempting to acquire a second lock using +\fIspw_lock\fR +for the remainder of the initial 15 seconds\&. Should either attempt fail after a total of 15 seconds, +\fIlckpwdf\fR +returns \-1\&. When both locks are acquired 0 is returned\&. +.SH "DIAGNOSTICS" +.PP +Routines return NULL if no more entries are available or if an error occurs during processing\&. Routines which have +\fIint\fR +as the return value return 0 for success and \-1 for failure\&. +.SH "CAVEATS" +.PP +这些函数只能由超级用户使用,因为对影子密码文件的访问是受限的。 +.SH "文件" +.PP +/etc/shadow +.RS 4 +安全用户账户信息。 +.RE +.SH "参见" +.PP +\fBgetpwent\fR(3), +\fBshadow\fR(5)\&. -- cgit v1.2.3