Bug fix release : otp_src_R10B-10
Build date      : 2006-03-08

This is bug fix release 10 for the R10B release.
You can download the full source distribution from
 
  http://www.erlang.org/download/otp_src_R10B-10.tar.gz
  http://www.erlang.org/download/otp_src_R10B-10.readme (this file)

Note: To unpack the TAR archive you need a GNU TAR compatible
program. For instance, on MacOS X before 10.3 you must use the 'gnutar' command;
you can't use the 'tar' command or StuffIt to unpack the sources.


For installation instructions please read the README that is part of
the distribution.

The Windows binary distribution can be downloaded from

  http://www.erlang.org/download/otp_win32_R10B-10.exe


On-line documentation can be found at http://www.erlang.org/doc.html.
You can also download the complete HTML documentation or the Unix manual files

  http://www.erlang.org/download/otp_doc_html_R10B-10.tar.gz
  http://www.erlang.org/download/otp_doc_man_R10B-10.tar.gz

We also want to thank those that sent us patches, suggestions and bug
reports,

The OTP Team


--- compiler-4.3.12 ------------------------------------------------------------

    OTP-5872  The following code would crash the compiler: case T of
	      #r{s = ""} -> T #r{s = "x"} end. (Thanks to Richard
	      Carlsson.)

	      The compiler could crash if binaries were constructed
	      in certain guards involving boolean operators
	      (including semicolon). (Thanks to Torbjorn Tornkvist.)

    OTP-5976  The compiler will now warn that the
	      megaco:format_versions/1 function is deprecated.


--- erl_interface-3.5.5 ------------------------------------------------------------

    OTP-5883  Support for a C node to connect to an Erlang node on a
	      standalone host has been added.

    OTP-5967  Different (and old) config.guess files in the erts and
	      erl_interface applications would cause build problems
	      on the new Intel-based iMacs. (Thanks to Sebastion
	      Strollo.)

    OTP-5981  pthread header and library mismatch on linux systems
	      (at least some SuSE and Debian) with both NPTL and
	      Linuxthreads libraries installed.


--- erts-5.4.13 ------------------------------------------------------------

    OTP-5849  Large files (more than 2 GBytes) are now handled on
	      Solaris 8.

    OTP-5911  A failing bit syntax construction could fail with the
	      PREVIOUS exeption reason that had occured in the
	      process (instead of with 'badarg').

    OTP-5921  When building OTP, the kernel application was built in
	      both the primary and secondary bootstrap steps, which
	      would cause problems if OTP including its bootstrap is
	      checked into a version control system (such as CVS).
	      (Thanks to Sebastian Strollo.)

    OTP-5933  binary_to_term(<<131,109,255,255,255,255) and similar
	      expressions used to crash the emulator instead of
	      causing a badarg exception. (Thanks to Matthias Lang.)

    OTP-5940  erlang:hibernate/3 could sometimes crash the emulator
	      when no heap was needed.

    OTP-5942  The driver_set_timer didn't change the previous timeout
	      if called a second time. Now it works as specified,
	      changing the timeout.

    OTP-5945  The undocumented '{packet,http}' option (for the
	      gen_tcp module) didn't not work correctly when there
	      were multiple continuation lines. (Thanks to Per
	      Hedeland.)

    OTP-5946  The setuid_socket_wrap program was corrected to work
	      for C compilers that treat the char type as unsigned.
	      (Thanks to Magnus Henoch.)

    OTP-5955  Execution of match specs could under rare circumstances
	      cause the emulator to dump core.

	      Execution of match specs could cause memory leaks in
	      the hybrid emulator.

    OTP-5957  A bug in erlang:trace_info/2 when getting info for a
	      function in a deleted module resulting in an emulator
	      crash, has been corrected.

    OTP-5967  Different (and old) config.guess files in the erts and
	      erl_interface applications would cause build problems
	      on the new Intel-based iMacs. (Thanks to Sebastion
	      Strollo.)

    OTP-5981  pthread header and library mismatch on linux systems
	      (at least some SuSE and Debian) with both NPTL and
	      Linuxthreads libraries installed.


--- hipe-3.5.5 ------------------------------------------------------------

    OTP-5971  Import bug fix in the AMD64 backend. Minor performance
	      improvement for PowerPC. Preliminary support for ARM.
	      HiPE does work on ARM, but some performance-improving
	      features are not implemented yet. Furthermore, only the
	      big-endian Intel XScale processor is supported.


--- inets-4.7 ------------------------------------------------------------

    OTP-5865  [http,server] Handling of undefined file times (e.g.
	      modification time: the mtime field on the file_info record).

    OTP-5913  [http,server]It is now possible to set the wanted timeout for
	      the server to setup a request connection. A new syntax for
	      inets.config is provided in the users guide documentation.
	      This syntax also allows to set tracing of the server for
	      debug purposes.


--- inets-4.7.1 ------------------------------------------------------------

    OTP-5938  [http,server] It was possible to read arbitrary files on
	      server by prepending ././ and ../../ in fornt of the file
	      name.


--- inets-4.7.2 ------------------------------------------------------------

    OTP-5941  [http,server] Server falsely sets ipv6 enabled when it gets
	      an ipv4-mapped ipv6 address.

    OTP-5943  [http,server] In case http version is unknown of client use
	      HTTP1.0 to send status.

    OTP-5961  [http,server] The process handling a request now ignors
	      garbage messages.

    OTP-5962  [http,server] Changed some actions taken if config data in
	      httpd services was faulty.


--- kernel-2.10.13 ------------------------------------------------------------

    OTP-5849  Large files (more than 2 GBytes) are now handled on
	      Solaris 8.

    OTP-5889  Global now makes several attempts to connect nodes when
	      maintaining the fully connected network. More than one
	      attempt is sometimes needed under very heavy load.

    OTP-5959  erl_epmd now explicitly sets the timeout to infinity
	      when calling gen_server:call. The old timeout of 15
	      seconds could time out under very heavy load.

    OTP-5974  Corrected the start of code server to use
	      reference-tagged tuples to ensure that an unexpected
	      message sent to the parent process doesn't cause a halt
	      of the system. Also removed the useless start/*
	      functions in both code.erl and code_server.erl and no
	      longer exports the init function from code_server.erl.

    OTP-5978  During startup, a garbage {'DOWN', ...} message was
	      left by inet_gethost_native, that caused problems for
	      the starting code_server.


--- megaco-3.2.4 ------------------------------------------------------------

    OTP-5867  Documentation of megaco_udp:upgrade_receive_handle/2 missing
	      one argument (NewHandle).

    OTP-5879  Corrected documentation of function megaco:conn_info/2.
	      Missing item local_mid

    OTP-5880  Corrected documentation of function megaco:conn_info/2.
	      Missing item remote_mid

    OTP-5881  When calling megaco:conn_info with Item = trans_id, the value
	      was not retreived in the proper way, resulting in an
	      incorrect result.

    OTP-5882  Improper [text] encode of localControlDescriptor. Incorrectly
	      allowed zero length list of LocalParm. All versions (v1, v2,
	      v3 [prev3a, prev3b]).

    OTP-5885  megaco:format_versions/1 documented with wrong arity

    OTP-5886  Timer recalculation failes when receiving pending message if
	      the timer is of the type megaco_incr_timer and the
	      max_retries field has the value infinity_restartable.


--- megaco-3.2.5 ------------------------------------------------------------

    OTP-5887  Aligned the user_info and conn_info functions regarding
	      trans_id retreival.


--- megaco-3.2.6 ------------------------------------------------------------

    OTP-5918  Improve error mesage format on decode error

    OTP-5919  Wrong binary name resolver used for prev3b (prev3a)

    OTP-5920  When using ber_bin-codec and option {version3,prev3b} the
	      wrong asn1 and transform modules (prev3a) where used.


--- megaco-3.2.7 ------------------------------------------------------------

    OTP-5948  Code cleanup: Compiler warnings: variable X is unused

    OTP-5952  Updated configure script to handle smp-support

    OTP-5953  Add new version info print functions. The old function
	      (format_versions/1) have been deprecated.


--- megaco-3.3 ------------------------------------------------------------

    OTP-5965  Fixed documentation after OTP-5953. The new info print
	      functions where not documented, but the old, and deprecated,
	      where still.

    OTP-5973  Added utility function to facilitate pretty-printing of text
	      messages, see megaco:token_tag2string/1,2,3


--- mnesia-4.2.4 ------------------------------------------------------------

    OTP-5884  A disc based Mnesia node can now be jump started with an
	      empty directory by connecting it (via extra_db_nodes) to
	      another node with a copy of all data.


--- mnesia-4.2.5 ------------------------------------------------------------

    OTP-5892  Jump starting a disc based node didn't work as expected.


--- odbc-2.0.6 ------------------------------------------------------------

    OTP-5966  Changed configure to find odbc in /usr/local too

    OTP-5981  pthread header and library mismatch on linux systems
	      (at least some SuSE and Debian) with both NPTL and
	      Linuxthreads libraries installed.


--- os_mon-1.8.1 ------------------------------------------------------------

    OTP-5869  cpu_sup:util/0 failed with error reason negative_diff
	      when called the first time on a machine (hw) that had
	      been up for a very long time.


--- os_mon-2.0 ------------------------------------------------------------

    OTP-4246  Thresholds and time intervals in disksup and memsup are
	      now configurable in run-time.

    OTP-4332  A call to a OS_Mon service (cpu_sup, disksup, ...) when
	      OS_Mon is not running, or when the service is not
	      available for the OS, or when the service is not
	      started, will no longer result in an exception. Instead
	      a warning is issued via error_logger and a dummy value
	      is returned, which one is specified in the man pages
	      for the respective service.

	      The reason is that it should not be necessary for a
	      service to be started on each and every node of a
	      distributed Erlang system for the OS-MON-MIB and other
	      OS_Mon users to work properly.

    OTP-5699  References to the obsolete EVA application in
	      OTP-OS-MON-LIB has been removed.

    OTP-5800  memsup can now handle systems with more than 4GB of
	      RAM.

    OTP-5890  Setting the option memsup_system_only to true did not
	      work, but would crash the memsup process.

    OTP-5897  The entire OS_Mon application (code and documentation)
	      has been reviewed and consequently updated with the
	      goal to make the application more robust, homogeneous
	      and easier to configure.

	      The behaviour under normal operation is backwards
	      compatible. However, recoverable errors now no longer
	      terminate the affected service (and thus possible the
	      entire application), instead error_logger is used to
	      warn the user if/when such errors occurs. Also, in the
	      case of unrecoverable errors, the services have been
	      made more homogeneous with respect to behavior and exit
	      reasons. See below for more information and refer to
	      the man pages for details.

	      Port handling has been unified, meaning that if a port
	      program sends garbage or unexpectedly dies, this is now
	      handled the same way by all OS_Mon services, namely
	      immediate process termination with the exit reason
	      {port_error,Garbage} or {port_died,Reason},
	      respectively.

	      Application configuration parameter handling has been
	      unified. Bad parameter values are no longer silently
	      ignored (disksup) or cause application termination
	      (memsup, os_sup). Instead a warning is issued and the
	      default value for the parameter is used. Also, some
	      cases where a bad parameter value accidentally could be
	      accepted have been corrected.

	      Message handling has been unified. Unknown
	      (gen_server-) calls cause process termination, whereas
	      unknown casts and messages are now ignored by all
	      OS_Mon services.

    OTP-5901  cpu_sup:nprocs/0 returned 0 on FreeBsd.

    OTP-5910  If the OS_Mon service disksup or memsup was restarted,
	      the same alarm could be set twice. Also, set alarms
	      were not cleared when the application was stopped.

    OTP-5925  The following changes have been made to the os_sup
	      service:

	      It is now available on Windows, using nteventlog as
	      backend.

	      On Solaris, enabling the service (that is, installing a
	      new configuration file for syslogd etc.) can now be
	      done outside the os_sup process. The reason for this is
	      that the Erlang emulator should normally not be run
	      with root privileges, as is otherwise required. The new
	      application configuration parameter os_sup_config must
	      be set to false.

	      Also, os_sup can now be configured using a new
	      configuration parameter os_sup_mfa to call an arbitrary
	      Erlang function when a message is received from the OS.

    OTP-5927  The memsup service has been rewritten, replacing the
	      supervised memsup_helper with a linked help process.
	      This gives the memsup process more control and prevents
	      a situation where it gets out of synch with the
	      received memory data and thus possibly returns
	      erroneous results.


--- snmp-4.7 ------------------------------------------------------------

    OTP-5870  Add simple backup mechanism, see snmpa:backup/1,2 and
	      snmpm:backup/1.

    OTP-5934  Improve handling of faulty data base files. Added new agent
	      and manager config option, db_init_error, see config for more
	      info

    OTP-5935  Added possibility to configure the restart type for each of
	      the components (default is permanent for the agent and
	      transient for the manager). See documentation regarding
	      snmp_config for more info.

    OTP-5937  [compiler] Improve error printouts.


--- snmp-4.7.1 ------------------------------------------------------------

    OTP-5963  [manager] The supervision structure contained several errors
	      which caused a complete restart of the manager.

    OTP-5968  Added new version info print functions,
	      print_version_info/[0,1]

    OTP-5969  Updated the documentation for the agent and manager
	      log_to_txt functions.


--- ssh-0.9.1 ------------------------------------------------------------

    OTP-5877  Fixes in ssh_sftp, changes of timeout handling,
	      expand_fun moved to io:setopts


--- ssl-3.0.11 ------------------------------------------------------------

    OTP-5972  The state of a connection in active mode could be in a
	      restrictive state, so that an internal tcp_closed
	      message was incorrectly considered illegal, resulting
	      in a premature termination of the connection process.


--- stdlib-1.13.12 ------------------------------------------------------------

    OTP-5405  shell_default:xm/1 has been added. It calls xref:m/1.

    OTP-5876  The new STDLIB module erl_expand_records expands
	      records in abstract code. It is used by the Erlang
	      shell, which means that Compiler is no longer used by
	      the shell.

    OTP-5878  Warnings are output whenever so far undeclared
	      records are referenced from some default value of a
	      record declaration. In R11B such forward references
	      will cause a compilation error.

    OTP-5917  The linter's check of the deprecated attribute did not
	      take the compile option export_all into account. This
	      bug has been fixed.

    OTP-5926  The Erlang pretty printer did not handle try/catch
	      correctly. This bug has been fixed.

    OTP-5931  Corrected documentation for lists:nthtail/3.

	      Added documentation for lists:keymap/3.

	      Tried to clarify some other type declarations and
	      function descriptions in lists(3).

	      Corrected documentation for timer:now_diff/2.

	      Fixed broken links in gen_fsm(3), gen_server(3),
	      io_lib(3) and lib(3).

    OTP-5939  Type checks have been added to functions in lists.erl.

    OTP-5976  The compiler will now warn that the
	      megaco:format_versions/1 function is deprecated.


--- tools-2.4.7 ------------------------------------------------------------

    OTP-5922  A bug in fprof profiling causing erroneous inconsistent trace
	      failure has been corrected.