[rtp] Describe the struct in a way that it will work for Big Endian too

Play with the right bits on PPC.
This commit is contained in:
Holger Hans Peter Freyther 2010-02-26 13:12:41 +01:00
parent 1ed97629ad
commit 2890d102c7
1 changed files with 10 additions and 0 deletions

View File

@ -19,6 +19,7 @@
*
*/
#include <endian.h>
#include <errno.h>
#include <unistd.h>
#include <sys/socket.h>
@ -63,12 +64,21 @@ struct rtcp_hdr {
/* according to RFC 3550 */
struct rtp_hdr {
#if __BYTE_ORDER == __LITTLE_ENDIAN
u_int8_t csrc_count:4,
extension:1,
padding:1,
version:2;
u_int8_t payload_type:7,
marker:1;
#elif __BYTE_ORDER == __BIG_ENDIAN
u_int8_t version:2,
padding:1,
extension:1,
csrc_count:4;
u_int8_t marker:1,
payload_type:7;
#endif
u_int16_t sequence;
u_int32_t timestamp;
u_int32_t ssrc;