diff options
-rw-r--r-- | etc/inc/pfsense-utils.inc | 11 | ||||
-rwxr-xr-x | etc/rc.bootup | 3 | ||||
-rw-r--r-- | usr/local/www/system_advanced_misc.php | 25 |
3 files changed, 39 insertions, 0 deletions
diff --git a/etc/inc/pfsense-utils.inc b/etc/inc/pfsense-utils.inc index 7e6b5b4..3fa3abe 100644 --- a/etc/inc/pfsense-utils.inc +++ b/etc/inc/pfsense-utils.inc @@ -1638,4 +1638,15 @@ function compare_hostname_to_dnscache($hostname) { } } +/* + * load_glxsb() - Load the glxsb crypto module if enabled in config. + */ +function load_glxsb() { + global $config, $g; + $is_loaded = `/sbin/kldstat | /usr/bin/grep -c glxsb`; + if (isset($config['system']['glxsb_enable']) && ($is_loaded == 0)) { + mwexec("/sbin/kldload glxsb"); + } +} + ?>
\ No newline at end of file diff --git a/etc/rc.bootup b/etc/rc.bootup index 067c4d5..5668758 100755 --- a/etc/rc.bootup +++ b/etc/rc.bootup @@ -155,6 +155,9 @@ echo "Setting up extended sysctls..."; system_setup_sysctl(); echo "done.\n"; +/* enable glxsb if wanted */ +load_glxsb(); + /* run any early shell commands specified in config.xml */ system_do_shell_commands(1); diff --git a/usr/local/www/system_advanced_misc.php b/usr/local/www/system_advanced_misc.php index 82db06a..fa08c19 100644 --- a/usr/local/www/system_advanced_misc.php +++ b/usr/local/www/system_advanced_misc.php @@ -47,6 +47,7 @@ $pconfig['harddiskstandby'] = $config['system']['harddiskstandby']; $pconfig['lb_use_sticky'] = isset($config['system']['lb_use_sticky']); $pconfig['preferoldsa_enable'] = isset($config['ipsec']['preferoldsa']); $pconfig['powerd_enable'] = isset($config['system']['powerd_enable']); +$pconfig['glxsb_enable'] = isset($config['system']['glxsb_enable']); if ($_POST) { @@ -71,6 +72,7 @@ if ($_POST) { $config['ipsec']['preferoldsa'] = $_POST['preferoldsa_enable'] ? true : false; $config['system']['powerd_enable'] = $_POST['powerd_enable'] ? true : false; + $config['system']['glxsb_enable'] = $_POST['glxsb_enable'] ? true : false; write_config(); @@ -82,6 +84,7 @@ if ($_POST) { $savemsg = $retval; activate_powerd(); + load_glxsb(); } } @@ -171,6 +174,28 @@ include("head.inc"); <td colspan="2" class="list" height="12"> </td> </tr> <tr> + <td colspan="2" valign="top" class="listtopic">glxsb Crypto Acceleration</td> + </tr> + <tr> + <td width="22%" valign="top" class="vncell">glxsb</td> + <td width="78%" class="vtable"> + <input name="glxsb_enable" type="checkbox" id="glxsb_enable" value="yes" <?php if ($pconfig['glxsb_enable']) echo "checked"; ?> /> + <strong>Use glxsb</strong><br/> + <br /> + The AMD Geode LX Security Block will accelerate some cryptographic functions + on systems which have the chip. Do not enable this option if you have a + Hifn cryptographic acceleration card, as this will take precedence and the + Hifn card will not be used. Acceleration should be automatic for IPsec + when using Rijndael (AES). OpenVPN should be set for AES-128-CBC. + <br/><br/> + If you do not have a glxsb chip in your system, this option will have no + effect. To unload the module, uncheck this option and then reboot. + </td> + </tr> + <tr> + <td colspan="2" class="list" height="12"> </td> + </tr> + <tr> <td colspan="2" valign="top" class="listtopic">IP Security</td> </tr> <tr> |