#ifndef _IPMI_MAIN_H_
#define _IPMI_MAIN_H_

#include<iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <netdb.h>
#include <ctype.h>
#include <time.h>
using namespace std;
                                                                                                                             
#include <OpenIPMI/ipmiif.h>
#include <OpenIPMI/ipmi_smi.h>
#include <OpenIPMI/ipmi_err.h>
#include <OpenIPMI/ipmi_auth.h>
#include <OpenIPMI/ipmi_lan.h>
#include <OpenIPMI/ipmi_posix.h>


class ipmi_main
{
 public:
       int retry;           
       string thresh_sensor_read;   
       string discre_sensor_read; 
       string command;
       // Entity info 
       string entityinfo;
        
       // SDR info    
       string sdrinfo;
       // MCs info        
       string mcinfo; 
       
       // Power control
       string power_info; 

       // Reset control   
       string reset_info;        

        
       // Input parameter 
          
       char m_header[50];    
       char m_command[10];       
       char m_ipaddr[20]; 
       char m_port[10];
       char m_retry[5];
       char m_timeout[30]; 
       char m_authtype[15];
       char m_privilege[20];
       char m_user[16];  
       char m_pass[20];
       char m_subcommand[50];
       int org_retry;  
   
       ipmi_main();        
       int main1(string inputmsg);   
       static void handle_domain(ipmi_domain_t *domain,
           int           err,
           unsigned int  conn_num,
           unsigned int  port_num,
           int           still_connected,
           void          *user_data);                                                                  
       static void handle_entity(ipmi_entity_t *entity, void *cb_data); 
       static void handle_sensor(ipmi_entity_t *entity, ipmi_sensor_t *sensor, void *cb_data);  
       static void read_discrete_sensor( ipmi_sensor_t *sensor, int err,ipmi_states_t *states, void *cb_data);
       static void read_thresh_sensor(ipmi_sensor_t             *sensor,
                   int                       err,
                   enum ipmi_value_present_e value_present,
                   unsigned int              raw_value,
                   double                    val,
                   ipmi_states_t             *states,
                   void                      *cb_data);
     
       static void entity_info(ipmi_entity_t *entity, void *cb_data);  
       static void sdrs_fetched(ipmi_sdr_info_t *sdrs,
             int             err,
             int             changed,
             unsigned int    count,
             void            *cb_data);
       static void handle_mc(ipmi_domain_t *domain, ipmi_mc_t *mc, void *cb_data);
       static void handle_sdr(ipmi_domain_t *domain, ipmi_mc_t *mc, void *cb_data); 

       static void handle_power(ipmi_entity_t *entity, void *cb_data);   
       static void handle_power_control(ipmi_entity_t *entity, ipmi_control_t *control, void *cb_data);
       static void handle_reset(ipmi_entity_t *entity, void *cb_data);   
       static void handle_reset_control(ipmi_entity_t *entity, ipmi_control_t *control, void *cb_data); 
       static void close_timeout(void *cb_data); 
       static void shutdown(void *cb_data);  
        
 

};

#endif
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to