
ldap_first_entry() 함수는 LDAP 검색 결과에서 첫 번째 항목을 가져오기 위한 함수입니다. 이 함수는 항상 첫 번째 항목을 반환하지는 않습니다. 첫 번째 항목이 없을 경우, 이 함수는 NULL을 반환합니다.
ldap_first_entry() 함수를 사용하는 방법은 다음과 같습니다.
1. LDAP 연결을 설정하고 검색을 수행합니다.
2. ldap_first_entry() 함수를 호출하여 첫 번째 항목을 가져옵니다.
3. 가져온 항목을 처리합니다.
4. 다음 항목을 가져오기 위해 ldap_next_entry() 함수를 호출합니다.
5. 위의 단계를 반복하여 모든 항목을 처리합니다.
예를 들어, 다음과 같은 코드를 사용할 수 있습니다.
#hostingforum.kr
c
#include
int main() {
LDAP *ld;
LDAPMessage *result;
LDAPMessage *entry;
// LDAP 연결 설정
ld = ldap_init("localhost", 389);
if (ld == NULL) {
printf("LDAP 연결 실패n");
return 1;
}
// 검색 수행
LDAPMessage *res = ldap_search_ext_s(ld, "dc=example,dc=com", LDAP_SCOPE_SUBTREE, "(objectClass=*)", NULL, 0, NULL, NULL, NULL, 0, NULL, NULL);
if (res == NULL) {
printf("검색 실패n");
ldap_unbind_ext_s(ld, NULL, NULL);
return 1;
}
// 첫 번째 항목 가져오기
entry = ldap_first_entry(ld, res);
if (entry == NULL) {
printf("첫 번째 항목 없음n");
ldap_msgfree(res);
ldap_unbind_ext_s(ld, NULL, NULL);
return 1;
}
// 항목 처리
printf("첫 번째 항목:n");
printf("%sn", ldap_get_dn(ld, entry));
// 다음 항목 가져오기
while ((entry = ldap_next_entry(ld, entry)) != NULL) {
printf("다음 항목:n");
printf("%sn", ldap_get_dn(ld, entry));
}
ldap_msgfree(res);
ldap_unbind_ext_s(ld, NULL, NULL);
return 0;
}
이 코드는 LDAP 연결을 설정하고 검색을 수행한 후, 첫 번째 항목을 가져와 처리합니다. 다음 항목을 가져오기 위해 ldap_next_entry() 함수를 호출하여 모든 항목을 처리합니다.
2025-03-20 03:30