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
							
								
									f3f27bedbf
								
							
						
					
					
						commit
						d7f1907162
					
				@ -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