summaryrefslogtreecommitdiffstats
path: root/usr/local/www/wizards/openvpn_wizard.inc
diff options
context:
space:
mode:
authorErmal <eri@pfsense.org>2010-03-18 13:05:05 +0000
committerErmal <eri@pfsense.org>2010-03-18 13:05:05 +0000
commitbd4d0f89e44bb78ce2c4646be3d1496946929263 (patch)
treec4ec4160e160a0ebdda74941cf973ab83c4914cb /usr/local/www/wizards/openvpn_wizard.inc
parent47aa4fc48cc02ead267a3e0586c884e349966a7c (diff)
downloadpfsense-bd4d0f89e44bb78ce2c4646be3d1496946929263.zip
pfsense-bd4d0f89e44bb78ce2c4646be3d1496946929263.tar.gz
Try to prefill values if creating a certificate.
Diffstat (limited to 'usr/local/www/wizards/openvpn_wizard.inc')
-rw-r--r--usr/local/www/wizards/openvpn_wizard.inc38
1 files changed, 38 insertions, 0 deletions
diff --git a/usr/local/www/wizards/openvpn_wizard.inc b/usr/local/www/wizards/openvpn_wizard.inc
index 956c559..7a8a03d 100644
--- a/usr/local/www/wizards/openvpn_wizard.inc
+++ b/usr/local/www/wizards/openvpn_wizard.inc
@@ -188,6 +188,44 @@ function step8_submitphpaction() {
}
}
+function step9_stepbeforeformdisplay() {
+ global $pkg, $stepid;
+
+ $pconfig = $config['ovpnserver'];
+
+ if (isset($pconfig['step6']['uselist'])) {
+ $country = $pconfig['step6']['country'];
+ $state = $pconfig['step6']['state'];
+ $city = $pconfig['step6']['city'];
+ $org = $pconfig['step6']['organization'];
+ } else {
+ $ca = lookup_ca($pconfig['step6']['authcertca']);
+ $cavl = cert_get_subject_array($ca['crt']);
+ $country = $cavl[0]['v'];
+ $state = $cavl[1]['v'];
+ $city = $cavl[2]['v'];
+ $org = $cavl[3]['v'];
+ }
+ $fields =& $pkg['step'][$stepid]['fields']['field'];
+
+ foreach ($fields as $idx => $field) {
+ switch ($field['name']) {
+ case 'country':
+ $fields[$idx]['value'] = $country;
+ break;
+ case 'state':
+ $fields[$idx]['value'] = $state;
+ break;
+ case 'city':
+ $fields[$idx]['value'] = $city;
+ break;
+ case 'organization':
+ $fields[$idx]['value'] = $org;
+ break;
+ }
+ }
+}
+
function step9_submitphpaction() {
global $stepid, $savemsg, $_POST, $config;
OpenPOWER on IntegriCloud