summaryrefslogtreecommitdiffstats
path: root/etc/inc/upgrade_config.inc
diff options
context:
space:
mode:
authorjim-p <jimp@pfsense.org>2010-09-01 17:01:17 -0400
committerjim-p <jimp@pfsense.org>2010-09-02 16:50:08 -0400
commit8fefb9dd2202f4b13b4e97cb4926736158bcb0ca (patch)
tree11eaf509cb3d4ab66846bf24ae3b9e7384db7696 /etc/inc/upgrade_config.inc
parent395ba5d1af335bfc0986f7512d38667063441493 (diff)
downloadpfsense-8fefb9dd2202f4b13b4e97cb4926736158bcb0ca.zip
pfsense-8fefb9dd2202f4b13b4e97cb4926736158bcb0ca.tar.gz
Upgrade code to merge user certificates with normal certificates.
Diffstat (limited to 'etc/inc/upgrade_config.inc')
-rw-r--r--etc/inc/upgrade_config.inc25
1 files changed, 25 insertions, 0 deletions
diff --git a/etc/inc/upgrade_config.inc b/etc/inc/upgrade_config.inc
index b4a4507..d17fc1d 100644
--- a/etc/inc/upgrade_config.inc
+++ b/etc/inc/upgrade_config.inc
@@ -2167,4 +2167,29 @@ function upgrade_067_to_068() {
}
}
+function upgrade_067_to_068() {
+ global $config;
+ if (!is_array($config['system']['user']))
+ return;
+ foreach ($config['system']['user'] as & $user) {
+ if (!is_array($user['cert']))
+ continue;
+ $rids = array();
+ foreach ($user['cert'] as $id => $cert) {
+ if (!isset($cert['name']))
+ continue;
+ $tcert = $cert;
+ // Make sure each cert gets a refid
+ if (!isset($tcert['refid']))
+ $tcert['refid'] = uniqid();
+ // Keep the cert references for this user
+ $rids[] = $tcert['refid'];
+ $config['cert'][] = $tcert;
+ }
+ // Replace user certs with cert references instead.
+ if (count($rids) > 0)
+ $user['cert'] = $rids;
+ }
+}
+
?>
OpenPOWER on IntegriCloud