mirror of
https://github.com/ipmitool/ipmitool.git
synced 2025-05-10 18:47:22 +00:00
returning error codes on error
This commit is contained in:
parent
1e043d1188
commit
6ca108ef78
@ -170,7 +170,7 @@ struct get_channel_access_rsp {
|
|||||||
|
|
||||||
|
|
||||||
int ipmi_channel_main(struct ipmi_intf *, int, char **);
|
int ipmi_channel_main(struct ipmi_intf *, int, char **);
|
||||||
void ipmi_get_channel_auth_cap(struct ipmi_intf * intf, unsigned char channel, unsigned char priv);
|
int ipmi_get_channel_auth_cap(struct ipmi_intf * intf, unsigned char channel, unsigned char priv);
|
||||||
void ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel);
|
int ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel);
|
||||||
|
|
||||||
#endif /*IPMI_CHANNEL_H*/
|
#endif /*IPMI_CHANNEL_H*/
|
||||||
|
@ -134,9 +134,10 @@ const char * ipmi_1_5_authtypes(unsigned char n)
|
|||||||
/**
|
/**
|
||||||
* ipmi_get_channel_auth_cap
|
* ipmi_get_channel_auth_cap
|
||||||
*
|
*
|
||||||
* Wrapper around the Get Channel Authentication Capabilities command
|
* return 0 on success
|
||||||
|
* -1 on failure
|
||||||
*/
|
*/
|
||||||
void ipmi_get_channel_auth_cap(struct ipmi_intf * intf,
|
int ipmi_get_channel_auth_cap(struct ipmi_intf * intf,
|
||||||
unsigned char channel,
|
unsigned char channel,
|
||||||
unsigned char priv)
|
unsigned char priv)
|
||||||
{
|
{
|
||||||
@ -169,7 +170,7 @@ void ipmi_get_channel_auth_cap(struct ipmi_intf * intf,
|
|||||||
if (!rsp || rsp->ccode) {
|
if (!rsp || rsp->ccode) {
|
||||||
printf("Error:%x Get Channel Authentication Capabilities Command (0x%x)\n",
|
printf("Error:%x Get Channel Authentication Capabilities Command (0x%x)\n",
|
||||||
rsp ? rsp->ccode : 0, channel);
|
rsp ? rsp->ccode : 0, channel);
|
||||||
return;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -218,6 +219,8 @@ void ipmi_get_channel_auth_cap(struct ipmi_intf * intf,
|
|||||||
printf("OEM Auxiliary Data : 0x%x\n",
|
printf("OEM Auxiliary Data : 0x%x\n",
|
||||||
auth_cap.oem_aux_data);
|
auth_cap.oem_aux_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -225,9 +228,11 @@ void ipmi_get_channel_auth_cap(struct ipmi_intf * intf,
|
|||||||
/**
|
/**
|
||||||
* ipmi_get_channel_info
|
* ipmi_get_channel_info
|
||||||
*
|
*
|
||||||
* Wrapper around the Get Channel Info command
|
* returns 0 on success
|
||||||
|
* -1 on failure
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
void
|
int
|
||||||
ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel)
|
ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel)
|
||||||
{
|
{
|
||||||
struct ipmi_rs * rsp;
|
struct ipmi_rs * rsp;
|
||||||
@ -247,7 +252,7 @@ ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel)
|
|||||||
if (!rsp || rsp->ccode) {
|
if (!rsp || rsp->ccode) {
|
||||||
printf("Error:%x Get Channel Info Command (0x%x)\n",
|
printf("Error:%x Get Channel Info Command (0x%x)\n",
|
||||||
rsp ? rsp->ccode : 0, channel);
|
rsp ? rsp->ccode : 0, channel);
|
||||||
return;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -306,7 +311,7 @@ ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel)
|
|||||||
|
|
||||||
rsp = intf->sendrecv(intf, &req);
|
rsp = intf->sendrecv(intf, &req);
|
||||||
if (!rsp || rsp->ccode) {
|
if (!rsp || rsp->ccode) {
|
||||||
return;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
memcpy(&channel_access, rsp->data, sizeof(struct get_channel_access_rsp));
|
memcpy(&channel_access, rsp->data, sizeof(struct get_channel_access_rsp));
|
||||||
@ -344,7 +349,7 @@ ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel)
|
|||||||
rqdata[1] = 0x40; /* 0x40=non-volatile */
|
rqdata[1] = 0x40; /* 0x40=non-volatile */
|
||||||
rsp = intf->sendrecv(intf, &req);
|
rsp = intf->sendrecv(intf, &req);
|
||||||
if (!rsp || rsp->ccode) {
|
if (!rsp || rsp->ccode) {
|
||||||
return;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
memcpy(&channel_access, rsp->data, sizeof(struct get_channel_access_rsp));
|
memcpy(&channel_access, rsp->data, sizeof(struct get_channel_access_rsp));
|
||||||
@ -376,6 +381,7 @@ ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -446,7 +452,7 @@ ipmi_channel_main(struct ipmi_intf * intf, int argc, char ** argv)
|
|||||||
if (argc != 3)
|
if (argc != 3)
|
||||||
printf_channel_usage();
|
printf_channel_usage();
|
||||||
else
|
else
|
||||||
ipmi_get_channel_auth_cap(intf,
|
retval = ipmi_get_channel_auth_cap(intf,
|
||||||
(unsigned char)strtol(argv[1], NULL, 0),
|
(unsigned char)strtol(argv[1], NULL, 0),
|
||||||
(unsigned char)strtol(argv[2], NULL, 0));
|
(unsigned char)strtol(argv[2], NULL, 0));
|
||||||
}
|
}
|
||||||
@ -459,7 +465,7 @@ ipmi_channel_main(struct ipmi_intf * intf, int argc, char ** argv)
|
|||||||
unsigned char id = 1;
|
unsigned char id = 1;
|
||||||
if (argc == 3)
|
if (argc == 3)
|
||||||
id = (unsigned char)strtol(argv[2], NULL, 0);
|
id = (unsigned char)strtol(argv[2], NULL, 0);
|
||||||
ipmi_get_user_access(intf, ch, id);
|
retval = ipmi_get_user_access(intf, ch, id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (!strncmp(argv[0], "info", 4))
|
else if (!strncmp(argv[0], "info", 4))
|
||||||
@ -470,7 +476,7 @@ ipmi_channel_main(struct ipmi_intf * intf, int argc, char ** argv)
|
|||||||
unsigned char ch = 0xe;
|
unsigned char ch = 0xe;
|
||||||
if (argc == 2)
|
if (argc == 2)
|
||||||
ch = (unsigned char)strtol(argv[1], NULL, 0);
|
ch = (unsigned char)strtol(argv[1], NULL, 0);
|
||||||
ipmi_get_channel_info(intf, ch);
|
retval = ipmi_get_channel_info(intf, ch);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user