Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP2:Update
krb5.33398
0128-Fix-an-unlikely-memory-leak.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0128-Fix-an-unlikely-memory-leak.patch of Package krb5.33398
From 37cba33ceb71ac9432a7153670511c009219289a Mon Sep 17 00:00:00 2001 From: Greg Hudson <ghudson@mit.edu> Date: Tue, 5 Mar 2024 19:53:07 -0500 Subject: [PATCH] Fix two unlikely memory leaks In gss_krb5int_make_seal_token_v3(), one of the bounds checks (which could probably never be triggered) leaks plain.data. Fix this leak and use current practices for cleanup throughout the function. In xmt_rmtcallres() (unused within the tree and likely elsewhere), store port_ptr into crp->port_ptr as soon as it is allocated; otherwise it could leak if the subsequent xdr_u_int32() operation fails. (cherry picked from commit c5f9c816107f70139de11b38aa02db2f1774ee0d) [scabrero@suse.com] Removed gss_krb5int_make_seal_token_v3() changes, not affecting this version. --- src/lib/rpc/pmap_rmt.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/lib/rpc/pmap_rmt.c b/src/lib/rpc/pmap_rmt.c index 10d9e3f62b..2935495cf4 100644 --- a/src/lib/rpc/pmap_rmt.c +++ b/src/lib/rpc/pmap_rmt.c @@ -162,11 +162,12 @@ xdr_rmtcallres( caddr_t port_ptr; port_ptr = (caddr_t)(void *)crp->port_ptr; - if (xdr_reference(xdrs, &port_ptr, sizeof (uint32_t), - xdr_u_int32) && xdr_u_int32(xdrs, &crp->resultslen)) { - crp->port_ptr = (uint32_t *)(void *)port_ptr; + if (!xdr_reference(xdrs, &port_ptr, sizeof (uint32_t), + (xdrproc_t)xdr_u_int32)) + return (FALSE); + crp->port_ptr = (uint32_t *)(void *)port_ptr; + if (xdr_u_int32(xdrs, &crp->resultslen)) return ((*(crp->xdr_results))(xdrs, crp->results_ptr)); - } return (FALSE); } -- 2.44.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor