2

マルチスレッドを openssl で使用すると問題が発生します。

環境: Linux centOS232 2.6.32-279.el6.x86_64 #1 SMP Fri Jun 22 12:19:21 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

エラーはセグメンテーション違反です! そしてクレント出口。

コア スタック:

0 asn1_d2i_ex_primitive (pval=0x640280、in=0x7ffff6ffe140、inlen=9、it=0x7ffff77f0840、tag=-1、aclass=0、opt=0 '\000'、ctx=0x7ffff6ffebd0) at tasn_dec.c:770

1 0x00007ffff75413f2 in ASN1_item_ex_d2i (pval=0x640280, in=0x7ffff6ffe140, len=9, it=0x7ffff77f0840, tag=-1, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at tasn_dec.c:233

2 asn1_template_noexp_d2i の 0x00007ffff7541ba9 (val=0x640280、in=0x7ffff6ffe290、len=9、tt=0x7ffff77f6a40、opt=、ctx=0x7ffff6ffebd0) at tasn_dec.c:746

3 asn1_template_ex_d2i の 0x00007ffff7541eac (val=0x640280、in=0x7ffff6ffe290、inlen=、tt=0x7ffff77f6a40、opt=、ctx=0x7ffff6ffebd0) at tasn_dec.c:607

4 0x00007ffff75415ca in ASN1_item_ex_d2i (pval=0x7ffff6ffe328, in=0x7ffff6ffe330, len=9, it=0x7ffff77f01e0, tag=, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at tasn_dec.c:448

5 asn1_template_noexp_d2i の 0x00007ffff7541c8f (val=0x7ffff6ffe518、in=0x7ffff6ffe520、len=11、tt=0x7ffff77f6aa0、opt=、ctx=0x7ffff6ffebd0) at tasn_dec.c:706

6 asn1_template_ex_d2i の 0x00007ffff7541eac (val=0x7ffff6ffe518、in=0x7ffff6ffe520、inlen=、tt=0x7ffff77f6aa0、opt=、ctx=0x7ffff6ffebd0) at tasn_dec.c:607

7 0x00007ffff75414c5 in ASN1_item_ex_d2i (pval=0x7ffff6ffe518, in=0x7ffff6ffe520, len=98, it=0x7ffff77f0220, tag=-1, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at tasn_dec.c:1:

8 0x00007ffff7541c8f in asn1_template_noexp_d2i (val=0x7ffff6ffe6e0、in=0x7ffff6ffe6e8、len=98、tt=0x7ffff77f6ae0、opt=、ctx=0x7ffff6ffebd0) at tasn_dec.c:706

9 0x00007ffff7541eac in asn1_template_ex_d2i (val=0x7ffff6ffe6e0、in=0x7ffff6ffe6e8、inlen=、tt=0x7ffff77f6ae0、opt=、ctx=0x7ffff6ffebd0) at tasn_dec.c:607

10 0x00007ffff75414c5 in ASN1_item_ex_d2i (pval=0x7ffff6ffe6e0, in=0x7ffff6ffe6e8, len=410, it=0x7ffff77f0260, tag=-1, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at tasn_dec.

11 0x00007ffff753a705 in x509_name_ex_d2i (val=0x63d6f8, in=0x7ffff6ffe830, len=, it=, tag=, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at x_name.c:186

12 0x00007ffff7541083 in ASN1_item_ex_d2i (pval=0x63d6f8, in=0x7ffff6ffe830, len=410, it=0x7ffff77f6a00, tag=-1, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at tasn_dec.c:

13 0x00007ffff7541ba9 in asn1_template_noexp_d2i (val=0x63d6f8, in=0x7ffff6ffe980, len=410, tt=0x7ffff77f6b98, opt=, ctx=0x7ffff6ffebd0) at tasn_dec.c:746

14 0x00007ffff7541eac in asn1_template_ex_d2i (val=0x63d6f8, in=0x7ffff6ffe980, inlen=, tt=0x7ffff77f6b98, opt=, ctx=0x7ffff6ffebd0) at tasn_dec.c:607

15 0x00007ffff75415ca in ASN1_item_ex_d2i (pval=0x63d620, in=0x7ffff6ffea20, len=410, it=0x7ffff77f02e0, tag=, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at tasn_dec.c:448

16 0x00007ffff7541ba9 in asn1_template_noexp_d2i (val=0x63d620, in=0x7ffff6ffeb70, len=587, tt=0x7ffff77f6cc0, opt=, ctx=0x7ffff6ffebd0) at tasn_dec.c:746

17 0x00007ffff7541eac in asn1_template_ex_d2i (val=0x63d620、in=0x7ffff6ffeb70、inlen=、tt=0x7ffff77f6cc0、opt=、ctx=0x7ffff6ffebd0) at tasn_dec.c:607

18 0x00007ffff75415ca in ASN1_item_ex_d2i (pval=0x7ffff6ffebf8, in=0x7ffff6ffec20, len=587, it=0x7ffff77f0320, tag=, aclass=, opt=0 '\000', ctx=0x7ffff6ffebd0) at tasn_dec.c:448

19 0x00007ffff7542024 in ASN1_item_d2i (pval=0x7ffff6ffebf8, in=, len=, it=) at tasn_dec.c:136

20 ssl3_get_server_certificate の 0x00007ffff7830c3c (s=0x62a870)、s3_clnt.c:1125

s3_clnt.c:334 の ssl3_connect (s=0x62a870) の 21 0x00007ffff7832332

22 0x00007ffff783a3bc in ssl23_get_server_hello (s=0x62a870) at s23_clnt.c:743

23 ssl23_connect (s=0x62a870) at s23_clnt.c:226

24 0x00007ffff7ab85fa in ZCY_SSL_create (ssl=0x626940, ssl_ctx=, bio_ctx=0x626948) at ssl_cliapi.c:267

Cli_Login の 25 0x00007ffff701bf12 (gid=0x7ffff6fff7a0、err=0x7ffff6fff390)、capi.c:1146

26 0x00007ffff7a89568 ログイン中 (gid=0x7ffff6fff7a0、err=0x7ffff6fff390) tmcapi.c:137

ssl_get_send.c:337 の send_msg (argv=0x605ed0) の 27 0x00000000004022cb

28 0x0000003efd407851 in start_thread () from /lib64/libpthread.so.0

/lib64/libc.so.6 からのクローン () の 29 0x0000003efd0e811d

スレッド サポート:

"crypto/threads/mttest.c" の例のように、ssl コードにコールバックを設定しました。

質問: しかし、他の machine2 で同じコード [Linux ph-suse 2.6.27.19-5-default #1 SMP 2009-02-28 04:40:21 +0100 x86_64 x86_64 x86_64 GNU/Linux] は成功しました。 「ldd」を使用して、マシン 2 でライブラリが異なるかどうかを確認しますが、それらは同じです。

申し訳ありませんが、私は英語でプールです.

誰が私を助けることができます?ありがとう!

4

0 に答える 0