前任者の引継ぎでSolaris上で動かすlibcurlを使ったC言語プログラムを担当することになりました。
CURLOPT_SSL_VERIFYPEERをOFFにしているのですが、SSL証明書検証が機能してしまいます。
###発生している問題・エラーメッセージ
Connected to HOGEHOGE port 443 (#0)
successfully set certificate verify locations:
CAfile: none
CApath: /etc/openssl/certs
SSLv3, TLS handshake, Client hello (1):
SSLv3, TLS handshake, Server hello (2):
SSLv3, TLS handshake, CERT (11):
SSLv3, TLS handshake, Server finished (14):
SSLv3, TLS handshake, Client key exchange (16):
SSLv3, TLS change cipher, Client hello (1):
SSLv3, TLS handshake, Finished (20):
SSLv3, TLS change cipher, Client hello (1):
SSLv3, TLS handshake, Finished (20):
SSL connection using DES-CBC3-SHA
SSL certificate verify result: self signed certificate in certificate chain (19), continuing anyway.
###該当のソースコード
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0);
###試したこと
サーバにファイルをアップロードしたのですが、16Mbyte以下のファイルは送れるのにそれ以上のファイルは以下のメッセージが出て16MB転送時でエラー終了します。
SSLv3, TLS alert, Server hello (2):
SSL_write() returned SYSCALL, errno = 32
Closing connection #0
(16MBはサーバの設定かも...サーバ管理者が休暇中で分からず)
同じソースでもLinux(RHEL)版ではSSL証明書検証をSkipします。
Connected to HOGEHOGE port 443 (#0)
Initializing NSS with certpath: sql:/etc/pki/nssdb
skipping SSL peer certificate verification
SSL connection using SSL_RSA_WITH_RC4_128_SHA
###補足情報(言語/FW/ツール等のバージョンなど)
$ curl -V
curl 7.21.2 (sparc-sun-solaris2.11) libcurl/7.21.2 OpenSSL/1.0.0k zlib/1.2.3-T4mods libidn/1.19
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
あなたの回答
tips
プレビュー