netwib doc_html (version 5.39.0)

## main index

## section index

    /*-------------------------------------------------------------*/
    /* TCP header */
    typedef struct {
      netwib_port src;
      netwib_port dst;
      netwib_uint32 seqnum;
      netwib_uint32 acknum;
      netwib_uint8 doff;
      netwib_bool reserved1;
      netwib_bool reserved2;
      netwib_bool reserved3;
      netwib_bool reserved4;
      netwib_bool cwr; /* RFC 3168 */
      netwib_bool ece; /* RFC 3168 */
      netwib_bool urg;
      netwib_bool ack;
      netwib_bool psh;
      netwib_bool rst;
      netwib_bool syn;
      netwib_bool fin;
      netwib_uint16 window;
      netwib_uint16 check;
      netwib_uint16 urgptr;
      netwib_bufext opts; /* TCP options as defined in tcpopts.h */
    } netwib_tcphdr;
    typedef const netwib_tcphdr netwib_consttcphdr;
    #define NETWIB_TCPHDR_MINLEN 20
    #define NETWIB_TCPHDR_MAXLEN 64

    /*-------------------------------------------------------------*/
    /* Name : netwib_tcphdr_initdefault
       Description :
         Initialize a netwib_tcphdr with default values.
       Input parameter(s) :
       Input/output parameter(s) :
       Output parameter(s) :
         *ptcphdr : netwib_tcphdr to initialize
       Normal return values :
         NETWIB_ERR_OK : ok
    */
    netwib_err netwib_tcphdr_initdefault(netwib_tcphdr *ptcphdr);

    /*-------------------------------------------------------------*/
    /* Name : netwib_pkt_append_tcphdr
       Description :
         Initialize physical data from a netwib_tcphdr.
       Input parameter(s) :
         *ptcphdr : netwib_tcphdr
       Input/output parameter(s) :
         *ppht : buffer to initialize
       Output parameter(s) :
       Normal return values :
         NETWIB_ERR_OK : ok
       Note : field doff is eventually recomputed.
    */
    netwib_err netwib_pkt_append_tcphdr(netwib_consttcphdr *ptcphdr,
                                        netwib_buf *ppkt);
    netwib_err netwib_pkt_prepend_tcphdr(netwib_consttcphdr *ptcphdr,
                                         netwib_buf *ppkt);

    /*-------------------------------------------------------------*/
    /* Name : netwib_pkt_decode_tcphdr
       Description :
         Decode a netwib_tcphdr from physical data.
       Input parameter(s) :
         *ppkt : buffer containing physical data
       Input/output parameter(s) :
       Output parameter(s) :
         *ptcphdr : netwib_tcphdr contained in pkt
         *pskipsize : size to use to skip this header
       Normal return values :
         NETWIB_ERR_OK : ok
         NETWIB_ERR_NOTCONVERTED : pkt could not be decoded
         NETWIB_ERR_DATAMISSING : pkt was not big enough
    */
    netwib_err netwib_pkt_decode_tcphdr(netwib_constbuf *ppkt,
                                        netwib_tcphdr *ptcphdr,
                                        netwib_uint32 *pskipsize);

## main index

## section index