Trait gstreamer_rtsp_server::prelude::RTSPAuthExt[][src]

pub trait RTSPAuthExt: 'static {
Show methods fn add_basic(&self, basic: &str, token: &RTSPToken);
fn add_digest(&self, user: &str, pass: &str, token: &RTSPToken);
fn default_token(&self) -> Option<RTSPToken>;
fn realm(&self) -> Option<GString>;
fn supported_methods(&self) -> RTSPAuthMethod;
fn tls_authentication_mode(&self) -> TlsAuthenticationMode;
fn tls_certificate(&self) -> Option<TlsCertificate>;
fn tls_database(&self) -> Option<TlsDatabase>;
fn parse_htdigest<P: AsRef<Path>>(&self, path: P, token: &RTSPToken) -> bool;
fn remove_basic(&self, basic: &str);
fn remove_digest(&self, user: &str);
fn set_realm(&self, realm: &str);
fn set_supported_methods(&self, methods: RTSPAuthMethod);
fn set_tls_authentication_mode(&self, mode: TlsAuthenticationMode);
fn set_tls_certificate<P: IsA<TlsCertificate>>(&self, cert: Option<&P>);
fn set_tls_database<P: IsA<TlsDatabase>>(&self, database: Option<&P>);
fn connect_accept_certificate<F: Fn(&Self, &TlsConnection, &TlsCertificate, TlsCertificateFlags) -> bool + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
}
Expand description

Trait containing all RTSPAuth methods.

Implementors

RTSPAuth

Required methods

Add a basic token for the default authentication algorithm that enables the client with privileges listed in token.

basic

the basic token

token

authorisation token

This is supported on crate feature v1_12 only.

Add a digest user and pass for the default authentication algorithm that enables the client with privileges listed in token.

user

the digest user name

pass

the digest password

token

authorisation token

Get the default token for self. This token will be used for unauthenticated users.

Returns

the RTSPToken of self. gst_rtsp_token_unref() after usage.

This is supported on crate feature v1_16 only.

Returns

the realm of self

This is supported on crate feature v1_12 only.

Gets the supported authentication methods of self.

Returns

The supported authentication methods

Get the gio::TlsCertificate used for negotiating TLS self.

Returns

the gio::TlsCertificate of self. g_object_unref() after usage.

Get the gio::TlsDatabase used for verifying client certificate.

Returns

the gio::TlsDatabase of self. g_object_unref() after usage.

This is supported on crate feature v1_16 only.

Parse the contents of the file at path and enable the privileges listed in token for the users it describes.

The format of the file is expected to match the format described by https://en.wikipedia.org/wiki/Digest_access_authentication`The_.htdigest_file`, as output by the htdigest command.

path

Path to the htdigest file

token

authorisation token

Returns

true if the file was successfully parsed, false otherwise.

Removes basic authentication token.

basic

the basic token

This is supported on crate feature v1_12 only.

Removes a digest user.

user

the digest user name

This is supported on crate feature v1_16 only.

Set the realm of self

This is supported on crate feature v1_12 only.

Sets the supported authentication methods for self.

methods

supported methods

The gio::TlsAuthenticationMode to set on the underlying GTlsServerConnection. When set to another value than gio::TlsAuthenticationMode::None, signal::RTSPAuth::accept-certificate signal will be emitted and must be handled.

mode

a gio::TlsAuthenticationMode

Set the TLS certificate for the auth. Client connections will only be accepted when TLS is negotiated.

cert

a gio::TlsCertificate

Sets the certificate database that is used to verify peer certificates. If set to None (the default), then peer certificate validation will always set the gio::TlsCertificateFlags::UNKNOWN_CA error.

database

a gio::TlsDatabase

Emitted during the TLS handshake after the client certificate has been received. See also set_tls_authentication_mode().

connection

a gio::TlsConnection

peer_cert

the peer’s gio::TlsCertificate

errors

the problems with peer_cert.

Returns

true to accept peer_cert (which will also immediately end the signal emission). false to allow the signal emission to continue, which will cause the handshake to fail if no one else overrides it.

Implementors

This is supported on crate feature v1_12 only.
This is supported on crate feature v1_16 only.
This is supported on crate feature v1_12 only.
This is supported on crate feature v1_16 only.
This is supported on crate feature v1_12 only.
This is supported on crate feature v1_16 only.
This is supported on crate feature v1_12 only.