• Gerrit Renker's avatar
    dccp ccid-2: Separate option parsing from CCID processing · 7e87fe84
    Gerrit Renker authored
    This patch replaces an almost identical replication of code: large parts
    of dccp_parse_options() re-appeared as ccid2_ackvector() in ccid2.c.
    
    Apart from the duplication, this caused two more problems:
     1. CCIDs should not need to be concerned with parsing header options;
     2. one can not assume that Ack Vectors appear as a contiguous area within an
        skb, it is legal to insert other options and/or padding in between. The
        current code would throw an error and stop reading in such a case.
    
    Since Ack Vectors provide CCID-specific information, they are now processed
    by the CCID directly, separating this functionality from the main DCCP code.
    Signed-off-by: default avatarGerrit Renker <gerrit@erg.abdn.ac.uk>
    7e87fe84
ccid2.c 18.7 KB