#ifndef USER_H_ #define USER_H_ #include #include #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