various CC updates:
* correctly lchan_put the second lchan of a call at teardown
* map the RTP streams of ip.access onto each other
* fix bug that prevented a CONNECt message to ever reach the 'B' side

diff --git a/include/openbsc/gsm_04_08.h b/include/openbsc/gsm_04_08.h
index ddf5535..de48fe8 100644
--- a/include/openbsc/gsm_04_08.h
+++ b/include/openbsc/gsm_04_08.h
@@ -489,8 +489,7 @@
 int gsm0408_rcvmsg(struct msgb *msg);
 void gsm0408_generate_lai(struct gsm48_loc_area_id *lai48, u_int16_t mcc, 
 		u_int16_t mnc, u_int16_t lac);
-int gsm48_cc_tx_setup(struct gsm_lchan *lchan, struct gsm_subscriber *called, 
-			struct gsm_subscriber *calling);
+int gsm48_cc_tx_setup(struct gsm_lchan *lchan, struct gsm_subscriber *calling);
 enum gsm_chan_t get_ctype_by_chreq(struct gsm_bts *bts, u_int8_t ra);
 enum gsm_chreq_reason_t get_reason_by_chreq(struct gsm_bts *bts, u_int8_t ra);
 
diff --git a/include/openbsc/gsm_data.h b/include/openbsc/gsm_data.h
index 7c320d8..50a11fa 100644
--- a/include/openbsc/gsm_data.h
+++ b/include/openbsc/gsm_data.h
@@ -61,14 +61,20 @@
 	GSM_CSTATE_RELEASE_REQ,
 };
 
+struct gsm_lchan;
+struct gsm_subscriber;
+
 /* One end of a call */
 struct gsm_call {
 	enum gsm_call_type type;
 	enum gsm_call_state state;
 	u_int8_t transaction_id;	/* 10.3.2 */
 
-	/* the 'local' subscriber */
-	struct gsm_subscriber *subscr;
+	/* the 'local' channel */
+	struct gsm_lchan *local_lchan;
+	/* the 'remote' channel */
+	struct gsm_lchan *remote_lchan;
+
 	/* the 'remote' subscriber */
 	struct gsm_subscriber *called_subscr;
 };