IPMI_AMISmtp.h 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. /*****************************************************************
  2. *****************************************************************
  3. *** **
  4. *** (C)Copyright 2005-2006, American Megatrends Inc. **
  5. *** **
  6. *** All Rights Reserved. **
  7. *** **
  8. *** 6145-F, Northbelt Parkway, Norcross, **
  9. *** **
  10. *** Georgia - 30071, USA. Phone-(770)-246-8600. **
  11. *** **
  12. *****************************************************************
  13. ******************************************************************
  14. *
  15. * IPMI_AMIsmtp.h
  16. * AMI specific Smtp Commands
  17. *
  18. *
  19. ******************************************************************/
  20. #ifndef __IPMI_AMISMTP_H__
  21. #define __IPMI_AMISMTP_H__
  22. #include "IPMI_LANConfig.h"
  23. #define OEM_ENABLE_DISABLE_SMTP 0
  24. #define OEM_PARAM_SMTP_SERVR_ADDR 1
  25. #define OEM_PARAM_SMTP_USER_NAME 2
  26. #define OEM_PARAM_SMTP_PASSWD 3
  27. #define OEM_PARAM_SMTP_NO_OF_DESTINATIONS 4
  28. #define OEM_PARAM_SMTP_USERID 5
  29. #define OEM_PARAM_SMTP_SUBJECT 6
  30. #define OEM_PARAM_SMTP_MSG 7
  31. #define OEM_PARAM_SMTP_SENDER_ADDR 8
  32. #define OEM_PARAM_SMTP_HOST_NAME 9
  33. #define OEM_PARAM_SMTP_PORT 0xA
  34. #define OEM_ENABLE_DISABLE_SMTP_AUTH 0xB
  35. #define OEM_PARAM_SMTP_IPV6_SERVR_ADDR 0x0C
  36. #define OEM_ENABLE_DISABLE_SMTP2 0x0D
  37. #define OEM_PARAM_SMTP_2_SERVR_ADDR 0x0E
  38. #define OEM_PARAM_SMTP_2_USER_NAME 0x0F
  39. #define OEM_PARAM_SMTP_2_PASSWD 0x10
  40. #define OEM_PARAM_SMTP_2_SENDER_ADDR 0x11
  41. #define OEM_PARAM_SMTP_2_HOST_NAME 0x12
  42. #define OEM_PARAM_SMTP_2_PORT 0x13
  43. #define OEM_ENABLE_DISABLE_SMTP_2_AUTH 0x14
  44. #define OEM_PARAM_SMTP_2_IPV6_SERVR_ADDR 0x15
  45. #define MAX_EMAIL_ADDR_BLOCKS 4
  46. #define MAX_EMAIL_BLOCK_SIZE 16
  47. #define MAX_SUB_BLOCKS 2
  48. #define MAX_SUB_BLOCK_SIZE 16
  49. #define MAX_MSG_BLOCKS 4
  50. #define MAX_MSG_BLOCK_SIZE 16
  51. #define MAX_SRV_NAME_BLOCKS 4
  52. #define MAX_SRV_NAME_BLOCK_SIZE 16
  53. #define MAX_EMAIL_DESTINATIONS 15
  54. #define MAX_SMTP_USERNAME_LEN 65
  55. #define MAX_SMTP_PASSWD_LEN 65
  56. #define MAX_SMTP_PORT_SIZE 4
  57. #define MAX_SMTP_AUTH_FLAG_LEN 1
  58. #define OEM_SMTP_SERVER_DISABLED -2
  59. #pragma pack (1)
  60. typedef union
  61. {
  62. INT8U EnableDisableSMTP;
  63. INT8U EnableDisableSmtpAuth;
  64. INT8U ServerAddr [ IP_ADDR_LEN ];
  65. INT8U IP6_ServerAddr [ IP6_ADDR_LEN ];
  66. INT8U UserName [ MAX_SMTP_USERNAME_LEN ];
  67. INT8U Passwd [MAX_SMTP_PASSWD_LEN];
  68. INT8U NoofDestinations;
  69. INT8U Subject [MAX_SUB_BLOCK_SIZE ];
  70. INT8U Msg [MAX_MSG_BLOCK_SIZE ];
  71. INT8U SenderAddr[MAX_EMAIL_BLOCK_SIZE];
  72. INT8U Servername[MAX_SRV_NAME_BLOCK_SIZE];
  73. INT16U SmtpPort;
  74. INT8U UserID;
  75. INT8U EnableDisableSMTP2;
  76. INT8U EnableDisableSmtp2Auth;
  77. INT8U Server2Addr [ IP_ADDR_LEN ];
  78. INT8U IP6_Server2Addr [ IP6_ADDR_LEN ];
  79. INT8U UserName2 [ MAX_SMTP_USERNAME_LEN ];
  80. INT8U Passwd2 [MAX_SMTP_PASSWD_LEN];
  81. INT8U Sender2Addr[MAX_EMAIL_BLOCK_SIZE];
  82. INT8U Server2name[MAX_SRV_NAME_BLOCK_SIZE];
  83. INT16U Smtp2Port;
  84. } PACKED Smtp_ConfigUn_T;
  85. extern const INT8U g_SMTPConfigParameterLength[];
  86. extern const INT8U g_SMTPBlockSelectorLength[];
  87. typedef struct
  88. {
  89. INT8U CompletionCode;
  90. } PACKED SetSMTPConfigRes_T;
  91. typedef struct
  92. {
  93. INT8U Channel;
  94. INT8U ParameterSelect;
  95. INT8U SetSelector;
  96. INT8U BlockSelector;
  97. Smtp_ConfigUn_T ConfigData;
  98. } PACKED SetSMTPConfigReq_T;
  99. typedef struct
  100. {
  101. INT8U CompletionCode;
  102. Smtp_ConfigUn_T ConfigData;
  103. } PACKED GetSMTPConfigRes_T;
  104. typedef struct
  105. {
  106. INT8U Channel;
  107. INT8U ParameterSelect;
  108. INT8U SetSelector;
  109. INT8U BlockSelector;
  110. } PACKED GetSMTPConfigReq_T;
  111. typedef struct
  112. {
  113. INT8U EnableDisableSMTP;
  114. INT8U UserName [ MAX_SMTP_USERNAME_LEN ];
  115. INT8U Passwd [MAX_SMTP_PASSWD_LEN];
  116. uint8_t SenderAddr[MAX_EMAIL_BLOCK_SIZE * MAX_EMAIL_ADDR_BLOCKS];
  117. uint8_t MachineName[MAX_SRV_NAME_BLOCK_SIZE * MAX_SRV_NAME_BLOCKS];
  118. INT8U EnableDisableSmtpAuth;
  119. INT16U SmtpPort;
  120. } PACKED SmtpInfoParam_T;
  121. #pragma pack ()
  122. #endif //__IPMI_AMISMTP_H__