gssapi: Avoid memory leaks of selected OID (GHSL-2023-036)

Thanks Phil Turnbull from GitHub

Signed-off-by: Jakub Jelen <jjelen@redhat.com>
Reviewed-by: Norbert Pocs <npocs@redhat.com>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
Jakub Jelen
2023-03-06 12:23:09 +01:00
parent 6c85771200
commit dd899b7591

View File

@@ -718,7 +718,7 @@ end:
*/ */
int ssh_gssapi_auth_mic(ssh_session session){ int ssh_gssapi_auth_mic(ssh_session session){
size_t i; size_t i;
gss_OID_set selected; /* oid selected for authentication */ gss_OID_set selected = GSS_C_NO_OID_SET; /* oid selected for authentication */
ssh_string *oids = NULL; ssh_string *oids = NULL;
int rc; int rc;
size_t n_oids = 0; size_t n_oids = 0;
@@ -795,6 +795,8 @@ out:
SSH_STRING_FREE(oids[i]); SSH_STRING_FREE(oids[i]);
} }
free(oids); free(oids);
gss_release_oid_set(&min_stat, &selected);
if (rc != SSH_ERROR) { if (rc != SSH_ERROR) {
return SSH_AUTH_AGAIN; return SSH_AUTH_AGAIN;
} }