version 1.1.2.4, 2012/09/19 12:07:23
|
version 1.1.2.7, 2012/09/19 12:35:10
|
Line 83 cfg_findPasswdBy(pwd_root_t * __restrict pwd, int crit
|
Line 83 cfg_findPasswdBy(pwd_root_t * __restrict pwd, int crit
|
|
|
if (!pwd) |
if (!pwd) |
return NULL; |
return NULL; |
|
else |
|
AIT_INIT_VAL(&v); |
|
|
va_start(lst, criteria); |
va_start(lst, criteria); |
switch (criteria) { |
switch (criteria) { |
Line 180 cfg_unsetPasswd(pwd_root_t * __restrict pwd, int crite
|
Line 182 cfg_unsetPasswd(pwd_root_t * __restrict pwd, int crite
|
* cfg_setPasswd() - Set item in password or adding new item if not exists |
* cfg_setPasswd() - Set item in password or adding new item if not exists |
* |
* |
* @cfg = Password root |
* @cfg = Password root |
|
* @fields = Meaning continuous field |
* @csName = Username |
* @csName = Username |
* @csPass = Password |
* @csPass = Password |
* @uid = UID |
* @uid = UID |
Line 193 cfg_unsetPasswd(pwd_root_t * __restrict pwd, int crite
|
Line 196 cfg_unsetPasswd(pwd_root_t * __restrict pwd, int crite
|
* return: 0 nothing changed, -1 error, 1 found and updated item or 2 added new item |
* return: 0 nothing changed, -1 error, 1 found and updated item or 2 added new item |
*/ |
*/ |
int |
int |
cfg_setPasswd(pwd_root_t * __restrict pwd, const char *csName, const char *csPass, | cfg_setPasswd(pwd_root_t * __restrict pwd, u_char fields, const char *csName, const char *csPass, |
u_int uid, u_int gid, const char *csClass, u_int change, u_int expire, |
u_int uid, u_int gid, const char *csClass, u_int change, u_int expire, |
const char *csRealm, const char *csHome, const char *csShell) |
const char *csRealm, const char *csHome, const char *csShell) |
{ |
{ |
Line 211 cfg_setPasswd(pwd_root_t * __restrict pwd, const char
|
Line 214 cfg_setPasswd(pwd_root_t * __restrict pwd, const char
|
return -1; |
return -1; |
} else { |
} else { |
memset(u, 0, sizeof(struct tagUser)); |
memset(u, 0, sizeof(struct tagUser)); |
|
if (fields && fields < PWD_MAX_FIELDS) |
|
u->usr_fields = fields; |
|
else |
|
u->usr_fields = PWD_MAX_FIELDS - 1; |
|
|
PWD_LOCK(pwd); |
PWD_LOCK(pwd); |
SLIST_INSERT_HEAD(pwd, u, usr_next); |
SLIST_INSERT_HEAD(pwd, u, usr_next); |
Line 276 cfg_getPasswd(pwd_root_t * __restrict pwd, int criteri
|
Line 283 cfg_getPasswd(pwd_root_t * __restrict pwd, int criteri
|
{ |
{ |
struct tagUser *u; |
struct tagUser *u; |
va_list lst; |
va_list lst; |
|
char *str; |
|
|
if (!pwd) |
if (!pwd) |
return NULL; |
return NULL; |
Line 283 cfg_getPasswd(pwd_root_t * __restrict pwd, int criteri
|
Line 291 cfg_getPasswd(pwd_root_t * __restrict pwd, int criteri
|
va_start(lst, criteria); |
va_start(lst, criteria); |
switch (criteria) { |
switch (criteria) { |
case PWD_CRIT_NAME: |
case PWD_CRIT_NAME: |
u = _selectPasswd(pwd, 0, va_arg(lst, char*)); | str = va_arg(lst, char*); |
| if (!str) |
| u = NULL; |
| else |
| u = _selectPasswd(pwd, 0, str); |
break; |
break; |
case PWD_CRIT_UID: |
case PWD_CRIT_UID: |
u = _selectPasswd(pwd, va_arg(lst, u_int), NULL); |
u = _selectPasswd(pwd, va_arg(lst, u_int), NULL); |