Quoting Arnaldo Carvalho de Melo:
| [DCCP]: Dedicated auxiliary states to support passive-close
|
| This adds two auxiliary states to deal with passive closes:
| * PASSIVE_1 (reached from OPEN via reception of Close) and
| * PASSIVE_2 (reached from OPEN via reception of CloseReq)
|
| One thing is the pointer in the request_sock case that I have to
| figure out what is best and possibly rework your patches to provide what
| I think is best.
|
I am looking forward to that - if you want me to change single patches, let me
know.
I had one more thought regarding
Patch #1: Increases the find-smallest-optlen function to go up to 6 bytes
which is the maximum for Seq Window and NDP count; and adds a Fixme,
since some of the code still refers to an older draft using 3-bytes
NDP count (wireshark was the same).
Patch #2: In the
[DCCP]: Auxiliary function for smallest-fit option lengths
This introduces a function to determine the smallest-fit data type to carry
options,
which is used by the feature-negotiation code to insert option values.
While doing this, I found that the same code is required to set the NDP length,
[DCCP]: Increase the scope of variable-length htonl/ntohl functions
This extends the scope of two available functions, encode|decode_value_var,
to work up to 6 (8) bytes, to match maximum requirements in the RFC.
These functions are going to be used both by general option processing and
feature
[DCCP]: Upgrade NDP count from u32 to u64
This upgrades the data type and part of the processing code for the NDP count
option from 4 to 6 bytes, since the option can be up to 6 bytes (RFC 4340).
The data type is 8 bytes, but the actual limit is enforced by the maximum
of dccp_bytes_per_value(),
[DCCP]: Support for Mandatory options
Support for Mandatory options is provided by this patch, which will
be used by subsequent feature-negotiation patches.
Signed-off-by: Gerrit Renker [EMAIL PROTECTED]
---
net/dccp/feat.h|2 ++
net/dccp/options.c | 15 +++
2 files
[DCCP]: Fill in the Data1..3 fields when option processing encounters option
errors
DCCP provides the Data 1..3 fields in the Reset header to carry information
about why the connection was reset. An earlier patch provided basic support,
this patch extends the capabilities by adding Reset
[DCCP]: Integrate feature-negotiation insertion code
The patch implements insertion of feature negotiation at the server (listening
and
request socket) and the client (connecting socket).
In dccp_insert_options(), several statements have been grouped together now to
achieve
(I hope) better
[DCCP]: Update insertion routine for feature-negotiation options
The patch extends existing code:
* Confirm options divide into the confirmed value plus an optional preference
list for SP values. Previously only the preference list was echoed for SP
values,
now the confirmed value is
[DCCP]: Preference list reconciliation
This provides two functions to
* reconcile preference lists (with appropriate return codes) and
* reorder the preference list if successful reconciliation changed the
preferred value.
The patch also removes the old code for processing SP/NN Change
[DCCP]: Processing Confirm options
Analogous to the previous patch, this adds code to interpret incoming Confirm
feature-negotiation
options. Both functions operate on the feature-negotiation list of either the
request_sock (server)
or the dccp_sock (client).
Signed-off-by: Gerrit Renker
[DCCP]: Process incoming Change requests
This adds/replaces code for processing incoming Change feature-negotiation
options.
The main difference is that mandatory FN options are now interpreted inside the
function
(there are too many individual cases to do this externally); the function
[DCCP]: Insert feature-negotiation options into skb
The core insertion routine, provided by this patch, does a simple list walk and
calls
an already existing function in options.c to do the actual insertion of
individual options.
This replaces the earlier insertion routine from options.c
Em Mon, Oct 01, 2007 at 03:18:11PM +0100, Gerrit Renker escreveu:
[DCCP]: Auxiliary function for smallest-fit option lengths
This introduces a function to determine the smallest-fit data type to carry
options,
which is used by the feature-negotiation code to insert option values.
While
Quoting Arnaldo Carvalho de Melo:
| +/* Find smallest-fit for @value, but not more than 6 bytes (current
maximum) */
| +static inline u8 dccp_bytes_per_value(const u64 value)
| +{
| + if (value 0xull)
| + return 6;
| + return value 0x? 4 : (value
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Registration routines for changing feature values
Two registration routines, for SP and NN features, are provided by this patch,
replacing a previous routine which was used for both feature types.
Signed-off-by: Gerrit Renker [EMAIL
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Query supported CCIDs
This provides a data structure to record which CCIDs are locally supported
and three accessor functions:
- a test function for internal use which is used to validate CCID requests
made by the user;
- a
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Resolve feature dependencies resulting from choice of CCID
This adds a hook to resolve features whose value depends on the choice of
CCID. It is done at the server since it can only be done after the CCID
values have been negotiated;
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Resolve dependencies of features on choice of CCID
This provides a missing link in the code chain, as several features implicitly
depend and/or rely on the choice of CCID. Most notably, this is the Send Ack
Vector
feature, but the
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Glue function to support sockopt code
This adds a glue function so that change requests can still be made via
setsockopt
calls. This is useful for testing and maybe even from an API point of view.
The test whether the socket is not
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Provide feature negotiation for minimum-checksum-coverage
This provides feature negotiation for server minimum checksum coverage
which so far has been missing.
Since sender/receiver coverage values range only from 0...15, their
type
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Tidy up setsockopt calls
This splits the setsockopt calls into two groups, depending on whether an
integer
argument (val) is required and whether routines being called do their own
locking.
Some options (such as setting the CCID)
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: API to query the current TX/RX CCID
This provides function to query the current TX/RX CCID dynamically, without
reliance on the minisock value, using dynamic information available in the
currently loaded CCID module.
This query
On 9/29/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Set per-connection CCIDs via socket options
With this patch, TX/RX CCIDs can now be changed on a per-connection basis,
which
overrides the defaults set by the global sysctl variables for TX/RX CCIDs.
To make full use of this
On 9/30/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Convert Reset code into socket error number
This adds support for converting the 11 currently defined Reset codes into
system
error numbers, which are stored in sk_err for further interpretation.
This makes the externally visible
On 10/2/07, Arnaldo Carvalho de Melo [EMAIL PROTECTED] wrote:
He used a designated initializer, i.e. he said at which index in the
array it the value is to be set. So it really doesn't matter the order.
And when checking if the code was within the valid range he tested
against the last entry
Em Tue, Oct 02, 2007 at 09:07:24AM +1300, Ian McDonald escreveu:
On 10/2/07, Arnaldo Carvalho de Melo [EMAIL PROTECTED] wrote:
He used a designated initializer, i.e. he said at which index in the
array it the value is to be set. So it really doesn't matter the order.
And when checking if
On 10/2/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Increase the scope of variable-length htonl/ntohl functions
This extends the scope of two available functions, encode|decode_value_var,
to work up to 6 (8) bytes, to match maximum requirements in the RFC.
These functions are going to
On 10/2/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Update insertion routine for feature-negotiation options
The patch extends existing code:
* Confirm options divide into the confirmed value plus an optional preference
list for SP values. Previously only the preference list was
On 10/2/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Insert feature-negotiation options into skb
The core insertion routine, provided by this patch, does a simple list walk
and calls
an already existing function in options.c to do the actual insertion of
individual options.
This
On 10/2/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Integrate feature-negotiation insertion code
The patch implements insertion of feature negotiation at the server
(listening and
request socket) and the client (connecting socket).
In dccp_insert_options(), several statements have
On 10/2/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Preference list reconciliation
This provides two functions to
* reconcile preference lists (with appropriate return codes) and
* reorder the preference list if successful reconciliation changed the
preferred value.
The patch
On 10/2/07, Gerrit Renker [EMAIL PROTECTED] wrote:
[DCCP]: Fill in the Data1..3 fields when option processing encounters option
errors
DCCP provides the Data 1..3 fields in the Reset header to carry information
about why the connection was reset. An earlier patch provided basic support,
34 matches
Mail list logo