From: Eric Wong Date: 2014-01-03T10:19:10+00:00 Subject: [ruby-core:59514] Re: [ruby-trunk - Bug #9352] [BUG] rb_sys_fail_str(connect(2) for [fe80::1%lo0]:3000) - errno == 0 Thanks for testing. I can't say I like my patch, however, as it's still error-prone and fragile. How about some new functions to the C API: rb_syserr_fail_str(VALUE mesg, int errnum); rb_syserr_fail(const char *mesg, int errnum); And deprecate rb_sys_fail and rb_sys_fail_str.