Gauche > Archives > 2013/11/01

2013/11/01 01:58:52 UTCとおる。
#
$ ping6 ::1
socket: Address family not supported by protocol
#
$ ping6 localhost
socket: Address family not supported by protocol
2013/11/01 02:26:10 UTCshiro
#
ipv6が実行時に使えるかどうかを調べるポータブルな方法ってないかな。ソケット作ってみて失敗するかどうか見るってのは最後の手段っぽいし。
#
とりあえずipv6がoffのシステムにインストールするにはconfigure --disable-ipv6で回避してもらうのがいいかな。
2013/11/01 02:46:10 UTCとおる。
#
そもそも IPv6 つかえないくせに /etc/hosts に ::1 localhost とか書いてあるのがいけない気がするので、いまその行を削除してテストしようとしてます。
2013/11/01 03:03:50 UTCとおる。
#
そうすると ext/net とか ext/tls でエラーがでてました。いったん --disable-ipv6 つけてテストしてみます。
2013/11/01 05:19:16 UTCとおる。
#
/etc/hosts から ::1 の行をコメントアウトして、--disable-ipv6 つきでビルドしてみたら、
#
Total: 12695 tests, 12694 passed,     1 failed,     0 aborted.
$ grep 'ERROR' `find . -name test.log`
./ext/tls/test.log:test ssltest, expects 0 ==> ERROR: GOT 256
#
おしい!
2013/11/01 06:06:08 UTCとおる。
#
$ ./ssltest --exttest
All AES tests passed
All RC4 tests passed
All MD5 tests passed
All SHA1 tests passed
All HMAC tests passed
All BIGINT tests passed
All RSA tests passed
Error: Invalid X509 ASN.1 file (Unsupported digest)
Error: Invalid X509 ASN.1 file (Unsupported digest)
All Certificate tests passed
SSL basic test passed
system: executing {sh ../.././axTLS/ssl/test/killopenssl.sh}
SSL unblocked test passed
system: executing {sh ../.././axTLS/ssl/test/killopenssl.sh}
### starting client tests
system: executing {sh ../.././kick_openssl s_server -tls1 -accept 19002 -quiet -cert ../.././axTLS/ssl/test/axTLS.x509_512.pem -key ../.././axTLS/ssl/test/axTLS.key_512.pem }
could not start socket on 19002
Error: SSL error -1
Error: A client test failed
system: executing {sh ../.././axTLS/ssl/test/killopenssl.sh}
system: executing {sh ../.././axTLS/ssl/test/killgnutls.sh}
$ echo $?
1
#
OpenSSL の問題ですかね。
2013/11/01 07:31:56 UTCshiro
#
ああ、テストにopensslが必要なんだったな。入ってますか? というか--disable-ipv6無しだと通ってた?
2013/11/01 08:45:52 UTCとおる。
#
openssl コマンド自体は入ってますが、バージョンがふるいかもです。
2013/11/01 16:03:53 UTCshiro
#
kick_opensslは単なるラッパーで、プロセスidを記録した後、opensslコマンドに引数を全部渡してexecするだけです。ext/tls/axTLS/sslに降りた後、手動で openssl s_server -tls1 -accept 19002 -quiet ... などとして起動できますか?
#
あるいは単に何か他のプロセスがポート19002を握ってるだけだったりして。