| Summary: | if userok rejects a user their creds still get set | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | paul moore <paul.moore> | ||||||
| Component: | Kerberos support | Assignee: | Assigned to nobody <unassigned-bugs> | ||||||
| Status: | CLOSED FIXED | ||||||||
| Severity: | normal | CC: | simon | ||||||
| Priority: | P2 | ||||||||
| Version: | 3.9p1 | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| Attachments: |
|
||||||||
|
Description
paul moore
2005-08-26 06:49:33 AEST
Created attachment 951 [details]
Delete delegated credentials if userok call fails
Unfortunately, you can't (safely and portably) just call krb5_free_creds on the client->creds structure, as its a pointer to a GSSAPI structure, which will not necessarily be the same (or managed by the same allocator) as the underlying Kerberos one. I believe that the attached patch should solve the problem. Comment on attachment 951 [details] Delete delegated credentials if userok call fails >+ gss_release_buffer(&lmin, &gssapi_client.displayname); >+ gss_release_buffer(&lmin, &gssapi_client.exportedname); >+ gss_release_cred(&lmin, gssapi_client.creds); shouldn't that be &gssapi_client.creds? Created attachment 952 [details]
Fix arg to gss_release_cred
Like this
Comment on attachment 951 [details]
Delete delegated credentials if userok call fails
Indeed it should be - good catch. Obsoleting older patch.
Fix applied, will be in the imminent release (4.2) Change all RESOLVED bug to CLOSED with the exception of the ones fixed post-4.4. |