00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef _IPMI_USER_H
00035 #define _IPMI_USER_H
00036
00037 #include <OpenIPMI/ipmi_mc.h>
00038
00039 #ifdef __cplusplus
00040 extern "C" {
00041 #endif
00042
00043
00044
00045
00046 typedef struct ipmi_user_list_s ipmi_user_list_t;
00047
00048
00049
00050
00051
00052
00053
00054
00055 typedef void (*ipmi_user_list_cb)(ipmi_mc_t *mc,
00056 int err,
00057 ipmi_user_list_t *list,
00058 void *cb_data);
00059 #define IPMI_MC_ALL_USERS 0
00060 int ipmi_mc_get_users(ipmi_mc_t *mc,
00061 unsigned int channel,
00062 unsigned int user,
00063 ipmi_user_list_cb handler,
00064 void *cb_data);
00065
00066 int ipmi_user_list_get_channel(ipmi_user_list_t *list, unsigned int *channel);
00067 int ipmi_user_list_get_max_user(ipmi_user_list_t *list, unsigned int *max);
00068 int ipmi_user_list_get_enabled_users(ipmi_user_list_t *list, unsigned int *e);
00069 int ipmi_user_list_get_fixed_users(ipmi_user_list_t *list, unsigned int *f);
00070
00071
00072
00073
00074
00075
00076 ipmi_user_list_t *ipmi_user_list_copy(ipmi_user_list_t *list);
00077 void ipmi_user_list_free(ipmi_user_list_t *list);
00078
00079
00080
00081
00082 typedef struct ipmi_user_s ipmi_user_t;
00083
00084
00085
00086
00087
00088
00089
00090 unsigned int ipmi_user_list_get_user_count(ipmi_user_list_t *users);
00091 ipmi_user_t *ipmi_user_list_get_user(ipmi_user_list_t *list,
00092 unsigned int idx);
00093
00094
00095
00096
00097 ipmi_user_t *ipmi_user_copy(ipmi_user_t *user);
00098 void ipmi_user_free(ipmi_user_t *user);
00099
00100
00101
00102
00103 int ipmi_mc_set_user(ipmi_mc_t *mc,
00104 unsigned int channel,
00105 unsigned int num,
00106 ipmi_user_t *user,
00107 ipmi_mc_done_cb handler,
00108 void *cb_data);
00109
00110 int ipmi_user_get_channel(ipmi_user_t *user, unsigned int *channel);
00111
00112
00113
00114
00115 int ipmi_user_get_num(ipmi_user_t *user, unsigned int *num);
00116 int ipmi_user_set_num(ipmi_user_t *user, unsigned int num);
00117
00118
00119
00120
00121
00122
00123
00124
00125 int ipmi_user_get_name_len(ipmi_user_t *user, unsigned int *len);
00126 int ipmi_user_get_name(ipmi_user_t *user, char *name, unsigned int *len);
00127 int ipmi_user_set_name(ipmi_user_t *user, char *name, unsigned int len);
00128 int ipmi_user_set_password(ipmi_user_t *user, char *pw, unsigned int len);
00129 int ipmi_user_set_password2(ipmi_user_t *user, char *pw, unsigned int len);
00130
00131
00132
00133
00134 int ipmi_user_get_link_auth_enabled(ipmi_user_t *user, unsigned int *val);
00135 int ipmi_user_set_link_auth_enabled(ipmi_user_t *user, unsigned int val);
00136 int ipmi_user_get_msg_auth_enabled(ipmi_user_t *user, unsigned int *val);
00137 int ipmi_user_set_msg_auth_enabled(ipmi_user_t *user, unsigned int val);
00138 int ipmi_user_get_access_cb_only(ipmi_user_t *user, unsigned int *val);
00139 int ipmi_user_set_access_cb_only(ipmi_user_t *user, unsigned int val);
00140 int ipmi_user_get_privilege_limit(ipmi_user_t *user, unsigned int *val);
00141 int ipmi_user_set_privilege_limit(ipmi_user_t *user, unsigned int val);
00142 int ipmi_user_get_session_limit(ipmi_user_t *user, unsigned int *val);
00143 int ipmi_user_set_session_limit(ipmi_user_t *user, unsigned int val);
00144
00145
00146
00147
00148
00149 int ipmi_user_get_enable(ipmi_user_t *user, unsigned int *val);
00150 int ipmi_user_set_enable(ipmi_user_t *user, unsigned int val);
00151
00152
00153
00154
00155
00156
00157 int ipmi_user_set_all(ipmi_user_t *user);
00158
00159 #ifdef __cplusplus
00160 }
00161 #endif
00162
00163 #endif