diff --git a/src/common/slurm_protocol_api.c b/src/common/slurm_protocol_api.c
index 35aee32f8907aabd5af01f29d683f3bfde98a3fe..5b8ac8def1e3d9fb203d0390f8e79f5e50da4641 100644
--- a/src/common/slurm_protocol_api.c
+++ b/src/common/slurm_protocol_api.c
@@ -839,5 +839,7 @@ short int slurm_get_slurmd_port()
 
 void slurm_free_msg(slurm_msg_t * msg)
 {
+	if (msg->cred)
+		xfree(msg->cred);
 	xfree(msg);
 }