Project

General

Profile

Bug #11225

r50776 + r50780 + r50781 changes behavior on systems without HAVE_STRUCT_MSGHDR_MSG_CONTROL

Added by ngoto (Naohisa Goto) over 5 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
ruby 2.3.0dev (2015-06-05) [sparc64-solaris2.10]
[ruby-core:69469]

Description

On systems without HAVE_STRUCT_MSGHDR_MSG_CONTROL such as Solaris 10,
when passing 3 or more arguments to rsock_bsock_sendmsg and rsock_bsock_sendmsg_nonblock that internally call bsock_sendmsg_internal,

r50775 or before: NotImplementedError is raised as follows.

    rb_raise(rb_eNotImpError, "control message for sendmsg is unimplemented");

after r50776: ArgumentError is raised in rb_scan_args(argc, argv, "12", ...)

I think the behavior change is not intended.


Related issues

Related to Ruby master - Bug #11224: test/socket/test_nonblock.rb:266: [BUG] Segmentation fault at 0x00000000000008 on sparc Solaris 10ClosedActions
#1

Updated by ngoto (Naohisa Goto) over 5 years ago

  • Related to Feature #11124: [PATCH] lib/*: use monotonic clock for timeouts added
#2

Updated by ngoto (Naohisa Goto) over 5 years ago

  • Related to deleted (Feature #11124: [PATCH] lib/*: use monotonic clock for timeouts)
#3

Updated by ngoto (Naohisa Goto) over 5 years ago

  • Related to Bug #11224: test/socket/test_nonblock.rb:266: [BUG] Segmentation fault at 0x00000000000008 on sparc Solaris 10 added
#4

Updated by ngoto (Naohisa Goto) over 5 years ago

  • Status changed from Open to Closed

Applied in changeset r50784.


  • ext/socket/ancdata.c (bsock_sendmsg_internal): all arguments are parsed even on systems without HAVE_STRUCT_MSGHDR_MSG_CONTROL to prevent SEGV caused by passing Qnil to RARRAY_LENINT and to preserve behavior before r50776. [Bug #11224] [ruby-core:69468] [Bug #11225] [ruby-core:69469]

Updated by usa (Usaku NAKAMURA) over 5 years ago

  • Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN to 2.0.0: DONTNEED, 2.1: DONTNEED, 2.2: DONTNEED

Also available in: Atom PDF