개발자 Q&A

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

2025.08.03 13:29

radius_auth_open 문제점에 대한 질문

목록
  • 백엔드도령 5시간 전 2025.08.03 13:29 새글
  • 1
    1
제가 radius_auth_open 함수를 사용하여 인증을 진행하고 있으나, radius_auth_open 함수가 호출되기 전에 radius 서버와의 연결이 끊어지는 문제가 발생하고 있습니다.

radius_auth_open 함수가 호출되기 전에 radius 서버와의 연결을 유지하는 방법을 알려주세요.

또한 radius_auth_open 함수의 return 값을 확인하여 문제가 발생하는 이유를 파악하고 싶습니다. radius_auth_open 함수의 return 값이 성공적으로 연결되었을 때의 값과 실패했을 때의 값을 알려주세요.

radius_auth_open 함수의 사용 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  5시간 전



    radius_auth_open 함수는 radius 서버와의 연결을 유지하지 않기 때문에 연결이 끊어지는 문제가 발생합니다.

    radius_auth_open 함수의 return 값을 확인하여 문제를 파악하는 방법은 다음과 같습니다.

    - 성공적으로 연결되었을 때의 return 값은 0입니다.
    - 실패했을 때의 return 값은 -1입니다.

    radius_auth_open 함수의 사용 방법은 다음과 같습니다.

    1. radius_auth_open 함수를 호출하여 radius 서버와의 연결을 맺습니다.
    2. radius_auth_open 함수의 return 값을 확인하여 연결이 성공적으로 되었는지 여부를 확인합니다.
    3. radius_auth_open 함수가 성공적으로 호출되면, radius_auth_user 함수를 호출하여 인증을 진행합니다.
    4. radius_auth_user 함수의 return 값을 확인하여 인증이 성공적으로 되었는지 여부를 확인합니다.

    radius_auth_open 함수를 호출하기 전에 radius 서버와의 연결을 유지하는 방법은 다음과 같습니다.

    1. radius_auth_open 함수를 호출하기 전에 radius 서버와의 연결을 맺기 위한 socket을 생성합니다.
    2. socket을 사용하여 radius 서버와의 연결을 맺습니다.
    3. radius_auth_open 함수를 호출하여 radius 서버와의 연결을 맺습니다.
    4. radius_auth_open 함수의 return 값을 확인하여 연결이 성공적으로 되었는지 여부를 확인합니다.

    radius_auth_open 함수를 호출하기 전에 radius 서버와의 연결을 유지하는 예제는 다음과 같습니다.

    #hostingforum.kr
    c
    
    #include 
    
    #include 
    
    #include 
    
    #include 
    
    #include 
    
    #include 
    
    
    
    int main() {
    
        int sock = socket(AF_INET, SOCK_DGRAM, 0);
    
        if (sock < 0) {
    
            perror("socket");
    
            exit(1);
    
        }
    
    
    
        struct sockaddr_in server_addr;
    
        server_addr.sin_family = AF_INET;
    
        server_addr.sin_port = htons(1812);
    
        inet_pton(AF_INET, "192.168.1.100", &server_addr.sin_addr);
    
    
    
        if (connect(sock, (struct sockaddr *)&server_addr, sizeof(server_addr)) < 0) {
    
            perror("connect");
    
            exit(1);
    
        }
    
    
    
        int ret = radius_auth_open(sock);
    
        if (ret < 0) {
    
            perror("radius_auth_open");
    
            exit(1);
    
        }
    
    
    
        // radius_auth_user 함수를 호출하여 인증을 진행합니다.
    
        ret = radius_auth_user(sock, "username", "password");
    
        if (ret < 0) {
    
            perror("radius_auth_user");
    
            exit(1);
    
        }
    
    
    
        return 0;
    
    }
    
    


    이 예제는 radius_auth_open 함수를 호출하기 전에 radius 서버와의 연결을 맺기 위한 socket을 생성하고, socket을 사용하여 radius 서버와의 연결을 맺습니다. 그 다음, radius_auth_open 함수를 호출하여 radius 서버와의 연결을 맺습니다. radius_auth_open 함수의 return 값을 확인하여 연결이 성공적으로 되었는지 여부를 확인합니다.

    2025-08-03 13:30

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

검색

게시물 검색