Fix metadata corruption

Use separate pointer for payload to make sure mblk->b_rptr is not
advanced (which breaks the use of rtp_get_* macros that assume
mblk->b_rptr is pointing to the RTP header, not the payload).

Committed by: Max <msuraev@sysmocom.de>

Change-Id: I205630e1da98693ba0ac25e86e21780284185077
Related: OS#1802
diff --git a/src/trau/osmo_ortp.c b/src/trau/osmo_ortp.c
index fc63e7f..e7c6fc4 100644
--- a/src/trau/osmo_ortp.c
+++ b/src/trau/osmo_ortp.c
@@ -145,14 +145,15 @@
 
 static inline bool recv_with_cb(struct osmo_rtp_socket *rs)
 {
+	uint8_t *payload;
 	mblk_t *mblk = rtp_session_recvm_with_ts(rs->sess, rs->rx_user_ts);
 	if (!mblk)
 		return false;
 
-	int plen = rtp_get_payload(mblk, &mblk->b_rptr);
+	int plen = rtp_get_payload(mblk, &payload);
 	/* hand into receiver */
 	if (rs->rx_cb && plen > 0)
-		rs->rx_cb(rs, mblk->b_rptr, plen, rtp_get_seqnumber(mblk),
+		rs->rx_cb(rs, payload, plen, rtp_get_seqnumber(mblk),
 			  rtp_get_timestamp(mblk), rtp_get_markbit(mblk));
 	freemsg(mblk);
 	if (plen > 0)