Avoid xmalloc() in _slurm_rpc_tls_cert()

Avoid unneeded xmalloc() in _slurm_rpc_tls_cert().

Issue: 50632
diff --git a/src/slurmctld/proc_req.c b/src/slurmctld/proc_req.c
index 772b42e..1284cc6 100644
--- a/src/slurmctld/proc_req.c
+++ b/src/slurmctld/proc_req.c
@@ -5962,7 +5962,7 @@
 static void _slurm_rpc_tls_cert(slurm_msg_t *msg)
 {
 	tls_cert_request_msg_t *req = msg->data;
-	tls_cert_response_msg_t *resp = xmalloc(sizeof(*resp));
+	tls_cert_response_msg_t resp = { 0 };
 	node_record_t *node = NULL;
 	bool is_client_auth = false;
 
@@ -5980,7 +5980,7 @@
 
 	is_client_auth = conn_g_is_client_authenticated(msg->tls_conn);
 
-	if (!(resp->signed_cert =
+	if (!(resp.signed_cert =
 		      certmgr_g_sign_csr(req->csr, is_client_auth, req->token,
 					 req->node_name))) {
 		error("%s: Unable to sign certificate signing request.",
@@ -5990,13 +5990,13 @@
 		node->cert_last_renewal = time(NULL);
 	}
 
-	if (resp->signed_cert) {
+	if (resp.signed_cert) {
 		log_flag(AUDIT_TLS, "Sending signed certificate back to node \'%s\'",
 			 req->node_name);
 	}
 
-	(void) send_msg_response(msg, RESPONSE_TLS_CERT, resp);
-	slurm_free_msg_data(RESPONSE_TLS_CERT, resp);
+	(void) send_msg_response(msg, RESPONSE_TLS_CERT, &resp);
+	slurm_free_tls_cert_response_msg_members(&resp);
 }
 
 static void _slurm_rpc_sib_job_lock(slurm_msg_t *msg)