
curl_strerror 함수는 CURL 에러 코드를 문자열로 변환하는 함수입니다. 이 함수는 CURLcode 타입의 에러 코드를 인자로 받고, 해당 에러 코드에 대한 문자열 메시지를 반환합니다.
예를 들어, 다음 코드는 CURLcode 타입의 에러 코드를 curl_strerror 함수를 사용하여 문자열로 변환하는 방법을 보여줍니다.
#hostingforum.kr
c
#include
int main() {
CURLcode err;
char *msg;
err = curl_easy_setopt(NULL, CURLOPT_URL, "http://example.com");
if (err == CURLE_OK) {
err = curl_easy_perform(NULL);
}
if (err != CURLE_OK) {
msg = curl_strerror(err);
printf("에러 코드 : %d, 에러 메시지 : %sn", err, msg);
free(msg);
}
return 0;
}
이 예제에서, curl_strerror 함수는 curl_easy_perform 함수가 반환한 에러 코드를 문자열로 변환하여 msg 변수에 저장합니다. 이 메시지는 printf 함수를 사용하여 화면에 출력됩니다.
curl_strerror 함수가 반환하는 에러 코드는 CURL 라이브러리가 제공하는 에러 코드 목록을 참조하여 해석할 수 있습니다. CURL 라이브러리에서 제공하는 에러 코드 목록은 다음과 같습니다.
- CURLE_OK (0) : 성공
- CURLE_UNSUPPORTED_PROTOCOL (1) : 지원하지 않는 프로토콜
- CURLE_FAILED_INIT (2) : 초기화 실패
- CURLE_URL_MALFORMAT (3) : URL이 잘못된 형식
- CURLE_NOT_BUILT_IN (4) : 지원하지 않는 기능
- CURLE_COULDNT_RESOLVE_PROXY (5) : 프록시 주소가 잘못된 경우
- CURLE_COULDNT_RESOLVE_HOST (6) : 호스트 주소가 잘못된 경우
- CURLE_COULDNT_CONNECT (7) : 연결 실패
- CURLE_FTP_WEIRD_SERVER_REPLY (8) : FTP 서버가 이상한 응답을 보냈다
- CURLE_REMOTE_FILE_NOT_FOUND (61) : 원격 파일이 존재하지 않음
- CURLE_FTP_ACCESS_DENIED (65) : FTP 접근이 거부됨
- CURLE_FTP_LOGIN_DENIED (66) : FTP 로그인 실패
- CURLE_FILE_COULDNT_READ_FILE (68) : 파일 읽기 실패
- CURLE_LDAP_CANNOT_BIND (71) : LDAP 연결 실패
- CURLE_LDAP_SEARCH_FAILED (72) : LDAP 검색 실패
- CURLE_FUNCTION_NOT_FOUND (130) : 함수가 존재하지 않음
- CURLE_ABORTED_BY_CALLBACK (71) : 콜백 함수가 중단됨
- CURLE_BAD_FUNCTION_ARGUMENT (72) : 함수 인자가 잘못된 경우
- CURLE_INTERFACE_FAILED (73) : 인터페이스 실패
- CURLE_TOO_MANY_REDIRECTS (73) : 너무 많은 리다이렉트
- CURLE_UNKNOWN_OPTION (83) : 지원하지 않는 옵션
- CURLE_TELNET_OPTION_SYNTAX (84) : TELNET 옵션 형식이 잘못된 경우
- CURLE_PEER_FAILED_VERIFICATION (51) : 인증 실패
- CURLE_GOT_NOTHING (60) : 데이터가 전송되지 않음
- CURLE_SSL_CONNECT_ERROR (92) : SSL 연결 실패
- CURLE_BAD_CONTENT_ENCODING (92) : 콘텐츠 인코딩이 잘못된 경우
- CURLE_LDAP_INVALID_URL (93) : LDAP URL이 잘못된 경우
- CURLE_FILESIZE_EXCEEDED (61) : 파일 크기 초과
- CURLE_USE_SSL_FAILED (94) : SSL 사용 실패
- CURLE_SEND_ERROR (55) : 데이터 전송 실패
- CURLE_RECV_ERROR (56) : 데이터 수신 실패
- CURLE_COULDNT_LOAD_SSH_PRIVATE_KEY (59) : SSH 개인 키 로드 실패
- CURLE_BAD_DOWNLOAD_RESUME (58) : 다운로드 재개 실패
- CURLE_FILE_COULDNT_READ_FILE (68) : 파일 읽기 실패
- CURLE_LDAP_SEARCH_FAILED (72) : LDAP 검색 실패
- CURLE_FUNCTION_NOT_FOUND (130) : 함수가 존재하지 않음
- CURLE_ABORTED_BY_CALLBACK (71) : 콜백 함수가 중단됨
- CURLE_BAD_FUNCTION_ARGUMENT (72) : 함수 인자가 잘못된 경우
- CURLE_INTERFACE_FAILED (73) : 인터페이스 실패
- CURLE_TOO_MANY_REDIRECTS (73) : 너무 많은 리다이렉트
- CURLE_UNKNOWN_OPTION (83) : 지원하지 않는 옵션
- CURLE_TELNET_OPTION_SYNTAX (84) : TELNET 옵션 형식이 잘못된 경우
- CURLE_PEER_FAILED_VERIFICATION (51) : 인증 실패
- CURLE_GOT_NOTHING (60) : 데이터가 전송되지 않음
- CURLE_SSL_CONNECT_ERROR (92) : SSL 연결 실패
- CURLE_BAD_CONTENT_ENCODING (92) : 콘텐츠 인코딩이 잘못된 경우
- CURLE_LDAP_INVALID_URL (93) : LDAP URL이 잘못된 경우
- CURLE_FILESIZE_EXCEEDED (61) : 파일 크기 초과
- CURLE_USE_SSL_FAILED (94) : SSL 사용 실패
- CURLE_SEND_ERROR (55) : 데이터 전송 실패
- CURLE_RECV_ERROR (56) : 데이터 수신 실패
- CURLE_COULDNT_LOAD_SSH_PRIVATE_KEY (59) : SSH 개인 키 로드 실패
- CURLE_BAD_DOWNLOAD_RESUME (58) : 다운로드 재개 실패
- CURLE_FILE_COULDNT_READ_FILE (68) : 파일 읽기 실패
- CURLE_LDAP_SEARCH_FAILED (72) : LDAP 검색 실패
- CURLE_FUNCTION_NOT_FOUND (130) : 함수가 존재하지 않음
- CURLE_ABORTED_BY_CALLBACK (71) : 콜백 함수가 중단됨
- CURLE_BAD_FUNCTION_ARGUMENT (72) : 함수 인자가 잘못된 경우
- CURLE_INTERFACE_FAILED (73) : 인터페이스 실패
- CURLE_TOO_MANY_REDIRECTS (73) : 너무 많은 리다이렉트
- CURLE_UNKNOWN_OPTION (83) : 지원하지 않는 옵션
- CURLE_TELNET_OPTION_SYNTAX (84) : TELNET 옵션 형식이 잘못된 경우
- CURLE_PEER_FAILED_VERIFICATION (51) : 인증 실패
- CURLE_GOT_NOTHING (60) : 데이터가 전송되지 않음
- CURLE_SSL_CONNECT_ERROR (92) : SSL 연결 실패
- CURLE_BAD_CONTENT_ENCODING (92) : 콘텐츠 인코딩이 잘못된 경우
- CURLE_LDAP_INVALID_URL (93) : LDAP URL이 잘못된 경우
- CURLE_FILESIZE_EXCEEDED (61) : 파일 크기 초과
- CURLE_USE_SSL_FAILED (94) : SSL 사용 실패
- CURLE_SEND_ERROR (55) : 데이터 전송 실패
- CURLE_RECV_ERROR (56) : 데이터 수신 실패
- CURLE_COULDNT_LOAD_SSH_PRIVATE_KEY (59) : SSH 개인 키 로드 실패
- CURLE_BAD_DOWNLOAD_RESUME (58) : 다운로드 재개 실패
- CURLE_FILE_COULDNT_READ_FILE (68) : 파일 읽기 실패
- CURLE_LDAP_SEARCH_FAILED (72) : LDAP 검색 실패
- CURLE_FUNCTION_NOT_FOUND (130) : 함수가 존재하지 않음
- CURLE_ABORTED_BY_CALLBACK (71) : 콜백 함수가 중단됨
- CURLE_BAD_FUNCTION_ARGUMENT (72) : 함수 인자가 잘못된 경우
- CURLE_INTERFACE_FAILED (73) : 인터페이스 실패
- CURLE_TOO_MANY_REDIRECTS (73) : 너무 많은 리다이렉트
- CURLE_UNKNOWN_OPTION (83) : 지원하지 않는 옵션
- CURLE_TELNET_OPTION_SYNTAX (84) : TELNET 옵션 형식이 잘못된 경우
- CURLE_PEER_FAILED_VERIFICATION (51) : 인증 실패
- CURLE_GOT_NOTHING (60) : 데이터가 전송되지 않음
- CURLE_SSL_CONNECT_ERROR (92) : SSL 연결 실패
- CURLE_BAD_CONTENT_ENCODING (92) : 콘텐츠 인코딩이 잘못된 경우
- CURLE_LDAP_INVALID_URL (93) : LDAP URL이 잘못된 경우
- CURLE_FILESIZE_EXCEEDED (61) : 파일 크기 초과
- CURLE_USE_SSL_FAILED (94) : SSL 사용 실패
- CURLE_SEND_ERROR (55) : 데이터 전송 실패
- CURLE_RECV_ERROR (56) : 데이터 수신 실패
- CURLE_COULDNT_LOAD_SSH_PRIVATE_KEY (59) : SSH 개인 키 로드 실패
- CURLE_BAD_DOWNLOAD_RESUME (58) : 다운로드 재개 실패
- CURLE_FILE_COULDNT_READ_FILE (68) : 파일 읽기 실패
- CURLE_LDAP_SEARCH_FAILED (72) : LDAP 검색
2025-06-03 16:07