class RIpsecPolicyServ : public RSessionBase |
RIpsecPolicyServ API is used by clients to: Users who load and unload policies KMD, that needs to find out if SA proposal can be accepted
Public Member Functions | |
---|---|
RIpsecPolicyServ() | |
~RIpsecPolicyServ() | |
IMPORT_C void | ActivatePolicy(const TPolicyHandle &, TRequestStatus &) |
IMPORT_C void | AvailableSelectors(const TDesC8 &, CArrayFixFlat< TIpsecSelectorInfo > *, TRequestStatus &) |
IMPORT_C void | CancelActivate() |
IMPORT_C void | CancelLoad() |
IMPORT_C void | CancelMatch() |
IMPORT_C void | CancelUnload() |
IMPORT_C TInt | Connect() |
IMPORT_C TInt | GetDebugInfo(TDes &, TUint) |
IMPORT_C void | LoadPolicy(const TDesC8 &, TPolicyHandlePckg &, TRequestStatus &) |
IMPORT_C void | LoadPolicy(const TDesC8 &, TPolicyHandlePckg &, TRequestStatus &, const TZoneInfoSetPckg &, TUint) |
IMPORT_C void | MatchSelector(const TDesC8 &, TDes8 &, TRequestStatus &) |
IMPORT_C void | UnloadPolicy(const TPolicyHandle &, TRequestStatus &) |
IMPORT_C TVersion | Version() |
Private Member Functions | |
---|---|
void | EnumerateSelectors(const TDesC8 &, TInt &) |
Inherited Enumerations | |
---|---|
RHandleBase:TAttributes | |
RSessionBase:TAttachMode |
Private Attributes | |
---|---|
TAny * | iReserverd |
Inherited Attributes | |
---|---|
RHandleBase::iHandle |
IMPORT_C void | ActivatePolicy | ( | const TPolicyHandle & | aPolicyHandle, |
TRequestStatus & | aStatus | |||
) |
Activates the specified loaded policy. The activation causes the policy to be merged with other active policies and the loading of the combined policy to the IPSec Protocol Module (where it forms the SPD).
const TPolicyHandle & aPolicyHandle | a descriptor containing a handle to Policy |
TRequestStatus & aStatus | On completion, will contain an error code, see the system-wide error codes. |
IMPORT_C void | AvailableSelectors | ( | const TDesC8 & | aGateway, |
CArrayFixFlat< TIpsecSelectorInfo > * | aSelectors, | |||
TRequestStatus & | aStatus | |||
) |
Given the information to be matched in gateway, the API checks whether there is a matching gateway in the active policy. This function is called in order to retrieve all the available selectors that are associated with the gateway.
const TDesC8 & aGateway | the gateway proposal to be matched is packaged in TInetAddrPckg. |
CArrayFixFlat< TIpsecSelectorInfo > * aSelectors | |
TRequestStatus & aStatus | On completion, will contain an error code, see the Ipsec policy and system wide error codes. |
void | EnumerateSelectors | ( | const TDesC8 & | aGateway, |
TInt & | aCount | |||
) | [private] |
IMPORT_C TInt | GetDebugInfo | ( | TDes & | aDebugInfo, |
TUint | aInfoFlags = KConflictingPolicyInfo | |||
) |
Returns information about the policy that caused policy activation to fail or info about parsing error.
TDes & aDebugInfo | a descriptor the error message returned to the user. |
TUint aInfoFlags = KConflictingPolicyInfo | A combination of flags that determine the information to be returned |
IMPORT_C void | LoadPolicy | ( | const TDesC8 & | aPolicy, |
TPolicyHandlePckg & | aPolicyHandle, | |||
TRequestStatus & | aStatus | |||
) |
Loads the specified policy to the IPSec Policy Manager as such, without any modifications. The ActivatePolicy method must be called to merge the policy with other active policies and load the combined policy to the IPSec Protocol Module (where it forms the SPD).
const TDesC8 & aPolicy | a descriptor containing the Policy |
TPolicyHandlePckg & aPolicyHandle | a TPckgBuf containing a TPolicyHandle |
TRequestStatus & aStatus | On completion, will contain an error code, see the system-wide error codes. |
IMPORT_C void | LoadPolicy | ( | const TDesC8 & | aPolicy, |
TPolicyHandlePckg & | aPolicyHandle, | |||
TRequestStatus & | aStatus, | |||
const TZoneInfoSetPckg & | aSelectorZones, | |||
TUint | aProcessingFlags = KAddIkeBypassSelectors | |||
) |
Loads the policy as a zone-specific policy to the IPSec Policy Manager. The ActivatePolicy method must be called to merge the policy with other active policies and load the combined policy to the IPSec Protocol Module (where it forms the SPD).
The specified selector zone ID is added to each policy selector before the policy is merged with other loaded policies. Any existing zone IDs in the policy are overwritten. The use of the selector zone IDs in policy loading allows the loading of multiple policies even with otherwise overlapping selector address spaces. The zone ID is added also to plain port and protocol selectors that originally do not define destination addresses.
In addition, the method allows the caller to specify a tunnel end-point zone ID that is added to each tunnel end-point definition in the policy before the policy is merged with other loaded policies. Any existing tunnel end-point zone IDs in the policy are overwritten.
The use of zone IDs in the tunnel end point addresses allows the proper routing of the tunneled IP packets even in the presence of several interfaces in the system whose routing table would otherwise match a certain tunnel end-point address.
KAddIkeBypassSelectors
KAddDhcpBypassSelectors
const TDesC8 & aPolicy | a descriptor containing the Policy |
TPolicyHandlePckg & aPolicyHandle | a TPckgBuf containing a TPolicyHandle |
TRequestStatus & aStatus | On completion, will contain an error code, see the system-wide error codes. |
const TZoneInfoSetPckg & aSelectorZones | |
TUint aProcessingFlags = KAddIkeBypassSelectors | additional processing instructions (flags) |
IMPORT_C void | MatchSelector | ( | const TDesC8 & | aSelector, |
TDes8 & | aMatchingSaSpec, | |||
TRequestStatus & | aStatus | |||
) |
Check ISAKMP Phase2 Porposal Given the information to be matched in selector, checks whether there is a matching selector in the active policy. This function is called multiple times in order to retrieve all the SA specifications that are associated with a selector.
const TDesC8 & aSelector | the traffic selector proposal to be matched |
TDes8 & aMatchingSaSpec | If the selector matches, this contains the SA spec upon return |
TRequestStatus & aStatus | On completion, will contain an error code, see the Ipsec policy and system wide error codes. |
IMPORT_C void | UnloadPolicy | ( | const TPolicyHandle & | aPolicyHandle, |
TRequestStatus & | aStatus | |||
) |
Deactivate and unload the specified policy. The method causes the remaining policies to be re-merged and loaded to the IPSec Protocol module.
const TPolicyHandle & aPolicyHandle | a descriptor containing a handle to Policy |
TRequestStatus & aStatus | On completion, will contain an error code, see the Ipsec policy and system wide error codes. |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.