fix segfault and channel problem with user priv command

This commit is contained in:
Duncan Laurie 2006-06-28 21:06:16 +00:00
parent 533582e9e3
commit 520aa05c07

View File

@ -72,11 +72,10 @@ extern int csv_output;
*/
static int
ipmi_get_user_access(
struct ipmi_intf * intf,
struct ipmi_intf *intf,
uint8_t channel_number,
uint8_t user_id,
struct user_access_rsp * user_access)
struct user_access_rsp *user_access)
{
struct ipmi_rs * rsp;
struct ipmi_rq req;
@ -129,10 +128,9 @@ ipmi_get_user_access(
*/
static int
ipmi_get_user_name(
struct ipmi_intf * intf,
struct ipmi_intf *intf,
uint8_t user_id,
char * user_name)
char *user_name)
{
struct ipmi_rs * rsp;
struct ipmi_rq req;
@ -186,7 +184,6 @@ dump_user_access(
printed_header = 1;
}
printf("%-4d%-17s%-8s%-11s%-11s%-s\n",
user_id,
user_name,
@ -202,8 +199,8 @@ dump_user_access(
static void
dump_user_access_csv(
uint8_t user_id,
const char * user_name,
struct user_access_rsp * user_access)
const char *user_name,
struct user_access_rsp *user_access)
{
printf("%d,%s,%s,%s,%s,%s\n",
user_id,
@ -219,7 +216,7 @@ dump_user_access_csv(
static int
ipmi_print_user_list(
struct ipmi_intf * intf,
struct ipmi_intf *intf,
uint8_t channel_number)
{
/* This is where you were! */
@ -242,7 +239,6 @@ ipmi_print_user_list(
user_name))
return -1;
if ((current_user_id == 0) ||
user_access.link_auth_access ||
user_access.ipmi_messaging_access ||
@ -308,9 +304,9 @@ ipmi_print_user_summary(
*/
static int
ipmi_user_set_username(
struct ipmi_intf * intf,
struct ipmi_intf *intf,
uint8_t user_id,
const char * name)
const char *name)
{
struct ipmi_rs * rsp;
struct ipmi_rq req;
@ -344,15 +340,14 @@ ipmi_user_set_username(
return 0;
}
static int
ipmi_user_set_userpriv(
struct ipmi_intf * intf,
struct ipmi_intf *intf,
uint8_t channel,
uint8_t user_id,
const unsigned char privLevel)
{
struct ipmi_rs * rsp;
struct ipmi_rs *rsp;
struct ipmi_rq req;
uint8_t msg_data[3];
@ -362,7 +357,6 @@ ipmi_user_set_userpriv(
req.msg.data = msg_data;
req.msg.data_len = 3;
/* The channel number will remain constant throughout this function */
msg_data[0] = (channel & 0x0f); /* Do not change any bytes */
msg_data[1] = (user_id & 0x3f);
@ -386,7 +380,6 @@ ipmi_user_set_userpriv(
return 0;
}
/*
* ipmi_user_set_password
*
@ -399,7 +392,7 @@ ipmi_user_set_password(
struct ipmi_intf * intf,
uint8_t user_id,
uint8_t operation,
const char * password,
const char *password,
int is_twenty_byte_password)
{
struct ipmi_rs * rsp;
@ -487,7 +480,6 @@ ipmi_user_test_password(
}
/*
* print_user_usage
*/
@ -606,7 +598,6 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
char * tmp;
const char * password_prompt =
ipmi_user_build_password_prompt(user_id);
#ifdef HAVE_GETPASSPHRASE
tmp = getpassphrase (password_prompt);
#else
@ -637,7 +628,6 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
}
}
/*
* Set
*/
@ -710,7 +700,6 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
return -1;
}
retval = ipmi_user_set_password(intf,
user_id,
IPMI_PASSWORD_SET_PASSWORD,
@ -718,7 +707,6 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
strlen(password) > 16);
}
/*
* Set Name
*/
@ -742,7 +730,6 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
print_user_usage();
return -1;
}
}
else if (strncmp(argv[0], "priv", 4) == 0)
@ -751,12 +738,11 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
uint8_t priv_level;
uint8_t channel = 0x0e; /* Use channel running on */
if (
(argc != 3) &&
(argc != 4)
)
if (argc != 3 && argc != 4)
{
print_user_usage();
return -1;
}
if (argc == 4)
{
channel = (uint8_t)strtol(argv[3], NULL, 0);
@ -814,7 +800,6 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
null_password,
0); /* This field is ignored */
}
else
{
retval = -1;
@ -822,6 +807,5 @@ ipmi_user_main(struct ipmi_intf * intf, int argc, char ** argv)
print_user_usage();
}
return retval;
}