Wed Aug 7 17:16:14 2019

Asterisk developer's documentation


unaligned.h File Reference

Handle unaligned data access. More...

Go to the source code of this file.

Functions

static unsigned short get_unaligned_uint16 (const void *p)
static unsigned int get_unaligned_uint32 (const void *p)
static uint64_t get_unaligned_uint64 (const void *p)
static void put_unaligned_uint16 (void *p, unsigned short datum)
static void put_unaligned_uint32 (void *p, unsigned int datum)
static void put_unaligned_uint64 (void *p, uint64_t datum)

Detailed Description

Handle unaligned data access.

Definition in file unaligned.h.


Function Documentation

static unsigned short get_unaligned_uint16 ( const void *  p  )  [inline, static]

Definition at line 44 of file unaligned.h.

Referenced by dump_short(), and iax_parse_ies().

00045 {
00046    const struct { unsigned short d; } __attribute__((packed)) *pp = p;
00047 
00048    return pp->d;
00049 }

static unsigned int get_unaligned_uint32 ( const void *  p  )  [inline, static]

Definition at line 38 of file unaligned.h.

Referenced by ast_event_get_ie_bitflags(), ast_event_get_ie_uint(), ast_event_iterator_get_ie_bitflags(), ast_event_iterator_get_ie_uint(), dump_datetime(), dump_int(), dump_prov_flags(), iax_parse_ies(), and region_check_fences().

00039 {
00040    const struct { unsigned int d; } __attribute__((packed)) *pp = p;
00041 
00042    return pp->d;
00043 }

static uint64_t get_unaligned_uint64 ( const void *  p  )  [inline, static]

Definition at line 32 of file unaligned.h.

Referenced by dump_versioned_codec(), and iax_parse_ies().

00033 {
00034    const struct { uint64_t d; } __attribute__((packed)) *pp = p;
00035    return pp->d;
00036 }

static void put_unaligned_uint16 ( void *  p,
unsigned short  datum 
) [inline, static]

Definition at line 65 of file unaligned.h.

00066 {
00067    struct { unsigned short d; } __attribute__((packed)) *pp = p;
00068 
00069    pp->d = datum;
00070 }

static void put_unaligned_uint32 ( void *  p,
unsigned int  datum 
) [inline, static]

Definition at line 58 of file unaligned.h.

Referenced by __ast_alloc_region(), ast_rtp_raw_write(), and multicast_rtp_write().

00059 {
00060    struct { unsigned int d; } __attribute__((packed)) *pp = p;
00061 
00062    pp->d = datum;
00063 }

static void put_unaligned_uint64 ( void *  p,
uint64_t  datum 
) [inline, static]

Definition at line 51 of file unaligned.h.

Referenced by iax_ie_append_versioned_uint64().

00052 {
00053    struct { uint64_t d; } __attribute__((packed,may_alias)) *pp = p;
00054 
00055    pp->d = datum;
00056 }


Generated on 7 Aug 2019 for Asterisk - The Open Source Telephony Project by  doxygen 1.6.1