AnyConnect Secure Mobility Client
4.0.00061
|
00001 00002 /************************************************************************** 00003 * Copyright (c) 2009, Cisco Systems, All Rights Reserved 00004 *************************************************************************** 00005 * 00006 * File: FirewallInfo.h 00007 * Author: Vishwa Krishnamurthy 00008 * Date: 12/06/2009 00009 * 00010 ***************************************************************************/ 00011 00012 00013 #ifndef _FIREWALLINFO_ 00014 #define _FIREWALLINFO_ 00015 00016 #include <iostream> 00017 #include "GlobalEnums.h" 00018 #include "api.h" 00019 00020 #ifdef _WIN32 00021 typedef unsigned short uint16_t; 00022 typedef unsigned long uint32_t; 00023 #else 00024 #include <stdint.h> 00025 #endif 00026 00027 class VPN_VPNAPI FirewallInfo 00028 { 00029 public: 00030 /** 00031 * Constructor used to create a firewall instance. This method is not 00032 * intended for public use. 00033 */ 00034 FirewallInfo(FW_Interface fwInterface, 00035 FW_Permission fwPermission, 00036 FW_Protocol fwProtocol, 00037 uint16_t fwSrcPortLowerBound, 00038 uint16_t fwSrcPortUpperBound, 00039 uint16_t fwDstPortLowerBound, 00040 uint16_t fwDstPortUpperBound, 00041 tstring fwDstAddress, 00042 uint32_t fwDstAddressPrefixLength); 00043 00044 /** 00045 * Constructor used to copy a firewall instance. This method is not 00046 * intended for public use. 00047 */ 00048 FirewallInfo(const FirewallInfo &fwInfo); 00049 ~FirewallInfo() {} 00050 00051 tstring getPermission(); 00052 tstring getProtocol(); 00053 tstring getInterface(); 00054 tstring getSrcPortRange(); 00055 tstring getDstPortRange(); 00056 tstring getDstAddr(); 00057 00058 private: 00059 FW_Interface nInterface; 00060 FW_Permission nPermission; 00061 FW_Protocol nProtocol; 00062 uint32_t nSrcPortLowerBound; 00063 uint32_t nSrcPortUpperBound; 00064 uint32_t nDstPortLowerBound; 00065 uint32_t nDstPortUpperBound; 00066 tstring szDstAddress; 00067 uint32_t nPrefixLength; 00068 00069 }; 00070 00071 tostream& operator <<(tostream &outStream, FirewallInfo &fwRule); 00072 00073 #endif // _FIREWALLINFO_ 00074