Leandro,
following Arnaldo's reply, can you please you the suggested naming scheme (it
is also
already used in packet_history.c and loss_interval.c): I will be looking into
merging
the patches with the CCID3 set of patches, to reduce work and duplication.
The whole lot of CCID3 patches will the
I have a suggestion regarding types, names, and things shared between
CCID3 and CCID4 via dccp_tfrc_lib:
I think it would be best to name all such shared structures / names,
when they are to appear in the dccp_tfrc_lib, as `tfrc_xxx' instead of
`ccid34_xxx'
For example,
enum tfrc_fback_type {
//
[CCID2]: Larger initial windows also for CCID2
RFC 4341, sec. 5 states that "The cwnd parameter is initialized to at most
four packets for new connections, following the rules from [RFC3390]", which
is implemented by this patch.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]&g
"Ack Ratio <= cwnd"
by using the constraint (1) from RFC 4341, 6.1.2; i.e. set
Ack Ratio = ceil(cwnd / 2)
and update it whenever either Ack Ratio or cwnd change. This ensures that
the deadlock problem can not arise.
Signed-off-by: Gerrit Renker <[EMAI
only significant action is to move from RESPOND to OPEN.
This patch avoids the steps listed as bullet-points in (6), since these are all
redundant and
not necessary; and in the worst case will confuse internal processing.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/d
[CCID2]: Fix sequence number arithmetic/comparisons
This replaces use of normal subtraction with modulo-48 subtraction.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid2.c |9 ++---
1 file changed, 2 insertions(+), 7 deletions(-)
--- a/net/dccp/ccids/c
redundant and
not necessary; and in the worst case will confuse internal processing.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/input.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/net/dccp/input.c
+++ b/net/dccp/input.c
@@ -583,7 +583,
ned-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid2.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/net/dccp/ccids/ccid2.c
+++ b/net/dccp/ccids/ccid2.c
@@ -666,7 +666,7 @@ static void ccid2_hc_tx_packet_recv(stru
A small batch of bug fixes, all for CCID2 apart from the first one.
I have another small batch of CCID2 fixes and cleanups, which will
be sent next week. All fixes are related to the problem that CCID2
can not currently deal well with Ack Ratios different from 1. To
fully tackle this, Ack Vectors
| The full sources for the tapsets used (for things like ccid3_hc_tx_sk_rtt(),
etc) are at:
|
| http://oops.ghostprotocols.net:81/acme/nettaps.tar.bz2
|
This is awesome. Is all that is needed to run these a new systemtap binary?
Mine is 0.5.9
and too old for that, and I need to do some rtfm
| Basically the functions that I'm using to send are the following:
|
| PS: the second function, gst_dccp_send_buffer, is a call back function
| called by gstreamer when it has data to be sent. Thank you.
| /* write buffer to given socket incrementally.
| * Returns number of bytes writte
| I'm implementing the dccp plugin for gstreamer and everything goes
| very well, I can transmit an mp3 sound using ccid-2, but when I try to
| use ccid-3, I can just send very little via send function and after
| the function returns 11 (EAGAIN). Is there any different parameter
| that I sho
ectly act on the feature-negotiation process.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Acked-by: Ian McDonald <[EMAIL PROTECTED]>
---
include/linux/dccp.h |7 ---
net/dccp/dccp.h |4
net/dccp/feat.c | 18 ++
net/dccp/feat.h | 10 ++
| I have no problems with this one.
Thanks, I will put it into the test tree. Ack Vector patches should be ready
some time next
week, there is some documentation and test programs -- about end of this week.
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message
Quoting Arnaldo Carvalho de Melo:
| > I think that dccpprobe.c is the wrong name ... it should really be called
ccid3_probe.c ...
| > I have been working on printing entries for CCID2, since in ccid2.c there
is no probe support,
| > and instead ccid2_pr_debug is used for the same purpose all o
length of the struct ackvec/ackvec_record fields. It is
a purely text-based replacement:
s#dccpavr_#avr_#g;
s#dccpav_#av_#g;
and increases readability somewhat.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ack
Following the earlier discussion I have created two patches which shorten
the identifiers in some of the structs:
1) A patch for the CCIDs, where I used the scheme suggested by Arnaldo
(i.e. "c{tx,rx}", e.g. hcrx->c2tx_ssthresh). This resulted in a
rather large patch (66k) and was ra
| > | perhaps one that could understand types and then could allow developers
| > | to ask questions like "show me all the places where the field foo of
| > | type bar appears"
| > Hopefully in the next generation of such things may be possible? I was
Thanks everyone for replying, below is the summary of earlier emails.
1) Ian wrote:
| I think the best way to do this is once Arnaldo agrees and then
| prepare a big patch to do this. If we don't get Arnaldo's buy in then
| it will be hell to maintain the patch set.
Fully agree - Arnaldo is t
I have a question/suggestion for DCCP/CCID field names, which have a tendency
to grow
into really_quite_long_strings. The convention for field members seems to be
"x"->"x"_
Examples are in particular
* hctx->ccid2hctx_
* hcrx->ccid3hcrx_
* avr->dccpavr_
* av->dccpav_
The p
for SYSCTL.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/Makefile |5 ++---
net/dccp/dccp.h| 10 ++
net/dccp/input.c |3 ---
net/dccp/options.c |7 ---
net/dccp/proto.c |3 ---
ne
tches series for ccid3/ccid4
| integration.
|
| 2007/9/20, Gerrit Renker <[EMAIL PROTECTED]>:
| > | You said that will define a specific frequency
| > | (for instance, every week) that you will do this. Did you already
| > | define it?
| > The repository is synced nor
mpiled';
3. shortens the definitions of init/exit dummy functions in the header file.
Hence mainly a tidy-up action. Code was found to compile and work
cleanly with various Kconfig configurations for SYSCTL.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald
function `dccp_check_seqno':
| input.c:(.text+0xbd859): undefined reference to `sysctl_dccp_sync_ratelimit'
[thanks for spotting, copied this to [EMAIL PROTECTED] instead of linux-kernel]
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
NB: Arnaldo, in the test tree this problem
packet does not have sufficient room left.
There are currently no CCID-specific header options which may appear on data
packets, hence it is not necessary to define a corresponding CCID field.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/output.c | 18 +++
bytes.
Further added a FIXME for piggybacking of Ack Vectors and a warning message
which is triggered when running out of option space - to monitor this condition.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 13 ++---
1 file changed, 10 insertions(+),
ing the same format as before.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccid.c|8
net/dccp/ccids/ccid2.c |2 +-
net/dccp/ccids/ccid3.c |2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
--- a/net/dccp/ccid.c
+++ b/net/dccp/cc
' has been renamed into `cur_mps', to
reflect that we are
dealing with an MPS, but not an MSS.
Since the DCCP code closely follows the TCP code, the identifiers
`dccp_sync_mss' and
`dccps_mss_cache' have been kept, as they have direct TCP counterparts.
Signed-off-by: G
[DCCP]: Documentation for CCID operations
This adds documentation for the ccid_operations structure.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccid.h | 35 ---
1 file changed, 28 insertions(+), 7 deletions(-)
--- a/net/dccp/ccid.h
+++
A small self-contained patch set which centers around determining sufficient
option
headroom when calculating the maximum packet size.
Patch #1: Adds documentation for the fields in struct ccid_operations.
Patch #2: More informative registration of CCIDs.
Patch #3: Introduces the CCMPS field fo
ve the private area NULL, then this
is a bug, which
should crash loudly and earlier,
* the test for state==OPEN || state==PARTOPEN now reduces only to the closing
phase (e.g. when
the node has received an unexpected Reset).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]&
This serves to illustrate how to hook up a new CCID with the new
feature-negotiation interface, so that the new CCID
* is detected for advertising during feature-negotiation,
* can be queried via getsockopt,
* can be set via setsockopt,
* can be negotiated just as any other CCID.
It is don
Quoting Łeandro Sales:
| I'm organizing the code according to arnaldo and gerrit
| suggestions, to use a separated source file, which I named it for
| ccid34_commons.c/h and link it in the Makefile of ccids/lib via trfc
| module, is this the correct way gerrit, accoding to your suggestion?
Plea
, for pretty-printing and system logs, the name of the last state remains
at `CLOSEREQ', for consistency.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h | 34 +-
net/dccp/input.c | 13 ++---
net/dccp/proto.c
s smaller timestamping-time fields.
Furthermore, inserting the Timestamp Echo option has been taken out of the
block starting with
'!dccp_packet_without_ack()', since Timestamp Echo can be carried on any packet
(5.8 and 13.3).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
As suggested by Arnaldo, the internal state names are renamed into
something which less conflicts with other names and which is more
descriptive.
Patch #1: Realises the naming scheme suggested by Arnaldo.
I have added this into the test tree.
There is another update to report, but it is minor
| In the gstreamer plugin I want to provide a plugin property named
| ccid, where the programmer will set or get the current ccid. Is dccp
| implementation for linux already prepared to support this mechanism
| through feature negotiation (or something related via
| setsockopt/getsockopt)?
Ye
different solution is planned.
I'd need to know so that I can rework the patches and resubmit them accordingly.
Quoting Gerrit Renker:
| Quoting Arnaldo Carvalho de Melo:
| | I suggest it to become:
| |
| | [EMAIL PROTECTED] net-2.6.24]$ pahole -C dccp_request_sock
net/d
All submitted feature-negotiation patches have been put into the test tree,
after scrubbing
them for superfluous whitespace.
Ian, there was overlap with your second patch, since one of the test tree
patches also removed
the LISTEN blocks. Below is an rcsdiff of your second patch (I keep all pa
has thus been added which reverts to
the previous policy of bypassing the Ack Ratio sysctl.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
Documentation/networking/dccp.txt |4 +++-
net/dccp/minisocks.c | 12
net/dccp/proto.c |1 -
3
optionally be overridden on a per-connection basis using sockopts (as for
example in the
CCID-sockopt patches).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h | 24 ++--
net/dccp/minisocks.c |7 +--
net/dccp/options.c |4 +--
TOPEN state, and an
additional
test currently limits the use to Ack Ratio (the routine can be used for any NN
options,
but there is currently no use for that).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c | 100 +
).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h|7 ++-
net/dccp/options.c |1 +
2 files changed, 7 insertions(+), 1 deletion(-)
--- a/net/dccp/dccp.h
+++ b/net/dccp/dccp.h
@@ -405,10 +405,15 @@ static inline void dccp_update_gss(struc
dp
This is the last batch of the feature negotiation set, after which I would like
to release it into the test tree.
I hold back another complete batch, which is the use of feature negotiation to
dynamically update
Ack Ratio (as per patch#5). The batch itself works; the problem is that the
current
g the current use to Ack Ratio.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h |1 +
net/dccp/feat.c | 47 +++
2 files changed, 48 insertions(+)
--- a/net/dccp/dccp.h
+++ b/net/dccp/dccp.h
@@ -421,6 +421,7 @@ static
| Your code doesn't quite match your description as removing one line of
| code from a function. I'm assuming this is OK but raising it just in
| case.
|
Thanks - I have put the hunk below into the earlier patch
"[DCCP]: Cleanup routines for feature negotiation"
The function
Quoting Ian McDonald:
| > --- a/include/linux/dccp.h
| > +++ b/include/linux/dccp.h
| > @@ -372,7 +372,6 @@ static inline unsigned int dccp_hdr_len(
| > #define DCCPF_INITIAL_SEQUENCE_WINDOW 100
| > #define DCCPF_INITIAL_ACK_RATIO 2
| > #define DCCPF_INITIAL
Ian -
| Hmmm I had multiple problems when the default window was 100 when
| testing in the past - from memory particularly with long RTT, low loss
| links. Try putting 100 ms delay on a 100 Mbits/link and see what
| happens...
|
| See 7.5.2 of RFC4340:
|
| Or am I missing something
4340 have been used. Type checking is important since some of the sysctls
now directly act on the feature-negotiation process.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |7 ---
net/dccp/dccp.h |4
net/dccp/feat.c | 12 +++
on).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |3 ---
net/dccp/dccp.h |3 +--
net/dccp/diag.c |2 +-
net/dccp/input.c | 22 --
net/dccp/minisocks.c |1 -
net/dccp/options.c |5 ++---
net/dccp/proto.c
not always have the function name in the output
line. I have refrained
from naming it dccp_pr_debug_dog ...
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h|2
net/dccp/feat.c| 151 +
net/dccp/feat.h
) has already updated the
local/remote Sequence
Window feature of the server, so it is using the latest values,
* dccp_check_req() (used on reqsk's) does not need AWL/SWL and performs more
stringent checks.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
Documentation/net
negotiation is
that then this would be in software interrupt context. Besides, if the host
advertises CCIDs during negotiation, it should have them available in case
the peer agrees with one of the advertised CCIDs.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccid.c
: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h | 19 -
net/dccp/feat.c | 71 +++
net/dccp/feat.h |2 -
3 files changed, 61 insertions(+), 31 deletions(-)
--- a/net/dccp/feat.h
+++ b/net/dccp/feat.h
@@ -
updated via the NDP
activation handler.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
Documentation/networking/dccp.txt |3 ---
net/dccp/dccp.h |1 -
net/dccp/minisocks.c |1 -
net/dccp/sysctl.c |8
4 files chang
the
closing
states.
This allows to remove tests which were previously necessary to protect against
referencing
a socket in the listening state (in CCID3), but which now have become redundant.
Thanks to Ian McDonald for discussion on this.
Signed-off-by: Gerrit Renker <[EMAIL PROTEC
code
where CCIDs are loaded).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
Documentation/networking/dccp.txt | 13 +++--
include/linux/dccp.h |3 ---
net/dccp/ccid.c | 14 --
net/dccp/ccid.h |5 -
ne
[DCCP]: Clean up remains from old feature-negotiation infrastructure
The code removed by this patch is no longer referenced or used, the added
lines update documentation and copyrights.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c
corresponding FIXME
has been removed.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/input.c | 28
1 file changed, 24 insertions(+), 4 deletions(-)
--- a/net/dccp/input.c
+++ b/net/dccp/input.c
@@ -382,8 +382,13 @@ static int dccp_rcv_r
() uses the feature-negotiation list on dreq to
sort out the initialisation values for the different features of the child
socket; and purges this queue after usei (the `req' argument to
openreq_child
was kept constant, however).
Signed-off-by: Gerrit Renker <[EMAIL P
[DCCP]: Integration of dynamic feature activation - part 1 (socket setup)
This first patch out of three replaces the hardcoded default settings with
initialisation code for the dynamic feature negotiation.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/proto.c
feature is meant.
Several handlers are provided already, new handlers can easily be added.
The initialisation is now fully dynamic, i.e. CCIDs are activated only
after the feature negotiation. The integration of this dynamic activation
is done in the subsequent patches.
Signed-off-by: Gerrit
This batch finishes the feature-negotiation during connection setup. The
remaining
batch considers exchanging FN options in established state, which is a different
kettle of fish.
Patch #1: Introduces feature-activation handlers to dynamically
activate feature values after negotiation.
t values of features.
The table is variable-length, the reserved (and hence for feature-negotiation
invalid, confirmed
by considering section 19.4 of RFC 4340) feature number of 0 is used to mark
the end of the table.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Acked-by: Ian McDonald
Quoting Arnaldo Carvalho de Melo:
| > + { /* !is_local: dependencies of the remote (RX) CCID */
| > + { DCCPF_SEND_ACK_VECTOR, true, true, 1 },
| > + { 0, 0, 0, 0 }
|
| designated initializers, please, that way we can avoid the zeroes
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
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h|2 +
net/dccp/feat
ations have been put into feat.h.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Acked-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/feat.h|2 ++
net/dccp/options.c | 21 ++---
2 files changed, 16 insertions(+), 7 deletions(-)
--- a/net/dccp/feat.h
+++
more
than
ample anyway, so the FIXME could even remain until there is a `high-speed' CCID.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Acked-by: Ian McDonald <[EMAIL PROTECTED]>
---
include/linux/dccp.h |4 +---
net/dccp/feat.h | 19 +++
Quoting Ian McDonald:
| > @@ -124,4 +124,5 @@ extern void dccp_encode_value_var(const
| > extern u64 dccp_decode_value_var(const u8 *bf, const u8 len);
| >
| > extern int dccp_insert_option_mandatory(struct sk_buff *skb);
| > +extern int dccp_insert_fn_opt(struct sk_buff *skb, u8, u8, u8
basis, which
overrides the defaults set by the global sysctl variables for TX/RX CCIDs.
To make full use of this facility, the remaining patches of this patch set are
needed, which track dependencies and activate negotiated feature values.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
A
called after the user has made
all other
registrations for changing default values of features.
The table is variable-length, the reserved (and hence for feature-negotiation
invalid, confirmed
by considering section 19.4 of RFC 4340) feature number of 0 is used to mark
the end of the table.
Signe
| I don't quite understand why you're defining on and off when there is
| built in stuff for the kernel for true/false. You then pass the
| address of the on/off - not the value. Maybe you might like to explain
| the rationale behind this as I'm probably missing something.
No you are not - than
| > [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.
|
| I presume this is to support more CCIDs i
DQUOT)
which makes sense in terms of using more than the `fair share' of bandwidth.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |2 ++
net/dccp/input.c | 48 +++-
2 files changed, 41 insertions(+),
Following Arnaldos suggestion and after re-reading Documentation/CodingStyle
I went through all the test tree patches, with the following changes (diff at
end of message):
* handling of `?' operator
* when one if/else statement is in braces, the other branches also should use
braces
* add
| Yes you are correct. I misread the code.
|
| However - I'd prefer another constant to match last in enum at the
| same point as the declaration of the enum. This way if values are
| added other code doesn't break. I've seen this done before quite a few
| times. It is dangerous on relying o
| Does this affect DCCP on IP v6? If it does, it should be fixed also.
| If it doesn't then can you add that to the changelog to stop others
| asking also.
This patch is for IPv4 only - I have checked, dccp_v6_err uses a different
mechanism, so the problem fixed by this patch does not seem to ap
| > +static u8 dccp_reset_code_convert(const u8 code)
| > +{
| > + const u8 error_code[] = {
| > + [DCCP_RESET_CODE_CLOSED] = 0, /* normal
termination */
| > + [DCCP_RESET_CODE_UNSPECIFIED]= 0, /* nothing known */
| > + [DCCP_RESET_CODE
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 : (val
returns an
appropriate Reset code or 0, which is then used by dccp_parse_options.
Old code, which is no longer used or referenced, has been removed.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c| 220 ++---
net/dccp/
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h|2 +
net/dccp/feat.c| 57 +
net/dccp/options.c | 45 -
3 files changed, 59 insertions(+), 45 deletions(-)
--- a/ne
provide Value space for at most 255 - 2 = 253 bytes due to the
Type/Length fields.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c |8
net/dccp/ackvec.h |6 +++---
net/dccp/feat.h|1 +
net/dccp/options.c | 39 +++-
options, since
new code to process these is mostly there already; related references have been
commented out.
The code for processing Change options follows in the next patch.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c
[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
information when processing
erroneous options.
This support will be made use of by the next two patches which process Change/
Confirm feature-negotiation options.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/options.c | 18 --
1 file changed, 12 insertions
efficiency by reducing the number of tests each packet has to
go through:
- Ack Vectors are, as before, sent if the packet is neither a Data or a
Request packet;
- a previous issue is corrected - feature negotiation options are allowed on
DataAck
packets (5.8).
Signed-off-by: Gerrit Renker
e are for instance many comparisons between signed
integer and u64, getting one of these wrong will twist the outcome. So, I'd
prefer
to wait for the warnings first and do a separate patch later if CCID3 really
runs
into that limit.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
--
[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
data type
for
NDP up to u64. I didn't want to add this to this patch also, since various other
parts (e.g. CCID3) implicitly rely on u32. For the moment, u32 seems to more
than
ample anyway, so the FIXME could even remain until there is a `high-speed' CCID.
Signed-off-by: Gerrit Renk
negotiation code, hence declarations have been put into feat.h.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.h|2 ++
net/dccp/options.c | 21 ++---
2 files changed, 16 insertions(+), 7 deletions(-)
--- a/net/dccp/feat.h
+++ b/net/dccp/
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 sa
| 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 timestampin
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
| > When the Reset closing the connection arrives, the same shutdown mask is
| > set as in TCP. What I thus think you could do as a
| > test-for-end-of-connection is to test whether the socket descriptor is
| > still read/writeable.
|
| If it works like TCP, shutdown-for-recv will make the s
on Penalty, maps into "Quota exceeded" (EDQUOT)
which makes sense in terms of using more than the `fair share' of bandwidth.
The patch was found to solve the problem reported by Rémi Denis-Courmont - many
thanks.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
ne
()
has not been called in these states, hence the sequence window is 0..0.
This patch fixes the problem by adding the REQUEST state as another exemption
to the window check. The error reporting now works as expected on connecting.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ipv
changing dccp_hdr_seq to take a struct dccp_hdr as
argument. Verified that the correct sequence number is now reported in the
error handler.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h | 10 --
net/dccp/ipv4.c |4 ++--
net/dccp/ipv6.c
Arnaldo,
can you please look at these patches with priority and consider these or a
variation
for mainline - it is in response to the comment made by Remi about handling
non-blocking
connect by looking at socket error codes.
Patches #1/#2 are related, but not the main point. They fix the error
Quoting Arnaldo Carvalho de Melo:
| > +static u8 builtin_ccids[] = {
| > + DCCPC_CCID2,/* CCID2 is supported by default */
| > +#if defined(CONFIG_IP_DCCP_CCID3) || defined(CONFIG_IP_DCCP_CCID3_MODULE)
| > + DCCPC_CCID3,
| > +#endif
| > +};
|
| This considers only code
| Other than that, and apart from pending DCCP service code support I am happy
| to announce that the official VLC development tree now support DCCP
| out-of-the-box with RTP.
|
Great! That means that the old hack (which you commented on earlier) on
http://www.erg.abdn.ac.uk/users/gerrit/d
201 - 300 of 1055 matches
Mail list logo