ChildSaProposal.Builder
public
static
final
class
ChildSaProposal.Builder
extends Object
java.lang.Object | |
↳ | android.net.ipsec.ike.ChildSaProposal.Builder |
This class is used to incrementally construct a ChildSaProposal. ChildSaProposal instances are immutable once built.
Summary
Public constructors | |
---|---|
Builder()
|
Public methods | |
---|---|
ChildSaProposal.Builder
|
addDhGroup(int dhGroup)
Adds a Diffie-Hellman Group to the SA proposal being built. |
ChildSaProposal.Builder
|
addEncryptionAlgorithm(int algorithm, int keyLength)
Adds an encryption algorithm with a specific key length to the SA proposal being built. |
ChildSaProposal.Builder
|
addIntegrityAlgorithm(int algorithm)
Adds an integrity algorithm to the SA proposal being built. |
ChildSaProposal
|
build()
Validates and builds the ChildSaProposal. |
Inherited methods | |
---|---|
Public constructors
Public methods
addDhGroup
public ChildSaProposal.Builder addDhGroup (int dhGroup)
Adds a Diffie-Hellman Group to the SA proposal being built.
If this ChildSaProposal will be used for the first Child SA created as part of IKE AUTH exchange, DH groups configured here will only apply when the Child SA is later rekeyed. In this case, configuring different DH groups for IKE and Child SA may cause Rekey Child to fail.
If no DH groups are supplied here, but the server requests a DH exchange during rekey, the IKE SA's negotiated DH group will still be accepted.
Parameters | |
---|---|
dhGroup |
int : to add to ChildSaProposal.
Value is SaProposal.DH_GROUP_NONE , SaProposal.DH_GROUP_1024_BIT_MODP , SaProposal.DH_GROUP_1536_BIT_MODP , SaProposal.DH_GROUP_2048_BIT_MODP , SaProposal.DH_GROUP_3072_BIT_MODP , SaProposal.DH_GROUP_4096_BIT_MODP , or SaProposal.DH_GROUP_CURVE_25519 |
Returns | |
---|---|
ChildSaProposal.Builder |
Builder of ChildSaProposal.
This value cannot be null . |
addEncryptionAlgorithm
public ChildSaProposal.Builder addEncryptionAlgorithm (int algorithm, int keyLength)
Adds an encryption algorithm with a specific key length to the SA proposal being built.
Parameters | |
---|---|
algorithm |
int : encryption algorithm to add to ChildSaProposal.
Value is SaProposal.ENCRYPTION_ALGORITHM_3DES , SaProposal.ENCRYPTION_ALGORITHM_AES_CBC , SaProposal.ENCRYPTION_ALGORITHM_AES_CTR , SaProposal.ENCRYPTION_ALGORITHM_AES_GCM_8 , SaProposal.ENCRYPTION_ALGORITHM_AES_GCM_12 , SaProposal.ENCRYPTION_ALGORITHM_AES_GCM_16 , or SaProposal.ENCRYPTION_ALGORITHM_CHACHA20_POLY1305 |
keyLength |
int : key length of algorithm. For algorithms that have fixed key length (e.g.
3DES) only SaProposal#KEY_LEN_UNUSED is allowed. |
Returns | |
---|---|
ChildSaProposal.Builder |
Builder of ChildSaProposal.
This value cannot be null . |
addIntegrityAlgorithm
public ChildSaProposal.Builder addIntegrityAlgorithm (int algorithm)
Adds an integrity algorithm to the SA proposal being built.
Parameters | |
---|---|
algorithm |
int : integrity algorithm to add to ChildSaProposal.
Value is SaProposal.INTEGRITY_ALGORITHM_NONE , SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA1_96 , SaProposal.INTEGRITY_ALGORITHM_AES_XCBC_96 , SaProposal.INTEGRITY_ALGORITHM_AES_CMAC_96 , SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA2_256_128 , SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA2_384_192 , or SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA2_512_256 |
Returns | |
---|---|
ChildSaProposal.Builder |
Builder of ChildSaProposal.
This value cannot be null . |
build
public ChildSaProposal build ()
Validates and builds the ChildSaProposal.
Returns | |
---|---|
ChildSaProposal |
the validated ChildSaProposal.
This value cannot be null . |