<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/stdlib/test, branch OTP_R13B04</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>Merge branch 'ms/pcre-security' into ccase/r13b04_dev</title>
<updated>2010-02-12T09:39:42+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2010-02-12T09:39:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=b14ca0fae3dcb3add0f5da7b194fdfc2b0e5f7f8'/>
<id>b14ca0fae3dcb3add0f5da7b194fdfc2b0e5f7f8</id>
<content type='text'>
* ms/pcre-security:
  Fix CVE-2008-2371 (outer level option with alternatives caused crash).

OTP-8438  The re module: A regular expression with an option change at the
          start of a pattern that had top-level alternatives could cause
          overwriting and/or a crash. (Thanks to Michael Santos.)</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* ms/pcre-security:
  Fix CVE-2008-2371 (outer level option with alternatives caused crash).

OTP-8438  The re module: A regular expression with an option change at the
          start of a pattern that had top-level alternatives could cause
          overwriting and/or a crash. (Thanks to Michael Santos.)</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'jn/supervisor_child_count_only' into ccase/r13b04_dev</title>
<updated>2010-02-12T09:33:53+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2010-02-12T09:33:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=61489ddbe608e1fe7bd2301c55c6446f14e94cd9'/>
<id>61489ddbe608e1fe7bd2301c55c6446f14e94cd9</id>
<content type='text'>
* jn/supervisor_child_count_only:
  Add count_children/1 to supervisor.erl to determine the number of

OTP-8436  Added supervisor:count_children/1 to count the number of children
          being managed without the memory impact of which_children/1.
          (Thanks to Jay Nelson.)</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* jn/supervisor_child_count_only:
  Add count_children/1 to supervisor.erl to determine the number of

OTP-8436  Added supervisor:count_children/1 to count the number of children
          being managed without the memory impact of which_children/1.
          (Thanks to Jay Nelson.)</pre>
</div>
</content>
</entry>
<entry>
<title>Fix CVE-2008-2371 (outer level option with alternatives caused crash).</title>
<updated>2010-02-11T07:10:27+00:00</updated>
<author>
<name>Michael Santos</name>
<email>michael.santos@gmail.com</email>
</author>
<published>2010-02-10T20:19:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=bb6370a20be07e6bd0c9f6e89a3cd9719dccbfd3'/>
<id>bb6370a20be07e6bd0c9f6e89a3cd9719dccbfd3</id>
<content type='text'>
The patch is from:
http://vcs.pcre.org/viewvc?revision=360&amp;view=revision

Test case:
re:compile(&lt;&lt;"(?i)[\xc3\xa9\xc3\xbd]|[\xc3\xa9\xc3\xbdA]"&gt;&gt;, [unicode]).

An option change at the start of a pattern that had top-level
alternatives could cause overwriting and/or a crash.

This potential security problem was recorded as CVE-2008-2371.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The patch is from:
http://vcs.pcre.org/viewvc?revision=360&amp;view=revision

Test case:
re:compile(&lt;&lt;"(?i)[\xc3\xa9\xc3\xbd]|[\xc3\xa9\xc3\xbdA]"&gt;&gt;, [unicode]).

An option change at the start of a pattern that had top-level
alternatives could cause overwriting and/or a crash.

This potential security problem was recorded as CVE-2008-2371.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add count_children/1 to supervisor.erl to determine the number of</title>
<updated>2010-02-10T16:14:28+00:00</updated>
<author>
<name>Jay Nelson</name>
<email>jay@duomark.com</email>
</author>
<published>2010-01-25T19:01:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=1686757b304b66050f54db8e0ce5ab758bde96af'/>
<id>1686757b304b66050f54db8e0ce5ab758bde96af</id>
<content type='text'>
children being managed without the memory impact of which_children/1

The function which_children/1 returns a list of the child processes
currently being supervised, but it has the penalty of creating a new
list thereby consuming more memory.  In low memory situations it is
often desirable to know which supervisor may have generated many
processes, but the act of discovering the culprit should not cause the
node to crash (or worse a different node if the kernel kills one
randomly).  The new function count_children/1 can give an indication
of which supervisor is taxing resources the most without adding to the
burden.  Rather than creating a new list, it walks the supervisor's
internal children structure using an accumulator function so that any
used memory can be incrementally collected yet the resulting count can
still be obtained.

The return result of count_children/1 is a property list of counts
containing:
  - {specs, Total_Num_Child_Specs}
  - {active, Num_Active_Child_Processes_Of_Supervisor_Or_Worker_Type}
  - {supervisors, Num_Supervisor_Type_Children_Including_Dead_Processes}
  - {workers, Num_Worker_Type_Children_Including_Dead_Processes}

This patch was made in response to mailing list discussions of the
problem diagnosing heavily taxed production systems.  I cannot find
the original request, but http://www.erlang.org/cgi-bin/ezmlm-cgi/4/35060
is my original post of the patch.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
children being managed without the memory impact of which_children/1

The function which_children/1 returns a list of the child processes
currently being supervised, but it has the penalty of creating a new
list thereby consuming more memory.  In low memory situations it is
often desirable to know which supervisor may have generated many
processes, but the act of discovering the culprit should not cause the
node to crash (or worse a different node if the kernel kills one
randomly).  The new function count_children/1 can give an indication
of which supervisor is taxing resources the most without adding to the
burden.  Rather than creating a new list, it walks the supervisor's
internal children structure using an accumulator function so that any
used memory can be incrementally collected yet the resulting count can
still be obtained.

The return result of count_children/1 is a property list of counts
containing:
  - {specs, Total_Num_Child_Specs}
  - {active, Num_Active_Child_Processes_Of_Supervisor_Or_Worker_Type}
  - {supervisors, Num_Supervisor_Type_Children_Including_Dead_Processes}
  - {workers, Num_Worker_Type_Children_Including_Dead_Processes}

This patch was made in response to mailing list discussions of the
problem diagnosing heavily taxed production systems.  I cannot find
the original request, but http://www.erlang.org/cgi-bin/ezmlm-cgi/4/35060
is my original post of the patch.
</pre>
</div>
</content>
</entry>
<entry>
<title>OTP-8418  user.erl (used in oldshell) is updated to handle unicode in</title>
<updated>2010-02-10T15:47:09+00:00</updated>
<author>
<name>Patrik Nyblom</name>
<email>pan@erlang.org</email>
</author>
<published>2010-02-10T15:47:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=64a697339414f424073c5b021285fddb0ff2d9da'/>
<id>64a697339414f424073c5b021285fddb0ff2d9da</id>
<content type='text'>
          prompt strings (io:get_line/{1,2}). io_lib is also updated to
          format prompts with the 't' modifier (i.e. ~ts instead of ~s).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
          prompt strings (io:get_line/{1,2}). io_lib is also updated to
          format prompts with the 't' modifier (i.e. ~ts instead of ~s).
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'ks/erl_lint' into ccase/r13b04_dev</title>
<updated>2010-02-10T10:30:07+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2010-02-10T10:30:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=01fd07e5ca33e106640635a518f519e024c12760'/>
<id>01fd07e5ca33e106640635a518f519e024c12760</id>
<content type='text'>
* ks/erl_lint:
  erl_lint_SUITE: adjust failing test case
  Allow recursive types and check for undefined types

OTP-8421: ks/erl_lint</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* ks/erl_lint:
  erl_lint_SUITE: adjust failing test case
  Allow recursive types and check for undefined types

OTP-8421: ks/erl_lint</pre>
</div>
</content>
</entry>
<entry>
<title>erl_lint_SUITE: adjust failing test case</title>
<updated>2010-02-09T20:03:21+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2010-02-09T07:30:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=a037310622f85a9ae1c083b3210c63a826dda320'/>
<id>a037310622f85a9ae1c083b3210c63a826dda320</id>
<content type='text'>
Errors are now reported slightly differently, so we'll
need to adjust the test case.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Errors are now reported slightly differently, so we'll
need to adjust the test case.
</pre>
</div>
</content>
</entry>
<entry>
<title>OTP-8393  The new function shell:prompt_func/1 and the new application</title>
<updated>2010-02-05T08:41:18+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2010-02-05T08:41:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=0949cc8ed1de57e3388cf22a83bc147bce2b3e0f'/>
<id>0949cc8ed1de57e3388cf22a83bc147bce2b3e0f</id>
<content type='text'>
          configuration parameter shell_prompt_func can be used for
          customizing the Erlang shell prompt.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
          configuration parameter shell_prompt_func can be used for
          customizing the Erlang shell prompt.
</pre>
</div>
</content>
</entry>
<entry>
<title>epp_SUITE: Increase code coverage</title>
<updated>2010-02-01T15:36:11+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2010-02-01T15:20:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=77a1272d90f93fba24d56b5121ad13cb4ab57f84'/>
<id>77a1272d90f93fba24d56b5121ad13cb4ab57f84</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>epp: change rules to choose the right version of a macro</title>
<updated>2010-02-01T15:18:23+00:00</updated>
<author>
<name>Christopher Faulet</name>
<email>christopher.faulet@capflam.org</email>
</author>
<published>2009-12-07T15:47:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=27d7ca04eb2933345b5be50870a197a3b19588c0'/>
<id>27d7ca04eb2933345b5be50870a197a3b19588c0</id>
<content type='text'>
Now, when we have only the constant definition of a macro (without
arguments), we always use it. In all other cases, we try to find the
exact matching definition. We throw an error if we don't find it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now, when we have only the constant definition of a macro (without
arguments), we always use it. In all other cases, we try to find the
exact matching definition. We throw an error if we don't find it.
</pre>
</div>
</content>
</entry>
</feed>
