14 #include "../cmemory.h"
25 enum gtpu_ext_type_t {
26 GTPU_EXT_NO_MORE_EXTS = 0,
27 GTPU_EXT_SVC_CLASS_INDICATOR = 32,
28 GTPU_EXT_UDP_PORT = 64,
29 GTPU_EXT_PDCP_PDU_NUMBER = 192,
85 pack(uint8_t *buf,
size_t buflen);
92 unpack(uint8_t *buf,
size_t buflen);
109 set_length(
size_t len);
116 get_next_hdr_type()
const;
123 set_next_hdr_type(uint8_t type);
134 operator<< (std::ostream& os,
gtpuext const& ext)
137 <<
"length=" << (
unsigned int)ext.get_length() <<
" "
138 <<
"nexthdr=" << (
unsigned int)ext.get_next_hdr_type() <<
" "
171 uint16_t udp_port = 0);
200 uint8_t *buf,
size_t buflen);
210 get_udp_port()
const;
217 set_udp_port(uint16_t udp_port);
229 os <<
"gtpuext_udp_port{"
230 <<
"length=" << (
unsigned int)ext.get_length() <<
" "
231 <<
"udpport=" << (
unsigned int)ext.get_udp_port() <<
" "
232 <<
"nexthdr=" << (
unsigned int)ext.get_next_hdr_type() <<
" "
254 uint16_t pdcp_pdu_number;
266 uint16_t pdcp_pdu_number = 0);
295 uint8_t *buf,
size_t buflen);
305 get_pdcp_pdu_number()
const;
312 set_pdcp_pdu_number(uint16_t pdcp_pdu_number);
324 os <<
"gtpuext_pdcp_pdu_number{"
325 <<
"length=" << (
unsigned int)ext.get_length() <<
" "
326 <<
"pdcppdunumber=" << (
unsigned int)ext.get_pdcp_pdu_number() <<
" "
327 <<
"nexthdr=" << (
unsigned int)ext.get_next_hdr_type() <<
" "
352 uint8_t svc_class_ind;
365 uint8_t svc_class_ind = 0);
394 uint8_t *buf,
size_t buflen);
404 get_svc_class_ind()
const;
411 set_svc_class_ind(uint8_t svc_class_ind);
423 os <<
"gtpuext_svc_class_indicator{"
424 <<
"length=" << (
unsigned int)ext.get_length() <<
" "
425 <<
"svcclassind=" << (
unsigned int)ext.get_svc_class_ind() <<
" "
426 <<
"nexthdr=" << (
unsigned int)ext.get_next_hdr_type() <<
" "
Definition: gtpuext.h:157
Definition: gtpuext.h:350
virtual void pack(uint8_t *buf, size_t buflen)
Copies content of this cmemory instance to specified buffer.
Definition: gtpuext.cc:65
Definition: gtpuext.h:152
Definition: gtpuext.h:345
C++ abstraction for malloc'ed memory areas.
Definition: cmemory.h:44
Definition: gtpuext.h:252
virtual void unpack(uint8_t *buf, size_t buflen)
Copies content of specified buffer into this cmemory instance .
Definition: gtpuext.cc:73
Definition: gtpuext.h:247