Diff for /libaitcfg/src/pq.c between versions 1.1.2.4 and 1.1.2.7

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);

Removed from v.1.1.2.4  
changed lines
  Added in v.1.1.2.7


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>