mirror of
https://github.com/nitnelave/lldap.git
synced 2023-04-12 14:25:13 +00:00
ldap: return user's avatar
This commit is contained in:
parent
697a64991d
commit
b130965264
@ -170,6 +170,13 @@ fn get_user_attribute(
|
|||||||
"mail" => vec![user.email.clone().into_bytes()],
|
"mail" => vec![user.email.clone().into_bytes()],
|
||||||
"givenname" => vec![user.first_name.clone().into_bytes()],
|
"givenname" => vec![user.first_name.clone().into_bytes()],
|
||||||
"sn" => vec![user.last_name.clone().into_bytes()],
|
"sn" => vec![user.last_name.clone().into_bytes()],
|
||||||
|
"jpegphoto" => {
|
||||||
|
let bytes = user.avatar.clone().into_bytes();
|
||||||
|
if bytes.is_empty() {
|
||||||
|
return Ok(None);
|
||||||
|
}
|
||||||
|
vec![bytes]
|
||||||
|
}
|
||||||
"memberof" => groups
|
"memberof" => groups
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.flatten()
|
.flatten()
|
||||||
@ -238,6 +245,7 @@ const ALL_USER_ATTRIBUTE_KEYS: &[&str] = &[
|
|||||||
"givenname",
|
"givenname",
|
||||||
"sn",
|
"sn",
|
||||||
"cn",
|
"cn",
|
||||||
|
"jpegPhoto",
|
||||||
"createtimestamp",
|
"createtimestamp",
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -1481,6 +1489,7 @@ mod tests {
|
|||||||
"cn",
|
"cn",
|
||||||
"createTimestamp",
|
"createTimestamp",
|
||||||
"entryUuid",
|
"entryUuid",
|
||||||
|
"jpegPhoto",
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
@ -1568,6 +1577,10 @@ mod tests {
|
|||||||
atype: "entryUuid".to_string(),
|
atype: "entryUuid".to_string(),
|
||||||
vals: vec![b"04ac75e0-2900-3e21-926c-2f732c26b3fc".to_vec()]
|
vals: vec![b"04ac75e0-2900-3e21-926c-2f732c26b3fc".to_vec()]
|
||||||
},
|
},
|
||||||
|
LdapPartialAttribute {
|
||||||
|
atype: "jpegPhoto".to_string(),
|
||||||
|
vals: vec![JpegPhoto::for_tests().into_bytes()]
|
||||||
|
},
|
||||||
],
|
],
|
||||||
}),
|
}),
|
||||||
make_search_success(),
|
make_search_success(),
|
||||||
@ -2067,6 +2080,7 @@ mod tests {
|
|||||||
display_name: "Bôb Böbberson".to_string(),
|
display_name: "Bôb Böbberson".to_string(),
|
||||||
first_name: "Bôb".to_string(),
|
first_name: "Bôb".to_string(),
|
||||||
last_name: "Böbberson".to_string(),
|
last_name: "Böbberson".to_string(),
|
||||||
|
avatar: JpegPhoto::for_tests(),
|
||||||
..Default::default()
|
..Default::default()
|
||||||
},
|
},
|
||||||
groups: None,
|
groups: None,
|
||||||
@ -2125,6 +2139,10 @@ mod tests {
|
|||||||
atype: "cn".to_string(),
|
atype: "cn".to_string(),
|
||||||
vals: vec!["Bôb Böbberson".to_string().into_bytes()],
|
vals: vec!["Bôb Böbberson".to_string().into_bytes()],
|
||||||
},
|
},
|
||||||
|
LdapPartialAttribute {
|
||||||
|
atype: "jpegPhoto".to_string(),
|
||||||
|
vals: vec![JpegPhoto::for_tests().into_bytes()],
|
||||||
|
},
|
||||||
LdapPartialAttribute {
|
LdapPartialAttribute {
|
||||||
atype: "createtimestamp".to_string(),
|
atype: "createtimestamp".to_string(),
|
||||||
vals: vec![chrono::Utc.timestamp(0, 0).to_rfc3339().into_bytes()],
|
vals: vec![chrono::Utc.timestamp(0, 0).to_rfc3339().into_bytes()],
|
||||||
|
Loading…
Reference in New Issue
Block a user