Handle decoding of TCP Selective ACKnowledgement (SACK) option.  
More...
#include "tcp_sack.h"
#include "rohc_utils.h"
 
◆ d_tcp_sack_block()
  
  
      
        
          | static int d_tcp_sack_block  | 
          ( | 
          const struct rohc_decomp_ctxt *const  | 
          context,  | 
         
        
           | 
           | 
          const uint8_t *const  | 
          data,  | 
         
        
           | 
           | 
          const size_t  | 
          data_len,  | 
         
        
           | 
           | 
          sack_block_t *const  | 
          sack_block  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
Parse a SACK block of the TCP SACK option. 
See RFC6846 page 68 (and RFC2018 for Selective Acknowledgement option)
- Parameters
 - 
  
     | context | The decompression context  | 
     | data | The data to parse  | 
     | data_len | The length of the data to parse  | 
    | [out] | sack_block | The SACK block bits extracted from ROHC packet  | 
  
   
- Returns
 - The number of data bytes parsed, -1 if data is malformed 
 
 
 
◆ d_tcp_sack_parse()
      
        
          | int d_tcp_sack_parse  | 
          ( | 
          const struct rohc_decomp_ctxt *const  | 
          context,  | 
        
        
           | 
           | 
          const uint8_t *const  | 
          data,  | 
        
        
           | 
           | 
          const size_t  | 
          data_len,  | 
        
        
           | 
           | 
          struct d_tcp_opt_sack *const  | 
          opt_sack  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Parse the SACK TCP option. 
See RFC6846 page 68 (and RFC2018 for Selective Acknowledgement option)
- Parameters
 - 
  
     | context | The decompression context  | 
     | data | The ROHC data to parse  | 
     | data_len | The length of the ROHC data to parse  | 
    | [out] | opt_sack | The information of SACK option extracted from the packet  | 
  
   
- Returns
 - The number of ROHC bytes parsed, -1 if packet is malformed 
 
 
 
◆ d_tcp_sack_pure_lsb()
  
  
      
        
          | static int d_tcp_sack_pure_lsb  | 
          ( | 
          const struct rohc_decomp_ctxt *const  | 
          context,  | 
         
        
           | 
           | 
          const uint8_t *const  | 
          data,  | 
         
        
           | 
           | 
          const size_t  | 
          data_len,  | 
         
        
           | 
           | 
          uint32_t *const  | 
          sack_field  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
Parse a SACK field of a SACK block of the TCP SACK option. 
See RFC6846 page 67 (and RFC2018 for Selective Acknowledgement option)
- Parameters
 - 
  
     | context | The decompression context  | 
     | data | The ROHC data to parse  | 
     | data_len | The length of the ROHC data to parse  | 
    | [out] | sack_field | The uncompressed SACK field  | 
  
   
- Returns
 - The number of data bytes parsed, -1 if data is malformed