Class (GI Class)

NM-1.0NMSetting8021x

IEEE 802.1x Authentication Settings

Hierarchy (View Summary)

Index

Constructors

Properties

Accessors

altsubject_matches altsubjectMatches anonymous_identity anonymousIdentity auth_timeout authTimeout ca_cert ca_cert_password ca_cert_password_flags ca_path caCert caCertPassword caCertPasswordFlags caPath client_cert client_cert_password client_cert_password_flags clientCert clientCertPassword clientCertPasswordFlags domain_match domain_suffix_match domainMatch domainSuffixMatch eap identity openssl_ciphers opensslCiphers optional pac_file pacFile password password_flags password_raw password_raw_flags passwordFlags passwordRaw passwordRawFlags phase1_auth_flags phase1_fast_provisioning phase1_peaplabel phase1_peapver phase1AuthFlags phase1FastProvisioning phase1Peaplabel phase1Peapver phase2_altsubject_matches phase2_auth phase2_autheap phase2_ca_cert phase2_ca_cert_password phase2_ca_cert_password_flags phase2_ca_path phase2_client_cert phase2_client_cert_password phase2_client_cert_password_flags phase2_domain_match phase2_domain_suffix_match phase2_private_key phase2_private_key_password phase2_private_key_password_flags phase2_subject_match phase2AltsubjectMatches phase2Auth phase2Autheap phase2CaCert phase2CaCertPassword phase2CaCertPasswordFlags phase2CaPath phase2ClientCert phase2ClientCertPassword phase2ClientCertPasswordFlags phase2DomainMatch phase2DomainSuffixMatch phase2PrivateKey phase2PrivateKeyPassword phase2PrivateKeyPasswordFlags phase2SubjectMatch pin pin_flags pinFlags private_key private_key_password private_key_password_flags privateKey privateKeyPassword privateKeyPasswordFlags subject_match subjectMatch system_ca_certs systemCaCerts

Accessors - Inherited from NM.Setting

Methods

_init add_altsubject_match add_eap_method add_phase2_altsubject_match clear_altsubject_matches clear_eap_methods clear_phase2_altsubject_matches connect connect_after emit get_altsubject_match get_anonymous_identity get_auth_timeout get_ca_cert_blob get_ca_cert_password get_ca_cert_password_flags get_ca_cert_path get_ca_cert_scheme get_ca_cert_uri get_ca_path get_client_cert_blob get_client_cert_password get_client_cert_password_flags get_client_cert_path get_client_cert_scheme get_client_cert_uri get_domain_match get_domain_suffix_match get_eap_method get_identity get_num_altsubject_matches get_num_eap_methods get_num_phase2_altsubject_matches get_openssl_ciphers get_optional get_pac_file get_password get_password_flags get_password_raw get_password_raw_flags get_phase1_auth_flags get_phase1_fast_provisioning get_phase1_peaplabel get_phase1_peapver get_phase2_altsubject_match get_phase2_auth get_phase2_autheap get_phase2_ca_cert_blob get_phase2_ca_cert_password get_phase2_ca_cert_password_flags get_phase2_ca_cert_path get_phase2_ca_cert_scheme get_phase2_ca_cert_uri get_phase2_ca_path get_phase2_client_cert_blob get_phase2_client_cert_password get_phase2_client_cert_password_flags get_phase2_client_cert_path get_phase2_client_cert_scheme get_phase2_client_cert_uri get_phase2_domain_match get_phase2_domain_suffix_match get_phase2_private_key_blob get_phase2_private_key_format get_phase2_private_key_password get_phase2_private_key_password_flags get_phase2_private_key_path get_phase2_private_key_scheme get_phase2_private_key_uri get_phase2_subject_match get_pin get_pin_flags get_private_key_blob get_private_key_format get_private_key_password get_private_key_password_flags get_private_key_path get_private_key_scheme get_private_key_uri get_subject_match get_system_ca_certs remove_altsubject_match remove_altsubject_match_by_value remove_eap_method remove_eap_method_by_value remove_phase2_altsubject_match remove_phase2_altsubject_match_by_value set_ca_cert set_client_cert set_phase2_ca_cert set_phase2_client_cert set_phase2_private_key set_private_key check_cert_scheme new

Methods - Inherited from NM.Setting

Constructors

Properties

Compile-time signal type information.

This instance property is generated only for TypeScript type checking. It is not defined at runtime and should not be accessed in JS code.

Accessors

  • get altsubject_matches(): string[]

    List of strings to be matched against the altSubjectName of the certificate presented by the authentication server. If the list is empty, no verification of the server certificate's altSubjectName is performed.

    Returns string[]

  • set altsubject_matches(val: string[]): void

    Parameters

    • val: string[]

    Returns void

  • get altsubjectMatches(): string[]

    List of strings to be matched against the altSubjectName of the certificate presented by the authentication server. If the list is empty, no verification of the server certificate's altSubjectName is performed.

    Returns string[]

  • set altsubjectMatches(val: string[]): void

    Parameters

    • val: string[]

    Returns void

  • get anonymous_identity(): string

    Anonymous identity string for EAP authentication methods. Used as the unencrypted identity with EAP types that support different tunneled identity like EAP-TTLS.

    Returns string

  • set anonymous_identity(val: string): void

    Parameters

    • val: string

    Returns void

  • get anonymousIdentity(): string

    Anonymous identity string for EAP authentication methods. Used as the unencrypted identity with EAP types that support different tunneled identity like EAP-TTLS.

    Returns string

  • set anonymousIdentity(val: string): void

    Parameters

    • val: string

    Returns void

  • get auth_timeout(): number

    A timeout for the authentication. Zero means the global default; if the global default is not set, the authentication timeout is 25 seconds.

    Returns number

    1.8

  • set auth_timeout(val: number): void

    Parameters

    • val: number

    Returns void

  • get authTimeout(): number

    A timeout for the authentication. Zero means the global default; if the global default is not set, the authentication timeout is 25 seconds.

    Returns number

    1.8

  • set authTimeout(val: number): void

    Parameters

    • val: number

    Returns void

  • get ca_cert(): GLib.Bytes

    Contains the CA certificate if used by the EAP method specified in the NM.Setting8021x.eap property.

    Certificate data is specified using a "scheme"; three are currently supported: blob, path and pkcs#11 URL. When using the blob scheme this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

    Note that enabling NMSetting8021x:system-ca-certs will override this setting to use the built-in path, if the built-in path is not a directory.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_ca_cert() function instead.

    Returns GLib.Bytes

  • set ca_cert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get ca_cert_password(): string

    The password used to access the CA certificate stored in NM.Setting8021x.ca_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set ca_cert_password(val: string): void

    Parameters

    • val: string

    Returns void

  • get ca_path(): string

    UTF-8 encoded path to a directory containing PEM or DER formatted certificates to be added to the verification chain in addition to the certificate specified in the NM.Setting8021x.ca_cert property.

    If NMSetting8021x:system-ca-certs is enabled and the built-in CA path is an existing directory, then this setting is ignored.

    Returns string

  • set ca_path(val: string): void

    Parameters

    • val: string

    Returns void

  • get caCert(): GLib.Bytes

    Contains the CA certificate if used by the EAP method specified in the NM.Setting8021x.eap property.

    Certificate data is specified using a "scheme"; three are currently supported: blob, path and pkcs#11 URL. When using the blob scheme this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

    Note that enabling NMSetting8021x:system-ca-certs will override this setting to use the built-in path, if the built-in path is not a directory.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_ca_cert() function instead.

    Returns GLib.Bytes

  • set caCert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get caCertPassword(): string

    The password used to access the CA certificate stored in NM.Setting8021x.ca_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set caCertPassword(val: string): void

    Parameters

    • val: string

    Returns void

  • get caPath(): string

    UTF-8 encoded path to a directory containing PEM or DER formatted certificates to be added to the verification chain in addition to the certificate specified in the NM.Setting8021x.ca_cert property.

    If NMSetting8021x:system-ca-certs is enabled and the built-in CA path is an existing directory, then this setting is ignored.

    Returns string

  • set caPath(val: string): void

    Parameters

    • val: string

    Returns void

  • get client_cert(): GLib.Bytes

    Contains the client certificate if used by the EAP method specified in the NM.Setting8021x.eap property.

    Certificate data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme (which is backwards compatible with NM 0.7.x) this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_client_cert() function instead.

    Returns GLib.Bytes

  • set client_cert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get client_cert_password(): string

    The password used to access the client certificate stored in NM.Setting8021x.client_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set client_cert_password(val: string): void

    Parameters

    • val: string

    Returns void

  • get clientCert(): GLib.Bytes

    Contains the client certificate if used by the EAP method specified in the NM.Setting8021x.eap property.

    Certificate data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme (which is backwards compatible with NM 0.7.x) this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_client_cert() function instead.

    Returns GLib.Bytes

  • set clientCert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get clientCertPassword(): string

    The password used to access the client certificate stored in NM.Setting8021x.client_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set clientCertPassword(val: string): void

    Parameters

    • val: string

    Returns void

  • get domain_match(): string

    Constraint for server domain name. If set, this list of FQDNs is used as a match requirement for dNSName element(s) of the certificate presented by the authentication server. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using the same comparison. Multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.24

  • set domain_match(val: string): void

    Parameters

    • val: string

    Returns void

  • get domain_suffix_match(): string

    Constraint for server domain name. If set, this FQDN is used as a suffix match requirement for dNSName element(s) of the certificate presented by the authentication server. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using same suffix match comparison. Since version 1.24, multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.2

  • set domain_suffix_match(val: string): void

    Parameters

    • val: string

    Returns void

  • get domainMatch(): string

    Constraint for server domain name. If set, this list of FQDNs is used as a match requirement for dNSName element(s) of the certificate presented by the authentication server. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using the same comparison. Multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.24

  • set domainMatch(val: string): void

    Parameters

    • val: string

    Returns void

  • get domainSuffixMatch(): string

    Constraint for server domain name. If set, this FQDN is used as a suffix match requirement for dNSName element(s) of the certificate presented by the authentication server. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using same suffix match comparison. Since version 1.24, multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.2

  • set domainSuffixMatch(val: string): void

    Parameters

    • val: string

    Returns void

  • get eap(): string[]

    The allowed EAP method to be used when authenticating to the network with 802.1x. Valid methods are: "leap", "md5", "tls", "peap", "ttls", "pwd", and "fast". Each method requires different configuration using the properties of this setting; refer to wpa_supplicant documentation for the allowed combinations.

    Returns string[]

  • set eap(val: string[]): void

    Parameters

    • val: string[]

    Returns void

  • get identity(): string

    Identity string for EAP authentication methods. Often the user's user or login name.

    Returns string

  • set identity(val: string): void

    Parameters

    • val: string

    Returns void

  • get openssl_ciphers(): string

    Define openssl_ciphers for wpa_supplicant. Openssl sometimes moves ciphers among SECLEVELs, thus compiled-in default value in wpa_supplicant (as modified by some linux distributions) sometimes prevents to connect to old servers that do not support new protocols.

    Returns string

    1.48

  • set openssl_ciphers(val: string): void

    Parameters

    • val: string

    Returns void

  • get opensslCiphers(): string

    Define openssl_ciphers for wpa_supplicant. Openssl sometimes moves ciphers among SECLEVELs, thus compiled-in default value in wpa_supplicant (as modified by some linux distributions) sometimes prevents to connect to old servers that do not support new protocols.

    Returns string

    1.48

  • set opensslCiphers(val: string): void

    Parameters

    • val: string

    Returns void

  • get optional(): boolean

    Whether the 802.1X authentication is optional. If true, the activation will continue even after a timeout or an authentication failure. Setting the property to true is currently allowed only for Ethernet connections. If set to false, the activation can continue only after a successful authentication.

    Returns boolean

    1.22

  • set optional(val: boolean): void

    Parameters

    • val: boolean

    Returns void

  • get phase1_auth_flags(): number

    Specifies authentication flags to use in "phase 1" outer authentication using NM.Setting8021xAuthFlags options. The individual TLS versions can be explicitly disabled. TLS time checks can be also disabled. If a certain TLS disable flag is not set, it is up to the supplicant to allow or forbid it. The TLS options map to tls_disable_tlsv1_x and tls_disable_time_checks settings. See the wpa_supplicant documentation for more details.

    Returns number

    1.8

  • set phase1_auth_flags(val: number): void

    Parameters

    • val: number

    Returns void

  • get phase1_fast_provisioning(): string

    Enables or disables in-line provisioning of EAP-FAST credentials when FAST is specified as the EAP method in the NM.Setting8021x.eap property. Recognized values are "0" (disabled), "1" (allow unauthenticated provisioning), "2" (allow authenticated provisioning), and "3" (allow both authenticated and unauthenticated provisioning). See the wpa_supplicant documentation for more details.

    Returns string

  • set phase1_fast_provisioning(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase1_peaplabel(): string

    Forces use of the new PEAP label during key derivation. Some RADIUS servers may require forcing the new PEAP label to interoperate with PEAPv1. Set to "1" to force use of the new PEAP label. See the wpa_supplicant documentation for more details.

    Returns string

  • set phase1_peaplabel(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase1_peapver(): string

    Forces which PEAP version is used when PEAP is set as the EAP method in the NM.Setting8021x.eap property. When unset, the version reported by the server will be used. Sometimes when using older RADIUS servers, it is necessary to force the client to use a particular PEAP version. To do so, this property may be set to "0" or "1" to force that specific PEAP version.

    Returns string

  • set phase1_peapver(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase1AuthFlags(): number

    Specifies authentication flags to use in "phase 1" outer authentication using NM.Setting8021xAuthFlags options. The individual TLS versions can be explicitly disabled. TLS time checks can be also disabled. If a certain TLS disable flag is not set, it is up to the supplicant to allow or forbid it. The TLS options map to tls_disable_tlsv1_x and tls_disable_time_checks settings. See the wpa_supplicant documentation for more details.

    Returns number

    1.8

  • set phase1AuthFlags(val: number): void

    Parameters

    • val: number

    Returns void

  • get phase1FastProvisioning(): string

    Enables or disables in-line provisioning of EAP-FAST credentials when FAST is specified as the EAP method in the NM.Setting8021x.eap property. Recognized values are "0" (disabled), "1" (allow unauthenticated provisioning), "2" (allow authenticated provisioning), and "3" (allow both authenticated and unauthenticated provisioning). See the wpa_supplicant documentation for more details.

    Returns string

  • set phase1FastProvisioning(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase1Peaplabel(): string

    Forces use of the new PEAP label during key derivation. Some RADIUS servers may require forcing the new PEAP label to interoperate with PEAPv1. Set to "1" to force use of the new PEAP label. See the wpa_supplicant documentation for more details.

    Returns string

  • set phase1Peaplabel(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase1Peapver(): string

    Forces which PEAP version is used when PEAP is set as the EAP method in the NM.Setting8021x.eap property. When unset, the version reported by the server will be used. Sometimes when using older RADIUS servers, it is necessary to force the client to use a particular PEAP version. To do so, this property may be set to "0" or "1" to force that specific PEAP version.

    Returns string

  • set phase1Peapver(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_altsubject_matches(): string[]

    List of strings to be matched against the altSubjectName of the certificate presented by the authentication server during the inner "phase 2" authentication. If the list is empty, no verification of the server certificate's altSubjectName is performed.

    Returns string[]

  • set phase2_altsubject_matches(val: string[]): void

    Parameters

    • val: string[]

    Returns void

  • get phase2_auth(): string

    Specifies the allowed "phase 2" inner authentication method when an EAP method that uses an inner TLS tunnel is specified in the NM.Setting8021x.eap property. For TTLS this property selects one of the supported non-EAP inner methods: "pap", "chap", "mschap", "mschapv2" while NM.Setting8021x.phase2_autheap selects an EAP inner method. For PEAP this selects an inner EAP method, one of: "gtc", "otp", "md5" and "tls". Each "phase 2" inner method requires specific parameters for successful authentication; see the wpa_supplicant documentation for more details. Both NM.Setting8021x.phase2_auth and NM.Setting8021x.phase2_autheap cannot be specified.

    Returns string

  • set phase2_auth(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_autheap(): string

    Specifies the allowed "phase 2" inner EAP-based authentication method when TTLS is specified in the NM.Setting8021x.eap property. Recognized EAP-based "phase 2" methods are "md5", "mschapv2", "otp", "gtc", and "tls". Each "phase 2" inner method requires specific parameters for successful authentication; see the wpa_supplicant documentation for more details.

    Returns string

  • set phase2_autheap(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_ca_cert(): GLib.Bytes

    Contains the "phase 2" CA certificate if used by the EAP method specified in the NM.Setting8021x.phase2_auth or NM.Setting8021x.phase2_autheap properties.

    Certificate data is specified using a "scheme"; three are currently supported: blob, path and pkcs#11 URL. When using the blob scheme this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

    Note that enabling NMSetting8021x:system-ca-certs will override this setting to use the built-in path, if the built-in path is not a directory.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_phase2_ca_cert() function instead.

    Returns GLib.Bytes

  • set phase2_ca_cert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get phase2_ca_cert_password(): string

    The password used to access the "phase2" CA certificate stored in NM.Setting8021x.phase2_ca_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set phase2_ca_cert_password(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_ca_path(): string

    UTF-8 encoded path to a directory containing PEM or DER formatted certificates to be added to the verification chain in addition to the certificate specified in the NM.Setting8021x.phase2_ca_cert property.

    If NMSetting8021x:system-ca-certs is enabled and the built-in CA path is an existing directory, then this setting is ignored.

    Returns string

  • set phase2_ca_path(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_client_cert(): GLib.Bytes

    Contains the "phase 2" client certificate if used by the EAP method specified in the NM.Setting8021x.phase2_auth or NM.Setting8021x.phase2_autheap properties.

    Certificate data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme (which is backwards compatible with NM 0.7.x) this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_phase2_client_cert() function instead.

    Returns GLib.Bytes

  • set phase2_client_cert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get phase2_client_cert_password(): string

    The password used to access the "phase2" client certificate stored in NM.Setting8021x.phase2_client_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set phase2_client_cert_password(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_domain_match(): string

    Constraint for server domain name. If set, this list of FQDNs is used as a match requirement for dNSName element(s) of the certificate presented by the authentication server during the inner "phase 2" authentication. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using the same comparison. Multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.24

  • set phase2_domain_match(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_domain_suffix_match(): string

    Constraint for server domain name. If set, this FQDN is used as a suffix match requirement for dNSName element(s) of the certificate presented by the authentication server during the inner "phase 2" authentication. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using same suffix match comparison. Since version 1.24, multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.2

  • set phase2_domain_suffix_match(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_private_key(): GLib.Bytes

    Contains the "phase 2" inner private key when the NM.Setting8021x.phase2_auth or NM.Setting8021x.phase2_autheap property is set to "tls".

    Key data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme and private keys, this property should be set to the key's encrypted PEM encoded data. When using private keys with the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte. When using PKCS#12 format private keys and the blob scheme, this property should be set to the PKCS#12 data and the NM.Setting8021x.phase2_private_key_password property must be set to password used to decrypt the PKCS#12 certificate and key. When using PKCS#12 files and the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte, and as with the blob scheme the NM.Setting8021x.phase2_private_key_password property must be set to the password used to decode the PKCS#12 private key and certificate.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_phase2_private_key() function instead.

    Returns GLib.Bytes

  • set phase2_private_key(val: GLib.Bytes): void

    Parameters

    Returns void

  • get phase2_private_key_password(): string

    The password used to decrypt the "phase 2" private key specified in the NM.Setting8021x.phase2_private_key property when the private key either uses the path scheme, or is a PKCS#12 format key. Setting this property directly is not generally necessary except when returning secrets to NetworkManager; it is generally set automatically when setting the private key by the nm_setting_802_1x_set_phase2_private_key() function.

    Returns string

  • set phase2_private_key_password(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2_subject_match(): string

    Substring to be matched against the subject of the certificate presented by the authentication server during the inner "phase 2" authentication. When unset, no verification of the authentication server certificate's subject is performed. This property provides little security, if any, and should not be used.

    Returns string

    since 1.2: Use NM.Setting8021x.phase2_domain_suffix_match instead.

  • set phase2_subject_match(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2AltsubjectMatches(): string[]

    List of strings to be matched against the altSubjectName of the certificate presented by the authentication server during the inner "phase 2" authentication. If the list is empty, no verification of the server certificate's altSubjectName is performed.

    Returns string[]

  • set phase2AltsubjectMatches(val: string[]): void

    Parameters

    • val: string[]

    Returns void

  • get phase2Auth(): string

    Specifies the allowed "phase 2" inner authentication method when an EAP method that uses an inner TLS tunnel is specified in the NM.Setting8021x.eap property. For TTLS this property selects one of the supported non-EAP inner methods: "pap", "chap", "mschap", "mschapv2" while NM.Setting8021x.phase2_autheap selects an EAP inner method. For PEAP this selects an inner EAP method, one of: "gtc", "otp", "md5" and "tls". Each "phase 2" inner method requires specific parameters for successful authentication; see the wpa_supplicant documentation for more details. Both NM.Setting8021x.phase2_auth and NM.Setting8021x.phase2_autheap cannot be specified.

    Returns string

  • set phase2Auth(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2Autheap(): string

    Specifies the allowed "phase 2" inner EAP-based authentication method when TTLS is specified in the NM.Setting8021x.eap property. Recognized EAP-based "phase 2" methods are "md5", "mschapv2", "otp", "gtc", and "tls". Each "phase 2" inner method requires specific parameters for successful authentication; see the wpa_supplicant documentation for more details.

    Returns string

  • set phase2Autheap(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2CaCert(): GLib.Bytes

    Contains the "phase 2" CA certificate if used by the EAP method specified in the NM.Setting8021x.phase2_auth or NM.Setting8021x.phase2_autheap properties.

    Certificate data is specified using a "scheme"; three are currently supported: blob, path and pkcs#11 URL. When using the blob scheme this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

    Note that enabling NMSetting8021x:system-ca-certs will override this setting to use the built-in path, if the built-in path is not a directory.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_phase2_ca_cert() function instead.

    Returns GLib.Bytes

  • set phase2CaCert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get phase2CaCertPassword(): string

    The password used to access the "phase2" CA certificate stored in NM.Setting8021x.phase2_ca_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set phase2CaCertPassword(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2CaPath(): string

    UTF-8 encoded path to a directory containing PEM or DER formatted certificates to be added to the verification chain in addition to the certificate specified in the NM.Setting8021x.phase2_ca_cert property.

    If NMSetting8021x:system-ca-certs is enabled and the built-in CA path is an existing directory, then this setting is ignored.

    Returns string

  • set phase2CaPath(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2ClientCert(): GLib.Bytes

    Contains the "phase 2" client certificate if used by the EAP method specified in the NM.Setting8021x.phase2_auth or NM.Setting8021x.phase2_autheap properties.

    Certificate data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme (which is backwards compatible with NM 0.7.x) this property should be set to the certificate's DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string "file://" and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_phase2_client_cert() function instead.

    Returns GLib.Bytes

  • set phase2ClientCert(val: GLib.Bytes): void

    Parameters

    Returns void

  • get phase2ClientCertPassword(): string

    The password used to access the "phase2" client certificate stored in NM.Setting8021x.phase2_client_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

    Returns string

    1.8

  • set phase2ClientCertPassword(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2DomainMatch(): string

    Constraint for server domain name. If set, this list of FQDNs is used as a match requirement for dNSName element(s) of the certificate presented by the authentication server during the inner "phase 2" authentication. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using the same comparison. Multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.24

  • set phase2DomainMatch(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2DomainSuffixMatch(): string

    Constraint for server domain name. If set, this FQDN is used as a suffix match requirement for dNSName element(s) of the certificate presented by the authentication server during the inner "phase 2" authentication. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using same suffix match comparison. Since version 1.24, multiple valid FQDNs can be passed as a ";" delimited list.

    Returns string

    1.2

  • set phase2DomainSuffixMatch(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2PrivateKey(): GLib.Bytes

    Contains the "phase 2" inner private key when the NM.Setting8021x.phase2_auth or NM.Setting8021x.phase2_autheap property is set to "tls".

    Key data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme and private keys, this property should be set to the key's encrypted PEM encoded data. When using private keys with the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte. When using PKCS#12 format private keys and the blob scheme, this property should be set to the PKCS#12 data and the NM.Setting8021x.phase2_private_key_password property must be set to password used to decrypt the PKCS#12 certificate and key. When using PKCS#12 files and the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte, and as with the blob scheme the NM.Setting8021x.phase2_private_key_password property must be set to the password used to decode the PKCS#12 private key and certificate.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_phase2_private_key() function instead.

    Returns GLib.Bytes

  • set phase2PrivateKey(val: GLib.Bytes): void

    Parameters

    Returns void

  • get phase2PrivateKeyPassword(): string

    The password used to decrypt the "phase 2" private key specified in the NM.Setting8021x.phase2_private_key property when the private key either uses the path scheme, or is a PKCS#12 format key. Setting this property directly is not generally necessary except when returning secrets to NetworkManager; it is generally set automatically when setting the private key by the nm_setting_802_1x_set_phase2_private_key() function.

    Returns string

  • set phase2PrivateKeyPassword(val: string): void

    Parameters

    • val: string

    Returns void

  • get phase2SubjectMatch(): string

    Substring to be matched against the subject of the certificate presented by the authentication server during the inner "phase 2" authentication. When unset, no verification of the authentication server certificate's subject is performed. This property provides little security, if any, and should not be used.

    Returns string

    since 1.2: Use NM.Setting8021x.phase2_domain_suffix_match instead.

  • set phase2SubjectMatch(val: string): void

    Parameters

    • val: string

    Returns void

  • get private_key(): GLib.Bytes

    Contains the private key when the NM.Setting8021x.eap property is set to "tls".

    Key data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme and private keys, this property should be set to the key's encrypted PEM encoded data. When using private keys with the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte. When using PKCS#12 format private keys and the blob scheme, this property should be set to the PKCS#12 data and the NM.Setting8021x.private_key_password property must be set to password used to decrypt the PKCS#12 certificate and key. When using PKCS#12 files and the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte, and as with the blob scheme the "private-key-password" property must be set to the password used to decode the PKCS#12 private key and certificate.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_private_key() function instead.

    WARNING: NM.Setting8021x.private_key is not a "secret" property, and thus unencrypted private key data using the BLOB scheme may be readable by unprivileged users. Private keys should always be encrypted with a private key password to prevent unauthorized access to unencrypted private key data.

    Returns GLib.Bytes

  • set private_key(val: GLib.Bytes): void

    Parameters

    Returns void

  • get private_key_password(): string

    The password used to decrypt the private key specified in the NM.Setting8021x.private_key property when the private key either uses the path scheme, or if the private key is a PKCS#12 format key. Setting this property directly is not generally necessary except when returning secrets to NetworkManager; it is generally set automatically when setting the private key by the nm_setting_802_1x_set_private_key() function.

    Returns string

  • set private_key_password(val: string): void

    Parameters

    • val: string

    Returns void

  • get privateKey(): GLib.Bytes

    Contains the private key when the NM.Setting8021x.eap property is set to "tls".

    Key data is specified using a "scheme"; two are currently supported: blob and path. When using the blob scheme and private keys, this property should be set to the key's encrypted PEM encoded data. When using private keys with the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte. When using PKCS#12 format private keys and the blob scheme, this property should be set to the PKCS#12 data and the NM.Setting8021x.private_key_password property must be set to password used to decrypt the PKCS#12 certificate and key. When using PKCS#12 files and the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string "file://" and ending with a terminating NUL byte, and as with the blob scheme the "private-key-password" property must be set to the password used to decode the PKCS#12 private key and certificate.

    Setting this property directly is discouraged; use the nm_setting_802_1x_set_private_key() function instead.

    WARNING: NM.Setting8021x.private_key is not a "secret" property, and thus unencrypted private key data using the BLOB scheme may be readable by unprivileged users. Private keys should always be encrypted with a private key password to prevent unauthorized access to unencrypted private key data.

    Returns GLib.Bytes

  • set privateKey(val: GLib.Bytes): void

    Parameters

    Returns void

  • get privateKeyPassword(): string

    The password used to decrypt the private key specified in the NM.Setting8021x.private_key property when the private key either uses the path scheme, or if the private key is a PKCS#12 format key. Setting this property directly is not generally necessary except when returning secrets to NetworkManager; it is generally set automatically when setting the private key by the nm_setting_802_1x_set_private_key() function.

    Returns string

  • set privateKeyPassword(val: string): void

    Parameters

    • val: string

    Returns void

  • get subject_match(): string

    Substring to be matched against the subject of the certificate presented by the authentication server. When unset, no verification of the authentication server certificate's subject is performed. This property provides little security, if any, and should not be used.

    Returns string

    since 1.2: Use NM.Setting8021x.phase2_domain_suffix_match instead.

  • set subject_match(val: string): void

    Parameters

    • val: string

    Returns void

  • get subjectMatch(): string

    Substring to be matched against the subject of the certificate presented by the authentication server. When unset, no verification of the authentication server certificate's subject is performed. This property provides little security, if any, and should not be used.

    Returns string

    since 1.2: Use NM.Setting8021x.phase2_domain_suffix_match instead.

  • set subjectMatch(val: string): void

    Parameters

    • val: string

    Returns void

Accessors - Inherited from NM.Setting

  • get name(): string

    The setting's name, which uniquely identifies the setting within the connection. Each setting type has a name unique to that type, for example "ppp" or "802-11-wireless" or "802-3-ethernet".

    Returns string

Methods

  • Adds an allowed alternate subject name match. Until at least one match is added, the altSubjectName of the remote authentication server is not verified.

    Parameters

    • altsubject_match: string

      the altSubjectName to allow for this connection

    Returns boolean

    true if the alternative subject name match was successfully added, false if it was already allowed.

  • Adds an allowed EAP method. The setting is not valid until at least one EAP method has been added. See NM.Setting8021x.eap property for a list of allowed EAP methods.

    Parameters

    • eap: string

      the name of the EAP method to allow for this connection

    Returns boolean

    true if the EAP method was successfully added, false if it was not a valid method or if it was already allowed.

  • Adds an allowed alternate subject name match for "phase 2". Until at least one match is added, the altSubjectName of the "phase 2" remote authentication server is not verified.

    Parameters

    • phase2_altsubject_match: string

      the "phase 2" altSubjectName to allow for this connection

    Returns boolean

    true if the "phase 2" alternative subject name match was successfully added, false if it was already allowed.

  • Clears all "phase 2" altSubjectName matches.

    Returns void

  • Returns the altSubjectName match at index i.

    Parameters

    • i: number

      the zero-based index of the array of altSubjectName matches

    Returns string

    the altSubjectName match at index i

  • Returns the anonymous identifier used by some EAP methods (like TTLS) to authenticate the user in the outer unencrypted "phase 1" authentication. The inner "phase 2" authentication will use the NM.Setting8021x.identity in a secure form, if applicable for that EAP method.

    Returns string

    the anonymous identifier

  • Returns the CA certificate blob if the CA certificate is stored using the NM.Setting8021xCKScheme.BLOB scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

    Returns GLib.Bytes

    the CA certificate data

  • Returns string

    the password used to access the CA certificate stored in NM.Setting8021x.ca_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

  • Returns the CA certificate path if the CA certificate is stored using the NM.Setting8021xCKScheme.PATH scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

    Returns string

    path to the CA certificate file

  • Returns the CA certificate URI analogously to nm_setting_802_1x_get_ca_cert_blob() and nm_setting_802_1x_get_ca_cert_path().

    Currently, it's limited to PKCS#11 URIs ('pkcs11' scheme as defined by RFC 7512), but may be extended to other schemes in future (such as 'file' URIs for local files and 'data' URIs for inline certificate data).

    Returns string

    the URI string

  • Returns the path of the CA certificate directory if previously set. Systems will often have a directory that contains multiple individual CA certificates which the supplicant can then add to the verification chain. This may be used in addition to the NM.Setting8021x.ca_cert property to add more CA certificates for verifying the network to client.

    Returns string

    the CA certificate directory path

  • Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    Returns GLib.Bytes

    the client certificate data

  • Returns string

    the password used to access the client certificate stored in NM.Setting8021x.client_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

  • Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    Returns string

    path to the client certificate file

  • Returns the client certificate URI analogously to nm_setting_802_1x_get_client_cert_blob() and nm_setting_802_1x_get_client_cert_path().

    Currently, it's limited to PKCS#11 URIs ('pkcs11' scheme as defined by RFC 7512), but may be extended to other schemes in future (such as 'file' URIs for local files and 'data' URIs for inline certificate data).

    Returns string

    the URI string

  • Returns the name of the allowed EAP method at index i.

    Parameters

    • i: number

      the index of the EAP method name to return

    Returns string

    the name of the allowed EAP method at index i

  • Returns the identifier used by some EAP methods (like TLS) to authenticate the user. Often this is a username or login name.

    Returns string

    the user identifier

  • Returns the number of eap methods allowed for use when connecting to the network. Generally only one EAP method is used. Use the functions nm_setting_802_1x_get_eap_method(), nm_setting_802_1x_add_eap_method(), and nm_setting_802_1x_remove_eap_method() for adding, removing, and retrieving allowed EAP methods.

    Returns number

    the number of allowed EAP methods

  • Returns the openssl_ciphers configuration for wpa_supplicant.

    Returns string

    cipher string for tls setup in wpa_supplicant.

  • Returns the value contained in the NM.Setting8021x.optional property.

    Returns boolean

    true if the activation should proceed even when the 802.1X authentication fails; false otherwise

  • Returns the file containing PAC credentials used by EAP-FAST method.

    Returns string

    the PAC file

  • Returns string

    whether the "phase 1" PEAP label is new-style or old-style, to be used when authenticating with EAP-PEAP, as contained in the NM.Setting8021x.phase1_peaplabel property. Valid values are null (unset), "0" (use old-style label), and "1" (use new-style label). See the wpa_supplicant documentation for more details.

  • Returns string

    the "phase 1" PEAP version to be used when authenticating with EAP-PEAP as contained in the NM.Setting8021x.phase1_peapver property. Valid values are null (unset), "0" (PEAP version 0), and "1" (PEAP version 1).

  • Returns the "phase 2" altSubjectName match at index i.

    Parameters

    • i: number

      the zero-based index of the array of "phase 2" altSubjectName matches

    Returns string

    the "phase 2" altSubjectName match at index i

  • Returns the "phase 2" CA certificate blob if the CA certificate is stored using the NM.Setting8021xCKScheme.BLOB scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

    Returns GLib.Bytes

    the "phase 2" CA certificate data

  • Returns string

    the password used to access the "phase2" CA certificate stored in NM.Setting8021x.phase2_ca_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

  • Returns the "phase 2" CA certificate path if the CA certificate is stored using the NM.Setting8021xCKScheme.PATH scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

    Returns string

    path to the "phase 2" CA certificate file

  • Returns the "phase 2" CA certificate URI analogously to nm_setting_802_1x_get_phase2_ca_cert_blob() and nm_setting_802_1x_get_phase2_ca_cert_path().

    Currently, it's limited to PKCS#11 URIs ('pkcs11' scheme as defined by RFC 7512), but may be extended to other schemes in future (such as 'file' URIs for local files and 'data' URIs for inline certificate data).

    Returns string

    the URI string

  • Returns the path of the "phase 2" CA certificate directory if previously set. Systems will often have a directory that contains multiple individual CA certificates which the supplicant can then add to the verification chain. This may be used in addition to the NM.Setting8021x.phase2_ca_cert property to add more CA certificates for verifying the network to client.

    Returns string

    the "phase 2" CA certificate directory path

  • Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    Returns GLib.Bytes

    the "phase 2" client certificate data

  • Returns string

    the password used to access the "phase2" client certificate stored in NM.Setting8021x.phase2_client_cert property. Only makes sense if the certificate is stored on a PKCS#11 token that requires a login.

  • Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    Returns string

    path to the "phase 2" client certificate file

  • Returns the "phase 2" client certificate URI analogously to nm_setting_802_1x_get_phase2_ca_cert_blob() and nm_setting_802_1x_get_phase2_ca_cert_path().

    Currently, it's limited to PKCS#11 URIs ('pkcs11' scheme as defined by RFC 7512), but may be extended to other schemes in future (such as 'file' URIs for local files and 'data' URIs for inline certificate data).

    Returns string

    the URI string

  • Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    WARNING: the phase2 private key property is not a "secret" property, and thus unencrypted private key data may be readable by unprivileged users. Private keys should always be encrypted with a private key password.

    Returns GLib.Bytes

    the "phase 2" private key data

  • Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    Returns string

    path to the "phase 2" private key file

  • Returns the "phase 2" private key URI analogously to nm_setting_802_1x_get_phase2_private_key_blob() and nm_setting_802_1x_get_phase2_private_key_path().

    Currently, it's limited to PKCS#11 URIs ('pkcs11' scheme as defined by RFC 7512), but may be extended to other schemes in future (such as 'file' URIs for local files and 'data' URIs for inline certificate data).

    Returns string

    the URI string

  • Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    WARNING: the private key property is not a "secret" property, and thus unencrypted private key data may be readable by unprivileged users. Private keys should always be encrypted with a private key password.

    Returns GLib.Bytes

    the private key data

  • Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    Returns string

    path to the private key file

  • Returns the private key URI analogously to nm_setting_802_1x_get_private_key_blob() and nm_setting_802_1x_get_private_key_path().

    Currently, it's limited to PKCS#11 URIs ('pkcs11' scheme as defined by RFC 7512), but may be extended to other schemes in future (such as 'file' URIs for local files and 'data' URIs for inline certificate data).

    Returns string

    the URI string

  • Returns string

    the NM.Setting8021x.subject_match property. This is the substring to be matched against the subject of the authentication server certificate, or null no subject verification is to be performed.

  • Removes the allowed altSubjectName at the specified index.

    Parameters

    • i: number

      the index of the altSubjectName match to remove

    Returns void

  • Removes the allowed altSubjectName altsubject_match.

    Parameters

    • altsubject_match: string

      the altSubjectName to remove

    Returns boolean

    true if the alternative subject name match was found and removed, false if it was not.

  • Removes the allowed EAP method at the specified index.

    Parameters

    • i: number

      the index of the EAP method to remove

    Returns void

  • Removes the allowed EAP method method.

    Parameters

    • eap: string

      the name of the EAP method to remove

    Returns boolean

    true if the EAP method was founs and removed, false if it was not.

  • Removes the allowed "phase 2" altSubjectName at the specified index.

    Parameters

    • i: number

      the index of the "phase 2" altSubjectName match to remove

    Returns void

  • Removes the allowed "phase 2" altSubjectName phase2_altsubject_match.

    Parameters

    • phase2_altsubject_match: string

      the "phase 2" altSubjectName to remove

    Returns boolean

    true if the alternative subject name match for "phase 2" was found and removed, false if it was not.

  • Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    This function reads a private key from disk and sets the NM.Setting8021x.phase2_private_key property with the private key file data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the private key file if using the NM.Setting8021xCKScheme.PATH scheme.

    If password is given, this function attempts to decrypt the private key to verify that password is correct, and if it is, updates the NM.Setting8021x.phase2_private_key_password property with the given password. If the decryption is unsuccessful, false is returned, error is set, and no internal data is changed. If no password is given, the private key is assumed to be valid, no decryption is performed, and the password may be set at a later time.

    WARNING: the "phase2" private key property is not a "secret" property, and thus unencrypted private key data using the BLOB scheme may be readable by unprivileged users. Private keys should always be encrypted with a private key password to prevent unauthorized access to unencrypted private key data.

    Parameters

    • value: string

      when scheme is set to either NM.Setting8021xCKScheme.PATH or NM.Setting8021xCKScheme.BLOB, pass the path of the "phase2" private key file (PEM, DER, or PKCS#12 format). The path must be UTF-8 encoded; use g_filename_to_utf8() to convert if needed. Passing null with any scheme clears the private key.

    • password: string

      password used to decrypt the private key, or null if the password is unknown. If the password is given but fails to decrypt the private key, an error is returned.

    • scheme: NM.Setting8021xCKScheme

      desired storage scheme for the private key

    • out_format: NM.Setting8021xCKFormat

      on successful return, the type of the private key added

    Returns boolean

    true if the operation succeeded, false if it was unsuccessful

  • Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the "phase 1" or "phase 2" 802.1x authentication method.

    This function reads a private key from disk and sets the NM.Setting8021x.private_key property with the private key file data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the private key file if using the NM.Setting8021xCKScheme.PATH scheme.

    If password is given, this function attempts to decrypt the private key to verify that password is correct, and if it is, updates the NM.Setting8021x.private_key_password property with the given password. If the decryption is unsuccessful, false is returned, error is set, and no internal data is changed. If no password is given, the private key is assumed to be valid, no decryption is performed, and the password may be set at a later time.

    WARNING: the private key property is not a "secret" property, and thus unencrypted private key data using the BLOB scheme may be readable by unprivileged users. Private keys should always be encrypted with a private key password to prevent unauthorized access to unencrypted private key data.

    Parameters

    • value: string

      when scheme is set to either NM.Setting8021xCKScheme.PATH or NM.Setting8021xCKScheme.BLOB, pass the path of the private key file (PEM, DER, or PKCS#12 format). The path must be UTF-8 encoded; use g_filename_to_utf8() to convert if needed. Passing null with any scheme clears the private key.

    • password: string

      password used to decrypt the private key, or null if the password is unknown. If the password is given but fails to decrypt the private key, an error is returned.

    • scheme: NM.Setting8021xCKScheme

      desired storage scheme for the private key

    • out_format: NM.Setting8021xCKFormat

      on successful return, the type of the private key added

    Returns boolean

    true if the operation succeeded, false if it was unsuccessful

  • Determines and verifies the blob type. When setting certificate properties of NMSetting8021x the blob must be not UNKNOWN (or NULL).

    Parameters

    • pdata: any

      the data pointer

    • length: number

      the length of the data

    Returns NM.Setting8021xCKScheme

Methods - Inherited from NM.Setting

  • Creates a binding between source_property on source and target_property on target.

    Whenever the source_property is changed the target_property is updated using the same value. For instance:

      g_object_bind_property (action, "active", widget, "sensitive", 0);
    

    Will result in the "sensitive" property of the widget GObject.Object instance to be updated with the same value of the "active" property of the action GObject.Object instance.

    If flags contains GObject.BindingFlags.BIDIRECTIONAL then the binding will be mutual: if target_property on target changes then the source_property on source will be updated as well.

    The binding will automatically be removed when either the source or the target instances are finalized. To remove the binding without affecting the source and the target you can just call g_object_unref() on the returned GObject.Binding instance.

    Removing the binding by calling g_object_unref() on it must only be done if the binding, source and target are only used from a single thread and it is clear that both source and target outlive the binding. Especially it is not safe to rely on this if the binding, source or target can be finalized from different threads. Keep another reference to the binding and use g_binding_unbind() instead to be on the safe side.

    A GObject.Object can have multiple bindings.

    Parameters

    Returns GObject.Binding

    the GObject.Binding instance representing the binding between the two GObject.Object instances. The binding is released whenever the GObject.Binding reference count reaches zero.

  • Complete version of g_object_bind_property().

    Creates a binding between source_property on source and target_property on target, allowing you to set the transformation functions to be used by the binding.

    If flags contains GObject.BindingFlags.BIDIRECTIONAL then the binding will be mutual: if target_property on target changes then the source_property on source will be updated as well. The transform_from function is only used in case of bidirectional bindings, otherwise it will be ignored

    The binding will automatically be removed when either the source or the target instances are finalized. This will release the reference that is being held on the GObject.Binding instance; if you want to hold on to the GObject.Binding instance, you will need to hold a reference to it.

    To remove the binding, call g_binding_unbind().

    A GObject.Object can have multiple bindings.

    The same user_data parameter will be used for both transform_to and transform_from transformation functions; the notify function will be called once, when the binding is removed. If you need different data for each transformation function, please use g_object_bind_property_with_closures() instead.

    Parameters

    • source_property: string

      the property on source to bind

    • target: GObject.Object

      the target GObject.Object

    • target_property: string

      the property on target to bind

    • flags: GObject.BindingFlags

      flags to pass to GObject.Binding

    • Optionaltransform_to: BindingTransformFunc

      the transformation function from the source to the target, or null to use the default

    • Optionaltransform_from: BindingTransformFunc

      the transformation function from the target to the source, or null to use the default

    • Optionalnotify: DestroyNotify

      a function to call when disposing the binding, to free resources used by the transformation functions, or null if not required

    Returns GObject.Binding

    the GObject.Binding instance representing the binding between the two GObject.Object instances. The binding is released whenever the GObject.Binding reference count reaches zero.

  • Creates a binding between source_property on source and target_property on target, allowing you to set the transformation functions to be used by the binding.

    This function is the language bindings friendly version of g_object_bind_property_full(), using GClosures instead of function pointers.

    Parameters

    Returns GObject.Binding

    the GObject.Binding instance representing the binding between the two GObject.Object instances. The binding is released whenever the GObject.Binding reference count reaches zero.

  • Compares two NM.Setting objects for similarity, with comparison behavior modified by a set of flags. See the documentation for NM.SettingCompareFlags for a description of each flag's behavior. If the settings differ, the keys of each setting that differ from the other are added to results, mapped to one or more NM.SettingDiffResult values.

    Parameters

    • b: NM.Setting

      a second NM.Setting to compare with the first

    • flags: NM.SettingCompareFlags

      compare flags, e.g. NM.SettingCompareFlags.EXACT

    • invert_results: boolean

      this parameter is used internally by libnm and should be set to false. If true inverts the meaning of the NM.SettingDiffResult.

    • results: GLib.HashTable<string, number> | { [key: string]: any }

      if the settings differ, on return a hash table mapping the differing keys to one or more %NMSettingDiffResult values OR-ed together. If the settings do not differ, any hash table passed in is unmodified. If no hash table is passed in and the settings differ, a new one is created and returned.

    Returns [boolean, GLib.HashTable<string, number>]

    true if the settings contain the same values, false if they do not

  • Disconnects a handler from an instance so it will not be called during any future or currently ongoing emissions of the signal it has been connected to.

    Parameters

    • id: number

      Handler ID of the handler to be disconnected

    Returns void

  • This function is intended for GObject.Object implementations to re-enforce a [floating][floating-ref] object reference. Doing this is seldom required: all GInitiallyUnowneds are created with a floating reference which usually just needs to be sunken by calling g_object_ref_sink().

    Returns void

  • Increases the freeze count on object. If the freeze count is non-zero, the emission of "notify" signals on object is stopped. The signals are queued until the freeze count is decreased to zero. Duplicate notifications are squashed so that at most one GObject.Object::notify signal is emitted for each property modified while the object is frozen.

    This is necessary for accessors that modify multiple properties to prevent premature notification while the object is still being modified.

    Returns void

  • Gets a named field from the objects table of associations (see g_object_set_data()).

    Parameters

    • key: string

      name of the key for that association

    Returns any

    the data if found, or null if no such data exists.

  • Gets a property of an object.

    The value can be:

    • an empty GObject.Value initialized by G_VALUE_INIT, which will be automatically initialized with the expected type of the property (since GLib 2.60)
    • a GObject.Value initialized with the expected type of the property
    • a GObject.Value initialized with a type to which the expected type of the property can be transformed

    In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling GObject.Value.unset.

    Note that GObject.Object.get_property is really intended for language bindings, GObject.Object.get is much more convenient for C programming.

    Parameters

    • property_name: string

      The name of the property to get

    • value: any

      Return location for the property value. Can be an empty GObject.Value initialized by G_VALUE_INIT (auto-initialized with expected type since GLib 2.60), a GObject.Value initialized with the expected property type, or a GObject.Value initialized with a transformable type

    Returns any

  • Gets n_properties properties for an object. Obtained properties will be set to values. All properties must be valid. Warnings will be emitted and undefined behaviour may result if invalid properties are passed in.

    Parameters

    • names: string[]

      the names of each property to get

    • values: any[]

      the values of each property to get

    Returns void

  • Emits a "notify" signal for the property property_name on object.

    When possible, eg. when signaling a property change from within the class that registered the property, you should use g_object_notify_by_pspec() instead.

    Note that emission of the notify signal may be blocked with g_object_freeze_notify(). In this case, the signal emissions are queued and will be emitted (in reverse order) when g_object_thaw_notify() is called.

    Parameters

    • property_name: string

      the name of a property installed on the class of object.

    Returns void

  • Emits a "notify" signal for the property specified by pspec on object.

    This function omits the property name lookup, hence it is faster than g_object_notify().

    One way to avoid using g_object_notify() from within the class that registered the properties, and using g_object_notify_by_pspec() instead, is to store the GParamSpec used with g_object_class_install_property() inside a static array, e.g.:

      typedef enum
    {
    PROP_FOO = 1,
    PROP_LAST
    } MyObjectProperty;

    static GParamSpec *properties[PROP_LAST];

    static void
    my_object_class_init (MyObjectClass *klass)
    {
    properties[PROP_FOO] = g_param_spec_int ("foo", NULL, NULL,
    0, 100,
    50,
    G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
    g_object_class_install_property (gobject_class,
    PROP_FOO,
    properties[PROP_FOO]);
    }

    and then notify a change on the "foo" property with:

      g_object_notify_by_pspec (self, properties[PROP_FOO]);
    

    Parameters

    Returns void

  • Gives the name of all set options.

    Returns string[]

    A null terminated array of key names. If no names are present, this returns null. The returned array and the names are owned by %NMSetting and might be invalidated by the next operation.

  • Parameters

    • opt_name: string

      the option to get

    Returns [boolean, boolean]

    true if opt_name is set to a boolean variant.

  • Parameters

    • opt_name: string

      the option to get

    Returns [boolean, number]

    true if opt_name is set to a uint32 variant.

  • If variant is null, this clears the option if it is set. Otherwise, variant is set as the option. If variant is a floating reference, it will be consumed.

    Note that not all setting types support options. It is a bug setting a variant to a setting that doesn't support it. Currently, only NM.SettingEthtool supports it.

    Parameters

    • opt_name: string

      the option name to set

    • Optionalvariant: GLib.Variant<any>

      the variant to set.

    Returns void

  • Like nm_setting_option_set() to set a boolean GVariant.

    Parameters

    • opt_name: string
    • value: boolean

      the value to set.

    Returns void

  • Like nm_setting_option_set() to set a uint32 GVariant.

    Parameters

    • opt_name: string
    • value: number

      the value to set.

    Returns void

  • Increases the reference count of object.

    Since GLib 2.56, if GLIB_VERSION_MAX_ALLOWED is 2.56 or greater, the type of object will be propagated to the return type (using the GCC typeof() extension), so any casting the caller needs to do on the return type must be explicit.

    Returns GObject.Object

    the same object

  • Increase the reference count of object, and possibly remove the [floating][floating-ref] reference, if object has a floating reference.

    In other words, if the object is floating, then this call "assumes ownership" of the floating reference, converting it to a normal reference by clearing the floating flag while leaving the reference count unchanged. If the object is not floating, then this call adds a new normal reference increasing the reference count by one.

    Since GLib 2.56, the type of object will be propagated to the return type under the same conditions as for g_object_ref().

    Returns GObject.Object

    object

  • Releases all references to other objects. This can be used to break reference cycles.

    This function should only be called from object system implementations.

    Returns void

  • Sets multiple properties of an object at once. The properties argument should be a dictionary mapping property names to values.

    Parameters

    • properties: { [key: string]: any }

      Object containing the properties to set

    Returns void

  • Each object carries around a table of associations from strings to pointers. This function lets you set an association.

    If the object already had an association with that name, the old association will be destroyed.

    Internally, the key is converted to a GLib.Quark using g_quark_from_string(). This means a copy of key is kept permanently (even after object has been finalized) — so it is recommended to only use a small, bounded set of values for key in your program, to avoid the GLib.Quark storage growing unbounded.

    Parameters

    • key: string

      name of the key

    • Optionaldata: any

      data to associate with that key

    Returns void

  • Sets a property on an object.

    Parameters

    • property_name: string

      The name of the property to set

    • value: any

      The value to set the property to

    Returns void

  • Remove a specified datum from the object's data associations, without invoking the association's destroy handler.

    Parameters

    • key: string

      name of the key

    Returns any

    the data if found, or null if no such data exists.

  • This function gets back user data pointers stored via g_object_set_qdata() and removes the data from object without invoking its destroy() function (if any was set). Usually, calling this function is only required to update user data pointers with a destroy notifier, for example:

    void
    object_add_to_user_list (GObject *object,
    const gchar *new_string)
    {
    // the quark, naming the object data
    GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
    // retrieve the old string list
    GList *list = g_object_steal_qdata (object, quark_string_list);

    // prepend new string
    list = g_list_prepend (list, g_strdup (new_string));
    // this changed 'list', so we need to set it again
    g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
    }
    static void
    free_string_list (gpointer data)
    {
    GList *node, *list = data;

    for (node = list; node; node = node->next)
    g_free (node->data);
    g_list_free (list);
    }

    Using g_object_get_qdata() in the above example, instead of g_object_steal_qdata() would have left the destroy function set, and thus the partial string list would have been freed upon g_object_set_qdata_full().

    Parameters

    • quark: number

      A GLib.Quark, naming the user data pointer

    Returns any

    The user data pointer set, or null

  • Stops a signal's emission by the given signal name. This will prevent the default handler and any subsequent signal handlers from being invoked.

    Parameters

    • detailedName: string

      Name of the signal to stop emission of

    Returns void

  • Reverts the effect of a previous call to g_object_freeze_notify(). The freeze count is decreased on object and when it reaches zero, queued "notify" signals are emitted.

    Duplicate notifications for each property are squashed so that at most one GObject.Object::notify signal is emitted for each property, in the reverse order in which they have been queued.

    It is an error to call this function when the freeze count is zero.

    Returns void

  • Convert the setting (including secrets!) into a string. For debugging purposes ONLY, should NOT be used for serialization of the setting, or machine-parsed in any way. The output format is not guaranteed to be stable and may change at any time.

    Returns string

    an allocated string containing a textual representation of the setting's properties and values, which the caller should free with g_free()

  • Decreases the reference count of object. When its reference count drops to 0, the object is finalized (i.e. its memory is freed).

    If the pointer to the GObject.Object may be reused in future (for example, if it is an instance variable of another object), it is recommended to clear the pointer to null rather than retain a dangling pointer to a potentially invalid GObject.Object instance. Use g_clear_object() for this.

    Returns void

  • Validates the setting. Each setting's properties have allowed values, and some are dependent on other values (hence the need for connection). The returned GLib.Error contains information about which property of the setting failed validation, and in what way that property failed validation.

    Parameters

    • Optionalconnection: NM.Connection

      the NM.Connection that setting came from, or null if setting is being verified in isolation.

    Returns boolean

    true if the setting is valid, false if it is not

  • Verifies the secrets in the setting. The returned GLib.Error contains information about which secret of the setting failed validation, and in what way that secret failed validation. The secret validation is done separately from main setting validation, because in some cases connection failure is not desired just for the secrets.

    Parameters

    • Optionalconnection: NM.Connection

      the NM.Connection that setting came from, or null if setting is being verified in isolation.

    Returns boolean

    true if the setting secrets are valid, false if they are not

  • the constructed function is called by g_object_new() as the final step of the object creation process. At the point of the call, all construction properties have been set on the object. The purpose of this call is to allow for object initialisation steps that can only be performed after construction properties have been set. constructed implementors should chain up to the constructed call of their parent class to allow it to complete its initialisation.

    Returns void

  • the dispose function is supposed to drop all references to other objects, but keep the instance otherwise intact, so that client method invocations still work. It may be run multiple times (due to reference loops). Before returning, dispose should chain up to the dispose method of the parent class.

    Returns void

  • Emits a "notify" signal for the property property_name on object.

    When possible, eg. when signaling a property change from within the class that registered the property, you should use g_object_notify_by_pspec() instead.

    Note that emission of the notify signal may be blocked with g_object_freeze_notify(). In this case, the signal emissions are queued and will be emitted (in reverse order) when g_object_thaw_notify() is called.

    Parameters

    Returns void

  • the generic setter for all properties of this type. Should be overridden for every type with properties. If implementations of set_property don't emit property change notification explicitly, this will be done implicitly by the type system. However, if the notify signal is emitted explicitly, the type system will not emit it a second time.

    Parameters

    Returns void

  • This function essentially limits the life time of the closure to the life time of the object. That is, when the object is finalized, the closure is invalidated by calling g_closure_invalidate() on it, in order to prevent invocations of the closure with a finalized (nonexisting) object. Also, g_object_ref() and g_object_unref() are added as marshal guards to the closure, to ensure that an extra reference count is held on object during invocation of the closure. Usually, this function will be called on closures that use this object as closure data.

    Parameters

    Returns void

  • Get the type of the enum that defines the values that the property accepts. It is only useful for properties configured to accept values from certain enum type, otherwise it will return G_TYPE_INVALID. Note that flags (children of G_TYPE_FLAGS) are also considered enums.

    Note that the GObject property might be implemented as an integer, actually, and not as enum. Find out what underlying type is used, checking the GObject.ParamSpec, before setting the GObject property.

    Parameters

    • setting_type: GType

      the GType of the NMSetting instance

    • property_name: string

      the name of the property

    Returns GType

  • Add a property to an interface; this is only useful for interfaces that are added to GObject-derived types. Adding a property to an interface forces all objects classes with that interface to have a compatible property. The compatible property could be a newly created GObject.ParamSpec, but normally g_object_class_override_property() will be used so that the object class only needs to provide an implementation and inherits the property description, default value, bounds, and so forth from the interface property.

    This function is meant to be called from the interface's default vtable initialization function (the class_init member of GObject.TypeInfo.) It must not be called after after class_init has been called for any object types implementing this interface.

    If pspec is a floating reference, it will be consumed.

    Parameters

    Returns void

  • Parameters

    • property_id: number

      the new property ID

    • name: string

      the name of a property registered in a parent class or in an interface of this class.

    Returns void

Interfaces

ConstructorProps
SignalSignatures