[#62297] Re: [ruby-cvs:52906] nari:r45760 (trunk): * gc.c (gc_after_sweep): suppress unnecessary expanding heap. — Eric Wong <normalperson@...>
nari@ruby-lang.org wrote:
7 messages
2014/05/02
[#62307] Re: [ruby-cvs:52906] nari:r45760 (trunk): * gc.c (gc_after_sweep): suppress unnecessary expanding heap.
— SASADA Koichi <ko1@...>
2014/05/03
(2014/05/03 4:41), Eric Wong wrote:
[#62402] Re: [ruby-cvs:52906] nari:r45760 (trunk): * gc.c (gc_after_sweep): suppress unnecessary expanding heap.
— Eric Wong <normalperson@...>
2014/05/05
SASADA Koichi <ko1@atdot.net> wrote:
[#62523] [ruby-trunk - Feature #9632] [PATCH 0/2] speedup IO#close with linked-list from ccan — ko1@...
Issue #9632 has been updated by Koichi Sasada.
3 messages
2014/05/11
[#62556] doxygen (Re: Re: [ruby-trunk - Feature #9632] [PATCH 0/2] speedup IO#close with linked-list from ccan) — Tanaka Akira <akr@...>
2014-05-11 8:50 GMT+09:00 Eric Wong <normalperson@yhbt.net>:
3 messages
2014/05/13
[#62727] [RFC] vm_method.c (rb_method_entry_make): avoid freed me in m_tbl — Eric Wong <normalperson@...>
rb_unlink_method_entry may cause old_me to be swept before the new
7 messages
2014/05/24
[#63039] Re: [RFC] vm_method.c (rb_method_entry_make): avoid freed me in m_tbl
— SASADA Koichi <ko1@...>
2014/06/10
Hi,
[#63077] Re: [RFC] vm_method.c (rb_method_entry_make): avoid freed me in m_tbl
— Eric Wong <normalperson@...>
2014/06/10
SASADA Koichi <ko1@atdot.net> wrote:
[#63086] Re: [RFC] vm_method.c (rb_method_entry_make): avoid freed me in m_tbl
— SASADA Koichi <ko1@...>
2014/06/11
(2014/06/11 4:47), Eric Wong wrote:
[#63087] Re: [RFC] vm_method.c (rb_method_entry_make): avoid freed me in m_tbl
— Eric Wong <normalperson@...>
2014/06/11
SASADA Koichi <ko1@atdot.net> wrote:
[#62862] [RFC] README.EXT: document rb_gc_register_mark_object — Eric Wong <normalperson@...>
Any comment on officially supporting this as part of the C API?
5 messages
2014/05/30
[ruby-core:62603] [ruby-trunk - Feature #9842] system configuration variables (sysconf(), confstr(), pathconf() and fpathconf())
From:
kosaki.motohiro@...
Date:
2014-05-15 13:38:59 UTC
List:
ruby-core #62603
Issue #9842 has been updated by Motohiro KOSAKI.
On Thu, May 15, 2014 at 7:45 AM, <akr@fsij.org> wrote:
> Issue #9842 has been reported by Akira Tanaka.
>
> ----------------------------------------
> Feature #9842: system configuration variables (sysconf(), confstr(), pathconf() and fpathconf())
> https://bugs.ruby-lang.org/issues/9842
>
> * Author: Akira Tanaka
> * Status: Open
> * Priority: Normal
> * Assignee:
> * Category:
> * Target version:
> ----------------------------------------
> How about providing methods to obtain system configuration variables?
>
> POSIX defines sysconf(), confstr(), pathconf() and fpathconf().
> I implemented following methods in ext/etc.
>
> * Etc.sysconf(name)
> * Etc.confstr(name)
> * IO.pathconf(name)
> * IO#pathconf(name)
>
> POSIX defines some names.
> Various operating sysmtems define additional names.
>
> They can be used as follows:
>
> ```
> Etc.sysconf(Etc::SC_ARG_MAX) #=> 2097152
> Etc.sysconf(Etc::SC_NPROCESSORS_ONLN) #=> 4
> Etc.confstr(Etc::CS_PATH) #=> "/bin:/usr/bin"
> Etc.confstr(Etc::CS_GNU_LIBC_VERSION) #=> "glibc 2.18"
> IO.pathconf("/", Etc::PC_NAME_MAX) #=> 255
Please drop this. This is broken by design. If an attacker create a
symlink which point
to FAT file system on the same place, IO.patchconf(PC_NAME_MAX) may return very
small size and might lead to security issue.
http://womble.decadent.org.uk/readdir_r-advisory.html
Or, at least, we need loooong document why you need much care about IO.pathconf.
> open("/") {|f| p f.pathconf(Etc::PC_TIMESTAMP_RESOLUTION) } #=> 1
> ```
>
> I implemented them in ext/etc because I interpreted "etc" as
> system configuration.
>
> Any idea?
>
>
> ---Files--------------------------------
> sysconf-confstr-pathconf.patch (13 KB)
>
>
> --
> https://bugs.ruby-lang.org/
----------------------------------------
Feature #9842: system configuration variables (sysconf(), confstr(), pathconf() and fpathconf())
https://bugs.ruby-lang.org/issues/9842#change-46743
* Author: Akira Tanaka
* Status: Open
* Priority: Normal
* Assignee:
* Category:
* Target version:
----------------------------------------
How about providing methods to obtain system configuration variables?
POSIX defines sysconf(), confstr(), pathconf() and fpathconf().
I implemented following methods in ext/etc.
* Etc.sysconf(name)
* Etc.confstr(name)
* IO.pathconf(name)
* IO#pathconf(name)
POSIX defines some names.
Various operating sysmtems define additional names.
They can be used as follows:
```
Etc.sysconf(Etc::SC_ARG_MAX) #=> 2097152
Etc.sysconf(Etc::SC_NPROCESSORS_ONLN) #=> 4
Etc.confstr(Etc::CS_PATH) #=> "/bin:/usr/bin"
Etc.confstr(Etc::CS_GNU_LIBC_VERSION) #=> "glibc 2.18"
IO.pathconf("/", Etc::PC_NAME_MAX) #=> 255
open("/") {|f| p f.pathconf(Etc::PC_TIMESTAMP_RESOLUTION) } #=> 1
```
I implemented them in ext/etc because I interpreted "etc" as
system configuration.
Any idea?
---Files--------------------------------
sysconf-confstr-pathconf.patch (13 KB)
--
https://bugs.ruby-lang.org/