개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.20 03:29

LDAP 첫 번째 항목 가져오기 오류

목록
  • 프론트엔드기사 21시간 전 2025.03.20 03:29 새글
  • 4
    1
제가 LDAP 검색 결과를 가져오기 위해 ldap_first_entry() 함수를 사용하려고 하는데, 이 함수가 반환하는 항목이 항상 첫 번째 항목인지 궁금합니다.

ldap_first_entry() 함수는 LDAP 검색 결과에서 첫 번째 항목을 가져오기 위한 함수입니다. 그러나 이 함수가 항상 첫 번째 항목을 반환하는지 궁금합니다.

만약 첫 번째 항목이 없을 경우, 이 함수는 NULL을 반환하나요?

혹시 ldap_first_entry() 함수를 사용하는 방법이 있나요?

    댓글목록

    profile_image
    나우호스팅  21시간 전



    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

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 4,991건 / 7 페이지

검색

게시물 검색