kadmin: kadmind_dispatch do not write to 'out' on error

1b213c1082 ("kadmind: Add missing
error checks") altered the behavior of kadmin_dispatch() such that
it unconditionally called

  krb5_storage_to_data(rsp, out);

Previously kadmin_dispatch() only wrote to 'out' on success.
Doing so is important because 'rsp' might be NULL on error.

Change-Id: I2688a5c47db0f94d955971e785037c578d3f3fa4
This commit is contained in:
Jeffrey Altman
2022-01-21 00:25:15 -05:00
parent 4ffd190b08
commit fb52fd1c53

View File

@@ -585,7 +585,8 @@ fail:
memset_s(password, len, 0, len);
free(password);
}
krb5_storage_to_data(rsp, out);
if (ret == 0)
krb5_storage_to_data(rsp, out);
krb5_storage_free(rsp);
krb5_storage_free(sp);
krb5_free_principal(contextp->context, princ);