ROHC compression/decompression library
Data Structures | Macros | Enumerations | Variables
feedback.h File Reference

ROHC feedback definitions and formats. More...

#include "rohc.h"
#include "config.h"
#include <stdbool.h>
#include <stdint.h>
#include <stddef.h>
Include dependency graph for feedback.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rohc_feedback_2_rfc3095
 
struct  rohc_feedback_2_rfc6846
 
struct  rohc_feedback_opt_charac
 

Macros

#define ROHC_FEEDBACK_OPT_MSN_NOT_VALID   ROHC_FEEDBACK_OPT_SN_NOT_VALID
 
#define ROHC_FEEDBACK_OPT_ACKNUMBER_NOT_VALID   ROHC_FEEDBACK_OPT_SN_NOT_VALID
 
#define ROHC_FEEDBACK_OPT_MSN   ROHC_FEEDBACK_OPT_SN
 
#define ROHC_FEEDBACK_OPT_MAX_OCCURS   100U
 Max occurrences of a feedback option in one feedback packet. More...
 

Enumerations

enum  rohc_feedback_type { ROHC_FEEDBACK_1 = 1, ROHC_FEEDBACK_2 = 2 }
 
enum  rohc_feedback_ack_type { ROHC_FEEDBACK_ACK = 0, ROHC_FEEDBACK_NACK = 1, ROHC_FEEDBACK_STATIC_NACK = 2, ROHC_FEEDBACK_RESERVED = 3 }
 
enum  rohc_feedback_crc_t { ROHC_FEEDBACK_WITH_NO_CRC = 0, ROHC_FEEDBACK_WITH_CRC_OPT = 1, ROHC_FEEDBACK_WITH_CRC_BASE = 2 }
 Whether the feedback is protected by a CRC or not. More...
 
enum  rohc_feedback_opt {
  ROHC_FEEDBACK_OPT_CRC = 1, ROHC_FEEDBACK_OPT_REJECT = 2, ROHC_FEEDBACK_OPT_SN_NOT_VALID = 3, ROHC_FEEDBACK_OPT_SN = 4,
  ROHC_FEEDBACK_OPT_CLOCK = 5, ROHC_FEEDBACK_OPT_JITTER = 6, ROHC_FEEDBACK_OPT_LOSS = 7, ROHC_FEEDBACK_OPT_CV_REQUEST = 8,
  ROHC_FEEDBACK_OPT_CONTEXT_MEMORY = 9, ROHC_FEEDBACK_OPT_CLOCK_RESOLUTION = 10, ROHC_FEEDBACK_OPT_UNKNOWN_11 = 11, ROHC_FEEDBACK_OPT_UNKNOWN_12 = 12,
  ROHC_FEEDBACK_OPT_UNKNOWN_13 = 13, ROHC_FEEDBACK_OPT_UNKNOWN_14 = 14, ROHC_FEEDBACK_OPT_UNKNOWN_15 = 15, ROHC_FEEDBACK_OPT_MAX
}
 

Variables

static const struct rohc_feedback_opt_charac rohc_feedback_opt_charac [ROHC_FEEDBACK_OPT_MAX]
 

Detailed Description

ROHC feedback definitions and formats.

Author
Didier Barvaux didie.nosp@m.r@ba.nosp@m.rvaux.nosp@m..org

Macro Definition Documentation

◆ ROHC_FEEDBACK_OPT_ACKNUMBER_NOT_VALID

#define ROHC_FEEDBACK_OPT_ACKNUMBER_NOT_VALID   ROHC_FEEDBACK_OPT_SN_NOT_VALID

The Feedback ACKNUMBER-NOT-VALID option (ROHCv2 profiles)

◆ ROHC_FEEDBACK_OPT_MAX_OCCURS

#define ROHC_FEEDBACK_OPT_MAX_OCCURS   100U

Max occurrences of a feedback option in one feedback packet.

Even if the standard says that some options may be present multiple times, don't allow more than a raisonable occurrences. It allows the library to protect itself against abuses.

◆ ROHC_FEEDBACK_OPT_MSN

#define ROHC_FEEDBACK_OPT_MSN   ROHC_FEEDBACK_OPT_SN

The Feedback MSN option (TCP profile)

◆ ROHC_FEEDBACK_OPT_MSN_NOT_VALID

#define ROHC_FEEDBACK_OPT_MSN_NOT_VALID   ROHC_FEEDBACK_OPT_SN_NOT_VALID

The Feedback MSN-NOT-VALID option (TCP profile)

Enumeration Type Documentation

◆ rohc_feedback_ack_type

The type of acknowledgement

Enumerator
ROHC_FEEDBACK_ACK 

The classical ACKnowledgement

ROHC_FEEDBACK_NACK 

The Negative ACKnowledgement

ROHC_FEEDBACK_STATIC_NACK 

The Negative STATIC ACKnowledgement

ROHC_FEEDBACK_RESERVED 

reserved (MUST NOT be used for parsability)

◆ rohc_feedback_crc_t

Whether the feedback is protected by a CRC or not.

Enumerator
ROHC_FEEDBACK_WITH_NO_CRC 

No CRC protects the feedback

ROHC_FEEDBACK_WITH_CRC_OPT 

A CRC option protects the feedback

ROHC_FEEDBACK_WITH_CRC_BASE 

A base header CRC protects the feedback

◆ rohc_feedback_opt

The ROHC feedback options

Enumerator
ROHC_FEEDBACK_OPT_CRC 

The Feedback CRC option

ROHC_FEEDBACK_OPT_REJECT 

The Feedback REJECT option

ROHC_FEEDBACK_OPT_SN_NOT_VALID 

The Feedback SN-NOT-VALID option

ROHC_FEEDBACK_OPT_SN 

The Feedback SN option

ROHC_FEEDBACK_OPT_CLOCK 

The Feedback CLOCK option

ROHC_FEEDBACK_OPT_JITTER 

The Feedback JITTER option

ROHC_FEEDBACK_OPT_LOSS 

The Feedback LOSS option

ROHC_FEEDBACK_OPT_CV_REQUEST 

The Feedback CV-REQUEST option

ROHC_FEEDBACK_OPT_CONTEXT_MEMORY 

The Feedback CONTEXT_MEMORY option

ROHC_FEEDBACK_OPT_CLOCK_RESOLUTION 

The Feedback CLOCK_RESOLUTION option

ROHC_FEEDBACK_OPT_UNKNOWN_11 

Unknown option with value 11

ROHC_FEEDBACK_OPT_UNKNOWN_12 

Unknown option with value 12

ROHC_FEEDBACK_OPT_UNKNOWN_13 

Unknown option with value 13

ROHC_FEEDBACK_OPT_UNKNOWN_14 

Unknown option with value 14

ROHC_FEEDBACK_OPT_UNKNOWN_15 

Unknown option with value 15

ROHC_FEEDBACK_OPT_MAX 

The max number of feedback options

◆ rohc_feedback_type

The type of ROHC feedback

Enumerator
ROHC_FEEDBACK_1 

ROHC FEEDBACK-1

ROHC_FEEDBACK_2 

ROHC FEEDBACK-2

Variable Documentation

◆ rohc_feedback_opt_charac

Feedback options capacities