diff --git a/src/rspro_util.c b/src/rspro_util.c
index 4da9270..9f51257 100644
--- a/src/rspro_util.c
+++ b/src/rspro_util.c
@@ -8,6 +8,16 @@
 
 #include "rspro_util.h"
 
+#define ASN_ALLOC_COPY(out, in) \
+do {						\
+	if (in)	 {				\
+		out = CALLOC(1, sizeof(*in));	\
+		OSMO_ASSERT(out);		\
+		memcpy(out, in, sizeof(*in));	\
+	}					\
+} while (0)
+
+
 struct msgb *rspro_msgb_alloc(void)
 {
 	return msgb_alloc_headroom(1024, 8, "RSPRO");
@@ -95,13 +105,14 @@
 	return pdu;
 }
 
-RsproPDU_t *rspro_gen_ConnectClientReq(const struct app_comp_id *a_cid)
+RsproPDU_t *rspro_gen_ConnectClientReq(const struct app_comp_id *a_cid, const ClientSlot_t *client)
 {
 	RsproPDU_t *pdu = CALLOC(1, sizeof(*pdu));
 	if (!pdu)
 		return NULL;
 	pdu->msg.present = RsproPDUchoice_PR_connectClientReq;
 	fill_comp_id(&pdu->msg.choice.connectClientReq.identity, a_cid);
+	ASN_ALLOC_COPY(pdu->msg.choice.connectClientReq.clientSlot, client);
 
 	return pdu;
 }
diff --git a/src/rspro_util.h b/src/rspro_util.h
index 87b2b97..8590a1b 100644
--- a/src/rspro_util.h
+++ b/src/rspro_util.h
@@ -22,7 +22,7 @@
 RsproPDU_t *rspro_dec_msg(struct msgb *msg);
 RsproPDU_t *rspro_gen_ConnectBankReq(const struct app_comp_id *a_cid,
 					uint16_t bank_id, uint16_t num_slots);
-RsproPDU_t *rspro_gen_ConnectClientReq(const struct app_comp_id *a_cid);
+RsproPDU_t *rspro_gen_ConnectClientReq(const struct app_comp_id *a_cid, const ClientSlot_t *client);
 RsproPDU_t *rspro_gen_CreateMappingReq(const ClientSlot_t *client, const BankSlot_t *bank);
 RsproPDU_t *rspro_gen_ConfigClientReq(const ClientSlot_t *client, uint32_t ip, uint16_t port);
 RsproPDU_t *rspro_gen_SetAtrReq(uint16_t client_id, uint16_t slot_nr, const uint8_t *atr,
