mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 15:06:14 +01:00
gtlscertificate: Hold a ref on the root certificate when building chains
This is unlikely to be a bug in practice, as the certificate pointed to by `root` should have a ref held on it as the issuer of another certificate in the chain. However, we can’t guarantee that’s how the `GTlsCertificate` implementation behaves, so keep a temporary ref on `root` until it’s no longer needed. Signed-off-by: Philip Withnall <pwithnall@endlessos.org> Coverity CID: #1489985
This commit is contained in:
parent
9a2bedb22c
commit
2c75c392eb
@ -626,7 +626,7 @@ create_certificate_chain_from_list (GSList *pem_list,
|
||||
|
||||
/* root will point to the last certificate in the file. */
|
||||
if (!root)
|
||||
root = cert;
|
||||
root = g_object_ref (cert);
|
||||
|
||||
pem = g_slist_next (pem);
|
||||
}
|
||||
@ -641,6 +641,8 @@ create_certificate_chain_from_list (GSList *pem_list,
|
||||
g_clear_object (&cert);
|
||||
}
|
||||
|
||||
g_clear_object (&root);
|
||||
|
||||
return cert;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user