SmolRTSP  0.1.3
A small, portable, extensible RTSP 1.0 implementation in C99
response.h File Reference

An RTSP response. More...

#include <smolrtsp/priv/compiler_attrs.h>
#include <smolrtsp/types/error.h>
#include <smolrtsp/types/header_map.h>
#include <smolrtsp/types/message_body.h>
#include <smolrtsp/types/response_line.h>
#include <stdbool.h>
#include <slice99.h>
Include dependency graph for response.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  SmolRTSP_Response
 An RTSP response. More...
 

Functions

SmolRTSP_Response SmolRTSP_Response_uninit (void) SMOLRTSP_PRIV_MUST_USE
 Returns an RTSP response suitable for being parsed.
 
ssize_t SmolRTSP_Response_serialize (const SmolRTSP_Response *restrict self, SmolRTSP_Writer w) SMOLRTSP_PRIV_MUST_USE
 Serialises self into w. More...
 
SmolRTSP_ParseResult SmolRTSP_Response_parse (SmolRTSP_Response *restrict self, CharSlice99 input) SMOLRTSP_PRIV_MUST_USE
 Parses data to self. More...
 
bool SmolRTSP_Response_eq (const SmolRTSP_Response *restrict lhs, const SmolRTSP_Response *restrict rhs) SMOLRTSP_PRIV_MUST_USE
 Tests lhs and rhs for equality. More...
 

Detailed Description

An RTSP response.

Function Documentation

◆ SmolRTSP_Response_eq()

bool SmolRTSP_Response_eq ( const SmolRTSP_Response *restrict  lhs,
const SmolRTSP_Response *restrict  rhs 
)

Tests lhs and rhs for equality.

Precondition
lhs != NULL
rhs != NULL

◆ SmolRTSP_Response_parse()

SmolRTSP_ParseResult SmolRTSP_Response_parse ( SmolRTSP_Response *restrict  self,
CharSlice99  input 
)

Parses data to self.

Precondition
self != NULL

◆ SmolRTSP_Response_serialize()

ssize_t SmolRTSP_Response_serialize ( const SmolRTSP_Response *restrict  self,
SmolRTSP_Writer  w 
)

Serialises self into w.

If CSeq and Content-Length are not present in SmolRTSP_Response.header_map, they will be taken from SmolRTSP_Response.cseq and SmolRTSP_Response.body, respectively, and serialised as first headers automatically.

Parameters
[in]selfThe instance to be serialised.
[in]wThe writer to be provided with serialised data.
Returns
The number of bytes written or a negative value on error.
Precondition
self != NULL
w.self && w.vptr