Struct ldap3::LdapUrlParams
source · pub struct LdapUrlParams<'a> {
pub base: Cow<'a, str>,
pub attrs: Vec<&'a str>,
pub scope: Scope,
pub filter: Cow<'a, str>,
pub extensions: HashSet<LdapUrlExt<'a>>,
}
Expand description
Parameters of an LDAP URL.
The LDAP URL specification describes a number of optional URL parameters, contained in the query part, which mostly provide Search operation settings. Additionally, the URL can have a list of extensions, describing further options.
When populating the extensions
set, extension value is ignored in hashing and
comparisons, meaning that only a single extension instance can be recognized.
Searching the set for a value-bearing variant should be done with an empty value:
let url = Url::parse("ldapi://%2fvar%2frun%2fldapi/????1.3.6.1.4.1.10094.1.5.2=EXTERNAL")?;
let params = get_url_params(&url)?;
let mech = match params.extensions.get(&LdapUrlExt::SaslMech("".into())) {
Some(&LdapUrlExt::SaslMech(ref val)) => val.as_ref(),
_ => "",
};
assert_eq!(mech, "EXTERNAL");
Fields§
§base: Cow<'a, str>
Search base, percent-decoded.
attrs: Vec<&'a str>
Attribute list, returned as *
(all attributes) if missing.
scope: Scope
Search scope, returned as Scope::Subtree
if missing.
filter: Cow<'a, str>
Filter string, percent-decoded.
extensions: HashSet<LdapUrlExt<'a>>
Extensions, whose values are percent-decoded.
Trait Implementations§
source§impl<'a> Clone for LdapUrlParams<'a>
impl<'a> Clone for LdapUrlParams<'a>
source§fn clone(&self) -> LdapUrlParams<'a>
fn clone(&self) -> LdapUrlParams<'a>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl<'a> RefUnwindSafe for LdapUrlParams<'a>
impl<'a> Send for LdapUrlParams<'a>
impl<'a> Sync for LdapUrlParams<'a>
impl<'a> Unpin for LdapUrlParams<'a>
impl<'a> UnwindSafe for LdapUrlParams<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more