diff --git a/include/osmocore/protocol/gsm_08_58.h b/include/osmocore/protocol/gsm_08_58.h
index 7dc3569..5fe332e 100644
--- a/include/osmocore/protocol/gsm_08_58.h
+++ b/include/osmocore/protocol/gsm_08_58.h
@@ -49,6 +49,14 @@
 	uint8_t	data[0];
 } __attribute__ ((packed));
 
+/* Chapter 8.5 */
+struct abis_rsl_cchan_hdr {
+	struct abis_rsl_common_hdr c;
+	uint8_t	ie_chan;
+	uint8_t	chan_nr;
+	uint8_t	data[0];
+} __attribute__ ((packed));
+
 
 /* Chapter 9.1 */
 #define ABIS_RSL_MDISC_RLL		0x02
@@ -88,6 +96,7 @@
 	RSL_MT_PAGING_CMD,
 	RSL_MT_IMMEDIATE_ASSIGN_CMD,
 	RSL_MT_SMS_BC_REQ,
+	RSL_MT_CHAN_CONF,		/* non-standard element */
 	/* empty */
 	RSL_MT_RF_RES_IND			= 0x19,
 	RSL_MT_SACCH_FILL,
diff --git a/include/osmocore/rsl.h b/include/osmocore/rsl.h
index 99b90d6..cd84057 100644
--- a/include/osmocore/rsl.h
+++ b/include/osmocore/rsl.h
@@ -7,6 +7,8 @@
 
 void rsl_init_rll_hdr(struct abis_rsl_rll_hdr *dh, uint8_t msg_type);
 
+void rsl_init_cchan_hdr(struct abis_rsl_cchan_hdr *ch, uint8_t msg_type);
+
 extern const struct tlv_definition rsl_att_tlvdef;
 #define rsl_tlv_parse(dec, buf, len)     \
 			tlv_parse(dec, &rsl_att_tlvdef, buf, len, 0, 0)
@@ -22,6 +24,10 @@
 /* Section 3.3.2.3 TS 05.02. I think this looks like a table */
 int rsl_ccch_conf_to_bs_cc_chans(int ccch_conf);
 
+/* Push a RSL RLL header */
+void rsl_rll_push_hdr(struct msgb *msg, uint8_t msg_type, uint8_t chan_nr,
+		      uint8_t link_id, int transparent);
+
 /* Push a RSL RLL header with L3_INFO IE */
 void rsl_rll_push_l3(struct msgb *msg, uint8_t msg_type, uint8_t chan_nr,
 		     uint8_t link_id, int transparent);
