Skip to content

Commit

Permalink
Merge branch 'bmk/inets/inets591_integration' into maint
Browse files Browse the repository at this point in the history
  • Loading branch information
bmk committed Aug 17, 2012
2 parents 68e0078 + c5578ac commit 28075f9
Show file tree
Hide file tree
Showing 13 changed files with 751 additions and 413 deletions.
143 changes: 92 additions & 51 deletions lib/inets/doc/src/httpc.xml
Expand Up @@ -480,66 +480,69 @@ apply(Module, Function, [ReplyInfo | Args])
<d>ex: "134.138" or "[FEDC:BA98" (all IP-addresses starting with 134.138 or FEDC:BA98), "66.35.250.150" or "[2010:836B:4179::836B:4179]" (a complete IP-address).</d>
<v>MaxSessions = integer() </v>
<d>Default is <c>2</c>.
Maximum number of persistent connections to a host.</d>
Maximum number of persistent connections to a host.</d>
<v>MaxKeepAlive = integer() </v>
<d>Default is <c>5</c>.
Maximum number of outstanding requests on the same connection to
a host.</d>
<v>KeepAliveTimeout = integer() </v>
<d>Default is <c>120000</c> (= 2 min).
If a persistent connection is idle longer than the
<c>keep_alive_timeout</c> the client will close the connection.
The server may also have such a time out but you should
not count on it!</d>
<d>Default is <c>5</c>.
Maximum number of outstanding requests on the same connection to
a host.</d>
<v>KeepAliveTimeout = integer() </v>
<d>Default is <c>120000</c> (= 2 min).
If a persistent connection is idle longer than the
<c>keep_alive_timeout</c> in milliseconds,
the client will close the connection.
The server may also have such a time out but you should
not count on it!</d>
<v>MaxPipeline = integer() </v>
<d>Default is <c>2</c>.
Maximum number of outstanding requests on a pipelined connection to a host.</d>
<v>PipelineTimeout = integer() </v>
<d>Default is <c>0</c>,
which will result in pipelining not being used.
If a persistent connection is idle longer than the
<c>pipeline_timeout</c> the client will close the connection. </d>
<d>Default is <c>2</c>.
Maximum number of outstanding requests on a pipelined connection
to a host.</d>
<v>PipelineTimeout = integer() </v>
<d>Default is <c>0</c>,
which will result in pipelining not being used.
If a persistent connection is idle longer than the
<c>pipeline_timeout</c> in milliseconds,
the client will close the connection. </d>
<v>CookieMode = enabled | disabled | verify </v>
<d>Default is <c>disabled</c>.
If Cookies are enabled all valid cookies will automatically be
saved in the client manager's cookie database.
If the option <c>verify</c> is used the function <c>store_cookies/2</c>
has to be called for the cookies to be saved.</d>
<v>IpFamily = inet | inet6 | inet6fb4 </v>
<d>By default <c>inet</c>.
When it is set to <c>inet6fb4</c> you can use both ipv4 and ipv6.
It first tries <c>inet6</c> and if that does not works falls back to <c>inet</c>.
The option is here to provide a workaround for buggy ipv6 stacks to ensure that
ipv4 will always work.</d>
If Cookies are enabled all valid cookies will automatically be
saved in the client manager's cookie database.
If the option <c>verify</c> is used the function <c>store_cookies/2</c>
has to be called for the cookies to be saved.</d>
<v>IpFamily = inet | inet6 | inet6fb4 </v>
<d>By default <c>inet</c>.
When it is set to <c>inet6fb4</c> you can use both ipv4 and ipv6.
It first tries <c>inet6</c> and if that does not works falls back to <c>inet</c>.
The option is here to provide a workaround for buggy ipv6 stacks to ensure that
ipv4 will always work.</d>
<v>IpAddress = ip_address() </v>
<d>If the host has several network interfaces, this option specifies which one to use.
See <seealso marker="kernel:gen_tcp#connect">gen_tcp:connect/3,4</seealso> for more info. </d>
<d>If the host has several network interfaces, this option specifies which one to use.
See <seealso marker="kernel:gen_tcp#connect">gen_tcp:connect/3,4</seealso> for more info. </d>
<v>Port = integer() </v>
<d>Specify which local port number to use.
See <seealso marker="kernel:gen_tcp#connect">gen_tcp:connect/3,4</seealso> for more info. </d>
<v>VerboseMode = false | verbose | debug | trace </v>
<d>Default is <c>false</c>.
This option is used to switch on (or off)
different levels of erlang trace on the client.
It is a debug feature.</d>
<d>Specify which local port number to use.
See <seealso marker="kernel:gen_tcp#connect">gen_tcp:connect/3,4</seealso> for more info. </d>
<v>VerboseMode = false | verbose | debug | trace </v>
<d>Default is <c>false</c>.
This option is used to switch on (or off)
different levels of erlang trace on the client.
It is a debug feature.</d>
<v>Profile = profile() | pid() (when started <c>stand_alone</c>)</v>
</type>
<desc>
<p>Sets options to be used for subsequent requests.</p>
<note>
<p>If possible the client will keep its connections
alive and use persistent connections
with or without pipeline depending on configuration
and current circumstances. The HTTP/1.1 specification does not
provide a guideline for how many requests would be
ideal to be sent on a persistent connection,
this very much depends on the
application. Note that a very long queue of requests may cause a
user perceived delay as earlier requests may take a long time
to complete. The HTTP/1.1 specification does suggest a
limit of 2 persistent connections per server, which is the
default value of the <c>max_sessions</c> option. </p>
</note>
<p>Sets options to be used for subsequent requests.</p>
<note>
<p>If possible the client will keep its connections
alive and use persistent connections
with or without pipeline depending on configuration
and current circumstances. The HTTP/1.1 specification does not
provide a guideline for how many requests would be
ideal to be sent on a persistent connection,
this very much depends on the
application. Note that a very long queue of requests may cause a
user perceived delay as earlier requests may take a long time
to complete. The HTTP/1.1 specification does suggest a
limit of 2 persistent connections per server, which is the
default value of the <c>max_sessions</c> option. </p>
</note>

<marker id="get_options"></marker>
</desc>
Expand Down Expand Up @@ -648,6 +651,8 @@ apply(Module, Function, [ReplyInfo | Args])
<p>Resets (clears) the cookie database for the specified
<c>Profile</c>. If no profile is specified the default profile
will be used. </p>

<marker id="which_cookies"></marker>
</desc>
</func>

Expand All @@ -667,6 +672,42 @@ apply(Module, Function, [ReplyInfo | Args])
<p>This function produces a list of the entire cookie database.
It is intended for debugging/testing purposes.
If no profile is specified the default profile will be used. </p>

<marker id="which_sessions"></marker>
</desc>
</func>

<func>
<name>which_sessions() -> session_info()</name>
<name>which_sessions(Profile) -> session_info()</name>
<fsummary>Produces a slightly processed dump of the sessions database.</fsummary>
<type>
<v>Profile = profile() | pid() (when started <c>stand_alone</c>)</v>
<v>session_info() = {GoodSessions, BadSessions, NonSessions}</v>
<v>GoodSessions = session()</v>
<v>BadSessions = tuple()</v>
<v>NonSessions = term()</v>
</type>
<desc>
<p>This function produces a slightly processed dump of the session
database. It is intended for debugging.
If no profile is specified the default profile will be used. </p>

<marker id="info"></marker>
</desc>
</func>

<func>
<name>info() -> list()</name>
<name>info(Profile) -> list()</name>
<fsummary>Produces a list of miscelleneous info</fsummary>
<type>
<v>Profile = profile() | pid() (when started <c>stand_alone</c>)</v>
</type>
<desc>
<p>This function produces a list of miscelleneous info.
It is intended for debugging.
If no profile is specified the default profile will be used. </p>
</desc>
</func>
</funcs>
Expand Down
140 changes: 105 additions & 35 deletions lib/inets/doc/src/notes.xml
Expand Up @@ -13,12 +13,12 @@
compliance with the License. You should have received a copy of the
Erlang Public License along with this software. If not, it can be
retrieved online at http://www.erlang.org/.

Software distributed under the License is distributed on an "AS IS"
basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
the License for the specific language governing rights and limitations
under the License.

</legalnotice>

<title>Inets Release Notes</title>
Expand All @@ -32,16 +32,93 @@
<file>notes.xml</file>
</header>


<section>
<title>Inets 5.9.1</title>

<section>
<title>Improvements and New Features</title>
<!--
<p>-</p>
-->

<list>
<item>
<p>Better handling of errorI(s) during update of the session
database. </p>
<p>Also added and updated some debugging functions
<seealso marker="httpc#which_sessions">which_sessions/10,1</seealso>
and
<seealso marker="httpc#info">info/0</seealso>. </p>
<p>Own Id: OTP-10093</p>
<p>Aux Id: Seq 12062</p>
</item>

<section><title>Inets 5.9</title>

<section><title>Improvements and New Features</title>
<!--
<p>-</p>
-->
<item>
<p>Removed R14B compatible version of (inets-service and
tftp) behaviour definition. </p>
<p>Own Id: OTP-10095</p>
</item>

<item>
<p>[httpc] Documentation of KeepAlive and Pipeline timeout
options have been improved. </p>
<p>Own Id: OTP-10114</p>
</item>
</list>

</section>

<section>
<title>Fixed Bugs and Malfunctions</title>
<!--
<p>-</p>
-->

<list>
<item>
<p>[httpc] Cancel request does not work due to incorrect
handler table creation (wrong keypos). </p>
<p>Vyacheslav Vorobyov</p>
<p>Own Id: OTP-10092</p>
</item>

</list>

</section>

<section>
<title>Incompatibilities</title>
<p>-</p>

<!--
<list>
<item>
<p>[httpc|httpd] The old ssl implementation (based on OpenSSL),
has been deprecated. The config option that specified usage of
this version of the ssl app, <c>ossl</c>, has been removed. </p>
<p>Own Id: OTP-9522</p>
</item>
</list>
-->

</section>

</section> <!-- 5.9.1 -->


<section>
<title>Inets 5.9</title>

<section>
<title>Improvements and New Features</title>
<!--
<p>-</p>
-->

<list>
<item>
<p>[httpd] Make the server header configurable with new config
option
<seealso marker="httpd#prop_server_tokens">server_tokens</seealso>.
Expand Down Expand Up @@ -102,11 +179,11 @@

</section>

<!--
<section>
<title>Incompatibilities</title>
<p>-</p>
<!--
<list>
<item>
<p>[httpc|httpd] The old ssl implementation (based on OpenSSL),
Expand All @@ -116,9 +193,9 @@
</item>
</list>
-->
</section>
-->

</section> <!-- 5.9 -->

Expand Down Expand Up @@ -285,31 +362,6 @@

</section>

<section>
<title>Incompatibilities</title>
<!--
<p>-</p>
-->

<list>
<item>
<p>[httpc] Deprecated interface module <c>http</c> has been removed.
It has (long) been replaced by http client interface module
<seealso marker="httpc#">httpc</seealso>. </p>
<p>Own Id: OTP-9359</p>
</item>

<item>
<p>[httpc|httpd] The old ssl implementation (based on OpenSSL),
has been deprecated. The config option that specified usage of
this version of the ssl app, <c>ossl</c>, has been removed. </p>
<p>Own Id: OTP-9522</p>
</item>

</list>

</section>

<section><title>Fixed Bugs and Malfunctions</title>
<!--
<p>-</p>
Expand All @@ -332,6 +384,24 @@
</list>
</section>

<!--
<section>
<title>Incompatibilities</title>
<p>-</p>
<list>
<item>
<p>[httpc] Deprecated interface module <c>http</c> has been removed.
It has (long) been replaced by http client interface module
<seealso marker="httpc#">httpc</seealso>. </p>
<p>Own Id: OTP-9359</p>
</item>
</list>
</section>
-->

</section> <!-- 5.7.2 -->


Expand Down

0 comments on commit 28075f9

Please sign in to comment.