/* find user */
EXEC SQL SELECT users_id, status INTO :users_id, :ostatus
FROM users
- WHERE unix_uid = :uid AND (status = 0 OR status = 5 OR status = 6);
+ WHERE unix_uid = :uid AND
+ (status = 0 OR status = 5 OR status = 6 OR status = 9);
if (sqlca.sqlerrd[2] == 0)
return MR_NO_MATCH;
WHERE label = :login || '.po';
if (dbms_errno)
return mr_errcode;
- if ((ostatus == 0) || (tmp != users_id))
+ if ((ostatus == 0 || ostatus == 9) || (tmp != users_id))
return MR_IN_USE;
else
po_exists = 1;
sprintf(buffer, "u.users_id = %d", users_id);
incremental_before(USERS_TABLE, buffer, 0);
nstatus = 2;
- if (ostatus == 5 || ostatus == 6)
+ if (ostatus == 5 || ostatus == 6 || ostatus == 9)
nstatus = 1;
EXEC SQL UPDATE users SET login = :login, status = :nstatus,
modtime = SYSDATE, modby = :who, modwith = :entity,