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.