C++에서 gsoap 라이브러리를 사용해야하고 https를 사용해야합니다. 설명서에는 C에서 HTTPS를 사용하는 방법이 나와 있지만 C++에서는 HTTPS를 사용하지 않는 방법이 나와 있습니다 (http://www.cs.fsu.edu/~engelen/soapdoc2.html#tth_sEc19.20). 특히, 난 soap_ssl_init();
함수에 대한 compulation 오류가 있습니다./usr/lib/libgsoap * 파일을 살펴본 결과 ligsoapssl ++ 파일이 발견되어 링크되었습니다. 이 오류는 사라졌지 만 error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
이 나옵니다. 즉, soap_ssl_client_context
func를 호출해야하지만 C++ 생성 클래스에는 없습니다. 어떻게해야합니까?C++에서 SSL을 사용하는 방법 gSOAP 생성 클래스
UPD : 나는 혼자이 문제를 해결했습니다. 그러나 그것은 기발하고 매우 기발한 방식입니다. gSOAP이 구조체 비누로부터 상속 된 C++ 클래스를 생성, 그것은 attrs에 다음이 포함
BIO *bio;
SSL *ssl;
SSL_CTX *ctx;
unsigned short ssl_flags;
const char *keyfile;
const char *password;
const char *dhfile;
const char *cafile;
const char *capath;
const char *crlfile;
const char *randfile;
SSL_SESSION *session;
그래서 우리가 할 수있는 설정에 필요한 바인드합니다 (플래그, PARAMS) 자신에 의해에서 OpenSSL 라이브러리에있다. 간단한 경우 soap_ssl_init()
번으로 전화를 걸어 ssl_flags = SOAP_SSL_NO_AUTHENTICATION
으로 설정하면 충분합니다. 그것은 나를 위해 작동합니다. 누구라도 더 좋은 방법을 알고 있다면 기꺼이 볼 수 있습니다.
오류가 무엇을 얻고있다 :
이 m_proxy 클라이언트 프록시의 인스턴스가 gSOAP을 사용하여 생성? – Mat
'soap_ssl_init 정의되지 않은 참조 './usr/lib/libgsoap * 파일을 살펴본 결과 ligsoapssl ++ 파일이 발견되어 링크되었습니다. 이 오류는 사라졌지 만'오류 : 14090086 : SSL 루틴 : SSL3_GET_SERVER_CERTIFICATE : 인증서 확인에 실패했습니다. '라는 메시지가 나타납니다. 즉'soap_ssl_client_context' func를 호출해야하지만 C++ 생성 클래스에는 없습니다. 어떻게해야합니까? – milo