Deleted Added
full compact
pw.h (20679) pw.h (20747)
1/*-
2 * Copyright (C) 1996
3 * David L. Nugent. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
1/*-
2 * Copyright (C) 1996
3 * David L. Nugent. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $Id: pw.h,v 1.1.1.3 1996/12/10 23:58:59 joerg Exp $
26 * $Id: pw.h,v 1.2 1996/12/19 15:22:42 davidn Exp $
27 */
28
29#include <stdio.h>
30#include <stdlib.h>
31#include <string.h>
32#include <unistd.h>
33#include <stdarg.h>
34#include <errno.h>

--- 46 unchanged lines hidden (view full) ---

81 char *shell_default; /* Default shell */
82 char *default_group; /* Default group number */
83 char **groups; /* Default (additional) groups */
84 char *default_class; /* Default user class */
85 uid_t min_uid, max_uid; /* Allowed range of uids */
86 gid_t min_gid, max_gid; /* Allowed range of gids */
87 int expire_days; /* Days to expiry */
88 int password_days; /* Days to password expiry */
27 */
28
29#include <stdio.h>
30#include <stdlib.h>
31#include <string.h>
32#include <unistd.h>
33#include <stdarg.h>
34#include <errno.h>

--- 46 unchanged lines hidden (view full) ---

81 char *shell_default; /* Default shell */
82 char *default_group; /* Default group number */
83 char **groups; /* Default (additional) groups */
84 char *default_class; /* Default user class */
85 uid_t min_uid, max_uid; /* Allowed range of uids */
86 gid_t min_gid, max_gid; /* Allowed range of gids */
87 int expire_days; /* Days to expiry */
88 int password_days; /* Days to password expiry */
89 int numgroups; /* (internal) size of default_group array */
89};
90
91#define _PATH_PW_CONF "/etc/pw.conf"
92#define _UC_MAXLINE 1024
93#define _UC_MAXSHELLS 32
90};
91
92#define _PATH_PW_CONF "/etc/pw.conf"
93#define _UC_MAXLINE 1024
94#define _UC_MAXSHELLS 32
94#define _UC_MAXGROUPS 200
95
96struct userconf *read_userconfig(char const * file);
97int write_userconfig(char const * file);
98struct carg *addarg(struct cargs * _args, int ch, char *argstr);
99struct carg *getarg(struct cargs * _args, int ch);
100void cmderr(int ec, char const * fmt,...);
101
102int pw_user(struct userconf * cnf, int mode, struct cargs * _args);
103int pw_group(struct userconf * cnf, int mode, struct cargs * _args);
104char *pw_checkname(u_char *name, int gecos);
105
106int addpwent(struct passwd * pwd);
107int delpwent(struct passwd * pwd);
108int chgpwent(char const * login, struct passwd * pwd);
109int fmtpwent(char *buf, struct passwd * pwd);
110
111int addgrent(struct group * grp);
112int delgrent(struct group * grp);
113int chggrent(char const * login, struct group * grp);
95
96struct userconf *read_userconfig(char const * file);
97int write_userconfig(char const * file);
98struct carg *addarg(struct cargs * _args, int ch, char *argstr);
99struct carg *getarg(struct cargs * _args, int ch);
100void cmderr(int ec, char const * fmt,...);
101
102int pw_user(struct userconf * cnf, int mode, struct cargs * _args);
103int pw_group(struct userconf * cnf, int mode, struct cargs * _args);
104char *pw_checkname(u_char *name, int gecos);
105
106int addpwent(struct passwd * pwd);
107int delpwent(struct passwd * pwd);
108int chgpwent(char const * login, struct passwd * pwd);
109int fmtpwent(char *buf, struct passwd * pwd);
110
111int addgrent(struct group * grp);
112int delgrent(struct group * grp);
113int chggrent(char const * login, struct group * grp);
114int fmtgrent(char *buf, struct group * grp);
115
116int boolean_val(char const * str, int dflt);
117char const *boolean_str(int val);
118char *newstr(char const * p);
119
120void pw_log(struct userconf * cnf, int mode, int which, char const * fmt,...);
121char *pw_pwcrypt(char *password);
122
123extern const char *Modes[];
124extern const char *Which[];
114
115int boolean_val(char const * str, int dflt);
116char const *boolean_str(int val);
117char *newstr(char const * p);
118
119void pw_log(struct userconf * cnf, int mode, int which, char const * fmt,...);
120char *pw_pwcrypt(char *password);
121
122extern const char *Modes[];
123extern const char *Which[];