/**@class android.net.wifi.WifiEnterpriseConfig implements android.os.Parcelable @extends java.lang.Object Enterprise configuration details for Wi-Fi. Stores details about the EAP method and any associated credentials. */ var WifiEnterpriseConfig = { /**@hide */ EMPTY_VALUE : "NULL", /**@hide */ EAP_KEY : "eap", /**@hide */ PHASE2_KEY : "phase2", /**@hide */ IDENTITY_KEY : "identity", /**@hide */ ANON_IDENTITY_KEY : "anonymous_identity", /**@hide */ PASSWORD_KEY : "password", /**@hide */ SUBJECT_MATCH_KEY : "subject_match", /**@hide */ ALTSUBJECT_MATCH_KEY : "altsubject_match", /**@hide */ DOM_SUFFIX_MATCH_KEY : "domain_suffix_match", /**@hide */ OPP_KEY_CACHING : "proactive_key_caching", /** String representing the keystore OpenSSL ENGINE's ID. @hide */ ENGINE_ID_KEYSTORE : "keystore", /** String representing the keystore URI used for wpa_supplicant. @hide */ KEYSTORE_URI : "keystore://", /** String representing the keystore URI used for wpa_supplicant, Unlike #KEYSTORE_URI, this supports a list of space-delimited aliases @hide */ KEYSTORES_URI : "keystores://", /** String to set the engine value to when it should be enabled. @hide */ ENGINE_ENABLE : "1", /** String to set the engine value to when it should be disabled. @hide */ ENGINE_DISABLE : "0", /**@hide */ CA_CERT_PREFIX : "keystore://CACERT_", /**@hide */ CLIENT_CERT_PREFIX : "keystore://USRCERT_", /**@hide */ CLIENT_CERT_KEY : "client_cert", /**@hide */ CA_CERT_KEY : "ca_cert", /**@hide */ CA_PATH_KEY : "ca_path", /**@hide */ ENGINE_KEY : "engine", /**@hide */ ENGINE_ID_KEY : "engine_id", /**@hide */ PRIVATE_KEY_ID_KEY : "key_id", /**@hide */ REALM_KEY : "realm", /**@hide */ PLMN_KEY : "plmn", /**@hide */ CA_CERT_ALIAS_DELIMITER : " ", /***/ CREATOR : "null", /**Copy fields from the provided external WifiEnterpriseConfig. This is needed to handle the WifiEnterpriseConfig objects which were sent by apps with the password field masked. @param {Object {WifiEnterpriseConfig}} externalConfig External WifiEnterpriseConfig object. @param {String} mask String mask to compare against. @hide */ copyFromExternal : function( ) {}, /** */ describeContents : function( ) {}, /** */ writeToParcel : function( ) {}, /**Internal use only; supply field values to wpa_supplicant config. The configuration process aborts on the first failed call on {@code saver}. @param {Object {WifiEnterpriseConfig.SupplicantSaver}} saver proxy for setting configuration in wpa_supplciant @return {Boolean} whether the save succeeded on all attempts @hide */ saveToSupplicant : function( ) {}, /**Internal use only; retrieve configuration from wpa_supplicant config. @param {Object {WifiEnterpriseConfig.SupplicantLoader}} loader proxy for retrieving configuration keys from wpa_supplicant @hide */ loadFromSupplicant : function( ) {}, /**Set the EAP authentication method. @param {Number} eapMethod is one {@link Eap#PEAP}, {@link Eap#TLS}, {@link Eap#TTLS} or {@link Eap#PWD} @throws IllegalArgumentException on an invalid eap method */ setEapMethod : function( ) {}, /**Get the eap method. @return {Number} eap method configured */ getEapMethod : function( ) {}, /**Set Phase 2 authentication method. Sets the inner authentication method to be used in phase 2 after setting up a secure channel @param {Number} phase2Method is the inner authentication method and can be one of {@link Phase2#NONE}, {@link Phase2#PAP}, {@link Phase2#MSCHAP}, {@link Phase2#MSCHAPV2}, {@link Phase2#GTC} @throws IllegalArgumentException on an invalid phase2 method */ setPhase2Method : function( ) {}, /**Get the phase 2 authentication method. @return {Number} a phase 2 method defined at {@link Phase2} */ getPhase2Method : function( ) {}, /**Set the identity @param {String} identity */ setIdentity : function( ) {}, /**Get the identity @return {String} the identity */ getIdentity : function( ) {}, /**Set anonymous identity. This is used as the unencrypted identity with certain EAP types @param {String} anonymousIdentity the anonymous identity */ setAnonymousIdentity : function( ) {}, /**Get the anonymous identity @return {String} anonymous identity */ getAnonymousIdentity : function( ) {}, /**Set the password. @param {String} password the password */ setPassword : function( ) {}, /**Get the password. Returns locally set password value. For networks fetched from framework, returns "*". */ getPassword : function( ) {}, /**Encode a CA certificate alias so it does not contain illegal character. @hide */ encodeCaCertificateAlias : function( ) {}, /**Decode a previously-encoded CA certificate alias. @hide */ decodeCaCertificateAlias : function( ) {}, /**Set CA certificate alias. <p> See the {@link android.security.KeyChain} for details on installing or choosing a certificate </p> @param {String} alias identifies the certificate @hide */ setCaCertificateAlias : function( ) {}, /**Set CA certificate aliases. When creating installing the corresponding certificate to the keystore, please use alias encoded by {@link #encodeCaCertificateAlias}(String). <p> See the {@link android.security.KeyChain} for details on installing or choosing a certificate. </p> @param {Object {java.lang.String[]}} aliases identifies the certificate @hide */ setCaCertificateAliases : function( ) {}, /**Get CA certificate alias @return {String} alias to the CA certificate @hide */ getCaCertificateAlias : function( ) {}, /**Get CA certificate aliases @return {String} alias to the CA certificate @hide */ getCaCertificateAliases : function( ) {}, /**Specify a X.509 certificate that identifies the server. <p>A default name is automatically assigned to the certificate and used with this configuration. The framework takes care of installing the certificate when the config is saved and removing the certificate when the config is removed. @param {Object {X509Certificate}} cert X.509 CA certificate @throws IllegalArgumentException if not a CA certificate */ setCaCertificate : function( ) {}, /**Get CA certificate. If multiple CA certificates are configured previously, return the first one. @return {Object {java.security.cert.X509Certificate}} X.509 CA certificate */ getCaCertificate : function( ) {}, /**Specify a list of X.509 certificates that identifies the server. The validation passes if the CA of server certificate matches one of the given certificates. <p>Default names are automatically assigned to the certificates and used with this configuration. The framework takes care of installing the certificates when the config is saved and removing the certificates when the config is removed. @param {Object {java.security.cert.X509Certificate[]}} certs X.509 CA certificates @throws IllegalArgumentException if any of the provided certificates is not a CA certificate */ setCaCertificates : function( ) {}, /**Get CA certificates. */ getCaCertificates : function( ) {}, /** @hide */ resetCaCertificate : function( ) {}, /**Set the ca_path directive on wpa_supplicant. From wpa_supplicant documentation: Directory path for CA certificate files (PEM). This path may contain multiple CA certificates in OpenSSL format. Common use for this is to point to system trusted CA list which is often installed into directory like /etc/ssl/certs. If configured, these certificates are added to the list of trusted CAs. ca_cert may also be included in that case, but it is not required. @param {String} domain The path for CA certificate files @hide */ setCaPath : function( ) {}, /**Get the domain_suffix_match value. See setDomSuffixMatch. @return {String} The path for CA certificate files. @hide */ getCaPath : function( ) {}, /**Set Client certificate alias. <p> See the {@link android.security.KeyChain} for details on installing or choosing a certificate </p> @param {String} alias identifies the certificate @hide */ setClientCertificateAlias : function( ) {}, /**Get client certificate alias @return {String} alias to the client certificate @hide */ getClientCertificateAlias : function( ) {}, /**Specify a private key and client certificate for client authorization. <p>A default name is automatically assigned to the key entry and used with this configuration. The framework takes care of installing the key entry when the config is saved and removing the key entry when the config is removed. @param {Object {PrivateKey}} privateKey a PrivateKey instance for the end certificate. @param {Object {X509Certificate}} clientCertificate an X509Certificate representing the end certificate. @throws IllegalArgumentException for an invalid key or certificate. */ setClientKeyEntry : function( ) {}, /**Specify a private key and client certificate chain for client authorization. <p>A default name is automatically assigned to the key entry and used with this configuration. The framework takes care of installing the key entry when the config is saved and removing the key entry when the config is removed. @param {Object {PrivateKey}} privateKey a PrivateKey instance for the end certificate. @param {Object {java.security.cert.X509Certificate[]}} clientCertificateChain an array of X509Certificate instances which starts with end certificate and continues with additional CA certificates necessary to link the end certificate with some root certificate known by the authenticator. @throws IllegalArgumentException for an invalid key or certificate. */ setClientKeyEntryWithCertificateChain : function( ) {}, /**Get client certificate @return {Object {java.security.cert.X509Certificate}} X.509 client certificate */ getClientCertificate : function( ) {}, /**Get the complete client certificate chain in the same order as it was last supplied. <p>If the chain was last supplied by a call to {@link #setClientKeyEntry(java.security.PrivateKey, java.security.cert.X509Certificate)} with a non-null * certificate instance, a single-element array containing the certificate will be * returned. If {@link #setClientKeyEntryWithCertificateChain( java.security.PrivateKey, java.security.cert.X509Certificate[])} was last called with a non-empty array, this array will be returned in the same order as it was supplied. Otherwise, {@code null} will be returned. @return {Object {java.security.cert.X509Certificate}} X.509 client certificates */ getClientCertificateChain : function( ) {}, /** @hide */ resetClientKeyEntry : function( ) {}, /** @hide */ getClientPrivateKey : function( ) {}, /**Set subject match (deprecated). This is the substring to be matched against the subject of the authentication server certificate. @param {String} subjectMatch substring to be matched @deprecated in favor of altSubjectMatch */ setSubjectMatch : function( ) {}, /**Get subject match (deprecated) @return {String} the subject match string @deprecated in favor of altSubjectMatch */ getSubjectMatch : function( ) {}, /**Set alternate subject match. This is the substring to be matched against the alternate subject of the authentication server certificate. @param {String} altSubjectMatch substring to be matched, for example DNS:server.example.com;EMAIL:server@example.com */ setAltSubjectMatch : function( ) {}, /**Get alternate subject match @return {String} the alternate subject match string */ getAltSubjectMatch : function( ) {}, /**Set the domain_suffix_match directive on wpa_supplicant. This is the parameter to use for Hotspot 2.0 defined matching of AAA server certs per WFA HS2.0 spec, section 7.3.3.2, second paragraph. <p>From wpa_supplicant documentation: <p>Constraint for server domain name. If set, this FQDN is used as a suffix match requirement for the AAAserver certificate in SubjectAltName dNSName element(s). If a matching dNSName is found, this constraint is met. <p>Suffix match here means that the host/domain name is compared one label at a time starting from the top-level domain and all the labels in domain_suffix_match shall be included in the certificate. The certificate may include additional sub-level labels in addition to the required labels. <p>More than one match string can be provided by using semicolons to separate the strings (e.g., example.org;example.com). When multiple strings are specified, a match with any one of the values is considered a sufficient match for the certificate, i.e., the conditions are ORed ogether. <p>For example, domain_suffix_match=example.com would match test.example.com but would not match test-example.com. @param {String} domain The domain value */ setDomainSuffixMatch : function( ) {}, /**Get the domain_suffix_match value. See setDomSuffixMatch. @return {String} The domain value. */ getDomainSuffixMatch : function( ) {}, /**Set realm for Passpoint credential; realm identifies a set of networks where your Passpoint credential can be used @param {String} realm the realm */ setRealm : function( ) {}, /**Get realm for Passpoint credential; see {@link #setRealm}(String) for more information @return {String} the realm */ getRealm : function( ) {}, /**Set plmn (Public Land Mobile Network) of the provider of Passpoint credential @param {String} plmn the plmn value derived from mcc (mobile country code) & mnc (mobile network code) */ setPlmn : function( ) {}, /**Get plmn (Public Land Mobile Network) for Passpoint credential; see {@link #setPlmn (String)} for more information @return {String} the plmn */ getPlmn : function( ) {}, /**See {@link android.net.wifi.WifiConfiguration#getKeyIdForCredentials} @hide */ getKeyId : function( ) {}, /**Returns the field value for the key. @param {String} key into the hash @return {String} value @hide */ getFieldValue : function( ) {}, /**Set a value at key @param {String} key into the hash @param {String} value to be set @hide */ setFieldValue : function( ) {}, /** */ toString : function( ) {}, /**Check if certificate was installed by an app, or manually (not by an app). If true, certificate and keys will be removed from key storage when this network is removed. If not, then certificates and keys remain persistent until the user manually removes them. @return {Boolean} true if certificate was installed by an app, false if certificate was installed manually by the user. @hide */ isAppInstalledDeviceKeyAndCert : function( ) {}, /**Check if CA certificate was installed by an app, or manually (not by an app). If true, CA certificate will be removed from key storage when this network is removed. If not, then certificates and keys remain persistent until the user manually removes them. @return {Boolean} true if CA certificate was installed by an app, false if CA certificate was installed manually by the user. @hide */ isAppInstalledCaCert : function( ) {}, };