RSPRO: split ConfigClient into ConfigClientId and ConfigClientBank

The point is that the ClientId is only set once at start-up (and
also only optionally), while the Bank IP/port/ID/slot can be changed
any number of times during a RSPRO connection.

Change-Id: Ic76207c7dd7c18fe93bc5133b29c5f9438a9fb0e
diff --git a/src/rspro_util.c b/src/rspro_util.c
index 271ae86..27bf025 100644
--- a/src/rspro_util.c
+++ b/src/rspro_util.c
@@ -276,27 +276,51 @@
 	return pdu;
 }
 
-RsproPDU_t *rspro_gen_ConfigClientReq(const ClientSlot_t *client, uint32_t ip, uint16_t port)
+RsproPDU_t *rspro_gen_ConfigClientIReq(const ClientSlot_t *client)
 {
 	RsproPDU_t *pdu = CALLOC(1, sizeof(*pdu));
 	if (!pdu)
 		return NULL;
 	pdu->version = 2;
-	pdu->msg.present = RsproPDUchoice_PR_configClientReq;
-	pdu->msg.choice.configClientReq.clientSlot = *client;
-	fill_ip4_port(&pdu->msg.choice.configClientReq.bankd, ip, port);
+	pdu->msg.present = RsproPDUchoice_PR_configClientIdReq;
+	pdu->msg.choice.configClientIdReq.clientSlot = *client;
 
 	return pdu;
 }
 
-RsproPDU_t *rspro_gen_ConfigClientRes(e_ResultCode res)
+RsproPDU_t *rspro_gen_ConfigClientIdRes(e_ResultCode res)
 {
 	RsproPDU_t *pdu = CALLOC(1, sizeof(*pdu));
 	if (!pdu)
 		return NULL;
 	pdu->version = 2;
-	pdu->msg.present = RsproPDUchoice_PR_configClientRes;
-	pdu->msg.choice.configClientRes.result = res;
+	pdu->msg.present = RsproPDUchoice_PR_configClientIdRes;
+	pdu->msg.choice.configClientIdRes.result = res;
+
+	return pdu;
+}
+
+RsproPDU_t *rspro_gen_ConfigClientBankReq(const BankSlot_t *bank, uint32_t ip, uint16_t port)
+{
+	RsproPDU_t *pdu = CALLOC(1, sizeof(*pdu));
+	if (!pdu)
+		return NULL;
+	pdu->version = 2;
+	pdu->msg.present = RsproPDUchoice_PR_configClientBankReq;
+	pdu->msg.choice.configClientBankReq.bankSlot = *bank;
+	fill_ip4_port(&pdu->msg.choice.configClientBankReq.bankd, ip, port);
+
+	return pdu;
+}
+
+RsproPDU_t *rspro_gen_ConfigClientBankRes(e_ResultCode res)
+{
+	RsproPDU_t *pdu = CALLOC(1, sizeof(*pdu));
+	if (!pdu)
+		return NULL;
+	pdu->version = 2;
+	pdu->msg.present = RsproPDUchoice_PR_configClientBankRes;
+	pdu->msg.choice.configClientBankRes.result = res;
 
 	return pdu;
 }