diff options
Diffstat (limited to 'include/ipmitool/ipmi_intf.h')
-rw-r--r-- | include/ipmitool/ipmi_intf.h | 39 |
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; |