aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel/doc
AgeCommit message (Collapse)Author
2010-02-08Merge branch 'sc/sctp-connect-nowait' into ccase/r13b04_devErlang/OTP
* sc/sctp-connect-nowait: Implement a non-blocking SCTP connect OTP-8414 There are new gen_sctp:connect_init/* functions that initiate an SCTP connection without blocking for the result. The result is delivered asynchronously as an sctp_assoc_change event. (Thanks to Simon Cornish.)
2010-02-06Implement a non-blocking SCTP connectSimon Cornish
This patch adds a new set of functions - gen_sctp:connect_init/* that initiate an SCTP connection without blocking for the result. The result is delivered asynchronously as an sctp_assoc_change event. The new functions have the same API as documented for gen_sctp:connect/* with the following exceptions: * Timeout is only used to supervise resolving Addr (the peer address) * The possible return values are ok | {error, posix()} The caller application is responsible for receiving the #sctp_assoc_change{} event and correctly determining the connect it originated from (for example, by examining the remote host and/or port). The application should have at least {active, once} or use gen_sctp:recv to retrieve the connect result. The implementation of gen_sctp:connect suffers from a number of shortcomings which the user may avoid by using gen_sctp:connect_init and adding code to receive the connect result. First, irrespective of the Timeout value given to gen_sctp:connect, the OS attempts and retries the SCTP INIT according to various kernel parameters. If the Timeout value is shorter than the entire attempt then the application will still receive an sctp_assoc_change event after the {error, timeout} is returned from the initial call. This could be somewhat confusing (either to the application or the designer!) especially if the status is comm_up. Subsequent calls to connect before the OS has finished this process return {error, ealready} which may also be counter-intuitive. Second, there is a race-condition (documented in comments in inet_sctp.erl) that can cause the wrong sctp_assoc_change record to be returned to an application calling gen_sctp:connect. The race seriously affects connection attempts when using one-to-many sockets.
2009-12-03Corrected CR and LF clarification in file:read_line, removed extra backslash.Patrik Nyblom
2009-12-03documentation: Fix bugs introduced in the SGML to XML transitionHans Bolinder
In the transition from SGML to XML (several releases ago), bugs were introduced in the documentation, for instance "\n" replaced by newlines. Correct those bugs. Also correct double backslashes. They seem to have been introduced very early in the development of OTP. According to Lars they "solved" a bug in the generation of HTML &c. Now that standard tools are used instead of docbuilder, the bug has become visible.
2009-11-20The R13B03 release.OTP_R13B03Erlang/OTP