(file) Return to snmpDeliverTrap_emanate.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Handler / snmpIndicationHandler

Diff for /pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_emanate.cpp between version 1.11.12.2 and 1.23

version 1.11.12.2, 2003/08/13 19:39:51 version 1.23, 2006/08/11 19:47:07
Line 1 
Line 1 
 //%/////////////////////////////////////////////////////////////////////////////  //%2006////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 // The Open Group, Tivoli Systems  // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
   // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation, The Open Group.
   // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; Symantec Corporation; The Open Group.
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a copy // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to // of this software and associated documentation files (the "Software"), to
Line 21 
Line 29 
 // //
 //============================================================================== //==============================================================================
 // //
 // Author: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)  
 //  
 // Modified By: Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com)  
 //  
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
 #include <Pegasus/Common/System.h> #include <Pegasus/Common/System.h>
 #include <Pegasus/Common/ArrayInternal.h> #include <Pegasus/Common/ArrayInternal.h>
 #include <Pegasus/Common/Destroyer.h>  
 #include <Pegasus/Common/InternalException.h> #include <Pegasus/Common/InternalException.h>
 #include "snmpDeliverTrap_emanate.h" #include "snmpDeliverTrap_emanate.h"
  
Line 44 
Line 47 
  
 #include <prnt_lib.h>  // MUST be at the end in include list. #include <prnt_lib.h>  // MUST be at the end in include list.
  
 static char *sr_filename = __FILE__;  static const char *sr_filename = __FILE__;
  
 IPCFunctionP IPCfp;  /* IPC functions pointer  */ IPCFunctionP IPCfp;  /* IPC functions pointer  */
  
Line 81 
Line 84 
  
 snmpDeliverTrap_emanate::snmpDeliverTrap_emanate() snmpDeliverTrap_emanate::snmpDeliverTrap_emanate()
 { {
   
 } }
  
 snmpDeliverTrap_emanate::~snmpDeliverTrap_emanate() snmpDeliverTrap_emanate::~snmpDeliverTrap_emanate()
 { {
   
 } }
  
  
Line 113 
Line 114 
  
       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                     MessageLoaderParms(_MSG_INITSUBAGENT_FAILED_KEY,                                     MessageLoaderParms(_MSG_INITSUBAGENT_FAILED_KEY,
                                                        _MSG_INITSUBAGENT_FAILED,                                                         _MSG_INITSUBAGENT_FAILED));
                                                        _MSG_INITSUBAGENT));  
  
     }     }
 } }
  
   void snmpDeliverTrap_emanate::terminate()
   {
       //
       // Close the connection to the Master Agent and shut down the
       // Subagent
       //
       EndSubagent();
   }
   
  
 void snmpDeliverTrap_emanate::deliverTrap( void snmpDeliverTrap_emanate::deliverTrap(
         const String& trapOid,         const String& trapOid,
Line 129 
Line 138 
         const Uint32& portNumber,         const Uint32& portNumber,
         const Uint16& snmpVersion,         const Uint16& snmpVersion,
         const String& engineID,         const String& engineID,
         Array<String>& vbOids,          const Array<String>& vbOids,
         Array<String>& vbTypes,          const Array<String>& vbTypes,
         Array<String>& vbValues)          const Array<String>& vbValues)
 { {
     VarBind *vbhead = NULL;     VarBind *vbhead = NULL;
     VarBind *vb = NULL;     VarBind *vb = NULL;
Line 139 
Line 148 
  
     OID     *object = NULL;     OID     *object = NULL;
  
     // Initialize with Master agent  
   
         initialize();  
   
     // Translate a string into an OID     // Translate a string into an OID
     OID *sendtrapOid = MakeOIDFromDot(trapOid.getCString());     OID *sendtrapOid = MakeOIDFromDot(trapOid.getCString());
  
Line 156 
Line 161 
  
       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                     MessageLoaderParms(_MSG_INVALID_KEY,                                     MessageLoaderParms(_MSG_INVALID_KEY,
                                                        _MSG_INVALID_TRAPOID,                                                         _MSG_INVALID_TRAPOID));
                                                        _MSG_TRAPOID));  
     }     }
  
     // Destination : convert targetHost into Transport     // Destination : convert targetHost into Transport
Line 167 
Line 171 
     TransportInfo   global_ti;     TransportInfo   global_ti;
     global_ti.type = SR_IP_TRANSPORT;     global_ti.type = SR_IP_TRANSPORT;
  
   
     switch (targetHostFormat)     switch (targetHostFormat)
     {     {
         case _HOST_NAME:         case _HOST_NAME:
Line 205 
Line 208 
  
           throw PEGASUS_CIM_EXCEPTION_L (CIM_ERR_NOT_SUPPORTED,           throw PEGASUS_CIM_EXCEPTION_L (CIM_ERR_NOT_SUPPORTED,
                                          MessageLoaderParms(_MSG_TARGETHOSTFORMAT_NOT_SUPPORTED_KEY,                                          MessageLoaderParms(_MSG_TARGETHOSTFORMAT_NOT_SUPPORTED_KEY,
                                                             _MSG_TARGETHOSTFORMAT_NOT_SUPPORTED,                                                              _MSG_TARGETHOSTFORMAT_NOT_SUPPORTED));
                                                             _MSG_HOSTNAME,  
                                                             _MSG_IPV4,  
                                                             _MSG_TARGETHOSTFORMAT));  
  
             break;             break;
         }         }
Line 241 
Line 241 
  
       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                     MessageLoaderParms(_MSG_INVALID_SECURITY_NAME_KEY,                                     MessageLoaderParms(_MSG_INVALID_SECURITY_NAME_KEY,
                                                        _MSG_INVALID_SECURITY_NAME,                                                         _MSG_INVALID_SECURITY_NAME));
                                                        _MSG_SECURITY_NAME));  
  
     }     }
   
     // getting IP address of the host     // getting IP address of the host
  
     CString hostname = System::getHostName().getCString();     CString hostname = System::getHostName().getCString();
Line 291 
Line 291 
  
       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,       throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                     MessageLoaderParms(_MSG_CREATE_OCTET_FAILED_KEY,                                     MessageLoaderParms(_MSG_CREATE_OCTET_FAILED_KEY,
                                                        _MSG_CREATE_OCTET_FAILED,                                                         _MSG_CREATE_OCTET_FAILED));
                                                        _MSG_OCTETSTRING));  
  
     }     }
  
Line 390 
Line 389 
  
           throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,           throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                         MessageLoaderParms(_MSG_INVALID_ENTERPRISEOID_KEY,                                         MessageLoaderParms(_MSG_INVALID_ENTERPRISEOID_KEY,
                                                            _MSG_INVALID_ENTERPRISEOID,                                                             _MSG_INVALID_ENTERPRISEOID));
                                                            _MSG_ENTERPRISEOID));  
         }         }
     }     }
  
Line 411 
Line 409 
  
           throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,           throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                         MessageLoaderParms(_MSG_INVALID_PROPERTYOID_KEY,                                         MessageLoaderParms(_MSG_INVALID_PROPERTYOID_KEY,
                                                            _MSG_INVALID_PROPERTYOID,                                                             _MSG_INVALID_PROPERTYOID));
                                                            _MSG_OID,  
                                                            _MSG_CIM));  
         }         }
  
         if (String::equalNoCase(vbTypes[i], "OctetString"))         if (String::equalNoCase(vbTypes[i], "OctetString"))
Line 431 
Line 427 
  
                  throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,                  throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                                MessageLoaderParms(_MSG_INVALID_PROPERTYVALUE_KEY,                                                MessageLoaderParms(_MSG_INVALID_PROPERTYVALUE_KEY,
                                                                   _MSG_INVALID_PROPERTYVALUE,                                                                    _MSG_INVALID_PROPERTYVALUE));
                                                                   _MSG_CIM));  
              }              }
  
              if ((vb = MakeVarBindWithValue(object,              if ((vb = MakeVarBindWithValue(object,
Line 447 
Line 442 
               //    _MSG_MAKE_VARBIND_FAILED_FOR_OCTET_PRIM_TYPE);               //    _MSG_MAKE_VARBIND_FAILED_FOR_OCTET_PRIM_TYPE);
  
               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                             MessageLoaderParms(_MSG_MAKE_VARBIND_FAILED_KEY,                                              MessageLoaderParms(_MSG_MAKE_VARBIND_FAILED_FOR_OCTET_PRIM_TYPE_KEY,
                                                                _MSG_MAKE_VARBIND_FAILED,                                                                 _MSG_MAKE_VARBIND_FAILED_FOR_OCTET_PRIM_TYPE));
                                                                _MSG_VARBIND,  
                                                                _MSG_OCTET_PRIM_TYPE));  
             }             }
         }         }
         else if (String::equalNoCase(vbTypes[i], "OID"))         else if (String::equalNoCase(vbTypes[i], "OID"))
Line 465 
Line 458 
  
               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                             MessageLoaderParms(_MSG_INVALID_PROPERTYVALUE_KEY,                                             MessageLoaderParms(_MSG_INVALID_PROPERTYVALUE_KEY,
                                                                _MSG_INVALID_PROPERTYVALUE,                                                                 _MSG_INVALID_PROPERTYVALUE));
                                                                _MSG_CIM));  
  
             }             }
  
Line 482 
Line 474 
               //    _MSG_MAKE_VARBIND_FAILED_FOR_OBJECT_ID_TYPE);               //    _MSG_MAKE_VARBIND_FAILED_FOR_OBJECT_ID_TYPE);
  
               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                             MessageLoaderParms(_MSG_MAKE_VARBIND_FAILED_KEY,                                              MessageLoaderParms(_MSG_MAKE_VARBIND_FAILED_FOR_OBJECT_ID_TYPE_KEY,
                                                                _MSG_MAKE_VARBIND_FAILED,                                                                 _MSG_MAKE_VARBIND_FAILED_FOR_OBJECT_ID_TYPE));
                                                                _MSG_VARBIND,  
                                                                _MSG_OBJECT_ID_TYPE));  
             }             }
         }         }
         else         else
Line 495 
Line 485 
  
             if (value == NULL)             if (value == NULL)
             {             {
   
               // l10n               // l10n
  
               // throw PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED,               // throw PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED,
Line 502 
Line 493 
  
               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                             MessageLoaderParms(_MSG_INVALID_PROPERTYVALUE_KEY,                                             MessageLoaderParms(_MSG_INVALID_PROPERTYVALUE_KEY,
                                                                _MSG_INVALID_PROPERTYVALUE,                                                                 _MSG_INVALID_PROPERTYVALUE));
                                                                _MSG_CIM));  
             }             }
  
             if ((vb = MakeVarBindWithValue(object,             if ((vb = MakeVarBindWithValue(object,
Line 511 
Line 501 
                                         INTEGER_TYPE,                                         INTEGER_TYPE,
                                         value)) == NULL)                                         value)) == NULL)
             {             {
   
               // l10n               // l10n
  
               // throw PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED,               // throw PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED,
               //    _MSG_MAKE_VARBIND_FAILED_FOR_INTEGER_TYPE);               //    _MSG_MAKE_VARBIND_FAILED_FOR_INTEGER_TYPE);
  
               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
                                             MessageLoaderParms(_MSG_MAKE_VARBIND_FAILED_KEY,                                              MessageLoaderParms(_MSG_MAKE_VARBIND_FAILED_FOR_INTEGER_TYPE_KEY,
                                                                _MSG_MAKE_VARBIND_FAILED,                                                                 _MSG_MAKE_VARBIND_FAILED_FOR_INTEGER_TYPE));
                                                                _MSG_VARBIND,  
                                                                _MSG_INTEGER_TYPE));  
             }             }
         }         }
  
Line 576 
Line 565 
             SR_SECURITY_MODEL_V2C,              // securityModel             SR_SECURITY_MODEL_V2C,              // securityModel
             &global_ti,                         // TransportInfo             &global_ti,                         // TransportInfo
             0);                                 // cfg_chk             0);                                 // cfg_chk
   
             break;             break;
         }         }
         default:         default:
Line 588 
Line 576 
  
           throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_NOT_SUPPORTED,           throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_NOT_SUPPORTED,
                                         MessageLoaderParms(_MSG_VERSION_NOT_SUPPORTED_KEY,                                         MessageLoaderParms(_MSG_VERSION_NOT_SUPPORTED_KEY,
                                                            _MSG_VERSION_NOT_SUPPORTED,                                                             _MSG_VERSION_NOT_SUPPORTED));
                                                            _MSG_SNMPv1,  
                                                            _MSG_SNMPv2C,  
                                                            _MSG_SNMPVersion));  
  
           break;           break;
         }         }
Line 620 
Line 605 
     struct hostent *targetHostInfo;     struct hostent *targetHostInfo;
     struct in_addr in;     struct in_addr in;
  
 #ifdef PEGASUS_OS_SOLARIS  #if defined(PEGASUS_OS_LINUX)
 #define HOSTENT_BUFF_SIZE       8192          char hostEntryBuffer[8192];
     char                        buf[HOSTENT_BUFF_SIZE];          struct hostent hostEntryStruct;
     struct hostent              h_result;          int hostEntryErrno;
     int                         h_errorp;  
     targetHostInfo=gethostbyname_r(hostName, &h_result, buff,          gethostbyname_r(
                                         HOSTENT_BUFF_SIZE, &h_errorp);              hostName,
               &hostEntryStruct,
               hostEntryBuffer,
               sizeof(hostEntryBuffer),
               &targetHostInfo,
               &hostEntryErrno);
   #elif defined(PEGASUS_OS_SOLARIS)
           char hostEntryBuffer[8192];
           struct hostent hostEntryStruct;
           int hostEntryErrno;
   
           targetHostInfo = gethostbyname_r(
               (char *)hostName,
               &hostEntryStruct,
               hostEntryBuffer,
               sizeof(hostEntryBuffer),
               &hostEntryErrno);
 #else #else
     targetHostInfo = gethostbyname(hostName);     targetHostInfo = gethostbyname(hostName);
 #endif #endif


Legend:
Removed from v.1.11.12.2  
changed lines
  Added in v.1.23

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2