cvs commit: src/sys/netinet sctp_constants.h sctp_indata.c sctp_input.c sctp_output.c sctp_uio.h sctputil.c sctputil.h

Randall Stewart rrs at FreeBSD.org
Sat Nov 11 15:59:03 UTC 2006


rrs         2006-11-11 15:59:02 UTC

  FreeBSD src repository

  Modified files:
    sys/netinet          sctp_constants.h sctp_indata.c 
                         sctp_input.c sctp_output.c sctp_uio.h 
                         sctputil.c sctputil.h 
  Log:
  Turns out we would reset the TSN seq counter during
  a colliding INIT. This if fine except when we have
  data outstanding... we basically reset it to the
  previous value it was.. so then we end up assigning
  the same TSN to two different data chunks.
  This patch:
  
  1) Finds a missing lock for when we change the stream
     numbers during COOKIE and INIT-ACK processing.. we
     were NOT locking the send_buffer.. which COULD cause
     problems (found by inspection looking for <2>)
  
  2) Fixes a case during a colliding INIT where we incorrectly
     reset the sending Sequence thus in some cases duplicately
     assigning a TSN.
  
  3) Additional enhancments to logging so we can see strm/tsn in
     the receiver AND new tracking to watch what the sender
     is doing with TSN and STRM seq's.
  
  Approved by:    gnn
  
  Revision  Changes    Path
  1.2       +3 -1      src/sys/netinet/sctp_constants.h
  1.4       +2 -2      src/sys/netinet/sctp_indata.c
  1.7       +23 -7     src/sys/netinet/sctp_input.c
  1.5       +14 -8     src/sys/netinet/sctp_output.c
  1.4       +2 -0      src/sys/netinet/sctp_uio.h
  1.6       +5 -1      src/sys/netinet/sctputil.c
  1.3       +1 -1      src/sys/netinet/sctputil.h


More information about the cvs-src mailing list