buseventikesa.h

00001 /***************************************************************************
00002 *   Copyright (C) 2005 by                                                 *
00003 *   Pedro J. Fernandez Ruiz    pedroj.fernandez@dif.um.es                 *
00004 *   Alejandro Perez Mendez     alejandro_perez@dif.um.es                  *
00005 *                                                                         *
00006 *   This library is free software; you can redistribute it and/or         *
00007 *   modify it under the terms of the GNU Lesser General Public            *
00008 *   License as published by the Free Software Foundation; either          *
00009 *   version 2.1 of the License, or (at your option) any later version.    *
00010 *                                                                         *
00011 *   This library is distributed in the hope that it will be useful,       *
00012 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00013 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
00014 *   Lesser General Public License for more details.                       *
00015 *                                                                         *
00016 *   You should have received a copy of the GNU Lesser General Public      *
00017 *   License along with this library; if not, write to the Free Software   *
00018 *   Foundation, Inc., 51 Franklin St, Fifth Floor,                        *
00019 *   Boston, MA  02110-1301  USA                                           *
00020 ***************************************************************************/
00021 #ifndef BUSEVENT_IKE_SA_H
00022 #define BUSEVENT_IKE_SA_H
00023 
00024 #include "busevent.h"
00025 #include "enums.h"
00026 #include "bytearray.h"
00027 
00028 namespace openikev2 {
00029     typedef class IkeSaController;
00030 
00035     class BusEventIkeSa : public BusEvent {
00036 
00037             /****************************** ENUMS ******************************/
00038         public:
00040             enum IKE_SA_EVENT_TYPE{
00041                 NEW_IKE_SA,                                   
00042                 DEL_IKE_SA,                                   
00043                 REKEY_IKE_SA,                                 
00044                 IKE_SA_ESTABLISHED,                           
00045                 IKE_SA_FAIL_GENERIC,                          
00046                 IKE_SA_FAIL_RETRANSMITIONS_EXCEEDED,          
00047                 IKE_SA_FAIL_NEGOTIATION_TIMEOUT,              
00048                 IKE_SA_FAIL_NO_PROPOSAL_CHOSEN,               
00049                 IKE_SA_FAIL_COOKIE_REQUIRED,                  
00050                 IKE_SA_FAIL_INVALID_KE,                       
00051                 IKE_SA_FAIL_AUTHENTICATION,                   
00052                 IKE_SA_FAIL_INTERNAL_ADDRESS,                 
00053                 IKE_SA_FAIL_UNSUPPORTED_CRITICAL_PAYLOAD,     
00054                 IKE_SA_FAIL_CONFIGURATION,                    
00055         };
00056 
00057             /****************************** ENUMS ******************************/
00058         public:
00059             IKE_SA_EVENT_TYPE ike_sa_event_type;        
00060             IkeSaController& ike_sa_controller;       
00061             void* data;                                 
00063             /****************************** METHODS ******************************/
00064         public:
00070             BusEventIkeSa( IKE_SA_EVENT_TYPE ike_sa_event_type, IkeSaController& controller );
00071 
00079             BusEventIkeSa( IKE_SA_EVENT_TYPE ike_sa_event_type, IkeSaController& controller, void* data );
00080 
00081             virtual ~BusEventIkeSa();
00082     };
00083 }
00084 #endif

Generated on Fri Jul 27 11:04:44 2007 for libopenikev2 by  doxygen 1.5.1