summaryrefslogtreecommitdiffstats
path: root/etc/rc.php_ini_setup
diff options
context:
space:
mode:
authorScott Ullrich <sullrich@pfsense.org>2008-12-22 23:59:57 +0000
committerScott Ullrich <sullrich@pfsense.org>2008-12-22 23:59:57 +0000
commitde96a790868c520e75bdec5f0c344fcf7fe3f85b (patch)
treeec86a616431b7a6a7c23c88aeb9121d57051240d /etc/rc.php_ini_setup
parent487c2ce7cc4e9bae3f85973f02df94c41c3bdb10 (diff)
downloadpfsense-de96a790868c520e75bdec5f0c344fcf7fe3f85b.zip
pfsense-de96a790868c520e75bdec5f0c344fcf7fe3f85b.tar.gz
* Add comments
* Add (C)
Diffstat (limited to 'etc/rc.php_ini_setup')
-rwxr-xr-xetc/rc.php_ini_setup40
1 files changed, 39 insertions, 1 deletions
diff --git a/etc/rc.php_ini_setup b/etc/rc.php_ini_setup
index e3d832f..a3317db 100755
--- a/etc/rc.php_ini_setup
+++ b/etc/rc.php_ini_setup
@@ -1,9 +1,37 @@
#!/bin/sh
+#
+# rc.php_ini_setup
+# Copyright (C)2008 Scott K Ullrich
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# 1. Redistributions of source code must retain the above copyright notice,
+# this list of conditions and the following disclaimer.
+#
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+# AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+# AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
# Set our operating platform
PLATFORM=`cat /etc/platform`
EXTENSIONSDIR="/usr/local/lib/php/20060613/"
+APCSHMEMSIZE="25"
+# Define php modules. Do not add .so, it will
+# be done automatically by the script below.
PHPMODULES="apc \
bcmath \
bz2 \
@@ -33,6 +61,7 @@ PHPMODULES="apc \
xml \
zlib"
+# Get a loaded module list in the stock php
LOADED_MODULES=`php -m | grep -v "\["`
# Populate a dummy php.ini to avoid
@@ -65,12 +94,14 @@ EOF
# Take into account modules built into php.
for EXT in $PHPMODULES; do
SHOULDADD="true"
+ # Check to see if module is compiled into php statically
for LM in $LOADED_MODULES; do
if [ "$EXT" = "$LM" ]; then
SHOULDADD="false"
fi
done
if [ "$SHOULDADD" = "true" ]; then
+ # Ensure extension exists before adding.
if [ -f "${EXTENSIONSDIR}/${EXT}.so" ]; then
echo "extension=${EXT}.so" >> /usr/local/lib/php.ini
else
@@ -80,6 +111,7 @@ for EXT in $PHPMODULES; do
fi
done
+# Get amount of ram installed on this system
RAM=`sysctl hw.realmem | awk '{print $2/1000000}' | awk -F '.' '{print $1}'`
export RAM
if [ $RAM -gt 96 ]; then
@@ -89,10 +121,16 @@ if [ $RAM -gt 96 ]; then
; APC Settings
apc.enabled="1"
apc.enable_cli="1"
-apc.shm_size="25"
+apc.shm_size="${APCSHMEMSIZE}"
EOF
+else
+
+ echo ">>> WARNING! under 128 megabytes of ram detected. Not enabling APC."
+ echo ">>> WARNING! under 128 megabytes of ram detected. Not enabling APC." | logger -p daemon.info -i -t rc.php_ini_setup
+
fi
+# Copy php.ini file to etc/ too (cli)
cp /usr/local/lib/php.ini /usr/local/etc/php.ini
OpenPOWER on IntegriCloud