[DRE-maint] Bug#678512: ruby-eventmachine: crashes when using IPv6 socket

Paul van Tilburg paulvt at debian.org
Fri Jun 22 10:47:09 UTC 2012


Package: ruby-eventmachine
Version: 0.12.10-3
Severity: normal

Hi!

I am using Rails 3 from Rubygems which uses Thin/ruby-eventmachine when
serving.  When I tell the server to bind to ::  so that it is reachable via
Ipv6, the server crashes when accessed.  There seems to be an issue with
the hardening/fortify stuff:

$ rails server -b ::
=> Booting Thin
=> Rails 3.2.5 application starting in development on http://:::3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
>> Thin web server (v1.3.1 codename Triple Espresso)
>> Maximum connections set to 1024
>> Listening on :::3000, CTRL+C to stop
*** stack smashing detected ***: /usr/bin/ruby1.9.1 terminated
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x2ab130fcff07]
/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x0)[0x2ab130fcfed0]
/usr/lib/ruby/vendor_ruby/1.9.1/x86_64-linux/rubyeventmachine.so(_ZN18AcceptorDescriptor4ReadEv+0x1b7)[0x2ab134612917]
/usr/lib/ruby/vendor_ruby/1.9.1/x86_64-linux/rubyeventmachine.so(_ZN14EventMachine_t14_RunSelectOnceEv+0x2c9)[0x2ab134604669]
/usr/lib/ruby/vendor_ruby/1.9.1/x86_64-linux/rubyeventmachine.so(_ZN14EventMachine_t8_RunOnceEv+0x28)[0x2ab1346054f8]
/usr/lib/ruby/vendor_ruby/1.9.1/x86_64-linux/rubyeventmachine.so(_ZN14EventMachine_t3RunEv+0x5c)[0x2ab134606ddc]
/usr/lib/ruby/vendor_ruby/1.9.1/x86_64-linux/rubyeventmachine.so(+0x17379)[0x2ab13460a379]
/usr/lib/libruby-1.9.1.so.1.9(+0x15204a)[0x2ab13013c04a]
/usr/lib/libruby-1.9.1.so.1.9(+0x147eb5)[0x2ab130131eb5]
/usr/lib/libruby-1.9.1.so.1.9(+0x14d564)[0x2ab130137564]
/usr/lib/libruby-1.9.1.so.1.9(rb_yield+0x17c)[0x2ab13013dc9c]
/usr/lib/libruby-1.9.1.so.1.9(+0x9dd09)[0x2ab130087d09]
/usr/lib/libruby-1.9.1.so.1.9(+0x15204a)[0x2ab13013c04a]
/usr/lib/libruby-1.9.1.so.1.9(+0x147eb5)[0x2ab130131eb5]
/usr/lib/libruby-1.9.1.so.1.9(+0x14d564)[0x2ab130137564]
/usr/lib/libruby-1.9.1.so.1.9(rb_iseq_eval+0x160)[0x2ab13013ea70]
/usr/lib/libruby-1.9.1.so.1.9(+0x60b10)[0x2ab13004ab10]
/usr/lib/libruby-1.9.1.so.1.9(rb_require_safe+0x45c)[0x2ab13004bd7c]
/usr/lib/libruby-1.9.1.so.1.9(+0x15204a)[0x2ab13013c04a]
/usr/lib/libruby-1.9.1.so.1.9(+0x147eb5)[0x2ab130131eb5]
/usr/lib/libruby-1.9.1.so.1.9(+0x14d564)[0x2ab130137564]
/usr/lib/libruby-1.9.1.so.1.9(rb_iseq_eval_main+0xad)[0x2ab13013eb5d]
/usr/lib/libruby-1.9.1.so.1.9(+0x5df7a)[0x2ab130047f7a]
/usr/lib/libruby-1.9.1.so.1.9(ruby_exec_node+0x1d)[0x2ab130048a1d]
/usr/lib/libruby-1.9.1.so.1.9(ruby_run_node+0x1e)[0x2ab13004a4ae]
/usr/bin/ruby1.9.1[0x40091b]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd)[0x2ab130f01ead]
/usr/bin/ruby1.9.1[0x400949]
======= Memory map: ========
00400000-00401000 r-xp 00000000 fe:02 667857                             /usr/bin/ruby1.9.1
00600000-00601000 r--p 00000000 fe:02 667857                             /usr/bin/ruby1.9.1
00601000-00602000 rw-p 00001000 fe:02 667857                             /usr/bin/ruby1.9.1
00ba7000-02dff000 rw-p 00000000 00:00 0                                  [heap]
2ab12fdc8000-2ab12fde8000 r-xp 00000000 fe:02 265225                     /lib/x86_64-linux-gnu/ld-2.13.so
2ab12fde8000-2ab12fdea000 rw-p 00000000 00:00 0 
2ab12fdea000-2ab12ff63000 r--p 00000000 fe:02 660950                     /usr/lib/locale/locale-archive
2ab12ffe7000-2ab12ffe8000 r--p 0001f000 fe:02 265225                     /lib/x86_64-linux-gnu/ld-2.13.so
2ab12ffe8000-2ab12ffe9000 rw-p 00020000 fe:02 265225                     /lib/x86_64-linux-gnu/ld-2.13.so
2ab12ffe9000-2ab12ffea000 rw-p 00000000 00:00 0 
2ab12ffea000-2ab1301dd000 r-xp 00000000 fe:02 673775                     /usr/lib/libruby-1.9.1.so.1.9.1
2ab1301dd000-2ab1303dc000 ---p 001f3000 fe:02 673775                     /usr/lib/libruby-1.9.1.so.1.9.1
2ab1303dc000-2ab1303e4000 rw-p 001f2000 fe:02 673775                     /usr/lib/libruby-1.9.1.so.1.9.1
2ab1303e4000-2ab130400000 rw-p 00000000 00:00 0 
2ab130400000-2ab130417000 r-xp 00000000 fe:02 264076                     /lib/x86_64-linux-gnu/libpthread-2.13.so
2ab130417000-2ab130616000 ---p 00017000 fe:02 264076                     /lib/x86_64-linux-gnu/libpthread-2.13.so
2ab130616000-2ab130617000 r--p 00016000 fe:02 264076                     /lib/x86_64-linux-gnu/libpthread-2.13.so
2ab130617000-2ab130618000 rw-p 00017000 fe:02 264076                     /lib/x86_64-linux-gnu/libpthread-2.13.so
2ab130618000-2ab13061d000 rw-p 00000000 00:00 0 
2ab13061d000-2ab130624000 r-xp 00000000 fe:02 265217                     /lib/x86_64-linux-gnu/librt-2.13.so
2ab130624000-2ab130823000 ---p 00007000 fe:02 265217                     /lib/x86_64-linux-gnu/librt-2.13.so
2ab130823000-2ab130824000 r--p 00006000 fe:02 265217                     /lib/x86_64-linux-gnu/librt-2.13.so
2ab130824000-2ab130825000 rw-p 00007000 fe:02 265217                     /lib/x86_64-linux-gnu/librt-2.13.so
2ab130825000-2ab130827000 r-xp 00000000 fe:02 264068                     /lib/x86_64-linux-gnu/libdl-2.13.so
2ab130827000-2ab130a27000 ---p 00002000 fe:02 264068                     /lib/x86_64-linux-gnu/libdl-2.13.so
2ab130a27000-2ab130a28000 r--p 00002000 fe:02 264068                     /lib/x86_64-linux-gnu/libdl-2.13.so
2ab130a28000-2ab130a29000 rw-p 00003000 fe:02 264068                     /lib/x86_64-linux-gnu/libdl-2.13.so
2ab130a29000-2ab130a31000 r-xp 00000000 fe:02 264046                     /lib/x86_64-linux-gnu/libcrypt-2.13.so
2ab130a31000-2ab130c30000 ---p 00008000 fe:02 264046                     /lib/x86_64-linux-gnu/libcrypt-2.13.so
2ab130c30000-2ab130c31000 r--p 00007000 fe:02 264046                     /lib/x86_64-linux-gnu/libcrypt-2.13.so
2ab130c31000-2ab130c32000 rw-p 00008000 fe:02 264046                     /lib/x86_64-linux-gnu/libcrypt-2.13.so
2ab130c32000-2ab130c61000 rw-p 00000000 00:00 0 
2ab130c61000-2ab130ce2000 r-xp 00000000 fe:02 264054                     /lib/x86_64-linux-gnu/libm-2.13.so
2ab130ce2000-2ab130ee1000 ---p 00081000 fe:02 264054                     /lib/x86_64-linux-gnu/libm-2.13.so
2ab130ee1000-2ab130ee2000 r--p 00080000 fe:02 264054                     /lib/x86_64-linux-gnu/libm-2.13.so
2ab130ee2000-2ab130ee3000 rw-p 00081000 fe:02 264054                     /lib/x86_64-linux-gnu/libm-2.13.so
2ab130ee3000-2ab131060000 r-xp 00000000 fe:02 263664                     /lib/x86_64-linux-gnu/libc-2.13.so
2ab131060000-2ab131260000 ---p 0017d000 fe:02 263664                     /lib/x86_64-linux-gnu/libc-2.13.so
2ab131260000-2ab131264000 r--p 0017d000 fe:02 263664                     /lib/x86_64-linux-gnu/libc-2.13.so
2ab131264000-2ab131265000 rw-p 00181000 fe:02 263664                     /lib/x86_64-linux-gnu/libc-2.13.so
2ab131265000-2ab13136d000 rw-p 00000000 00:00 0 
2ab13136d000-2ab13136e000 ---p 00000000 00:00 0 
2ab13136e000-2ab131371000 rw-p 00000000 00:00 0 
2ab131371000-2ab131373000 r-xp 00000000 fe:02 938239                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
2ab131373000-2ab131572000 ---p 00002000 fe:02 938239                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
2ab131572000-2ab131573000 r--p 00001000 fe:02 938239                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
2ab131573000-2ab131574000 rw-p 00002000 fe:02 938239                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
2ab131574000-2ab131576000 r-xp 00000000 fe:02 938261                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
2ab131576000-2ab131776000 ---p 00002000 fe:02 938261                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
2ab131776000-2ab131777000 r--p 00002000 fe:02 938261                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
2ab131777000-2ab131778000 rw-p 00003000 fe:02 938261                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
2ab131778000-2ab13177e000 r-xp 00000000 fe:02 938284                     /usr/lib/ruby/1.9.1/x86_64-linux/pathname.so
2ab13177e000-2ab13197d000 ---p 00006000 fe:02 938284                     /usr/lib/ruby/1.9.1/x86_64-linux/pathname.so
2ab13197d000-2ab13197e000 r--p 00005000 fe:02 938284                     /usr/lib/ruby/1.9.1/x86_64-linux/pathname.so
2ab13197e000-2ab13197f000 rw-p 00006000 fe:02 938284                     /usr/lib/ruby/1.9.1/x86_64-linux/pathname.so
2ab13197f000-2ab131982000 r-xp 00000000 fe:02 938209                     /usr/lib/ruby/1.9.1/x86_64-linux/etc.so
2ab131982000-2ab131b81000 ---p 00003000 fe:02 938209                     /usr/lib/ruby/1.9.1/x86_64-linux/etc.so
2ab131b81000-2ab131b82000 r--p 00002000 fe:02 938209                     /usr/lib/ruby/1.9.1/x86_64-linux/etc.so
2ab131b82000-2ab131b83000 rw-p 00003000 fe:02 938209                     /usr/lib/ruby/1.9.1/x86_64-linux/etc.so
2ab131b83000-2ab131b89000 r-xp 00000000 fe:02 938297                     /usr/lib/ruby/1.9.1/x86_64-linux/psych.so
2ab131b89000-2ab131d88000 ---p 00006000 fe:02 938297                     /usr/lib/ruby/1.9.1/x86_64-linux/psych.so
2ab131d88000-2ab131d89000 r--p 00005000 fe:02 938297                     /usr/lib/ruby/1.9.1/x86_64-linux/psych.so
2ab131d89000-2ab131d8a000 rw-p 00006000 fe:02 938297                     /usr/lib/ruby/1.9.1/x86_64-linux/psych.so
2ab131da3000-2ab131dc3000 r-xp 00000000 fe:02 690526                     /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.2
2ab131dc3000-2ab131fc2000 ---p 00020000 fe:02 690526                     /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.2
2ab131fc2000-2ab131fc3000 rw-p 0001f000 fe:02 690526                     /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.2
2ab131fc3000-2ab131fc9000 r-xp 00000000 fe:02 938289                     /usr/lib/ruby/1.9.1/x86_64-linux/stringio.so
2ab131fc9000-2ab1321c9000 ---p 00006000 fe:02 938289                     /usr/lib/ruby/1.9.1/x86_64-linux/stringio.so
2ab1321c9000-2ab1321ca000 r--p 00006000 fe:02 938289                     /usr/lib/ruby/1.9.1/x86_64-linux/stringio.so
2ab1321ca000-2ab1321cb000 rw-p 00007000 fe:02 938289                     /usr/lib/ruby/1.9.1/x86_64-linux/stringio.so
2ab1321cb000-2ab1321d0000 r-xp 00000000 fe:02 938288                     /usr/lib/ruby/1.9.1/x86_64-linux/strscan.so
2ab1321d0000-2ab1323cf000 ---p 00005000 fe:02 938288                     /usr/lib/ruby/1.9.1/x86_64-linux/strscan.so
2ab1323cf000-2ab1323d0000 r--p 00004000 fe:02 938288                     /usr/lib/ruby/1.9.1/x86_64-linux/strscan.so
2ab1323d0000-2ab1323d1000 rw-p 00005000 fe:02 938288                     /usr/lib/ruby/1.9.1/x86_64-linux/strscan.so
2ab1323d1000-2ab1323ff000 r-xp 00000000 fe:02 938293                     /usr/lib/ruby/1.9.1/x86_64-linux/date_core.so
2ab1323ff000-2ab1325ff000 ---p 0002e000 fe:02 938293                     /usr/lib/ruby/1.9.1/x86_64-linux/date_core.so
2ab1325ff000-2ab132600000 r--p 0002e000 fe:02 938293                     /usr/lib/ruby/1.9.1/x86_64-linux/date_core.so
2ab132600000-2ab132601000 rw-p 0002f000 fe:02 938293                     /usr/lib/ruby/1.9.1/x86_64-linux/date_core.so
2ab132601000-2ab132602000 rw-p 00000000 00:00 0 
2ab132602000-2ab132605000 r-xp 00000000 fe:02 938300                     /usr/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
2ab132605000-2ab132804000 ---p 00003000 fe:02 938300                     /usr/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
2ab132804000-2ab132805000 r--p 00002000 fe:02 938300                     /usr/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
2ab132805000-2ab132806000 rw-p 00003000 fe:02 938300                     /usr/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
2ab132806000-2ab132809000 r-xp 00000000 fe:02 938226                     /usr/lib/ruby/1.9.1/x86_64-linux/digest.so
2ab132809000-2ab132a08000 ---p 00003000 fe:02 938226                     /usr/lib/ruby/1.9.1/x86_64-linux/digest.so
2ab132a08000-2ab132a09000 r--p 00002000 fe:02 938226                     /usr/lib/ruby/1.9.1/x86_64-linux/digest.so
2ab132a09000-2ab132a0a000 rw-p 00003000 fe:02 938226                     /usr/lib/ruby/1.9.1/x86_64-linux/digest.so
2ab132a0a000-2ab132a0c000 r-xp 00000000 fe:02 938242                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
2ab132a0c000-2ab132c0b000 ---p 00002000 fe:02 938242                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
2ab132c0b000-2ab132c0c000 r--p 00001000 fe:02 938242                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
2ab132c0c000-2ab132c0d000 rw-p 00002000 fe:02 938242                     /usr/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
2ab132c0d000-2ab132c1a000 r-xp 00000000 fe:02 938210                     /usr/lib/ruby/1.9.1/x86_64-linux/zlib.so
2ab132c1a000-2ab132e19000 ---p 0000d000 fe:02 938210                     /usr/lib/ruby/1.9.1/x86_64-linux/zlib.so
2ab132e19000-2ab132e1a000 r--p 0000c000 fe:02 938210                     /usr/lib/ruby/1.9.1/x86_64-linux/zlib.so
2ab132e1a000-2ab132e1b000 rw-p 0000d000 fe:02 938210                     /usr/lib/ruby/1.9.1/x86_64-linux/zlib.so
2ab132e34000-2ab132e4a000 r-xp 00000000 fe:02 262386                     /lib/x86_64-linux-gnu/libz.so.1.2.7
2ab132e4a000-2ab133049000 ---p 00016000 fe:02 262386                     /lib/x86_64-linux-gnu/libz.so.1.2.7
2ab133049000-2ab13304a000 r--p 00015000 fe:02 262386                     /lib/x86_64-linux-gnu/libz.so.1.2.7
2ab13304a000-2ab13304b000 rw-p 00016000 fe:02 262386                     /lib/x86_64-linux-gnu/libz.so.1.2.7
2ab13304b000-2ab133097000 r-xp 00000000 fe:02 938215                     /usr/lib/ruby/1.9.1/x86_64-linux/openssl.so
2ab133097000-2ab133297000 ---p 0004c000 fe:02 938215                     /usr/lib/ruby/1.9.1/x86_64-linux/openssl.so
2ab133297000-2ab133298000 r--p 0004c000 fe:02 938215                     /usr/lib/ruby/1.9.1/x86_64-linux/openssl.so
2ab133298000-2ab13329a000 rw-p 0004d000 fe:02 938215                     /usr/lib/ruby/1.9.1/x86_64-linux/openssl.so
2ab13329a000-2ab13329b000 rw-p 00000000 00:00 0 
2ab1332b4000-2ab133308000 r-xp 00000000 fe:02 659492                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
2ab133308000-2ab133508000 ---p 00054000 fe:02 659492                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
2ab133508000-2ab13350b000 r--p 00054000 fe:02 659492                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
2ab13350b000-2ab133512000 rw-p 00057000 fe:02 659492                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
2ab133512000-2ab1336c9000 r-xp 00000000 fe:02 659491                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
2ab1336c9000-2ab1338c8000 ---p 001b7000 fe:02 659491                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
2ab1338c8000-2ab1338e3000 r--p 001b6000 fe:02 659491                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
2ab1338e3000-2ab1338f2000 rw-p 001d1000 fe:02 659491                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
2ab1338f2000-2ab1338f6000 rw-p 00000000 00:00 0 
2ab1338f6000-2ab1338f7000 r-xp 00000000 fe:02 938298                     /usr/lib/ruby/1.9.1/x86_64-linux/fcntl.so
2ab1338f7000-2ab133af6000 ---p 00001000 fe:02 938298                     /usr/lib/ruby/1.9.1/x86_64-linux/fcntl.so
2ab133af6000-2ab133af7000 r--p 00000000 fe:02 938298                     /usr/lib/ruby/1.9.1/x86_64-linux/fcntl.so
2ab133af7000-2ab133af8000 rw-p 00001000 fe:02 938298                     /usr/lib/ruby/1.9.1/x86_64-linux/fcntl.so
2ab133af8000-2ab133b07000 r-xp 00000000 fe:02 938230                     /usr/lib/ruby/1.9.1/x86_64-linux/bigdecimal.so
2ab133b07000-2ab133d06000 ---p 0000f000 fe:02 938230                     /usr/lib/ruby/1.9.1/x86_64-linux/bigdecimal.so
2ab133d06000-2ab133d07000 r--p 0000e000 fe:02 938230                     /usr/lib/ruby/1.9.1/x86_64-linux/bigdecimal.so
2ab133d07000-2ab133d08000 rw-p 0000f000 fe:02 938230                     /usr/lib/ruby/1.9.1/x86_64-linux/bigdecimal.so
2ab133d08000-2ab133d1e000 r-xp 00000000 fe:02 938272                    
/usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/single_byte.so[1]    15897 abort rails server -b ::

Cheers,
Paul

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (102, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=nl_NL.UTF-8, LC_CTYPE=nl_NL.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages ruby-eventmachine depends on:
ii  libc6                         2.13-33
ii  libgcc1                       1:4.7.1-1
ii  libruby1.8                    1.8.7.358-4
ii  libruby1.9.1                  1.9.3.194-1
ii  libstdc++6                    4.7.1-1
ii  ruby                          4.9
ii  ruby1.8 [ruby-interpreter]    1.8.7.358-4
ii  ruby1.9.1 [ruby-interpreter]  1.9.3.194-1

ruby-eventmachine recommends no packages.

ruby-eventmachine suggests no packages.

-- no debconf information





More information about the Pkg-ruby-extras-maintainers mailing list