70 lines
1.6 KiB
C
70 lines
1.6 KiB
C
#ifndef USER_H_
|
|
#define USER_H_
|
|
#include <time.h>
|
|
#include <stdbool.h>
|
|
#include "user_group.h"
|
|
|
|
#define UNAMESIZE (127 + 1)
|
|
#define UDESIZE (127 + 1)
|
|
#define UPWDSIZE (63 + 1)
|
|
#define UTIME 20
|
|
#define USER_ATTRIBUTE_NUM 7
|
|
|
|
#define ADD_FAIL_NOGROUP 1
|
|
#define ADD_FAIL_NAMELEN 2
|
|
#define ADD_FAIL_NAMESPE 3
|
|
#define ADD_FAIL_NAMEDUP 4
|
|
#define ADD_FAIL_USERFULL 5
|
|
#define ADD_SUCCESS 0
|
|
|
|
typedef struct user
|
|
{
|
|
unsigned short ID; //用户id
|
|
unsigned short GID; //用户组ID
|
|
unsigned short multi_valid; //多人登陆、永久有效
|
|
char uname[UNAMESIZE]; //用户名
|
|
char passwd[UPWDSIZE]; //密码
|
|
char udescription[UDESIZE]; //用户描述
|
|
time_t valid_begin_time; //有效期开始时间
|
|
time_t valid_end_time; //有效期结束时间
|
|
}USERACCOUNT;
|
|
|
|
typedef struct userlist
|
|
{
|
|
unsigned short ID;
|
|
unsigned short GID;
|
|
unsigned short multi;
|
|
unsigned short valid;
|
|
char uname[UNAMESIZE];
|
|
char gname[GNAMESIZE];
|
|
char passwd[UPWDSIZE];
|
|
char udescription[UDESIZE];
|
|
char valid_begin_time[UTIME];
|
|
char valid_end_time[UTIME];
|
|
}USERLIST;
|
|
|
|
typedef struct result_user_add
|
|
{
|
|
int result;
|
|
int userID;
|
|
}USERADD;
|
|
|
|
/*初始化参数*/
|
|
int init_user();
|
|
|
|
/*添加元素-新增用户*/
|
|
void usermanager_add_user(char* UNAME, char* UGNAME, USERADD* UADDRES);
|
|
|
|
/* 按用户ID查询用户 */
|
|
void get_user_by_id(unsigned short ID, USERLIST* ULIST);
|
|
|
|
/* 修改用户-web */
|
|
bool mod_user_web(USERLIST* ULIST);
|
|
|
|
/* 根据用户名查询用户ID */
|
|
unsigned short get_userid_by_name(char* UNAME);
|
|
|
|
/* 修改用户-命令行 */
|
|
bool mod_user_line(char* UNAME, const int INTYPE, char* IN);
|
|
|
|
#endif |