
ldap_next_reference() 함수는 LDAP 검색 결과에 대한 다음 참조 값을 반환합니다. 이 함수가 NULL 값을 반환하는 경우는 두 가지입니다.
첫 번째 경우는 LDAP 검색 결과가 더 이상 참조 값을 반환하지 않는 경우입니다. 예를 들어, LDAP 검색 결과가 하나의 참조 값을 반환하고, 그 참조 값에 대한 검색 결과가 없을 때입니다. 이 경우 ldap_next_reference() 함수는 NULL 값을 반환합니다.
두 번째 경우는 LDAP 검색 결과가 참조 값을 반환하지 않는 경우입니다. 예를 들어, LDAP 검색 결과가 하나의 참조 값을 반환하고, 그 참조 값에 대한 검색 결과가 참조 값을 반환하지 않는 경우입니다. 이 경우 ldap_next_reference() 함수는 NULL 값을 반환합니다.
ldap_next_reference() 함수를 사용하여 결과를 처리할 때, 예를 들어 LDAP 검색 결과가 여러 개의 참조 값을 포함하는 경우, ldap_next_reference() 함수를 반복적으로 호출하여 각 참조 값을 처리할 수 있습니다. 예를 들어, 다음 코드를 참고하세요.
#hostingforum.kr
c
#include
int main() {
LDAP *ld;
LDAPMessage *result;
LDAPMessage *ref;
// LDAP 연결 설정
ld = ldap_init("localhost", 389);
if (ld == NULL) {
printf("LDAP 연결 실패n");
return -1;
}
// LDAP 검색 수행
result = ldap_search_ext_s(ld, "dc=example,dc=com", LDAP_SCOPE_SUBTREE, "(objectClass=*)", NULL, 0, NULL, NULL, NULL, 0, NULL, NULL);
if (result == NULL) {
printf("LDAP 검색 실패n");
ldap_unbind_ext_s(ld, NULL, NULL);
return -1;
}
// LDAP 검색 결과 참조 값 처리
while ((ref = ldap_next_reference(ld, result)) != NULL) {
// 참조 값에 대한 검색 결과 처리
printf("참조 값: %sn", ldap_get_dn(ld, ref));
ldap_msgfree(ref);
}
// LDAP 검색 결과 처리
ldap_msgfree(result);
// LDAP 연결 종료
ldap_unbind_ext_s(ld, NULL, NULL);
return 0;
}
이 코드는 LDAP 검색 결과에 대한 참조 값을 처리하는 예제입니다. ldap_next_reference() 함수를 반복적으로 호출하여 각 참조 값을 처리하고, 참조 값에 대한 검색 결과를 처리합니다.
2025-03-22 01:35