summaryrefslogtreecommitdiffstats
path: root/etc/inc/certs.inc
diff options
context:
space:
mode:
authorNigel Graham <nigel@maven-group.org>2009-05-26 06:23:58 +0200
committerNigel Graham <nigel@maven-group.org>2009-05-26 06:23:58 +0200
commit801247db0d1ac947b2f6a4f4de14686c8f0b459a (patch)
tree2998839cf3cfd1e06f55c1c953a6c22fc4ea5707 /etc/inc/certs.inc
parentfaa7e333cc1ffece3c6db7aa83a3ec30acec0e62 (diff)
downloadpfsense-801247db0d1ac947b2f6a4f4de14686c8f0b459a.zip
pfsense-801247db0d1ac947b2f6a4f4de14686c8f0b459a.tar.gz
Fixed a problem in ca_chain that caused a segmentation fault.
Diffstat (limited to 'etc/inc/certs.inc')
-rw-r--r--etc/inc/certs.inc18
1 files changed, 9 insertions, 9 deletions
diff --git a/etc/inc/certs.inc b/etc/inc/certs.inc
index 40c0922..0e2341c 100644
--- a/etc/inc/certs.inc
+++ b/etc/inc/certs.inc
@@ -69,16 +69,16 @@ function & lookup_cert($refid) {
function ca_chain_array(& $cert) {
if($cert['caref']) {
$chain = array();
- $cert =& lookup_ca($cert['caref']);
- $chain[] = $cert;
+ $crt =& lookup_ca($cert['caref']);
+ $chain[] = $crt;
while ($cert) {
- $caref = $cert['caref'];
+ $caref = $crt['caref'];
if($caref)
- $cert =& lookup_ca($caref);
+ $crt =& lookup_ca($caref);
else
- $cert = false;
- if($cert)
- $chain[] = $cert;
+ $crt = false;
+ if($crt)
+ $chain[] = $crt;
}
return $chain;
}
@@ -88,7 +88,7 @@ function ca_chain_array(& $cert) {
function ca_chain(& $cert) {
if($cert['caref']) {
$ca = "";
- $cas = ca_chain($cert);
+ $cas = ca_chain_array($cert);
if (is_array($cas))
foreach ($cas as & $ca_cert)
{
@@ -97,7 +97,7 @@ function ca_chain(& $cert) {
}
return $ca;
}
- return false;
+ return "";
}
function ca_import(& $ca, $str) {
OpenPOWER on IntegriCloud