vpnengine/ikev1lib/inc/ikev1crack.h
branchRCL_3
changeset 22 9f4e37332ce5
parent 17 d1a0d37b52a1
child 23 473321461bba
equal deleted inserted replaced
20:352850cbed81 22:9f4e37332ce5
    56 class TCHREISAKMP;
    56 class TCHREISAKMP;
    57 class ThdrISAKMP;
    57 class ThdrISAKMP;
    58 class CIkev1PluginSession;
    58 class CIkev1PluginSession;
    59 class MIkeDebug;
    59 class MIkeDebug;
    60 
    60 
    61 class CAuthDialogInfo : public CBase
    61 
       
    62 NONSHARABLE_CLASS(CAuthDialogInfo) : public CBase
    62     {
    63     {
    63 public:
    64 public:
    64     CAuthDialogInfo(CIkev1PluginSession* aPluginSession, TUint32 aObjId, TUint32 aSAId, TUint32 aMsgId)
    65     CAuthDialogInfo(CIkev1PluginSession* aPluginSession, TUint32 aObjId, TUint32 aSAId, TUint32 aMsgId)
    65                     { iPluginSession = aPluginSession; iSAId = aSAId; iObjId  = aObjId; iMsgId  = aMsgId; }
    66                     { iPluginSession = aPluginSession; iSAId = aSAId; iObjId  = aObjId; iMsgId  = aMsgId; }
    66     ~CAuthDialogInfo() {iObjId = 0;}    
    67     ~CAuthDialogInfo();  
    67     inline CIkev1PluginSession* PluginSession() { return iPluginSession;}
    68     inline CIkev1PluginSession* PluginSession() { return iPluginSession;}
    68     inline TUint32     SAId() { return iSAId;}  
    69     inline TUint32     SAId() { return iSAId;}  
    69     inline TUint32     GetObjId() { return iObjId;}
    70     inline TUint32     GetObjId() { return iObjId;}
    70     inline TUint32     GetMsgId() { return iMsgId;}     
    71     inline TUint32     GetMsgId() { return iMsgId;}     
    71     
    72     
       
    73     void SetUserName( HBufC8* aUserName );
       
    74     void SetSecret( HBufC8* aSecret );
       
    75 
    72 private:
    76 private:
    73     TUint32    iObjId;      // Object identifier 
    77     TUint32              iObjId;      // Object identifier 
    74     CIkev1PluginSession* iPluginSession;  // Plugin session pointer  
    78     CIkev1PluginSession* iPluginSession;  // Plugin session pointer  
    75     TUint32    iSAId;       // SA id of CIkev1Negotiation
    79     TUint32              iSAId;       // SA id of CIkev1Negotiation
    76     TUint32    iMsgId;      // Transaction exchange message ID
    80     TUint32              iMsgId;      // Transaction exchange message ID
    77     
    81     
    78 public: 
    82 public: 
    79 //  Credentials data get from user with asynchronous dialog 
    83     /**
    80 	HBufC8     *iUsername;     
    84      * Username from UI dialog or cache.
    81     HBufC8     *iSecret;
    85      * Own.
    82     HBufC8     *iDomain;    
    86      */
       
    87 	HBufC8* iUsername;
       
    88 	
       
    89 	/**
       
    90      * Secret from UI dialog or cache.
       
    91      * Own.
       
    92      */    
       
    93     HBufC8* iSecret;
    83     };
    94     };
    84 
    95 
    85 
    96 
    86 NONSHARABLE_CLASS(CIKECRACKNegotiation) : public CBase, public MIkeDialogComplete
    97 NONSHARABLE_CLASS(CIKECRACKNegotiation) : public CBase, public MIkeDialogComplete
    87 {
    98 {
    90     ~CIKECRACKNegotiation();    
   101     ~CIKECRACKNegotiation();    
    91     TInt   ConstructL(TInt aLAMType, CIkev1Negotiation *aNegotiation, const TDesC &aDomain);
   102     TInt   ConstructL(TInt aLAMType, CIkev1Negotiation *aNegotiation, const TDesC &aDomain);
    92     TInt   ExecuteCRACKMsgL(const ThdrISAKMP &aHdr);
   103     TInt   ExecuteCRACKMsgL(const ThdrISAKMP &aHdr);
    93     TInt   ProcessUserResponseL(CAuthDialogInfo *aUserInfo);
   104     TInt   ProcessUserResponseL(CAuthDialogInfo *aUserInfo);
    94     TInt   CrackAuthenticationFailedL(const TNotificationISAKMP *aNotifPayload);
   105     TInt   CrackAuthenticationFailedL(const TNotificationISAKMP *aNotifPayload);
    95 	
   106 
    96 	TInt   DialogCompleteL(CIkev1Dialog* /*aDialog*/, TAny* aUserInfo, HBufC8* aUsername, HBufC8* aSecret, HBufC8* aDomain);
   107 	TInt DialogCompleteL(TAny* aUserInfo, HBufC8* aUsername, HBufC8* aSecret);
    97 	
       
    98     
   108     
    99 private:
   109 private:
   100     TInt    GetDataL(HBufC8* aChallenge);
   110     TInt    GetDataL(HBufC8* aChallenge);
   101     TInt    GetDatafromUserL(HBufC8 *aChallenge);
   111     TInt    GetDatafromUserL(HBufC8 *aChallenge);
   102     TInt    GetUNPWDFromPolicyL();
   112     TInt    GetUNPWDFromPolicyL();
   115     CIkev1Dialog*      iDialog;      // Pending dialog object
   125     CIkev1Dialog*      iDialog;      // Pending dialog object
   116     CAuthDialogInfo*   iDialogInfo;  // Dialog info object
   126     CAuthDialogInfo*   iDialogInfo;  // Dialog info object
   117 
   127 
   118 	HBufC8           *iUserName;    // Saved for User name caching 	
   128 	HBufC8           *iUserName;    // Saved for User name caching 	
   119 	HBufC8           *iDomain;      // Fixed domain value for this CRACK negotiation
   129 	HBufC8           *iDomain;      // Fixed domain value for this CRACK negotiation
   120 	
   130 
   121 	MIkeDebug& iDebug;
   131 	MIkeDebug& iDebug;
   122 };
   132 };
   123 
   133 
   124 
   134 
   125 #endif // IKEV1CRACK_H
   135 #endif // IKEV1CRACK_H