diff --git a/src/opnsense/mvc/app/library/OPNsense/OpenVPN/BaseExporter.php b/src/opnsense/mvc/app/library/OPNsense/OpenVPN/BaseExporter.php index d22763ed8..6c3c499dc 100644 --- a/src/opnsense/mvc/app/library/OPNsense/OpenVPN/BaseExporter.php +++ b/src/opnsense/mvc/app/library/OPNsense/OpenVPN/BaseExporter.php @@ -44,4 +44,19 @@ abstract class BaseExporter { $this->config = $conf; } + + /** + * @param string $crt X.509 certificate + * @param string $prv PEM formatted private key + * @param string $pass password + * @return string pkcs12 + */ + protected function export_pkcs12($crt, $prv, $pass="") + { + $p12 = null; + $crt = openssl_x509_read($crt); + $prv = openssl_get_privatekey($prv); + openssl_pkcs12_export($crt, $p12, $prv, $pass); + return $p12; + } }