summaryrefslogtreecommitdiff
path: root/include/ipmitool/ipmi_intf.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/ipmitool/ipmi_intf.h')
-rw-r--r--include/ipmitool/ipmi_intf.h39
1 files changed, 24 insertions, 15 deletions
diff --git a/include/ipmitool/ipmi_intf.h b/include/ipmitool/ipmi_intf.h
index f9f6592..67f6019 100644
--- a/include/ipmitool/ipmi_intf.h
+++ b/include/ipmitool/ipmi_intf.h
@@ -62,36 +62,43 @@ enum LANPLUS_SESSION_STATE {
#define IPMI_SIK_BUFFER_SIZE 20
#define IPMI_KG_BUFFER_SIZE 21 /* key plus null byte */
-struct ipmi_session {
- char *hostname; /* Numeric IP adress or DNS name - see RFC 1034/RFC 1035 */
+struct ipmi_session_params {
+ char * hostname;
uint8_t username[17];
- uint8_t authcode[IPMI_AUTHCODE_BUFFER_SIZE + 1];
- uint8_t challenge[16];
- uint8_t authtype;
+ uint8_t authcode_set[IPMI_AUTHCODE_BUFFER_SIZE + 1];
uint8_t authtype_set;
-#define IPMI_AUTHSTATUS_PER_MSG_DISABLED 0x10
-#define IPMI_AUTHSTATUS_PER_USER_DISABLED 0x08
-#define IPMI_AUTHSTATUS_NONNULL_USERS_ENABLED 0x04
-#define IPMI_AUTHSTATUS_NULL_USERS_ENABLED 0x02
-#define IPMI_AUTHSTATUS_ANONYMOUS_USERS_ENABLED 0x01
- uint8_t authstatus;
- uint8_t authextra;
uint8_t privlvl;
uint8_t cipher_suite_id;
char sol_escape_char;
int password;
int port;
- int active;
int retry;
+ uint32_t timeout;
+ uint8_t kg[IPMI_KG_BUFFER_SIZE]; /* BMC key */
+ uint8_t lookupbit;
+};
+#define IPMI_AUTHSTATUS_PER_MSG_DISABLED 0x10
+#define IPMI_AUTHSTATUS_PER_USER_DISABLED 0x08
+#define IPMI_AUTHSTATUS_NONNULL_USERS_ENABLED 0x04
+#define IPMI_AUTHSTATUS_NULL_USERS_ENABLED 0x02
+#define IPMI_AUTHSTATUS_ANONYMOUS_USERS_ENABLED 0x01
+
+struct ipmi_session {
+ int active;
uint32_t session_id;
uint32_t in_seq;
uint32_t out_seq;
+
+ uint8_t authcode[IPMI_AUTHCODE_BUFFER_SIZE + 1];
+ uint8_t challenge[16];
+ uint8_t authtype;
+ uint8_t authstatus;
+ uint8_t authextra;
uint32_t timeout;
struct sockaddr_storage addr;
socklen_t addrlen;
- int ai_family; /* Protocol family for socket. */
/*
* This struct holds state data specific to IPMI v2 / RMCP+ sessions
@@ -107,7 +114,6 @@ struct ipmi_session {
uint8_t integrity_alg;
uint8_t crypt_alg;
uint8_t max_priv_level;
- uint8_t lookupbit;
uint32_t console_id;
uint32_t bmc_id;
@@ -168,8 +174,11 @@ struct ipmi_intf {
int abort;
int noanswer;
int picmg_avail;
+ int vita_avail;
IPMI_OEM manufacturer_id;
+ int ai_family;
+ struct ipmi_session_params ssn_params;
struct ipmi_session * session;
struct ipmi_oem_handle * oem;
struct ipmi_cmd * cmdlist;