From owner-freebsd-ports-bugs@FreeBSD.ORG Sun Jun 4 01:40:26 2006 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F2F4B16A420 for ; Sun, 4 Jun 2006 01:40:25 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id F238343D45 for ; Sun, 4 Jun 2006 01:40:24 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k541eOL1080126 for ; Sun, 4 Jun 2006 01:40:24 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k541eOfq080121; Sun, 4 Jun 2006 01:40:24 GMT (envelope-from gnats) Date: Sun, 4 Jun 2006 01:40:24 GMT Message-Id: <200606040140.k541eOfq080121@freefall.freebsd.org> To: freebsd-ports-bugs@FreeBSD.org From: Phillip Neumann Cc: Subject: Re: ports/95279: (New Port) FreeBPX: a web gui to the asterisk PBX X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Phillip Neumann List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Jun 2006 01:40:26 -0000 The following reply was made to PR ports/95279; it has been noted by GNATS. From: Phillip Neumann To: bug-followup@FreeBSD.org, pneumann@gmail.com Cc: Subject: Re: ports/95279: (New Port) FreeBPX: a web gui to the asterisk PBX Date: Sat, 03 Jun 2006 21:37:29 -0400 --=-tjj6TD9+sPYaU7YjeArS Content-Type: text/plain Content-Transfer-Encoding: 7bit FreePBX 2.1.0 was out, with much changes Here is the updated port, im ataching it as a new shar file, becouse its quite different than the first one... Its has been working just fine with asterisk, sufring on zaptel svn drivers over a digium TE card. Tinderbox seems to be building the package fine too. good luck!! KillFill. --=-tjj6TD9+sPYaU7YjeArS Content-Disposition: attachment; filename=freepbx.shar Content-Type: text/plain; name=freepbx.shar; charset=utf-8 Content-Transfer-Encoding: 7bit # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # freepbx # freepbx/pkg-plist # freepbx/pkg-descr # freepbx/distinfo # freepbx/Makefile # freepbx/files # freepbx/files/amportal-db-functions.sh # freepbx/files/patch-apply_conf.sh # freepbx/files/pkg-message.in # freepbx/files/patch-newinstall.sql # freepbx/files/patch-cdr_mysql_table.sql # freepbx/files/amportal-db-remove.sh # freepbx/files/amportal-db-install.sh # freepbx/files/patch-install_amp # freepbx/files/php5.ini # freepbx/files/patch-safe_opserver # freepbx/files/patch-bounce_op.sh # freepbx/files/php4.ini # echo c - freepbx mkdir -p freepbx > /dev/null 2>&1 echo x - freepbx/pkg-plist sed 's/^X//' >freepbx/pkg-plist << 'END-of-freepbx/pkg-plist' Xetc/amportal.conf Xetc/asterisk/vm_general.inc Xetc/asterisk/zapata.conf.template Xetc/asterisk/phpagi.conf Xetc/asterisk/vm_email.inc Xetc/asterisk/extensions_custom.conf.sample Xetc/asterisk/voicemail.conf.template Xetc/asterisk/cdr_mysql.conf.bak Xetc/asterisk/manager.conf.bak Xetc/asterisk/vm_email.inc.bak Xbin/ampbackup.pl Xbin/archive_recordings Xbin/callback Xbin/fax-process.pl Xbin/php-asmanager.php Xbin/retrieve_backup_cron_from_mysql.pl Xbin/retrieve_conf Xbin/retrieve_iax_conf_from_mysql.pl Xbin/retrieve_op_conf_from_mysql.pl Xbin/retrieve_parse_amportal_conf.pl Xbin/retrieve_queues_conf_from_mysql.pl Xbin/retrieve_sip_conf_from_mysql.pl Xbin/retrieve_zap_conf_from_mysql.pl Xsbin/amportal Xshare/asterisk/sounds/dir-intro-oper.gsm Xshare/asterisk/sounds/dir-intro-fnln.gsm Xshare/asterisk/sounds/dir-intro-fn-oper.gsm Xshare/asterisk/sounds/dir-intro-fnln-oper.gsm Xshare/asterisk/mohmp3/QuajiroPromo.mp3 Xshare/asterisk/mohmp3/TristeAlegriaPromo.mp3 Xshare/asterisk/agi-bin/list-item-remove.php Xshare/asterisk/agi-bin/dialparties.agi Xshare/asterisk/agi-bin/fixlocalprefix Xshare/asterisk/agi-bin/recordingcheck Xshare/asterisk/agi-bin/directory Xshare/asterisk/agi-bin/phpagi-asmanager.php Xshare/asterisk/agi-bin/dialparties.agi.pl Xshare/asterisk/agi-bin/phpagi.php X%%PORTDOCS%%%%DOCSDIR%%/README.directory X%%PORTDOCS%%%%DOCSDIR%%/amportal-db-functions.sh X%%PORTDOCS%%%%DOCSDIR%%/amportal-db-install.sh X%%PORTDOCS%%%%DOCSDIR%%/amportal-db-remove.sh X%%PORTDOCS%%%%DOCSDIR%%/cdr_mysql_table.sql X%%PORTDOCS%%%%DOCSDIR%%/newinstall.sql X%%APACHEDIR%%/cgi-bin/vmail.cgi X%%APACHEDIR%%/data/FreePBX/_asterisk/animlogo.gif X%%APACHEDIR%%/data/FreePBX/_asterisk/play.gif X%%APACHEDIR%%/data/FreePBX/_asterisk/vmail.css X%%APACHEDIR%%/data/FreePBX/admin/bounce_op.sh X%%APACHEDIR%%/data/FreePBX/admin/cdr/.DS_Store X%%APACHEDIR%%/data/FreePBX/admin/cdr/CHANGELOG.txt X%%APACHEDIR%%/data/FreePBX/admin/cdr/about.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/call-comp.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/call-daily-load.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/call-last-month.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/call-log.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/cdr.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/counter.txt X%%APACHEDIR%%/data/FreePBX/admin/cdr/css/content.css X%%APACHEDIR%%/data/FreePBX/admin/cdr/css/docbook.css X%%APACHEDIR%%/data/FreePBX/admin/cdr/css/images/corner-bl.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/css/images/corner-br.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/css/images/corner-tl.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/css/images/corner-tr.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/css/layout.css X%%APACHEDIR%%/data/FreePBX/admin/cdr/encrypt.js X%%APACHEDIR%%/data/FreePBX/admin/cdr/export_csv.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/export_pdf.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/graph_hourdetail.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/graph_pie.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/graph_stat.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/graph_statbar.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/asterisk.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/btn_top_12x12.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/button-search.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/call-compare.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/call-logs.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/excel.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/fleche-d.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/fleche-g.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/header-download.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/header-faq.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/header-projects.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/header-search.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/icon_down_12x12.GIF X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/icon_up_12x12.GIF X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/jukebox_ti60.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/pdf.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/print.css X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/printable.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/sidenav-selected.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/spacer.gif X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/th_call-compare.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/images/th_call-logs.png X%%APACHEDIR%%/data/FreePBX/admin/cdr/info.txt X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/imgdata_balls.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/imgdata_bevels.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/imgdata_diamonds.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/imgdata_pushpins.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/imgdata_squares.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/imgdata_stars.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpg-config.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_antispam-digits.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_antispam.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_bar.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_canvas.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_canvtools.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_error.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_flags.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_gantt.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_gb2312.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_gradient.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_iconplot.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_imgtrans.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_line.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_log.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_pie.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_pie3d.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_plotband.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_plotmark.inc X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_polar.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_radar.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_regstat.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_scatter.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib/jpgraph_stock.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/Class.Table.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/ciaosql.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/phplib_mssql.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/phplib_mysql.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/phplib_oci8.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/phplib_odbc.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/phplib_oracle.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/phplib_postgres.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules/phplib_sybase.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/defines.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/courier.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/helvetica.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/helveticab.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/helveticabi.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/helveticai.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1250.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1251.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1252.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1253.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1254.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1255.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1257.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp1258.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/cp874.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-1.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-11.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-15.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-16.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-2.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-4.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-5.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-7.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/iso-8859-9.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/koi8-r.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/koi8-u.map X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont/makefont.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/symbol.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/times.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/timesb.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/timesbi.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/timesi.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/zapfdingbats.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/fpdf.php X%%APACHEDIR%%/data/FreePBX/admin/cdr/lib/iam_csvdump.php X%%APACHEDIR%%/data/FreePBX/admin/common/db_connect.php X%%APACHEDIR%%/data/FreePBX/admin/common/mainstyle.css X%%APACHEDIR%%/data/FreePBX/admin/common/php-asmanager.php X%%APACHEDIR%%/data/FreePBX/admin/common/script.js.php X%%APACHEDIR%%/data/FreePBX/admin/config.php X%%APACHEDIR%%/data/FreePBX/admin/extensions.class.php X%%APACHEDIR%%/data/FreePBX/admin/featurecodes.class.php X%%APACHEDIR%%/data/FreePBX/admin/footer.php X%%APACHEDIR%%/data/FreePBX/admin/functions.inc.php X%%APACHEDIR%%/data/FreePBX/admin/functions.php X%%APACHEDIR%%/data/FreePBX/admin/header.php X%%APACHEDIR%%/data/FreePBX/admin/header_auth.php X%%APACHEDIR%%/data/FreePBX/admin/i18n/de_DE/LC_MESSAGES/amp.mo X%%APACHEDIR%%/data/FreePBX/admin/i18n/de_DE/LC_MESSAGES/amp.po X%%APACHEDIR%%/data/FreePBX/admin/i18n/es_ES/LC_MESSAGES/amp.mo X%%APACHEDIR%%/data/FreePBX/admin/i18n/es_ES/LC_MESSAGES/amp.po X%%APACHEDIR%%/data/FreePBX/admin/i18n/fr_FR/LC_MESSAGES/amp.mo X%%APACHEDIR%%/data/FreePBX/admin/i18n/fr_FR/LC_MESSAGES/amp.po X%%APACHEDIR%%/data/FreePBX/admin/i18n/it_IT/LC_MESSAGES/amp.mo X%%APACHEDIR%%/data/FreePBX/admin/i18n/it_IT/LC_MESSAGES/amp.po X%%APACHEDIR%%/data/FreePBX/admin/i18n/pt_PT/LC_MESSAGES/amp.mo X%%APACHEDIR%%/data/FreePBX/admin/i18n/pt_PT/LC_MESSAGES/amp.po X%%APACHEDIR%%/data/FreePBX/admin/i18n/readme.txt X%%APACHEDIR%%/data/FreePBX/admin/i18n/ru_RU/LC_MESSAGES/amp.mo X%%APACHEDIR%%/data/FreePBX/admin/i18n/ru_RU/LC_MESSAGES/amp.po X%%APACHEDIR%%/data/FreePBX/admin/images/amp.png X%%APACHEDIR%%/data/FreePBX/admin/images/blank.gif X%%APACHEDIR%%/data/FreePBX/admin/images/delete.gif X%%APACHEDIR%%/data/FreePBX/admin/images/freepbx.png X%%APACHEDIR%%/data/FreePBX/admin/images/freepbx_small.png X%%APACHEDIR%%/data/FreePBX/admin/images/scrolldown.gif X%%APACHEDIR%%/data/FreePBX/admin/images/scrollup.gif X%%APACHEDIR%%/data/FreePBX/admin/images/trash.png X%%APACHEDIR%%/data/FreePBX/admin/index.php X%%APACHEDIR%%/data/FreePBX/admin/logout.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/functions.inc.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/install.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/module.xml X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.ampusers.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.devices.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.did.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.extensions.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.general.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.routing.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.trunks.php X%%APACHEDIR%%/data/FreePBX/admin/modules/core/page.users.php X%%APACHEDIR%%/data/FreePBX/admin/modules/import.sh X%%APACHEDIR%%/data/FreePBX/admin/modules/modlist.sh X%%APACHEDIR%%/data/FreePBX/admin/modules/status.sh X%%APACHEDIR%%/data/FreePBX/admin/modules/update.sh X%%APACHEDIR%%/data/FreePBX/admin/page.modules.php X%%APACHEDIR%%/data/FreePBX/admin/panel.php X%%APACHEDIR%%/data/FreePBX/admin/reports.php X%%APACHEDIR%%/data/FreePBX/admin/version.txt X%%APACHEDIR%%/data/FreePBX/index.html X%%APACHEDIR%%/data/FreePBX/mainstyle.css X%%APACHEDIR%%/data/FreePBX/panel/CHANGES X%%APACHEDIR%%/data/FreePBX/panel/FAQ X%%APACHEDIR%%/data/FreePBX/panel/LICENSE X%%APACHEDIR%%/data/FreePBX/panel/README X%%APACHEDIR%%/data/FreePBX/panel/RECIPES X%%APACHEDIR%%/data/FreePBX/panel/TODO X%%APACHEDIR%%/data/FreePBX/panel/UPGRADE X%%APACHEDIR%%/data/FreePBX/panel/convert_config_pre_14.pl X%%APACHEDIR%%/data/FreePBX/panel/extensions.conf.sample X%%APACHEDIR%%/data/FreePBX/panel/help.txt X%%APACHEDIR%%/data/FreePBX/panel/index.php X%%APACHEDIR%%/data/FreePBX/panel/index_amp.php X%%APACHEDIR%%/data/FreePBX/panel/op_astdb.cfg X%%APACHEDIR%%/data/FreePBX/panel/op_buttons.cfg X%%APACHEDIR%%/data/FreePBX/panel/op_lang_de.cfg X%%APACHEDIR%%/data/FreePBX/panel/op_lang_en.cfg X%%APACHEDIR%%/data/FreePBX/panel/op_lang_es.cfg X%%APACHEDIR%%/data/FreePBX/panel/op_lang_it.cfg X%%APACHEDIR%%/data/FreePBX/panel/op_server.cfg X%%APACHEDIR%%/data/FreePBX/panel/op_server.cfg.bak X%%APACHEDIR%%/data/FreePBX/panel/op_server.pl X%%APACHEDIR%%/data/FreePBX/panel/op_style.cfg X%%APACHEDIR%%/data/FreePBX/panel/operator_panel.swf X%%APACHEDIR%%/data/FreePBX/panel/safe_opserver X%%APACHEDIR%%/data/FreePBX/recordings/CHANGE.log X%%APACHEDIR%%/data/FreePBX/recordings/LICENSE.txt X%%APACHEDIR%%/data/FreePBX/recordings/README.txt X%%APACHEDIR%%/data/FreePBX/recordings/includes/ajax.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/asi.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/bootstrap.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/common.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/crypt.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/database.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/display.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/lang.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/login.php X%%APACHEDIR%%/data/FreePBX/recordings/includes/main.conf.php X%%APACHEDIR%%/data/FreePBX/recordings/index.php X%%APACHEDIR%%/data/FreePBX/recordings/locale/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/ari.utf-8.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/de_DE/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/de_DE/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/el_GR/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/el_GR/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/es_ES/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/es_ES/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/fr_FR/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/fr_FR/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/he_IL/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/he_IL/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/hu_HU/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/hu_HU/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/it_IT/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/it_IT/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/locale.txt X%%APACHEDIR%%/data/FreePBX/recordings/locale/pt_BR/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/pt_BR/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/locale/readme.txt X%%APACHEDIR%%/data/FreePBX/recordings/locale/sv_SE/LC_MESSAGES/ari.mo X%%APACHEDIR%%/data/FreePBX/recordings/locale/sv_SE/LC_MESSAGES/ari.po X%%APACHEDIR%%/data/FreePBX/recordings/misc/audio.php X%%APACHEDIR%%/data/FreePBX/recordings/misc/popup.css X%%APACHEDIR%%/data/FreePBX/recordings/misc/recording_popup.php X%%APACHEDIR%%/data/FreePBX/recordings/modules/callmonitor.module X%%APACHEDIR%%/data/FreePBX/recordings/modules/help.module X%%APACHEDIR%%/data/FreePBX/recordings/modules/settings.module X%%APACHEDIR%%/data/FreePBX/recordings/modules/voicemail.module X%%APACHEDIR%%/data/FreePBX/recordings/theme/global.css X%%APACHEDIR%%/data/FreePBX/recordings/theme/header.css X%%APACHEDIR%%/data/FreePBX/recordings/theme/iefixes.css X%%APACHEDIR%%/data/FreePBX/recordings/theme/images/arrow-asc.gif X%%APACHEDIR%%/data/FreePBX/recordings/theme/images/arrow-desc.gif X%%APACHEDIR%%/data/FreePBX/recordings/theme/layout.css X%%APACHEDIR%%/data/FreePBX/recordings/theme/logo.gif X%%APACHEDIR%%/data/FreePBX/recordings/theme/main.css X%%APACHEDIR%%/data/FreePBX/recordings/theme/navigation.css X%%APACHEDIR%%/data/FreePBX/recordings/theme/page.tpl.php X%%APACHEDIR%%/data/FreePBX/recordings/theme/spacer.gif X%%APACHEDIR%%/data/FreePBX/recordings/theme/text.css X%%APACHEDIR%%/data/FreePBX/recordings/version.php X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/theme/images X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/theme X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/modules X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/misc X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/sv_SE/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/sv_SE X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/pt_BR/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/pt_BR X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/it_IT/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/it_IT X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/hu_HU/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/hu_HU X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/he_IL/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/he_IL X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/fr_FR/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/fr_FR X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/es_ES/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/es_ES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/el_GR/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/el_GR X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/de_DE/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale/de_DE X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/locale X@dirrm %%APACHEDIR%%/data/FreePBX/recordings/includes X@dirrm %%APACHEDIR%%/data/FreePBX/recordings X@dirrm %%APACHEDIR%%/data/FreePBX/panel X@dirrm %%APACHEDIR%%/data/FreePBX/admin/modules/core X@dirrm %%APACHEDIR%%/data/FreePBX/admin/modules/_cache X@dirrm %%APACHEDIR%%/data/FreePBX/admin/modules X@dirrm %%APACHEDIR%%/data/FreePBX/admin/images X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/ru_RU/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/ru_RU X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/pt_PT/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/pt_PT X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/it_IT/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/it_IT X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/fr_FR/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/fr_FR X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/es_ES/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/es_ES X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/de_DE/LC_MESSAGES X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n/de_DE X@dirrm %%APACHEDIR%%/data/FreePBX/admin/i18n X@dirrm %%APACHEDIR%%/data/FreePBX/admin/common X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font/makefont X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/lib/font X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/lib/DB-modules X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/lib X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/jpgraph_lib X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/images X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/css/images X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr/css X@dirrm %%APACHEDIR%%/data/FreePBX/admin/cdr X@dirrm %%APACHEDIR%%/data/FreePBX/admin X@dirrm %%APACHEDIR%%/data/FreePBX/_asterisk X@dirrm %%APACHEDIR%%/data/FreePBX X@dirrm share/asterisk/sounds/custom X@unexec rmdir /var/spool/asterisk/fax X@unexec rmdir /var/spool/asterisk/voicemail/device X%%PORTDOCS%%@dirrm %%DOCSDIR%% END-of-freepbx/pkg-plist echo x - freepbx/pkg-descr sed 's/^X//' >freepbx/pkg-descr << 'END-of-freepbx/pkg-descr' XFreePBX is a standardized implementation of Asterisk that includes a web-based Xconfiguration interface and other tools. X XWWW: http://wiki.freepbx.org/ END-of-freepbx/pkg-descr echo x - freepbx/distinfo sed 's/^X//' >freepbx/distinfo << 'END-of-freepbx/distinfo' XMD5 (freepbx-2.1.0.tar.gz) = f2b44463eea8427e8474f24f0da289c1 XSHA256 (freepbx-2.1.0.tar.gz) = 8bea31007982ca9c917fc905debed6e398f91e6e45fe469b76ed7b1dcbc71e23 XSIZE (freepbx-2.1.0.tar.gz) = 4002240 END-of-freepbx/distinfo echo x - freepbx/Makefile sed 's/^X//' >freepbx/Makefile << 'END-of-freepbx/Makefile' X# New ports collection makefile for: freepbx X# Date created: 31 Mar 2006 X# Whom: Phillip Neumann X# X# $FreeBSD$ X# X XPORTNAME= freepbx XPORTVERSION= 2.1.0 XCATEGORIES= misc www net XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE} XMASTER_SITE_SUBDIR= amportal X XMAINTAINER= pneumann@gmail.com XCOMMENT= A modular web gui for Asterisk PBX X XRUN_DEPENDS= asterisk:${PORTSDIR}/net/asterisk \ X ${LOCALBASE}/lib/asterisk/modules/format_mp3.so:${PORTSDIR}/net/asterisk-addons \ X ${LOCALBASE}/share/pear/DB.php:${PORTSDIR}/databases/pear-DB \ X ${SITE_PERL}/Asterisk.pm:${PORTSDIR}/misc/p5-Asterisk \ X ${SITE_PERL}/Net/Telnet.pm:${PORTSDIR}/net/p5-Net-Telnet \ X ${SITE_PERL}/${PERL_ARCH}/DBD/mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql \ X ${SITE_PERL}/${PERL_ARCH}/DBI.pm:${PORTSDIR}/databases/p5-DBI \ X ${LOCALBASE}/share/pear/Console/Getargs.php:${PORTSDIR}/devel/pear-Console_Getargs \ X bash:${PORTSDIR}/shells/bash X XAPACHEDIR?= www XWEBPATH?= ${APACHEDIR}/data/FreePBX XTARGET?= ${PREFIX}/${WEBPATH} XWWWCGI?= ${PREFIX}/${APACHEDIR}/cgi-bin XPANEL?= ${TARGET}/panel X XWWWOWN?= www XWWWGRP?= www XDBUSER?= asteriskuser XDBUSERPASS?= amp109 XDBHOST?= localhost XASTMGRUSER?= AsteriskUser XASTMGRPASS?= AsteriskPass XHOSTNAME?= localhost X#Until amportal looks more descent, prepare the files here XEXEC_FILES= ${PREFIX}/bin/retrieve_conf \ X ${PREFIX}/bin/ampbackup.pl \ X ${PREFIX}/bin/fax-process.pl \ X ${PREFIX}/bin/retrieve_queues_conf_from_mysql.pl \ X ${PREFIX}/bin/retrieve_zap_conf_from_mysql.pl \ X ${PREFIX}/bin/retrieve_sip_conf_from_mysql.pl \ X ${PREFIX}/bin/retrieve_backup_cron_from_mysql.pl \ X ${PREFIX}/bin/retrieve_op_conf_from_mysql.pl \ X ${PREFIX}/bin/retrieve_iax_conf_from_mysql.pl \ X ${PREFIX}/bin/retrieve_parse_amportal_conf.pl \ X ${PREFIX}/share/asterisk/agi-bin/dialparties.agi \ X ${PREFIX}/share/asterisk/agi-bin/fixlocalprefix \ X ${PREFIX}/share/asterisk/agi-bin/phpagi.php \ X ${PREFIX}/share/asterisk/agi-bin/dialparties.agi.pl \ X ${PREFIX}/share/asterisk/agi-bin/list-item-remove.php \ X ${PREFIX}/share/asterisk/agi-bin/recordingcheck \ X ${PREFIX}/share/asterisk/agi-bin/directory \ X ${PREFIX}/share/asterisk/agi-bin/phpagi-asmanager.php \ X ${PANEL}/op_server.pl \ X ${PANEL}/safe_opserver \ X ${TARGET}/admin/bounce_op.sh \ X ${WWWCGI}/vmail.cgi X XUSE_APACHE= yes XWANT_PHP_MOD= yes XUSE_PHP= gd gettext mysql session openssl posix XUSE_PERL5= yes XUSE_MYSQL= yes XNO_BUILD= yes XPKGMESSAGE= ${WRKDIR}/pkg-message XSUB_FILES= pkg-message XSUB_LIST+= TARGET=${TARGET} DOCS=${DOCSDIR} XPLIST_SUB+= APACHEDIR=${APACHEDIR} X XDOCS= SQL/cdr_mysql_table.sql SQL/newinstall.sql docs/README.directory amportal-db-functions.sh amportal-db-remove.sh amportal-db-install.sh X X.include X Xpost-patch: X @${ECHO} X @${ECHO} " NOTE: Apache22 user should define APACHEDIR=www/apache22..." X @${ECHO} X.if !exists(${LOCALBASE}/etc/php.ini) X @${ECHO} X @${ECHO} Making a default php.ini... X @${CP} ${PATCHDIR}/php${PHP_VER}.ini ${LOCALBASE}/etc/php.ini X @${REINPLACE_CMD} -e 's|%%TARGET%%|${TARGET}|g' ${LOCALBASE}/etc/php.ini X.endif X Xdo-install: X @${ECHO} Backing up your asterisk configuration... X @(cd ${PREFIX}/etc && ${CP} -ripf asterisk asterisk.orig) X @(${CP} ${PATCHDIR}/amportal*.sh ${WRKSRC}) X @(cd ${WRKSRC}/amp_conf && ${CHMOD} -R +x bin sbin agi-bin cgi-bin) X @(${FIND} ${WRKSRC}/amp_conf -type f | ${XARGS} ${REINPLACE_CMD} -e 's|/usr/bin/php|${LOCALBASE}/bin/php|g') X @(${FIND} ${WRKSRC} -type f | ${XARGS} ${REINPLACE_CMD} -e 's|/var/lib/asterisk|${LOCALBASE}/share/asterisk|g') X @(${FIND} ${WRKSRC} -type f -name "*.bak" | ${XARGS} rm) X @(${FIND} ${WRKSRC} -type f -name "*.orig" | ${XARGS} rm) X @(cd ${WRKSRC} && ./install_amp --username ${DBUSER} --password ${DBUSERPASS} --dbhost ${DBHOST} --fopwebroot=${PANEL} --webroot=${TARGET} --cgibin=${WWWCGI} --bin=${PREFIX}/bin --sbin=${PREFIX}/sbin --asteriskuser=${ASTMGRUSER} --asteriskpass=${ASTMGRPASS} --systemconfig=${PREFIX}/etc) X @(${FIND} ${TARGET} -type d | ${XARGS} ${CHMOD} 755) X @(${FIND} ${TARGET} -type f | ${XARGS} ${CHMOD} 644) X @(${MKDIR} ${PREFIX}/share/asterisk/sounds/custom) X @for WRITABLE in ${PREFIX}/etc/asterisk ${TARGET}/admin/modules ${PREFIX}/share/asterisk/sounds/custom /var/spool/asterisk; do\ X ${CHMOD} -R 755 $$WRITABLE; \ X ${CHOWN} -R ${WWWOWN}:${WWWGRP} $$WRITABLE; \ X done; X X.if !defined(NOPORTDOCS) X @${MKDIR} ${DOCSDIR} X @for doc in ${DOCS}; do \ X ${CP} ${WRKSRC}/$$doc ${DOCSDIR};\ X done; X.endif X X @for EXECUTABLE in ${EXEC_FILES}; do\ X ${CHMOD} +x $$EXECUTABLE; \ X done; X X Xpost-install: X @${CAT} ${PKGMESSAGE} X X.include END-of-freepbx/Makefile echo c - freepbx/files mkdir -p freepbx/files > /dev/null 2>&1 echo x - freepbx/files/amportal-db-functions.sh sed 's/^X//' >freepbx/files/amportal-db-functions.sh << 'END-of-freepbx/files/amportal-db-functions.sh' X#!/bin/sh X X# Written by Tzafrir Cohen , X# Diego Iastrubni , X# Phillip Neumann X# Copyright (C) 2005, Xorcom X# X# All rights reserved. X# X# This program is free software; you can redistribute it and/or modify X# it under the terms of the GNU General Public License as published by X# the Free Software Foundation; either version 2 of the License, or X# (at your option) any later version. X# X# This program is distributed in the hope that it will be useful, X# but WITHOUT ANY WARRANTY; without even the implied warranty of X# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the X# GNU General Public License for more details. X# X# You should have received a copy of the GNU General Public License X# along with this program; if not, write to the Free Software X# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. X X# a small script to manage the needed SQL tables by AMPortal X# needs to be run as root X Xusage() X{ X echo X echo "Usage: $0 config [webadmin] [webpass] [cleandb]" X echo X echo -e "\t config: amportal config file (i.e. /etc/amportal.conf)" X echo -e "\t webadmin: default web admin (admin by default)" X echo -e "\t webpass: default web pass (admin by default)" X echo -e "\t webhost: give db permition to this host (localhost by default)" X echo -e "\t cleandb: Want a clean db (0 or 1, 1 means will not populate the db's)" X} X Xif [ "$#" -lt "1" ]; then X usage X exit 0 Xfi X XMYSQL="mysql" XMYSQLADMIN="mysqladmin" XSQLDIR=. X XAMPORTAL=$1 X XDEF_ADMIN_USER=${2:-"admin"} XDEF_ADMIN_PASSWD=${3:-"admin"} XSQL_HOST=${4:-"localhost"} XCLEANDB=${5:-0} X X. "${AMPORTAL}" X XADMIN_SQLCLIENT="${MYSQL} -h ${AMPDBHOST}" XUSER_SQLCLIENT="${ADMIN_SQLCLIENT} -u${AMPDBUSER} -p${AMPDBPASS}" X Xif [ ! -f ${AMPORTAL} ]; then X echo "${AMPORTAL} not found, please run upgrade_amp" >&2 X exit 1 Xfi X Xif [ -z $AMPDBUSER ] && [ -z $AMPDBPASS ] && [ -z $AMPDBHOST ]; then X echo "Databse not configured on ${AMPORTAL}" >&2 X echo "please update configuration and run apply_conf.sh" >&2 X exit 1 Xfi X X Xdelete_db() X{ X DB=$1 X X ExistDB=`${ADMIN_SQLCLIENT} -e "show databases" |grep ${DB}` X X if [ ! -z "${ExistDB}" ]; then X echo "Deleting $DB"; X $MYSQLADMIN -f -h ${AMPDBHOST} drop $DB X fi X} X Xcreate_db() X{ X DB=$1 X SQL_INPUT="${SQLDIR}/$2" X X ExistDB=`${ADMIN_SQLCLIENT} -e "show databases" |grep ${DB}` X if [ -z "${ExistDB}" ]; then X echo "Creating $DB Database..." X $MYSQLADMIN -h ${AMPDBHOST} create ${DB} X fi X X CMD="GRANT ALL PRIVILEGES ON $DB.* TO $AMPDBUSER@$SQL_HOST IDENTIFIED BY '$AMPDBPASS';" X X ${ADMIN_SQLCLIENT} -e "${CMD}" X X if [ $CLEANDB != "1" ]; then X # in case this breaks in the middle, we need to still be able X # to run everything. So we need to prevent failed INSERTs from X # bumping the whole process X perl -n -e "unless (/INSERT/ .. /[;]/){print}" ${SQL_INPUT} | ${USER_SQLCLIENT} ${DB} X perl -n -e "if (/INSERT/ .. /[;]/){s/\n//; s/;/\n/; print}" ${SQL_INPUT} \ X | while read new_insert_line X # insert this line if it has not been already inserted. X # TODO: update if an insert has failed? X do echo $new_insert_line | ${USER_SQLCLIENT} ${DB} || true X X done X fi X} X X X END-of-freepbx/files/amportal-db-functions.sh echo x - freepbx/files/patch-apply_conf.sh sed 's/^X//' >freepbx/files/patch-apply_conf.sh << 'END-of-freepbx/files/patch-apply_conf.sh' X--- apply_conf.sh.orig Mon May 1 17:13:46 2006 X+++ apply_conf.sh Mon May 1 17:15:49 2006 X@@ -1,4 +1,4 @@ X-#!/bin/bash X+#!/usr/bin/env bash X X if [ "$1" == "-h" ] X then X@@ -29,31 +29,31 @@ X X echo "Updating configuration..." X X-echo "/etc/asterisk/cdr_mysql.conf" X-sed -r -i "s/user=[a-zA-Z0-9]*/user=$AMPDBUSER/" /etc/asterisk/cdr_mysql.conf X-sed -r -i "s/password=[a-zA-Z0-9]*/password=$AMPDBPASS/" /etc/asterisk/cdr_mysql.conf X-sed -r -i "s/hostname=[a-zA-Z0-9.-]*/hostname=$AMPDBHOST/" /etc/asterisk/cdr_mysql.conf X- X-echo "/etc/asterisk/manager.conf" X-sed -r -i "s/secret = [a-zA-Z0-9]*/secret = $AMPMGRPASS/" /etc/asterisk/manager.conf X-sed -r -i "/\[general\]/!s/\[[a-zA-Z0-9]+\]/[$AMPMGRUSER]/" /etc/asterisk/manager.conf X+echo "$ASTETCDIR/cdr_mysql.conf" X+sed -i.bak "s/user=[a-zA-Z0-9]*/user=$AMPDBUSER/" $ASTETCDIR/cdr_mysql.conf X+sed -i.bak "s/password=[a-zA-Z0-9]*/password=$AMPDBPASS/" $ASTETCDIR/cdr_mysql.conf X+sed -i.bak "s/hostname=[a-zA-Z0-9.-]*/hostname=$AMPDBHOST/" $ASTETCDIR/cdr_mysql.conf X+ X+echo "$ASTETCDIR/manager.conf" X+sed -i.bak "s/secret = [a-zA-Z0-9]*/secret = $AMPMGRPASS/" $ASTETCDIR/manager.conf X+sed -i.bak "/\[general\]/!s/\[.*\]/\[$AMPMGRUSER\]/" $ASTETCDIR/manager.conf X X if [ -e $AMPWEBROOT"/panel/op_server.cfg" ]; then X echo $AMPWEBROOT"/panel/op_server.cfg" X- sed -r -i "s/manager_user=[a-zA-Z0-9]*/manager_user=$AMPMGRUSER/" $FOPWEBROOT/op_server.cfg X- sed -r -i "s/manager_secret=[a-zA-Z0-9]*/manager_secret=$AMPMGRPASS/" $FOPWEBROOT/op_server.cfg X- sed -r -i "s/web_hostname=[a-zA-Z0-9_.-]*/web_hostname=$AMPWEBADDRESS/" $FOPWEBROOT/op_server.cfg X- sed -r -i "s/security_code=[a-zA-Z0-9]*/security_code=$FOPPASSWORD/" $FOPWEBROOT/op_server.cfg X- sed -r -i "s!flash_dir=[a-zA-Z0-9_./\-]*!flash_dir=$FOPWEBROOT!" $FOPWEBROOT/op_server.cfg X- sed -r -i "s!web_hostname=[a-zA-Z0-9.-]*!web_hostname=$AMPWEBADDRESS!" $FOPWEBROOT/op_server.cfg X- sed -r -i "s!web_hostname=[a-zA-Z0-9.-]*!web_hostname=$AMPWEBADDRESS!" $FOPWEBROOT/op_server.cfg X+ sed -i.bak "s/manager_user=[a-zA-Z0-9]*/manager_user=$AMPMGRUSER/" $FOPWEBROOT/op_server.cfg X+ sed -i.bak "s/manager_secret=[a-zA-Z0-9]*/manager_secret=$AMPMGRPASS/" $FOPWEBROOT/op_server.cfg X+ sed -i.bak "s/web_hostname=[a-zA-Z0-9_.-]*/web_hostname=$AMPWEBADDRESS/" $FOPWEBROOT/op_server.cfg X+ sed -i.bak "s/security_code=[a-zA-Z0-9]*/security_code=$FOPPASSWORD/" $FOPWEBROOT/op_server.cfg X+ sed -i.bak "s!flash_dir=[a-zA-Z0-9_./\-]*!flash_dir=$FOPWEBROOT!" $FOPWEBROOT/op_server.cfg X+ sed -i.bak "s!web_hostname=[a-zA-Z0-9.-]*!web_hostname=$AMPWEBADDRESS!" $FOPWEBROOT/op_server.cfg X+ sed -i.bak "s!web_hostname=[a-zA-Z0-9.-]*!web_hostname=$AMPWEBADDRESS!" $FOPWEBROOT/op_server.cfg X fi X X-echo "/etc/asterisk/vm_email.inc" X+echo "$ASTETCDIR/vm_email.inc" X if [ "xx$AMPWEBADDRESS" = "xx" ]; then X echo "You might need to modify /etc/asterisk/vm_email.inc manually" X else X- sed -r -i "s!http://.*/recordings!http://$AMPWEBADDRESS/recordings!" /etc/asterisk/vm_email.inc X+ sed -i.bak "s!http://.*/recordings!http://$AMPWEBADDRESS/recordings!" $ASTETCDIR/vm_email.inc X fi X X END-of-freepbx/files/patch-apply_conf.sh echo x - freepbx/files/pkg-message.in sed 's/^X//' >freepbx/files/pkg-message.in << 'END-of-freepbx/files/pkg-message.in' X XDont forget to: X X 1) enable .php files in your apache config X 2) adding index.php as default index files X 3) add pear and %%TARGET%%/admin to your php.ini includes X (include_path = .:/usr/local/share/pear:%%TARGET%%/admin") X 4) Make sure asterisk and mysql are running fine X 5) make sure asterisk accepts connection (manager.conf) X XIf this is a new instalation (not an upgrade), setup you database Xwith the following command: X Xcd %%DOCS%% X./amportal-db-install.sh %%PREFIX%%/etc/amportal.conf X X END-of-freepbx/files/pkg-message.in echo x - freepbx/files/patch-newinstall.sql sed 's/^X//' >freepbx/files/patch-newinstall.sql << 'END-of-freepbx/files/patch-newinstall.sql' X--- SQL/newinstall.sql.orig Tue May 16 02:48:58 2006 X+++ SQL/newinstall.sql Tue May 16 02:48:18 2006 X@@ -1,222 +1,379 @@ X--- phpMyAdmin SQL Dump X--- version 2.6.0-alpha1 X--- http://www.phpmyadmin.net X--- X--- Host: localhost X--- Generation Time: May 20, 2004 at 04:00 PM X--- Server version: 3.23.58 X--- PHP Version: 4.3.2 X--- X--- Database : `asterisk` X--- X+-- MySQL dump 10.10 X+-- X+-- Host: localhost Database: asterisk X+-- ------------------------------------------------------ X+-- Server version 5.0.21 X+ X+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; X+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; X+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; X+/*!40101 SET NAMES utf8 */; X+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; X+/*!40103 SET TIME_ZONE='+00:00' */; X+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; X+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; X+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; X+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; X+ X+-- X+-- Table structure for table `Backup` X+-- X+ X+DROP TABLE IF EXISTS `Backup`; X+CREATE TABLE `Backup` ( X+ `Name` varchar(50) default NULL, X+ `Voicemail` varchar(50) default NULL, X+ `Recordings` varchar(50) default NULL, X+ `Configurations` varchar(50) default NULL, X+ `CDR` varchar(55) default NULL, X+ `FOP` varchar(50) default NULL, X+ `Minutes` varchar(50) default NULL, X+ `Hours` varchar(50) default NULL, X+ `Days` varchar(50) default NULL, X+ `Months` varchar(50) default NULL, X+ `Weekdays` varchar(50) default NULL, X+ `Command` varchar(200) default NULL, X+ `Method` varchar(50) default NULL, X+ `ID` int(11) NOT NULL auto_increment, X+ PRIMARY KEY (`ID`) X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `Backup` X+-- X+ X X--- -------------------------------------------------------- X+/*!40000 ALTER TABLE `Backup` DISABLE KEYS */; X+LOCK TABLES `Backup` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `Backup` ENABLE KEYS */; X X--- X+-- X -- Table structure for table `admin` X--- X+-- X X-CREATE TABLE IF NOT EXISTS `admin` ( X+DROP TABLE IF EXISTS `admin`; X+CREATE TABLE `admin` ( X `variable` varchar(20) NOT NULL default '', X `value` varchar(80) NOT NULL default '', X PRIMARY KEY (`variable`) X-) TYPE=MyISAM; X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X X--- X+-- X -- Dumping data for table `admin` X--- X+-- X+ X+ X+/*!40000 ALTER TABLE `admin` DISABLE KEYS */; X+LOCK TABLES `admin` WRITE; X+INSERT INTO `admin` VALUES ('need_reload','false'),('version','2.1.0'); X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `admin` ENABLE KEYS */; X+ X+-- X+-- Table structure for table `ampusers` X+-- X+ X+DROP TABLE IF EXISTS `ampusers`; X+CREATE TABLE `ampusers` ( X+ `username` varchar(20) NOT NULL default '', X+ `password` varchar(20) NOT NULL default '', X+ `extension_low` varchar(20) NOT NULL default '', X+ `extension_high` varchar(20) NOT NULL default '', X+ `deptname` varchar(20) NOT NULL default '', X+ `sections` varchar(255) NOT NULL default '', X+ PRIMARY KEY (`username`) X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `ampusers` X+-- X X-INSERT INTO `admin` VALUES ('need_reload', 'false'); X-INSERT INTO `admin` VALUES ('version','2.0.0'); X--- -------------------------------------------------------- X X--- X+/*!40000 ALTER TABLE `ampusers` DISABLE KEYS */; X+LOCK TABLES `ampusers` WRITE; X+INSERT INTO `ampusers` VALUES ('admin','admin','','','','*'); X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `ampusers` ENABLE KEYS */; X+ X+-- X+-- Table structure for table `devices` X+-- X+ X+DROP TABLE IF EXISTS `devices`; X+CREATE TABLE `devices` ( X+ `id` varchar(20) NOT NULL, X+ `tech` varchar(10) NOT NULL, X+ `dial` varchar(50) NOT NULL, X+ `devicetype` varchar(5) NOT NULL, X+ `user` varchar(50) default NULL, X+ `description` varchar(50) default NULL, X+ `emergency_cid` varchar(100) default NULL X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `devices` X+-- X+ X+ X+/*!40000 ALTER TABLE `devices` DISABLE KEYS */; X+LOCK TABLES `devices` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `devices` ENABLE KEYS */; X+ X+-- X -- Table structure for table `extensions` X--- X+-- X X-CREATE TABLE IF NOT EXISTS `extensions` ( X+DROP TABLE IF EXISTS `extensions`; X+CREATE TABLE `extensions` ( X `context` varchar(45) NOT NULL default 'default', X `extension` varchar(45) NOT NULL default '', X- `priority` VARCHAR(5) NOT NULL default '1', X+ `priority` varchar(5) NOT NULL default '1', X `application` varchar(45) NOT NULL default '', X `args` varchar(255) default NULL, X `descr` text, X `flags` int(1) NOT NULL default '0', X PRIMARY KEY (`context`,`extension`,`priority`) X-) TYPE=MyISAM; X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X X+-- X+-- Dumping data for table `extensions` X+-- X X--- X--- Create a default route (9 to get out) X--- X X-INSERT INTO extensions (context, extension, priority, application, args) VALUES X- ('outrt-001-9_outside','_9.','1','Macro','dialout-trunk,1,${EXTEN:1}'); X+/*!40000 ALTER TABLE `extensions` DISABLE KEYS */; X+LOCK TABLES `extensions` WRITE; X+INSERT INTO `extensions` VALUES ('outrt-001-9_outside','_9.','1','Macro','dialout-trunk,1,${EXTEN:1}',NULL,0),('outrt-001-9_outside','_9.','2','Macro','outisbusy','No available circuits',0),('outbound-allroutes','include','1','outrt-001-9_outside','','',2); X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `extensions` ENABLE KEYS */; X X-INSERT INTO extensions (context, extension, priority, application, args, descr) VALUES X- ('outrt-001-9_outside','_9.','2','Macro','outisbusy','No available circuits'); X+-- X+-- Table structure for table `featurecodes` X+-- X+ X+DROP TABLE IF EXISTS `featurecodes`; X+CREATE TABLE `featurecodes` ( X+ `modulename` varchar(50) NOT NULL, X+ `featurename` varchar(50) NOT NULL, X+ `description` varchar(200) NOT NULL, X+ `defaultcode` varchar(20) default NULL, X+ `customcode` varchar(20) default NULL, X+ `enabled` tinyint(4) NOT NULL default '0', X+ PRIMARY KEY (`modulename`,`featurename`), X+ KEY `enabled` (`enabled`) X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `featurecodes` X+-- X X-INSERT INTO extensions (context, extension, priority, application, args, descr, flags) VALUES X- ('outbound-allroutes','include','1','outrt-001-9_outside','','','2'); X- X--- -------------------------------------------------------- X X--- X+/*!40000 ALTER TABLE `featurecodes` DISABLE KEYS */; X+LOCK TABLES `featurecodes` WRITE; X+INSERT INTO `featurecodes` VALUES ('core','userlogon','User Logon','*11',NULL,1),('core','userlogoff','User Logoff','*12',NULL,1),('core','zapbarge','ZapBarge','888',NULL,1),('core','simu_pstn','Simulate Incoming Call','7777',NULL,1),('core','simu_fax','Simulate Incoming FAX Call','666',NULL,1); X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `featurecodes` ENABLE KEYS */; X+ X+-- X -- Table structure for table `globals` X--- X+-- X X-CREATE TABLE IF NOT EXISTS `globals` ( X+DROP TABLE IF EXISTS `globals`; X+CREATE TABLE `globals` ( X `variable` char(20) NOT NULL default '', X `value` char(50) NOT NULL default '', X PRIMARY KEY (`variable`) X-) TYPE=MyISAM; X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X X--- X+-- X -- Dumping data for table `globals` X--- X+-- X X-INSERT INTO `globals` VALUES ('CALLFILENAME', '""'); X-INSERT INTO `globals` VALUES ('DIAL_OPTIONS', 'tr'); X-INSERT INTO `globals` VALUES ('TRUNK_OPTIONS', 'r'); X-INSERT INTO `globals` VALUES ('DIAL_OUT', '9'); X-INSERT INTO `globals` VALUES ('FAX', ''); X-INSERT INTO `globals` VALUES ('FAX_RX', 'system'); X-INSERT INTO `globals` VALUES ('FAX_RX_EMAIL', 'fax@mydomain.com'); X-INSERT INTO `globals` VALUES ('INCOMING', 'group-all'); X-INSERT INTO `globals` VALUES ('NULL', '""'); X-INSERT INTO `globals` VALUES ('OPERATOR', ''); X-INSERT INTO `globals` VALUES ('PARKNOTIFY', 'SIP/200'); X-INSERT INTO `globals` VALUES ('RECORDEXTEN', '""'); X-INSERT INTO `globals` VALUES ('RINGTIMER', '15'); X-INSERT INTO `globals` VALUES ('DIRECTORY', 'last'); X-INSERT INTO `globals` VALUES ('AFTER_INCOMING', ''); X-INSERT INTO `globals` VALUES ('IN_OVERRIDE', 'forcereghours'); X-INSERT INTO `globals` VALUES ('REGTIME', '7:55-17:05'); X-INSERT INTO `globals` VALUES ('REGDAYS', 'mon-fri'); X-INSERT INTO `globals` VALUES ('DIRECTORY_OPTS', ''); X-INSERT INTO `globals` VALUES ('DIALOUTIDS', '1'); X-INSERT INTO `globals` VALUES ('OUT_1', 'ZAP/g0'); X-INSERT INTO `globals` VALUES ('VM_PREFIX', '*'); X X--- -------------------------------------------------------- X+/*!40000 ALTER TABLE `globals` DISABLE KEYS */; X+LOCK TABLES `globals` WRITE; X+INSERT INTO `globals` VALUES ('CALLFILENAME','\"\"'),('DIAL_OPTIONS','tr'),('TRUNK_OPTIONS','r'),('DIAL_OUT','9'),('FAX',''),('FAX_RX','system'),('FAX_RX_EMAIL','fax@mydomain.com'),('INCOMING','group-all'),('NULL','\"\"'),('OPERATOR',''),('PARKNOTIFY','SIP/200'),('RECORDEXTEN','\"\"'),('RINGTIMER','15'),('DIRECTORY','last'),('AFTER_INCOMING',''),('IN_OVERRIDE','forcereghours'),('REGTIME','7:55-17:05'),('REGDAYS','mon-fri'),('DIRECTORY_OPTS',''),('DIALOUTIDS','1'),('OUT_1','ZAP/g0'),('VM_PREFIX','*'),('TO NEZONE','us'),('ALLOW_SIP_ANON','no'),('FAX_RX_FROM','freepbx@gmail.com'),('VM_DDTYPE',''),('VM_GAIN',''); X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `globals` ENABLE KEYS */; X X--- X--- Table structure for table `sip` X--- X+-- X+-- Table structure for table `iax` X+-- X X-CREATE TABLE IF NOT EXISTS `sip` ( X- `id` VARCHAR( 20 ) NOT NULL default '-1', X+DROP TABLE IF EXISTS `iax`; X+CREATE TABLE `iax` ( X+ `id` varchar(20) NOT NULL default '-1', X `keyword` varchar(30) NOT NULL default '', X `data` varchar(150) NOT NULL default '', X `flags` int(1) NOT NULL default '0', X PRIMARY KEY (`id`,`keyword`) X-) TYPE=MyISAM; X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X X--- X--- Dumping data for table `sip` X--- X+-- X+-- Dumping data for table `iax` X+-- X X--- ---------------------------------------------------------- X X+/*!40000 ALTER TABLE `iax` DISABLE KEYS */; X+LOCK TABLES `iax` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `iax` ENABLE KEYS */; X X--- X--- Table structure for table `ampusers` X--- X+-- X+-- Table structure for table `incoming` X+-- X X-CREATE TABLE IF NOT EXISTS `ampusers` ( X- `username` varchar(20) NOT NULL default '', X- `password` varchar(20) NOT NULL default '', X- `extension_low` varchar(20) NOT NULL default '', X- `extension_high` varchar(20) NOT NULL default '', X- `deptname` varchar(20) NOT NULL default '', X- `sections` varchar(255) NOT NULL default '', X- PRIMARY KEY (`username`) X-) TYPE=MyISAM; X+DROP TABLE IF EXISTS `incoming`; X+CREATE TABLE `incoming` ( X+ `cidnum` varchar(20) default NULL, X+ `extension` varchar(20) default NULL, X+ `destination` varchar(50) default NULL, X+ `faxexten` varchar(20) default NULL, X+ `faxemail` varchar(50) default NULL, X+ `answer` tinyint(1) default NULL, X+ `wait` int(2) default NULL, X+ `privacyman` tinyint(1) default NULL, X+ `alertinfo` varchar(32) default NULL, X+ `channel` varchar(20) default NULL X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X X-INSERT INTO ampusers (username, password, extension_low, extension_high, deptname, sections) VALUES X- ('admin','admin','','','','*'); X- X--- X--- Table structure for table `iax` X--- X- X-CREATE TABLE IF NOT EXISTS `iax` ( X- `id` VARCHAR( 20 ) NOT NULL default '-1', X- `keyword` varchar(30) NOT NULL default '', X- `data` varchar(150) NOT NULL default '', X- `flags` int(1) NOT NULL default '0', X- PRIMARY KEY (`id`,`keyword`) X- ) TYPE=MyISAM; X+-- X+-- Dumping data for table `incoming` X+-- X X- X--- X--- Table structure for table `zap` X--- X X-CREATE TABLE IF NOT EXISTS `zap` ( X- `id` VARCHAR( 20 ) NOT NULL default '-1', X- `keyword`varchar(30) NOT NULL default '', X- `data`varchar(150) NOT NULL default '', X- `flags` int(1) NOT NULL default '0', X- PRIMARY KEY (`id`,`keyword`) X- ) TYPE=MyISAM; X- X--- X+/*!40000 ALTER TABLE `incoming` DISABLE KEYS */; X+LOCK TABLES `incoming` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `incoming` ENABLE KEYS */; X+ X+-- X+-- Table structure for table `modules` X+-- X+ X+DROP TABLE IF EXISTS `modules`; X+CREATE TABLE `modules` ( X+ `id` int(11) NOT NULL auto_increment, X+ `modulename` varchar(50) NOT NULL, X+ `version` varchar(20) NOT NULL, X+ `enabled` tinyint(4) NOT NULL, X+ PRIMARY KEY (`id`) X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `modules` X+-- X+ X+ X+/*!40000 ALTER TABLE `modules` DISABLE KEYS */; X+LOCK TABLES `modules` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `modules` ENABLE KEYS */; X+ X+-- X -- Table structure for table `queues` X--- X+-- X X-CREATE TABLE IF NOT EXISTS `queues` ( X+DROP TABLE IF EXISTS `queues`; X+CREATE TABLE `queues` ( X `id` bigint(11) NOT NULL default '-1', X `keyword` varchar(20) NOT NULL default '', X `data` varchar(150) NOT NULL default '', X `flags` int(1) NOT NULL default '0', X PRIMARY KEY (`id`,`keyword`,`data`) X-) TYPE=MyISAM;; X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `queues` X+-- X X-CREATE TABLE IF NOT EXISTS `devices` ( X-`id` VARCHAR( 20 ) NOT NULL , X-`tech` VARCHAR( 10 ) NOT NULL , X-`dial` VARCHAR( 50 ) NOT NULL , X-`devicetype` VARCHAR( 5 ) NOT NULL , X-`user` VARCHAR( 50 ) , X-`description` VARCHAR( 50 ) , X-`emergency_cid` VARCHAR( 100 ) NULL X-) TYPE = MYISAM ; X X-CREATE TABLE IF NOT EXISTS users (extension VARCHAR( 20 ) NOT NULL , password VARCHAR( 20 ) , name VARCHAR( 50 ) , voicemail VARCHAR( 50 ) , ringtimer INT(3) , noanswer VARCHAR( 100 ) , recording VARCHAR( 50 ) , outboundcid VARCHAR( 50 ) , directdid VARCHAR( 50 ) NULL, didalert VARCHAR ( 50 ) NULL ); X+/*!40000 ALTER TABLE `queues` DISABLE KEYS */; X+LOCK TABLES `queues` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `queues` ENABLE KEYS */; X X -- X--- Needs to be changed to their new structure, comment out for now X+-- Table structure for table `sip` X -- X-CREATE TABLE IF NOT EXISTS `incoming` ( `cidnum` VARCHAR( 20 ) , `extension` VARCHAR( 20 ) , `destination` VARCHAR( 50 ) , `faxexten` VARCHAR( 20 ) , `faxemail` VARCHAR( 50 ) , `answer` TINYINT( 1 ) , `wait` INT( 2 ) , `privacyman` TINYINT( 1 ) , alertinfo VARCHAR( 32 ) , `channel` VARCHAR( 20 ) ); X+ X+DROP TABLE IF EXISTS `sip`; X+CREATE TABLE `sip` ( X+ `id` varchar(20) NOT NULL default '-1', X+ `keyword` varchar(30) NOT NULL default '', X+ `data` varchar(150) NOT NULL default '', X+ `flags` int(1) NOT NULL default '0', X+ PRIMARY KEY (`id`,`keyword`) X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X -- X+-- Dumping data for table `sip` X -- X X-CREATE TABLE IF NOT EXISTS `Backup` (`Name` varchar(50) default NULL,`Voicemail` varchar(50) default NULL,`Recordings` varchar(50) default NULL,`Configurations` varchar(50) default NULL,`CDR` varchar(55) default NULL,`FOP` varchar(50) default NULL,`Minutes` varchar(50) default NULL,`Hours` varchar(50) default NULL,`Days` varchar(50) default NULL,`Months` varchar(50) default NULL,`Weekdays` varchar(50) default NULL,`Command` varchar(200) default NULL,`Method` varchar(50) default NULL,`ID` int(11) NOT NULL auto_increment,PRIMARY KEY (ID)); X X--- X--- Create module tables X--- X+/*!40000 ALTER TABLE `sip` DISABLE KEYS */; X+LOCK TABLES `sip` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `sip` ENABLE KEYS */; X+ X+-- X+-- Table structure for table `users` X+-- X X-CREATE TABLE IF NOT EXISTS `modules` ( X-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , X-`modulename` VARCHAR( 50 ) NOT NULL , X-`version` VARCHAR( 20 ) NOT NULL , X-`enabled` TINYINT NOT NULL X-) TYPE = MYISAM ; X+DROP TABLE IF EXISTS `users`; X+CREATE TABLE `users` ( X+ `extension` varchar(20) NOT NULL, X+ `password` varchar(20) default NULL, X+ `name` varchar(50) default NULL, X+ `voicemail` varchar(50) default NULL, X+ `ringtimer` int(3) default NULL, X+ `noanswer` varchar(100) default NULL, X+ `recording` varchar(50) default NULL, X+ `outboundcid` varchar(50) default NULL, X+ `directdid` varchar(50) default NULL, X+ `didalert` varchar(50) default NULL X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X X -- X--- Table structure for table `featurecodes` X+-- Dumping data for table `users` X -- X X-CREATE TABLE IF NOT EXISTS `featurecodes` ( X- `modulename` varchar(50) NOT NULL, X- `featurename` varchar(50) NOT NULL, X- `description` varchar(200) NOT NULL, X- `defaultcode` varchar(20) default NULL, X- `customcode` varchar(20) default NULL, X- `enabled` tinyint(4) NOT NULL default '0', X- PRIMARY KEY (`modulename`,`featurename`), X- KEY `enabled` (`enabled`) X-) TYPE=MyISAM; X+ X+/*!40000 ALTER TABLE `users` DISABLE KEYS */; X+LOCK TABLES `users` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `users` ENABLE KEYS */; X+ X+-- X+-- Table structure for table `zap` X+-- X+ X+DROP TABLE IF EXISTS `zap`; X+CREATE TABLE `zap` ( X+ `id` varchar(20) NOT NULL default '-1', X+ `keyword` varchar(30) NOT NULL default '', X+ `data` varchar(150) NOT NULL default '', X+ `flags` int(1) NOT NULL default '0', X+ PRIMARY KEY (`id`,`keyword`) X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `zap` X+-- X+ X+ X+/*!40000 ALTER TABLE `zap` DISABLE KEYS */; X+LOCK TABLES `zap` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `zap` ENABLE KEYS */; X+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; X+ X+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; X+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; X+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; X+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; X+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; X+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; X+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; X END-of-freepbx/files/patch-newinstall.sql echo x - freepbx/files/patch-cdr_mysql_table.sql sed 's/^X//' >freepbx/files/patch-cdr_mysql_table.sql << 'END-of-freepbx/files/patch-cdr_mysql_table.sql' X--- SQL/cdr_mysql_table.sql.orig Tue May 16 02:48:51 2006 X+++ SQL/cdr_mysql_table.sql Tue May 16 02:48:24 2006 X@@ -1,18 +1,60 @@ X-CREATE TABLE cdr ( X- calldate datetime NOT NULL default '0000-00-00 00:00:00', X- clid varchar(80) NOT NULL default '', X- src varchar(80) NOT NULL default '', X- dst varchar(80) NOT NULL default '', X- dcontext varchar(80) NOT NULL default '', X- channel varchar(80) NOT NULL default '', X- dstchannel varchar(80) NOT NULL default '', X- lastapp varchar(80) NOT NULL default '', X- lastdata varchar(80) NOT NULL default '', X- duration int(11) NOT NULL default '0', X- billsec int(11) NOT NULL default '0', X- disposition varchar(45) NOT NULL default '', X- amaflags int(11) NOT NULL default '0', X- accountcode varchar(20) NOT NULL default '', X- uniqueid varchar(32) NOT NULL default '', X- userfield varchar(255) NOT NULL default '' X-); X+-- MySQL dump 10.10 X+-- X+-- Host: localhost Database: asteriskcdrdb X+-- ------------------------------------------------------ X+-- Server version 5.0.21 X+ X+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; X+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; X+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; X+/*!40101 SET NAMES utf8 */; X+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; X+/*!40103 SET TIME_ZONE='+00:00' */; X+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; X+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; X+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; X+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; X+ X+-- X+-- Table structure for table `cdr` X+-- X+ X+DROP TABLE IF EXISTS `cdr`; X+CREATE TABLE `cdr` ( X+ `calldate` datetime NOT NULL default '0000-00-00 00:00:00', X+ `clid` varchar(80) NOT NULL default '', X+ `src` varchar(80) NOT NULL default '', X+ `dst` varchar(80) NOT NULL default '', X+ `dcontext` varchar(80) NOT NULL default '', X+ `channel` varchar(80) NOT NULL default '', X+ `dstchannel` varchar(80) NOT NULL default '', X+ `lastapp` varchar(80) NOT NULL default '', X+ `lastdata` varchar(80) NOT NULL default '', X+ `duration` int(11) NOT NULL default '0', X+ `billsec` int(11) NOT NULL default '0', X+ `disposition` varchar(45) NOT NULL default '', X+ `amaflags` int(11) NOT NULL default '0', X+ `accountcode` varchar(20) NOT NULL default '', X+ `uniqueid` varchar(32) NOT NULL default '', X+ `userfield` varchar(255) NOT NULL default '' X+) ENGINE=MyISAM DEFAULT CHARSET=latin1; X+ X+-- X+-- Dumping data for table `cdr` X+-- X+ X+ X+/*!40000 ALTER TABLE `cdr` DISABLE KEYS */; X+LOCK TABLES `cdr` WRITE; X+UNLOCK TABLES; X+/*!40000 ALTER TABLE `cdr` ENABLE KEYS */; X+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; X+ X+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; X+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; X+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; X+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; X+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; X+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; X+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; X+ END-of-freepbx/files/patch-cdr_mysql_table.sql echo x - freepbx/files/amportal-db-remove.sh sed 's/^X//' >freepbx/files/amportal-db-remove.sh << 'END-of-freepbx/files/amportal-db-remove.sh' X#!/bin/sh X X# Written by Tzafrir Cohen , X# Diego Iastrubni X# Phillip Neumann X# Copyright (C) 2005, Xorcom X# X# All rights reserved. X# X# This program is free software; you can redistribute it and/or modify X# it under the terms of the GNU General Public License as published by X# the Free Software Foundation; either version 2 of the License, or X# (at your option) any later version. X# X# This program is distributed in the hope that it will be useful, X# but WITHOUT ANY WARRANTY; without even the implied warranty of X# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the X# GNU General Public License for more details. X# X# You should have received a copy of the GNU General Public License X# along with this program; if not, write to the Free Software X# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. X X# a small script to generate the needed SQL tables by AMPortal X# needs to be run as root X X. amportal-db-functions.sh $1 $2 $3 $4 $5 || usage X Xdelete_db "asteriskcdrdb" Xdelete_db "asterisk" X Xecho Xecho "The amportal databases have been purged" Xecho END-of-freepbx/files/amportal-db-remove.sh echo x - freepbx/files/amportal-db-install.sh sed 's/^X//' >freepbx/files/amportal-db-install.sh << 'END-of-freepbx/files/amportal-db-install.sh' X#!/bin/sh X X# Written by Tzafrir Cohen , X# Diego Iastrubni X# Phillip Neumann X# Copyright (C) 2005, Xorcom X# X# All rights reserved. X# X# This program is free software; you can redistribute it and/or modify X# it under the terms of the GNU General Public License as published by X# the Free Software Foundation; either version 2 of the License, or X# (at your option) any later version. X# X# This program is distributed in the hope that it will be useful, X# but WITHOUT ANY WARRANTY; without even the implied warranty of X# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the X# GNU General Public License for more details. X# X# You should have received a copy of the GNU General Public License X# along with this program; if not, write to the Free Software X# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. X X# a small script to generate the needed SQL tables by AMPortal X X. amportal-db-functions.sh $1 $2 $3 $4 $5 || usage X X Xecho "creating asterisk DB" Xcreate_db "asterisk" "newinstall.sql" X Xecho "creating asteriskcdr DB" Xcreate_db "asteriskcdrdb" "cdr_mysql_table.sql" X Xif [ $CLEANDB != "1" ]; then X echo "Making a default AMPortal administrator" X echo "UPDATE \`ampusers\` SET username='$DEF_ADMIN_USER'" | $USER_SQLCLIENT asterisk X echo "UPDATE \`ampusers\` SET password='$DEF_ADMIN_PASSWD'" | $USER_SQLCLIENT asterisk Xfi X Xecho "The default user and password for the database is [$AMPDBUSER:$AMPDBPASS]" Xecho "The default administrator for AMPortal is [$DEF_ADMIN_USER:$DEF_ADMIN_PASSWD]" END-of-freepbx/files/amportal-db-install.sh echo x - freepbx/files/patch-install_amp sed 's/^X//' >freepbx/files/patch-install_amp << 'END-of-freepbx/files/patch-install_amp' X--- install_amp.orig Mon May 15 13:41:00 2006 X+++ install_amp Wed May 17 20:15:12 2006 X@@ -1,4 +1,4 @@ X-#!/usr/bin/php -q X+#!/usr/bin/env php X Use a remote database server"); X out(" --username Use to connect to db and write config"); X out(" --password Use to connect to db and write config"); X+ X+ out(" --fopwebroot Web path where fop will be installed"); X+ out(" --webroot Web root where freepbx will be installed"); X+ out(" --cgibin Path where cgi-bin's lives"); X+ out(" --bin Path of asterisk binaries"); X+ out(" --sbin Path of system admin binaries"); X+ out(" --asteriskuser Asterisk Manager username"); X+ out(" --asteriskpass Asterisk Manager password"); X+ out(" --systemconfig System config files"); X+ X out(" --debug Enable debug output"); X out(" --dry-run Don't actually do anything"); X out(" --force-version Force upgrade from version "); X- out(" --dbhost Use a remote database server"); X out(" --no-files Just run updates without installing files"); X } X X@@ -96,7 +103,12 @@ X X //get the version number X function install_getversion() { X- global $db; X+ global $db, $new_install, $versions; X+ X+ if ($new_install){ X+ return end($versions); X+ } X+ X $sql = "SELECT value FROM admin WHERE variable = 'version'"; X $results = $db->getAll($sql); X if(DB::IsError($results)) { X@@ -415,120 +427,96 @@ X /** Collect AMP settings X */ X function collect_settings($filename, $dbhost = '', $dbuser = '', $dbpass = '') { X- out("Creating new /etc/amportal.conf"); X+ out("Creating new ".$filename); X+ global $asteriskuser, $asteriskpass, $webroot, $fopwebroot, $cgibin, $bin, $sbin; X X- outn("Enter your USERNAME to connect to the 'asterisk' database:\n [".($dbuser ? $dbuser : "asteriskuser")."] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = $dbuser; X if (preg_match('/^$/',$key)) $amp_conf["AMPDBUSER"] = ($dbuser ? $dbuser : "asteriskuser"); X else $amp_conf["AMPDBUSER"] = $key; X X- outn("Enter your PASSWORD to connect to the 'asterisk' database:\n [".($dbpass ? $dbpass : "amp109")."] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = $dbpassword; X if (preg_match('/^$/',$key)) $amp_conf["AMPDBPASS"] = ($dbpass ? $dbpass : "amp109"); X else $amp_conf["AMPDBPASS"] = $key; X X- outn("Enter the hostname of the 'asterisk' database:\n [".($dbhost ? $dbhost : "localhost")."] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = $dbhost; X if (preg_match('/^$/',$key)) $amp_conf["AMPDBHOST"] = ($dbhost ? $dbhost : "localhost"); X else $amp_conf["AMPDBHOST"] = $key; X X- outn("Enter a USERNAME to connect to the Asterisk Manager interface:\n [admin] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = $asteriskuser; X if (preg_match('/^$/',$key)) $amp_conf["AMPMGRUSER"] = "admin"; X else $amp_conf["AMPMGRUSER"] = $key; X X- outn("Enter a PASSWORD to connect to the Asterisk Manager interface:\n [amp111] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = $asteriskpass; X if (preg_match('/^$/',$key)) $amp_conf["AMPMGRPASS"] = "amp111"; X else $amp_conf["AMPMGRPASS"] = $key; X X- do { X- out("Enter the path to use for your AMP web root:\n [/var/www/html] "); X- $key = trim(fgets(STDIN,1024)); X- if (preg_match('/^$/',$key)) $amp_conf["AMPWEBROOT"] = "/var/www/html"; X- else $amp_conf["AMPWEBROOT"] = rtrim($key,'/'); X- if (is_dir($amp_conf["AMPWEBROOT"])) { X- break; X- } else if (amp_mkdir($amp_conf["AMPWEBROOT"],"0755",true)){ X- out("Created ".$amp_conf["AMPWEBROOT"]); X- break; X- } else { X- fatal("Cannot create ".$amp_conf["AMPWEBROOT"]."!"); X- } X- } while(1); X- X- do { X- out("Enter the path to use for your FOP web root:\n [/var/www/html/panel] "); X- $key = trim(fgets(STDIN,1024)); X- if (preg_match('/^$/',$key)) $amp_conf["FOPWEBROOT"] = "/var/www/html/panel"; X- else $amp_conf["FOPWEBROOT"] = rtrim($key,'/'); X- if (is_dir($amp_conf["FOPWEBROOT"])) { X- break; X- } else if (amp_mkdir($amp_conf["FOPWEBROOT"],"0755",true)){ X- out("Created ".$amp_conf["FOPWEBROOT"]); X- break; X- } else { X- fatal("Cannot create ".$amp_conf["FOPWEBROOT"]."!"); X- } X- } while(1); X+ $key = $webroot; X+ if (preg_match('/^$/',$key)) $amp_conf["AMPWEBROOT"] = "/var/www/html"; X+ else $amp_conf["AMPWEBROOT"] = rtrim($key,'/'); X+ if (is_dir($amp_conf["AMPWEBROOT"])) { X+ X+ } else if (amp_mkdir($amp_conf["AMPWEBROOT"],"0755",true)){ X+ out("Created ".$amp_conf["AMPWEBROOT"]); X+ X+ } else { X+ fatal("Cannot create ".$amp_conf["AMPWEBROOT"]."!"); X+ } X+ X+ $key = $fopwebroot; X+ if (preg_match('/^$/',$key)) $amp_conf["FOPWEBROOT"] = "/var/www/html/panel"; X+ else $amp_conf["FOPWEBROOT"] = rtrim($key,'/'); X+ if (is_dir($amp_conf["FOPWEBROOT"])) { X+ X+ } else if (amp_mkdir($amp_conf["FOPWEBROOT"],"0755",true)){ X+ out("Created ".$amp_conf["FOPWEBROOT"]); X+ X+ } else { X+ fatal("Cannot create ".$amp_conf["FOPWEBROOT"]."!"); X+ } X X- do { X- outn("Enter the path to your Apache cgi-bin:\n [/var/www/cgi-bin] "); X- $key = trim(fgets(STDIN,1024)); X- if (preg_match('/^$/',$key)) $amp_conf["AMPCGIBIN"] = "/var/www/cgi-bin"; X- else $amp_conf["AMPCGIBIN"] = rtrim($key,'/'); X- if (is_dir($amp_conf["AMPCGIBIN"])) break; X- else fatal($amp_conf["AMPCGIBIN"]." is not a directory!"); X- } while(1); X+ $key = $cgibin; X+ if (preg_match('/^$/',$key)) $amp_conf["AMPCGIBIN"] = "/var/www/cgi-bin"; X+ else $amp_conf["AMPCGIBIN"] = rtrim($key,'/'); X+ if (is_dir($amp_conf["AMPCGIBIN"])) {} X+ else fatal($amp_conf["AMPCGIBIN"]." is not a directory!"); X+ X X- outn("Enter the IP ADDRESS or hostname used to access the AMP web-admin:\n [xx.xx.xx.xx] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = "localhost"; //asume... X if (preg_match('/^$/',$key)) $amp_conf["AMPWEBADDRESS"] = "xx.xx.xx.xx"; X else $amp_conf["AMPWEBADDRESS"] = $key; X X- outn("Enter a PASSWORD to perform call transfers with the Flash Operator Panel:\n [passw0rd] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = "passw0rd"; //asume... X if (preg_match('/^$/',$key)) $amp_conf["FOPPASSWORD"] = "passw0rd"; X else $amp_conf["FOPPASSWORD"] = $key; X X- outn("Use simple Extensions [extensions] admin or separate Devices and Users [deviceanduser]?\n [extensions] "); X- $key = trim(fgets(STDIN,1024)); X+ $key = "extensions"; //asume... X if (preg_match('/^$/',$key)) $amp_conf["AMPEXTENSIONS"] = "extensions"; X else $amp_conf["AMPEXTENSIONS"] = $key; X X- do { X- out("Enter directory in which to store AMP executable scripts:\n [/var/lib/asterisk/bin] "); X- $key = trim(fgets(STDIN,1024)); X- if (preg_match('/^$/',$key)) $amp_conf["AMPBIN"] = "/var/lib/asterisk/bin"; X- else $amp_conf["AMPBIN"] = rtrim($key,'/'); X- if (is_dir($amp_conf["AMPBIN"])) { X- break; X- } else if (amp_mkdir($amp_conf["AMPBIN"],"0755",true)){ X- out("Created ".$amp_conf["AMPBIN"]); X- break; X- } else { X- fatal("Cannot create ".$amp_conf["AMPBIN"]."!"); X- } X- } while(1); X+ $key = $bin; X+ if (preg_match('/^$/',$key)) $amp_conf["AMPBIN"] = "/var/lib/asterisk/bin"; X+ else $amp_conf["AMPBIN"] = rtrim($key,'/'); X+ if (is_dir($amp_conf["AMPBIN"])) { X+ } else if (amp_mkdir($amp_conf["AMPBIN"],"0755",true)){ X+ out("Created ".$amp_conf["AMPBIN"]); X+ } else { X+ fatal("Cannot create ".$amp_conf["AMPBIN"]."!"); X+ } X X- do { X- out("Enter directory in which to store super-user scripts:\n [/usr/sbin] "); X- $key = trim(fgets(STDIN,1024)); X- if (preg_match('/^$/',$key)) $amp_conf["AMPSBIN"] = "/usr/sbin"; X- else $amp_conf["AMPSBIN"] = rtrim($key,'/'); X- if (is_dir($amp_conf["AMPSBIN"])) { X- break; X- } else if (amp_mkdir($amp_conf["AMPSBIN"],"0755",true)){ X- out("Created ".$amp_conf["AMPSBIN"]); X- break; X- } else { X- fatal("Cannot create ".$amp_conf["AMPSBIN"]."!"); X- } X- } while(1); X+ $key = $sbin; X+ if (preg_match('/^$/',$key)) $amp_conf["AMPSBIN"] = "/usr/sbin"; X+ else $amp_conf["AMPSBIN"] = rtrim($key,'/'); X+ if (is_dir($amp_conf["AMPSBIN"])) { X+ } else if (amp_mkdir($amp_conf["AMPSBIN"],"0755",true)){ X+ out("Created ".$amp_conf["AMPSBIN"]); X+ } else { X+ fatal("Cannot create ".$amp_conf["AMPSBIN"]."!"); X+ } X+ X X // write amportal.conf X write_amportal_conf($filename, $amp_conf); X- outn("/etc/amportal.conf written"); X+ outn($filename." written "); X } X X /********************************************************************************************************************/ X@@ -561,6 +549,7 @@ X } X out("OK"); X X+ X /* RC: WE SOULDN'T NEED THESE WITH NEW PHP DIALPARTIES X // **** Make sure we have libasteriskperl X $perl_test = "perl -e 'use Asterisk::AGI'"; X@@ -588,7 +577,7 @@ X // **** Parse out command-line options X X $shortopts = "h?u:p:"; X-$longopts = array("help","debug","dry-run","username=","password=","force-version=","dbhost=","no-files"); X+$longopts = array("help","debug","dry-run","username=","password=","force-version=","dbhost=","no-files","fopwebroot=","webroot=","cgibin=","bin=","sbin=","asteriskuser=","asteriskpass=","systemconfig="); X X $args = Console_Getopt::getopt(Console_Getopt::readPHPArgv(), $shortopts, $longopts); X if (is_object($args)) { X@@ -600,6 +589,16 @@ X $debug = false; X $dryrun = false; X $install_files = true; X+$new_install = false; X+ X+$fopwebroot = "/var/www/html/panel"; X+$webroot = "/var/www/html"; X+$cgibin = "/var/www/cgi-bin"; X+$bin = "/var/lib/asterisk/bin"; X+$sbin = "/usr/sbin"; X+$asteriskuser = "admin"; X+$asteriskpass = "amp111"; X+$systemconfig = "/etc"; X X //initialize variables to avoid php notices X $dbhost = null; X@@ -640,10 +639,51 @@ X $install_files = false; X out("Running upgrade only, without installing files."); X break; X+ case "--fopwebroot": X+ $fopwebroot = $arg[1]; X+ out("Using fop at ".$fopwebroot); X+ break; X+ case "--webroot": X+ $webroot = $arg[1]; X+ out("Using Webroot at ".$webroot); X+ break; X+ case "--cgibin": X+ $cgibin = $arg[1]; X+ out("Using CGI-BIN at ".$cgibin); X+ break; X+ case "--bin": X+ $bin = $arg[1]; X+ out("Using bin at ".$bin); X+ break; X+ case "--sbin": X+ $sbin = $arg[1]; X+ out("Using sbin ar ".$sbin); X+ break; X+ case "--asteriskuser": X+ $asteriskuser = $arg[1]; X+ out("Using Asterisk user ".$asteriskuser); X+ break; X+ case "--asteriskpass": X+ $asteriskpass = $arg[1]; X+ out("Using asteriskpass ".str_repeat("*",strlen($arg[1]))); X+ break; X+ case "--systemconfig": X+ $systemconfig = $arg[1]; X+ out("Using system config at ". $systemconfig); X+ X+ X } X+ X } X+define("AMP_CONF", $systemconfig."/amportal.conf"); X+define("ASTERISK_CONF", $systemconfig."/asterisk/asterisk.conf"); X X X+// **** Replace the asterisk and ampconfig configuration paths: X+exec("find amp_conf -type f |xargs sed -i.bak 's|/etc/asterisk|$systemconfig/asterisk|g'"); X+exec("find amp_conf -type f |xargs sed -i.bak 's|/etc/amportal.conf|$systemconfig/amportal.conf|g'"); X+exec("find amp_conf -name *.bak -type f |xargs rm "); X+ X // **** Look for user = root X X outn("Checking user.."); X@@ -661,12 +701,15 @@ X X outn("Checking for ".AMP_CONF.".."); X if (!file_exists(AMP_CONF)) { X+ $new_install=true; X+ out ("This is a new instalation. Copyng default ".AMP_CONF." and creating the databases..."); X out(AMP_CONF." does not exist, copying default"); X- copy("amportal.conf", "/etc/amportal.conf"); X+ copy("amportal.conf", $systemconfig."/amportal.conf"); X collect_settings(AMP_CONF, $dbhost, $new_username, $new_password); X } X out("OK"); X X+ X // **** read amportal.conf X X outn("Reading ".AMP_CONF.".."); X@@ -676,6 +719,8 @@ X } X out("OK"); X X+ X+ X // Ensure our "critical" variables are set. We absolutely need these to copy in files. X X if (!array_key_exists("FOPWEBROOT",$amp_conf) || X@@ -714,6 +759,8 @@ X write_amportal_conf(AMP_CONF, $amp_conf); X } X X+ X+ X if (isset($new_username) || isset($new_password) || isset($dbhost)) { X // new username/pwd X X@@ -732,17 +779,30 @@ X write_amportal_conf(AMP_CONF, $amp_conf); X } X X+ X+ X+ X // **** Check for amportal.conf, create if necessary X X outn("Checking for ".ASTERISK_CONF.".."); X+ X if (!file_exists(ASTERISK_CONF)) { X- out(ASTERISK_CONF." does not exist, copying default"); X- copy("asterisk.conf", "/etc/asterisk/asterisk.conf"); X+ X+ //Check if there is a default config distribution file installed in the system, and use that. X+ $defaultconfig = ASTERISK_CONF."-dist"; X+ if (!file_exists($defaultconfig)){ X+ $defaultconfig = "asterisk.conf"; X+ } X+ X+ out(ASTERISK_CONF." does not exist, copying default "); X+ copy($defaultconfig, ASTERISK_CONF); X //TODO - need to prompt for asterisk specific directories - using * defaults for now X //collect_ast_settings(ASTERISK_CONF, $dbhost, $new_username, $new_password); X+ X } X out("OK"); X X+ X // **** read asterisk.conf X X outn("Reading ".ASTERISK_CONF.".."); X@@ -752,6 +812,8 @@ X } X out("OK"); X X+ X+ X if (isset($asterisk_conf['astetcdir'])) { $amp_conf['ASTETCDIR'] = $asterisk_conf['astetcdir']; } X if (isset($asterisk_conf['astmoddir'])) { $amp_conf['ASTMODDIR'] = $asterisk_conf['astmoddir']; } X if (isset($asterisk_conf['astvarlibdir'])) { $amp_conf['ASTVARLIBDIR'] = $asterisk_conf['astvarlibdir']; } X@@ -762,6 +824,8 @@ X X write_amportal_conf(AMP_CONF, $amp_conf); X X+ X+ X // **** Check for func_callerid.so - this is only in asterisk 1.2 X X outn("Checking for Asterisk 1.2.."); X@@ -779,34 +843,35 @@ X } X out("OK"); X X-// **** Connect to database X+if (!$new_install){ X X-outn("Connecting to database.."); X- X-$db_user = $amp_conf["AMPDBUSER"]; X-$db_pass = $amp_conf["AMPDBPASS"]; X-$db_host = $amp_conf["AMPDBHOST"]; X-$db_name = 'asterisk'; X-$db_engine = 'mysql'; X- X-$datasource = $db_engine.'://'.$db_user.':'.$db_pass.'@'.$db_host.'/'.$db_name; X- X-if (!function_exists($db_engine.'_connect')) { X- out("FAILED"); X- fatal($db_engine." PHP libraries not installed"); X-} X- X-$db = DB::connect($datasource); // attempt connection X- X-if(DB::isError($db)) { X- out("FAILED"); X- debug($db->userinfo); X- out("Try running ".$argv[0]." --username=user --password=pass (using your own user and pass)"); X- fatal("Cannot connect to database"); X+ // **** Connect to database X+ outn("Connecting to database.."); X+ X+ $db_user = $amp_conf["AMPDBUSER"]; X+ $db_pass = $amp_conf["AMPDBPASS"]; X+ $db_host = $amp_conf["AMPDBHOST"]; X+ $db_name = 'asterisk'; X+ $db_engine = 'mysql'; X X+ $datasource = $db_engine.'://'.$db_user.':'.$db_pass.'@'.$db_host.'/'.$db_name; X+ X+ if (!function_exists($db_engine.'_connect')) { X+ out("FAILED"); X+ fatal($db_engine." PHP libraries not installed"); X+ } X+ X+ $db = DB::connect($datasource); // attempt connection X+ X+ if(DB::isError($db)) { X+ out("FAILED"); X+ debug($db->userinfo); X+ out("Try running ".$argv[0]." --username=user --password=pass (using your own user and pass)"); X+ fatal("Cannot connect to database"); X+ X+ } X+ out("OK"); X } X-out("OK"); X- X X // **** Read DB for version info X X@@ -823,14 +888,13 @@ X X X // **** Copy files X- X if ($install_files) X { X outn("Installing new AMP files.."); X $check_md5s=true; X $md5sums = read_md5_file(UPGRADE_DIR."/".$version.".md5"); X recursive_copy("amp_conf", "", $md5sums); X- if (!is_file("/etc/asterisk/voicemail.conf")) copy("/etc/asterisk/voicemail.conf.template","/etc/asterisk/voicemail.conf"); X+ if (!is_file($systemconfig."/asterisk/voicemail.conf")) copy($systemconfig."/asterisk/voicemail.conf.template",$systemconfig."/asterisk/voicemail.conf"); X if (!is_dir("/var/spool/asterisk/voicemail/device")) amp_mkdir("/var/spool/asterisk/voicemail/device", "0755", true); X out("OK"); X } X@@ -841,7 +905,7 @@ X if (!$dryrun) { X if (file_exists($amp_conf["AMPSBIN"]."/amportal")) X exec("chmod u+x ".$amp_conf["AMPSBIN"]."/amportal"); X- exec(dirname(__FILE__)."/apply_conf.sh"); X+ exec(dirname(__FILE__)."/apply_conf.sh ".$systemconfig."/amportal.conf"); X } X out("OK"); X X@@ -864,32 +928,33 @@ X } X X X-// **** Read upgrades/ directory X+if (! $new_install ) { X X-outn("Checking for upgrades.."); X- X-// read it from ugprades/ unless $version has already been defined X-if (!isset($versions)) { X- $versions = array(); X- $dir = opendir(UPGRADE_DIR); X- while ($file = readdir($dir)) { X- if (($file[0] != ".") && is_dir(UPGRADE_DIR."/".$file)) { X- $versions[] = $file; X+ // **** Read upgrades/ directory X+ outn("Checking for upgrades.."); X+ // read it from ugprades/ unless $version has already been defined X+ if (!isset($versions)) { X+ $versions = array(); X+ $dir = opendir(UPGRADE_DIR); X+ while ($file = readdir($dir)) { X+ if (($file[0] != ".") && is_dir(UPGRADE_DIR."/".$file)) { X+ $versions[] = $file; X+ } X } X+ closedir($dir); X+ X+ // callback to use php's version_compare() to sort X+ usort($versions, "version_compare"); X } X- closedir($dir); X- X- // callback to use php's version_compare() to sort X- usort($versions, "version_compare"); X-} X X-if (false !== ($pos = array_search($version, $versions))) { X- $upgrades = array_slice($versions, $pos+1); X- out(count($upgrades)." found"); X- X- run_upgrade($upgrades); X-} else { X- out("Current version not found"); X+ if (false !== ($pos = array_search($version, $versions))) { X+ $upgrades = array_slice($versions, $pos+1); X+ out(count($upgrades)." found"); X+ X+ run_upgrade($upgrades); X+ } else { X+ out("Current version not found"); X+ } X } X X X@@ -914,7 +979,7 @@ X X X // **** Set reload flag for AMP admin X-install_needreload(); X+//install_needreload(); X X if ($amp_conf["AMPWEBADDRESS"]) X { END-of-freepbx/files/patch-install_amp echo x - freepbx/files/php5.ini sed 's/^X//' >freepbx/files/php5.ini << 'END-of-freepbx/files/php5.ini' X[PHP] X X;;;;;;;;;;; X; WARNING ; X;;;;;;;;;;; X; This is the default settings file for new PHP installations. X; By default, PHP installs itself with a configuration suitable for X; development purposes, and *NOT* for production purposes. X; For several security-oriented considerations that should be taken X; before going online with your site, please consult php.ini-recommended X; and http://php.net/manual/en/security.php. X X X;;;;;;;;;;;;;;;;;;; X; About php.ini ; X;;;;;;;;;;;;;;;;;;; X; This file controls many aspects of PHP's behavior. In order for PHP to X; read it, it must be named 'php.ini'. PHP looks for it in the current X; working directory, in the path designated by the environment variable X; PHPRC, and in the path that was defined in compile time (in that order). X; Under Windows, the compile-time path is the Windows directory. The X; path in which the php.ini file is looked for can be overridden using X; the -c argument in command line mode. X; X; The syntax of the file is extremely simple. Whitespace and Lines X; beginning with a semicolon are silently ignored (as you probably guessed). X; Section headers (e.g. [Foo]) are also silently ignored, even though X; they might mean something in the future. X; X; Directives are specified using the following syntax: X; directive = value X; Directive names are *case sensitive* - foo=bar is different from FOO=bar. X; X; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI), one X; of the INI constants (On, Off, True, False, Yes, No and None) or an expression X; (e.g. E_ALL & ~E_NOTICE), or a quoted string ("foo"). X; X; Expressions in the INI file are limited to bitwise operators and parentheses: X; | bitwise OR X; & bitwise AND X; ~ bitwise NOT X; ! boolean NOT X; X; Boolean flags can be turned on using the values 1, On, True or Yes. X; They can be turned off using the values 0, Off, False or No. X; X; An empty string can be denoted by simply not writing anything after the equal X; sign, or by using the None keyword: X; X; foo = ; sets foo to an empty string X; foo = none ; sets foo to an empty string X; foo = "none" ; sets foo to the string 'none' X; X; If you use constants in your value, and these constants belong to a X; dynamically loaded extension (either a PHP extension or a Zend extension), X; you may only use these constants *after* the line that loads the extension. X; X; X;;;;;;;;;;;;;;;;;;; X; About this file ; X;;;;;;;;;;;;;;;;;;; X; All the values in the php.ini-dist file correspond to the builtin X; defaults (that is, if no php.ini is used, or if you delete these lines, X; the builtin defaults will be identical). X X X;;;;;;;;;;;;;;;;;;;; X; Language Options ; X;;;;;;;;;;;;;;;;;;;; X X; Enable the PHP scripting language engine under Apache. Xengine = On X X; Enable compatibility mode with Zend Engine 1 (PHP 4.x) Xzend.ze1_compatibility_mode = Off X X; Allow the tags are recognized. X; NOTE: Using short tags should be avoided when developing applications or X; libraries that are meant for redistribution, or deployment on PHP X; servers which are not under your control, because short tags may not X; be supported on the target server. For portable, redistributable code, X; be sure not to use short tags. Xshort_open_tag = On X X; Allow ASP-style <% %> tags. Xasp_tags = Off X X; The number of significant digits displayed in floating point numbers. Xprecision = 12 X X; Enforce year 2000 compliance (will cause problems with non-compliant browsers) Xy2k_compliance = On X X; Output buffering allows you to send header lines (including cookies) even X; after you send body content, at the price of slowing PHP's output layer a X; bit. You can enable output buffering during runtime by calling the output X; buffering functions. You can also enable output buffering for all files by X; setting this directive to On. If you wish to limit the size of the buffer X; to a certain size - you can use a maximum number of bytes instead of 'On', as X; a value for this directive (e.g., output_buffering=4096). Xoutput_buffering = Off X X; You can redirect all of the output of your scripts to a function. For X; example, if you set output_handler to "mb_output_handler", character X; encoding will be transparently converted to the specified encoding. X; Setting any output handler automatically turns on output buffering. X; Note: People who wrote portable scripts should not depend on this ini X; directive. Instead, explicitly set the output handler using ob_start(). X; Using this ini directive may cause problems unless you know what script X; is doing. X; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler" X; and you cannot use both "ob_gzhandler" and "zlib.output_compression". X; Note: output_handler must be empty if this is set 'On' !!!! X; Instead you must use zlib.output_handler. X;output_handler = X X; Transparent output compression using the zlib library X; Valid values for this option are 'off', 'on', or a specific buffer size X; to be used for compression (default is 4KB) X; Note: Resulting chunk size may vary due to nature of compression. PHP X; outputs chunks that are few hundreds bytes each as a result of X; compression. If you prefer a larger chunk size for better X; performance, enable output_buffering in addition. X; Note: You need to use zlib.output_handler instead of the standard X; output_handler, or otherwise the output will be corrupted. Xzlib.output_compression = Off X X; You cannot specify additional output handlers if zlib.output_compression X; is activated here. This setting does the same as output_handler but in X; a different order. X;zlib.output_handler = X X; Implicit flush tells PHP to tell the output layer to flush itself X; automatically after every output block. This is equivalent to calling the X; PHP function flush() after each and every call to print() or echo() and each X; and every HTML block. Turning this option on has serious performance X; implications and is generally recommended for debugging purposes only. Ximplicit_flush = Off X X; The unserialize callback function will be called (with the undefined class' X; name as parameter), if the unserializer finds an undefined class X; which should be instantiated. X; A warning appears if the specified function is not defined, or if the X; function doesn't include/implement the missing class. X; So only set this entry, if you really want to implement such a X; callback-function. Xunserialize_callback_func= X X; When floats & doubles are serialized store serialize_precision significant X; digits after the floating point. The default value ensures that when floats X; are decoded with unserialize, the data will remain the same. Xserialize_precision = 100 X X; Whether to enable the ability to force arguments to be passed by reference X; at function call time. This method is deprecated and is likely to be X; unsupported in future versions of PHP/Zend. The encouraged method of X; specifying which arguments should be passed by reference is in the function X; declaration. You're encouraged to try and turn this option Off and make X; sure your scripts work properly with it in order to ensure they will work X; with future versions of the language (you will receive a warning each time X; you use this feature, and the argument will be passed by value instead of by X; reference). Xallow_call_time_pass_reference = On X X; X; Safe Mode X; Xsafe_mode = Off X X; By default, Safe Mode does a UID compare check when X; opening files. If you want to relax this to a GID compare, X; then turn on safe_mode_gid. Xsafe_mode_gid = Off X X; When safe_mode is on, UID/GID checks are bypassed when X; including files from this directory and its subdirectories. X; (directory must also be in include_path or full path must X; be used when including) Xsafe_mode_include_dir = X X; When safe_mode is on, only executables located in the safe_mode_exec_dir X; will be allowed to be executed via the exec family of functions. Xsafe_mode_exec_dir = X X; Setting certain environment variables may be a potential security breach. X; This directive contains a comma-delimited list of prefixes. In Safe Mode, X; the user may only alter environment variables whose names begin with the X; prefixes supplied here. By default, users will only be able to set X; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR). X; X; Note: If this directive is empty, PHP will let the user modify ANY X; environment variable! Xsafe_mode_allowed_env_vars = PHP_ X X; This directive contains a comma-delimited list of environment variables that X; the end user won't be able to change using putenv(). These variables will be X; protected even if safe_mode_allowed_env_vars is set to allow to change them. Xsafe_mode_protected_env_vars = LD_LIBRARY_PATH X X; open_basedir, if set, limits all file operations to the defined directory X; and below. This directive makes most sense if used in a per-directory X; or per-virtualhost web server configuration file. This directive is X; *NOT* affected by whether Safe Mode is turned On or Off. X;open_basedir = X X; This directive allows you to disable certain functions for security reasons. X; It receives a comma-delimited list of function names. This directive is X; *NOT* affected by whether Safe Mode is turned On or Off. Xdisable_functions = X X; This directive allows you to disable certain classes for security reasons. X; It receives a comma-delimited list of class names. This directive is X; *NOT* affected by whether Safe Mode is turned On or Off. Xdisable_classes = X X; Colors for Syntax Highlighting mode. Anything that's acceptable in X; would work. X;highlight.string = #DD0000 X;highlight.comment = #FF9900 X;highlight.keyword = #007700 X;highlight.bg = #FFFFFF X;highlight.default = #0000BB X;highlight.html = #000000 X X; If enabled, the request will be allowed to complete even if the user aborts X; the request. Consider enabling it if executing long request, which may end up X; being interrupted by the user or a browser timing out. X; ignore_user_abort = On X X; X; Misc X; X; Decides whether PHP may expose the fact that it is installed on the server X; (e.g. by adding its signature to the Web server header). It is no security X; threat in any way, but it makes it possible to determine whether you use PHP X; on your server or not. Xexpose_php = On X X X;;;;;;;;;;;;;;;;;;; X; Resource Limits ; X;;;;;;;;;;;;;;;;;;; X Xmax_execution_time = 30 ; Maximum execution time of each script, in seconds Xmax_input_time = 60 ; Maximum amount of time each script may spend parsing request data Xmemory_limit = 20M ; Maximum amount of memory a script may consume (8MB) X X X;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; X; Error handling and logging ; X;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; X X; error_reporting is a bit-field. Or each number up to get desired error X; reporting level X; E_ALL - All errors and warnings (doesn't include E_STRICT) X; E_ERROR - fatal run-time errors X; E_WARNING - run-time warnings (non-fatal errors) X; E_PARSE - compile-time parse errors X; E_NOTICE - run-time notices (these are warnings which often result X; from a bug in your code, but it's possible that it was X; intentional (e.g., using an uninitialized variable and X; relying on the fact it's automatically initialized to an X; empty string) X; E_STRICT - run-time notices, enable to have PHP suggest changes X; to your code which will ensure the best interoperability X; and forward compatibility of your code X; E_CORE_ERROR - fatal errors that occur during PHP's initial startup X; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's X; initial startup X; E_COMPILE_ERROR - fatal compile-time errors X; E_COMPILE_WARNING - compile-time warnings (non-fatal errors) X; E_USER_ERROR - user-generated error message X; E_USER_WARNING - user-generated warning message X; E_USER_NOTICE - user-generated notice message X; X; Examples: X; X; - Show all errors, except for notices and coding standards warnings X; X;error_reporting = E_ALL & ~E_NOTICE X; X; - Show all errors, except for notices X; X;error_reporting = E_ALL & ~E_NOTICE | E_STRICT X; X; - Show only errors X; X;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR X; X; - Show all errors except for notices and coding standards warnings X; Xerror_reporting = E_ALL & ~E_NOTICE X X; Print out errors (as a part of the output). For production web sites, X; you're strongly encouraged to turn this feature off, and use error logging X; instead (see below). Keeping display_errors enabled on a production web site X; may reveal security information to end users, such as file paths on your Web X; server, your database schema or other information. Xdisplay_errors = On X X; Even when display_errors is on, errors that occur during PHP's startup X; sequence are not displayed. It's strongly recommended to keep X; display_startup_errors off, except for when debugging. Xdisplay_startup_errors = Off X X; Log errors into a log file (server-specific log, stderr, or error_log (below)) X; As stated above, you're strongly advised to use error logging in place of X; error displaying on production web sites. Xlog_errors = Off X X; Set maximum length of log_errors. In error_log information about the source is X; added. The default is 1024 and 0 allows to not apply any maximum length at all. Xlog_errors_max_len = 1024 X X; Do not log repeated messages. Repeated errors must occur in same file on same X; line until ignore_repeated_source is set true. Xignore_repeated_errors = Off X X; Ignore source of message when ignoring repeated messages. When this setting X; is On you will not log errors with repeated messages from different files or X; sourcelines. Xignore_repeated_source = Off X X; If this parameter is set to Off, then memory leaks will not be shown (on X; stdout or in the log). This has only effect in a debug compile, and if X; error reporting includes E_WARNING in the allowed list Xreport_memleaks = On X X; Store the last error/warning message in $php_errormsg (boolean). Xtrack_errors = Off X X; Disable the inclusion of HTML tags in error messages. X; Note: Never use this feature for production boxes. X;html_errors = Off X X; If html_errors is set On PHP produces clickable error messages that direct X; to a page describing the error or function causing the error in detail. X; You can download a copy of the PHP manual from http://www.php.net/docs.php X; and change docref_root to the base URL of your local copy including the X; leading '/'. You must also specify the file extension being used including X; the dot. X; Note: Never use this feature for production boxes. X;docref_root = "/phpmanual/" X;docref_ext = .html X X; String to output before an error message. X;error_prepend_string = "" X X; String to output after an error message. X;error_append_string = "" X X; Log errors to specified file. X;error_log = filename X X; Log errors to syslog (Event Log on NT, not valid in Windows 95). X;error_log = syslog X X X;;;;;;;;;;;;;;;;; X; Data Handling ; X;;;;;;;;;;;;;;;;; X; X; Note - track_vars is ALWAYS enabled as of PHP 4.0.3 X X; The separator used in PHP generated URLs to separate arguments. X; Default is "&". X;arg_separator.output = "&" X X; List of separator(s) used by PHP to parse input URLs into variables. X; Default is "&". X; NOTE: Every character in this directive is considered as separator! X;arg_separator.input = ";&" X X; This directive describes the order in which PHP registers GET, POST, Cookie, X; Environment and Built-in variables (G, P, C, E & S respectively, often X; referred to as EGPCS or GPC). Registration is done from left to right, newer X; values override older values. Xvariables_order = "EGPCS" X X; Whether or not to register the EGPCS variables as global variables. You may X; want to turn this off if you don't want to clutter your scripts' global scope X; with user data. This makes most sense when coupled with track_vars - in which X; case you can access all of the GPC variables through the $HTTP_*_VARS[], X; variables. X; X; You should do your best to write your scripts so that they do not require X; register_globals to be on; Using form variables as globals can easily lead X; to possible security problems, if the code is not very well thought of. Xregister_globals = Off X X; Whether or not to register the old-style input arrays, HTTP_GET_VARS X; and friends. If you're not using them, it's recommended to turn them off, X; for performance reasons. Xregister_long_arrays = On X X; This directive tells PHP whether to declare the argv&argc variables (that X; would contain the GET information). If you don't use these variables, you X; should turn it off for increased performance. Xregister_argc_argv = On X X; When enabled, the SERVER and ENV variables are created when they're first X; used (Just In Time) instead of when the script starts. If these variables X; are not used within a script, having this directive on will result in a X; performance gain. The PHP directives register_globals, register_long_arrays, X; and register_argc_argv must be disabled for this directive to have any affect. Xauto_globals_jit = On X X; Maximum size of POST data that PHP will accept. Xpost_max_size = 8M X X; Magic quotes X; X X; Magic quotes for incoming GET/POST/Cookie data. Xmagic_quotes_gpc = On X X; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc. Xmagic_quotes_runtime = Off X X; Use Sybase-style magic quotes (escape ' with '' instead of \'). Xmagic_quotes_sybase = Off X X; Automatically add files before or after any PHP document. Xauto_prepend_file = Xauto_append_file = X X; As of 4.0b4, PHP always outputs a character encoding by default in X; the Content-type: header. To disable sending of the charset, simply X; set it to be empty. X; X; PHP's built-in default is text/html Xdefault_mimetype = "text/html" X;default_charset = "iso-8859-1" X X; Always populate the $HTTP_RAW_POST_DATA variable. X;always_populate_raw_post_data = On X X X;;;;;;;;;;;;;;;;;;;;;;;;; X; Paths and Directories ; X;;;;;;;;;;;;;;;;;;;;;;;;; X X; UNIX: "/path1:/path2" X;include_path = ".:/php/includes" X; X; Windows: "\path1;\path2" X;include_path = ".;c:\php\includes" Xinclude_path = ".:/usr/local/share/pear:%%TARGET%%/admin" X X X; The root of the PHP pages, used only if nonempty. X; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root X; if you are running php as a CGI under any web server (other than IIS) X; see documentation for security issues. The alternate is to use the X; cgi.force_redirect configuration below Xdoc_root = X X; The directory under which PHP opens the script using /~username used only X; if nonempty. Xuser_dir = X X; Directory in which the loadable extensions (modules) reside. X; extension_dir = "./" X X; Whether or not to enable the dl() function. The dl() function does NOT work X; properly in multithreaded servers, such as IIS or Zeus, and is automatically X; disabled on them. Xenable_dl = On X X; cgi.force_redirect is necessary to provide security running PHP as a CGI under X; most web servers. Left undefined, PHP turns this on by default. You can X; turn it off here AT YOUR OWN RISK X; **You CAN safely turn this off for IIS, in fact, you MUST.** X; cgi.force_redirect = 1 X X; if cgi.nph is enabled it will force cgi to always sent Status: 200 with X; every request. X; cgi.nph = 1 X X; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape X; (iPlanet) web servers, you MAY need to set an environment variable name that PHP X; will look for to know it is OK to continue execution. Setting this variable MAY X; cause security issues, KNOW WHAT YOU ARE DOING FIRST. X; cgi.redirect_status_env = ; X X; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate X; security tokens of the calling client. This allows IIS to define the X; security context that the request runs under. mod_fastcgi under Apache X; does not currently support this feature (03/17/2002) X; Set to 1 if running under IIS. Default is zero. X; fastcgi.impersonate = 1; X X; Disable logging through FastCGI connection X; fastcgi.log = 0 X X; cgi.rfc2616_headers configuration option tells PHP what type of headers to X; use when sending HTTP response code. If it's set 0 PHP sends Status: header that X; is supported by Apache. When this option is set to 1 PHP will send X; RFC2616 compliant header. X; Default is zero. X;cgi.rfc2616_headers = 0 X X X;;;;;;;;;;;;;;;; X; File Uploads ; X;;;;;;;;;;;;;;;; X X; Whether to allow HTTP file uploads. Xfile_uploads = On X X; Temporary directory for HTTP uploaded files (will use system default if not X; specified). X;upload_tmp_dir = X X; Maximum allowed size for uploaded files. Xupload_max_filesize = 2M X X X;;;;;;;;;;;;;;;;;; X; Fopen wrappers ; X;;;;;;;;;;;;;;;;;; X X; Whether to allow the treatment of URLs (like http:// or ftp://) as files. Xallow_url_fopen = On X X; Define the anonymous ftp password (your email address) X;from="john@doe.com" X X; Define the User-Agent string X; user_agent="PHP" X X; Default timeout for socket based streams (seconds) Xdefault_socket_timeout = 60 X X; If your scripts have to deal with files from Macintosh systems, X; or you are running on a Mac and need to deal with files from X; unix or win32 systems, setting this flag will cause PHP to X; automatically detect the EOL character in those files so that X; fgets() and file() will work regardless of the source of the file. X; auto_detect_line_endings = Off X X X;;;;;;;;;;;;;;;;;;;;;; X; Dynamic Extensions ; X;;;;;;;;;;;;;;;;;;;;;; X; X; If you wish to have an extension loaded automatically, use the following X; syntax: X; X; extension=modulename.extension X; X; For example, on Windows: X; X; extension=msql.dll X; X; ... or under UNIX: X; X; extension=msql.so X; X; Note that it should be the name of the module only; no directory information X; needs to go here. Specify the location of the extension with the X; extension_dir directive above. X X X; Windows Extensions X; Note that ODBC support is built in, so no dll is needed for it. X; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5) X; extension folders as well as the separate PECL DLL download (PHP 5). X; Be sure to appropriately set the extension_dir directive. X X;extension=php_mbstring.dll X;extension=php_bz2.dll X;extension=php_curl.dll X;extension=php_dba.dll X;extension=php_dbase.dll X;extension=php_exif.dll X;extension=php_fdf.dll X;extension=php_filepro.dll X;extension=php_gd2.dll X;extension=php_gettext.dll X;extension=php_ifx.dll X;extension=php_imap.dll X;extension=php_interbase.dll X;extension=php_ldap.dll X;extension=php_mcrypt.dll X;extension=php_mhash.dll X;extension=php_mime_magic.dll X;extension=php_ming.dll X;extension=php_mssql.dll X;extension=php_msql.dll X;extension=php_mysql.dll X;extension=php_oci8.dll X;extension=php_openssl.dll X;extension=php_oracle.dll X;extension=php_pgsql.dll X;extension=php_shmop.dll X;extension=php_snmp.dll X;extension=php_sockets.dll X;extension=php_sqlite.dll X;extension=php_sybase_ct.dll X;extension=php_tidy.dll X;extension=php_xmlrpc.dll X;extension=php_xsl.dll X X X;;;;;;;;;;;;;;;;;;; X; Module Settings ; X;;;;;;;;;;;;;;;;;;; X X[Date] X; Defines the default timezone used by the date functions X;date.timezone = X X[Syslog] X; Whether or not to define the various syslog variables (e.g. $LOG_PID, X; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In X; runtime, you can define these variables by calling define_syslog_variables(). Xdefine_syslog_variables = Off X X[mail function] X; For Win32 only. XSMTP = localhost Xsmtp_port = 25 X X; For Win32 only. X;sendmail_from = me@example.com X X; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). X;sendmail_path = X X; Force the addition of the specified parameters to be passed as extra parameters X; to the sendmail binary. These parameters will always replace the value of X; the 5th parameter to mail(), even in safe mode. X;mail.force_extra_parameters = X X[SQL] Xsql.safe_mode = Off X X[ODBC] X;odbc.default_db = Not yet implemented X;odbc.default_user = Not yet implemented X;odbc.default_pw = Not yet implemented X X; Allow or prevent persistent links. Xodbc.allow_persistent = On X X; Check that a connection is still valid before reuse. Xodbc.check_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xodbc.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xodbc.max_links = -1 X X; Handling of LONG fields. Returns number of bytes to variables. 0 means X; passthru. Xodbc.defaultlrl = 4096 X X; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char. X; See the documentation on odbc_binmode and odbc_longreadlen for an explanation X; of uodbc.defaultlrl and uodbc.defaultbinmode Xodbc.defaultbinmode = 1 X X[MySQL] X; Allow or prevent persistent links. Xmysql.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xmysql.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xmysql.max_links = -1 X X; Default port number for mysql_connect(). If unset, mysql_connect() will use X; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the X; compile-time value defined MYSQL_PORT (in that order). Win32 will only look X; at MYSQL_PORT. Xmysql.default_port = X X; Default socket name for local MySQL connects. If empty, uses the built-in X; MySQL defaults. Xmysql.default_socket = X X; Default host for mysql_connect() (doesn't apply in safe mode). Xmysql.default_host = X X; Default user for mysql_connect() (doesn't apply in safe mode). Xmysql.default_user = X X; Default password for mysql_connect() (doesn't apply in safe mode). X; Note that this is generally a *bad* idea to store passwords in this file. X; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password") X; and reveal this password! And of course, any users with read access to this X; file will be able to reveal the password as well. Xmysql.default_password = X X; Maximum time (in secondes) for connect timeout. -1 means no limit Xmysql.connect_timeout = 60 X X; Trace mode. When trace_mode is active (=On), warnings for table/index scans and X; SQL-Errors will be displayed. Xmysql.trace_mode = Off X X[MySQLi] X X; Maximum number of links. -1 means no limit. Xmysqli.max_links = -1 X X; Default port number for mysqli_connect(). If unset, mysqli_connect() will use X; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the X; compile-time value defined MYSQL_PORT (in that order). Win32 will only look X; at MYSQL_PORT. Xmysqli.default_port = 3306 X X; Default socket name for local MySQL connects. If empty, uses the built-in X; MySQL defaults. Xmysqli.default_socket = X X; Default host for mysql_connect() (doesn't apply in safe mode). Xmysqli.default_host = X X; Default user for mysql_connect() (doesn't apply in safe mode). Xmysqli.default_user = X X; Default password for mysqli_connect() (doesn't apply in safe mode). X; Note that this is generally a *bad* idea to store passwords in this file. X; *Any* user with PHP access can run 'echo get_cfg_var("mysqli.default_pw") X; and reveal this password! And of course, any users with read access to this X; file will be able to reveal the password as well. Xmysqli.default_pw = X X; Allow or prevent reconnect Xmysqli.reconnect = Off X X[mSQL] X; Allow or prevent persistent links. Xmsql.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xmsql.max_persistent = -1 X X; Maximum number of links (persistent+non persistent). -1 means no limit. Xmsql.max_links = -1 X X[PostgresSQL] X; Allow or prevent persistent links. Xpgsql.allow_persistent = On X X; Detect broken persistent links always with pg_pconnect(). X; Auto reset feature requires a little overheads. Xpgsql.auto_reset_persistent = Off X X; Maximum number of persistent links. -1 means no limit. Xpgsql.max_persistent = -1 X X; Maximum number of links (persistent+non persistent). -1 means no limit. Xpgsql.max_links = -1 X X; Ignore PostgreSQL backends Notice message or not. X; Notice message logging require a little overheads. Xpgsql.ignore_notice = 0 X X; Log PostgreSQL backends Noitce message or not. X; Unless pgsql.ignore_notice=0, module cannot log notice message. Xpgsql.log_notice = 0 X X[Sybase] X; Allow or prevent persistent links. Xsybase.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xsybase.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xsybase.max_links = -1 X X;sybase.interface_file = "/usr/sybase/interfaces" X X; Minimum error severity to display. Xsybase.min_error_severity = 10 X X; Minimum message severity to display. Xsybase.min_message_severity = 10 X X; Compatability mode with old versions of PHP 3.0. X; If on, this will cause PHP to automatically assign types to results according X; to their Sybase type, instead of treating them all as strings. This X; compatibility mode will probably not stay around forever, so try applying X; whatever necessary changes to your code, and turn it off. Xsybase.compatability_mode = Off X X[Sybase-CT] X; Allow or prevent persistent links. Xsybct.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xsybct.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xsybct.max_links = -1 X X; Minimum server message severity to display. Xsybct.min_server_severity = 10 X X; Minimum client message severity to display. Xsybct.min_client_severity = 10 X X[bcmath] X; Number of decimal digits for all bcmath functions. Xbcmath.scale = 0 X X[browscap] X;browscap = extra/browscap.ini X X[Informix] X; Default host for ifx_connect() (doesn't apply in safe mode). Xifx.default_host = X X; Default user for ifx_connect() (doesn't apply in safe mode). Xifx.default_user = X X; Default password for ifx_connect() (doesn't apply in safe mode). Xifx.default_password = X X; Allow or prevent persistent links. Xifx.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xifx.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xifx.max_links = -1 X X; If on, select statements return the contents of a text blob instead of its id. Xifx.textasvarchar = 0 X X; If on, select statements return the contents of a byte blob instead of its id. Xifx.byteasvarchar = 0 X X; Trailing blanks are stripped from fixed-length char columns. May help the X; life of Informix SE users. Xifx.charasvarchar = 0 X X; If on, the contents of text and byte blobs are dumped to a file instead of X; keeping them in memory. Xifx.blobinfile = 0 X X; NULL's are returned as empty strings, unless this is set to 1. In that case, X; NULL's are returned as string 'NULL'. Xifx.nullformat = 0 X X[Session] X; Handler used to store/retrieve data. Xsession.save_handler = files X X; Argument passed to save_handler. In the case of files, this is the path X; where data files are stored. Note: Windows users have to change this X; variable in order to use PHP's session functions. X; X; As of PHP 4.0.1, you can define the path as: X; X; session.save_path = "N;/path" X; X; where N is an integer. Instead of storing all the session files in X; /path, what this will do is use subdirectories N-levels deep, and X; store the session data in those directories. This is useful if you X; or your OS have problems with lots of files in one directory, and is X; a more efficient layout for servers that handle lots of sessions. X; X; NOTE 1: PHP will not create this directory structure automatically. X; You can use the script in the ext/session dir for that purpose. X; NOTE 2: See the section on garbage collection below if you choose to X; use subdirectories for session storage X; X; The file storage module creates files using mode 600 by default. X; You can change that by using X; X; session.save_path = "N;MODE;/path" X; X; where MODE is the octal representation of the mode. Note that this X; does not overwrite the process's umask. X;session.save_path = "/tmp" X X; Whether to use cookies. Xsession.use_cookies = 1 X X; This option enables administrators to make their users invulnerable to X; attacks which involve passing session ids in URLs; defaults to 0. X; session.use_only_cookies = 1 X X; Name of the session (used as cookie name). Xsession.name = PHPSESSID X X; Initialize session on request startup. Xsession.auto_start = 0 X X; Lifetime in seconds of cookie or, if 0, until browser is restarted. Xsession.cookie_lifetime = 0 X X; The path for which the cookie is valid. Xsession.cookie_path = / X X; The domain for which the cookie is valid. Xsession.cookie_domain = X X; Handler used to serialize data. php is the standard serializer of PHP. Xsession.serialize_handler = php X X; Define the probability that the 'garbage collection' process is started X; on every session initialization. X; The probability is calculated by using gc_probability/gc_divisor, X; e.g. 1/100 means there is a 1% chance that the GC process starts X; on each request. X Xsession.gc_probability = 1 Xsession.gc_divisor = 100 X X; After this number of seconds, stored data will be seen as 'garbage' and X; cleaned up by the garbage collection process. Xsession.gc_maxlifetime = 1440 X X; NOTE: If you are using the subdirectory option for storing session files X; (see session.save_path above), then garbage collection does *not* X; happen automatically. You will need to do your own garbage X; collection through a shell script, cron entry, or some other method. X; For example, the following script would is the equivalent of X; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes): X; cd /path/to/sessions; find -cmin +24 | xargs rm X X; PHP 4.2 and less have an undocumented feature/bug that allows you to X; to initialize a session variable in the global scope, albeit register_globals X; is disabled. PHP 4.3 and later will warn you, if this feature is used. X; You can disable the feature and the warning separately. At this time, X; the warning is only displayed, if bug_compat_42 is enabled. X Xsession.bug_compat_42 = 1 Xsession.bug_compat_warn = 1 X X; Check HTTP Referer to invalidate externally stored URLs containing ids. X; HTTP_REFERER has to contain this substring for the session to be X; considered as valid. Xsession.referer_check = X X; How many bytes to read from the file. Xsession.entropy_length = 0 X X; Specified here to create the session id. Xsession.entropy_file = X X;session.entropy_length = 16 X X;session.entropy_file = /dev/urandom X X; Set to {nocache,private,public,} to determine HTTP caching aspects X; or leave this empty to avoid sending anti-caching headers. Xsession.cache_limiter = nocache X X; Document expires after n minutes. Xsession.cache_expire = 180 X X; trans sid support is disabled by default. X; Use of trans sid may risk your users security. X; Use this option with caution. X; - User may send URL contains active session ID X; to other person via. email/irc/etc. X; - URL that contains active session ID may be stored X; in publically accessible computer. X; - User may access your site with the same session ID X; always using URL stored in browser's history or bookmarks. Xsession.use_trans_sid = 0 X X; Select a hash function X; 0: MD5 (128 bits) X; 1: SHA-1 (160 bits) Xsession.hash_function = 0 X X; Define how many bits are stored in each character when converting X; the binary hash data to something readable. X; X; 4 bits: 0-9, a-f X; 5 bits: 0-9, a-v X; 6 bits: 0-9, a-z, A-Z, "-", "," Xsession.hash_bits_per_character = 4 X X; The URL rewriter will look for URLs in a defined set of HTML tags. X; form/fieldset are special; if you include them here, the rewriter will X; add a hidden field with the info which is otherwise appended X; to URLs. If you want XHTML conformity, remove the form entry. X; Note that all valid entries require a "=", even if no value follows. Xurl_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset=" X X[MSSQL] X; Allow or prevent persistent links. Xmssql.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xmssql.max_persistent = -1 X X; Maximum number of links (persistent+non persistent). -1 means no limit. Xmssql.max_links = -1 X X; Minimum error severity to display. Xmssql.min_error_severity = 10 X X; Minimum message severity to display. Xmssql.min_message_severity = 10 X X; Compatability mode with old versions of PHP 3.0. Xmssql.compatability_mode = Off X X; Connect timeout X;mssql.connect_timeout = 5 X X; Query timeout X;mssql.timeout = 60 X X; Valid range 0 - 2147483647. Default = 4096. X;mssql.textlimit = 4096 X X; Valid range 0 - 2147483647. Default = 4096. X;mssql.textsize = 4096 X X; Limits the number of records in each batch. 0 = all records in one batch. X;mssql.batchsize = 0 X X; Specify how datetime and datetim4 columns are returned X; On => Returns data converted to SQL server settings X; Off => Returns values as YYYY-MM-DD hh:mm:ss X;mssql.datetimeconvert = On X X; Use NT authentication when connecting to the server Xmssql.secure_connection = Off X X; Specify max number of processes. -1 = library default X; msdlib defaults to 25 X; FreeTDS defaults to 4096 X;mssql.max_procs = -1 X X; Specify client character set. X; If empty or not set the client charset from freetds.comf is used X; This is only used when compiled with FreeTDS X;mssql.charset = "ISO-8859-1" X X[Assertion] X; Assert(expr); active by default. X;assert.active = On X X; Issue a PHP warning for each failed assertion. X;assert.warning = On X X; Don't bail out by default. X;assert.bail = Off X X; User-function to be called if an assertion fails. X;assert.callback = 0 X X; Eval the expression with current error_reporting(). Set to true if you want X; error_reporting(0) around the eval(). X;assert.quiet_eval = 0 X X[Verisign Payflow Pro] X; Default Payflow Pro server. Xpfpro.defaulthost = "test-payflow.verisign.com" X X; Default port to connect to. Xpfpro.defaultport = 443 X X; Default timeout in seconds. Xpfpro.defaulttimeout = 30 X X; Default proxy IP address (if required). X;pfpro.proxyaddress = X X; Default proxy port. X;pfpro.proxyport = X X; Default proxy logon. X;pfpro.proxylogon = X X; Default proxy password. X;pfpro.proxypassword = X X[COM] X; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs X;com.typelib_file = X; allow Distributed-COM calls X;com.allow_dcom = true X; autoregister constants of a components typlib on com_load() X;com.autoregister_typelib = true X; register constants casesensitive X;com.autoregister_casesensitive = false X; show warnings on duplicate constat registrations X;com.autoregister_verbose = true X X[mbstring] X; language for internal character representation. X;mbstring.language = Japanese X X; internal/script encoding. X; Some encoding cannot work as internal encoding. X; (e.g. SJIS, BIG5, ISO-2022-*) X;mbstring.internal_encoding = EUC-JP X X; http input encoding. X;mbstring.http_input = auto X X; http output encoding. mb_output_handler must be X; registered as output buffer to function X;mbstring.http_output = SJIS X X; enable automatic encoding translation according to X; mbstring.internal_encoding setting. Input chars are X; converted to internal encoding by setting this to On. X; Note: Do _not_ use automatic encoding translation for X; portable libs/applications. X;mbstring.encoding_translation = Off X X; automatic encoding detection order. X; auto means X;mbstring.detect_order = auto X X; substitute_character used when character cannot be converted X; one from another X;mbstring.substitute_character = none; X X; overload(replace) single byte functions by mbstring functions. X; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(), X; etc. Possible values are 0,1,2,4 or combination of them. X; For example, 7 for overload everything. X; 0: No overload X; 1: Overload mail() function X; 2: Overload str*() functions X; 4: Overload ereg*() functions X;mbstring.func_overload = 0 X X[FrontBase] X;fbsql.allow_persistent = On X;fbsql.autocommit = On X;fbsql.default_database = X;fbsql.default_database_password = X;fbsql.default_host = X;fbsql.default_password = X;fbsql.default_user = "_SYSTEM" X;fbsql.generate_warnings = Off X;fbsql.max_connections = 128 X;fbsql.max_links = 128 X;fbsql.max_persistent = -1 X;fbsql.max_results = 128 X;fbsql.batchSize = 1000 X X[exif] X; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. X; With mbstring support this will automatically be converted into the encoding X; given by corresponding encode setting. When empty mbstring.internal_encoding X; is used. For the decode settings you can distinguish between motorola and X; intel byte order. A decode setting cannot be empty. X;exif.encode_unicode = ISO-8859-15 X;exif.decode_unicode_motorola = UCS-2BE X;exif.decode_unicode_intel = UCS-2LE X;exif.encode_jis = X;exif.decode_jis_motorola = JIS X;exif.decode_jis_intel = JIS X X[Tidy] X; The path to a default tidy configuration file to use when using tidy X;tidy.default_config = /usr/local/lib/php/default.tcfg X X; Should tidy clean and repair output automatically? X; WARNING: Do not use this option if you are generating non-html content X; such as dynamic images Xtidy.clean_output = Off X X[soap] X; Enables or disables WSDL caching feature. Xsoap.wsdl_cache_enabled=1 X; Sets the directory name where SOAP extension will put cache files. Xsoap.wsdl_cache_dir="/tmp" X; (time to live) Sets the number of second while cached file will be used X; instead of original one. Xsoap.wsdl_cache_ttl=86400 X X; Local Variables: X; tab-width: 4 X; End: END-of-freepbx/files/php5.ini echo x - freepbx/files/patch-safe_opserver sed 's/^X//' >freepbx/files/patch-safe_opserver << 'END-of-freepbx/files/patch-safe_opserver' X--- amp_conf/htdocs_panel/safe_opserver.orig Thu May 25 21:53:46 2006 X+++ amp_conf/htdocs_panel/safe_opserver Thu May 25 21:53:53 2006 X@@ -1,5 +1,5 @@ X-#!/bin/bash X+#!/bin/sh X while true; do X ./op_server.pl X sleep 4 X-done X\ No newline at end of file X+done END-of-freepbx/files/patch-safe_opserver echo x - freepbx/files/patch-bounce_op.sh sed 's/^X//' >freepbx/files/patch-bounce_op.sh << 'END-of-freepbx/files/patch-bounce_op.sh' X--- amp_conf/htdocs/admin/bounce_op.sh.orig Thu May 25 21:53:22 2006 X+++ amp_conf/htdocs/admin/bounce_op.sh Thu May 25 21:53:26 2006 X@@ -1,3 +1,3 @@ X-#!/bin/bash X+#!/bin/sh X killall op_server.pl X END-of-freepbx/files/patch-bounce_op.sh echo x - freepbx/files/php4.ini sed 's/^X//' >freepbx/files/php4.ini << 'END-of-freepbx/files/php4.ini' X[PHP] X X;;;;;;;;;;; X; WARNING ; X;;;;;;;;;;; X; This is the default settings file for new PHP installations. X; By default, PHP installs itself with a configuration suitable for X; development purposes, and *NOT* for production purposes. X; For several security-oriented considerations that should be taken X; before going online with your site, please consult php.ini-recommended X; and http://php.net/manual/en/security.php. X X X;;;;;;;;;;;;;;;;;;; X; About this file ; X;;;;;;;;;;;;;;;;;;; X; This file controls many aspects of PHP's behavior. In order for PHP to X; read it, it must be named 'php.ini'. PHP looks for it in the current X; working directory, in the path designated by the environment variable X; PHPRC, and in the path that was defined in compile time (in that order). X; Under Windows, the compile-time path is the Windows directory. The X; path in which the php.ini file is looked for can be overridden using X; the -c argument in command line mode. X; X; The syntax of the file is extremely simple. Whitespace and Lines X; beginning with a semicolon are silently ignored (as you probably guessed). X; Section headers (e.g. [Foo]) are also silently ignored, even though X; they might mean something in the future. X; X; Directives are specified using the following syntax: X; directive = value X; Directive names are *case sensitive* - foo=bar is different from FOO=bar. X; X; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI), one X; of the INI constants (On, Off, True, False, Yes, No and None) or an expression X; (e.g. E_ALL & ~E_NOTICE), or a quoted string ("foo"). X; X; Expressions in the INI file are limited to bitwise operators and parentheses: X; | bitwise OR X; & bitwise AND X; ~ bitwise NOT X; ! boolean NOT X; X; Boolean flags can be turned on using the values 1, On, True or Yes. X; They can be turned off using the values 0, Off, False or No. X; X; An empty string can be denoted by simply not writing anything after the equal X; sign, or by using the None keyword: X; X; foo = ; sets foo to an empty string X; foo = none ; sets foo to an empty string X; foo = "none" ; sets foo to the string 'none' X; X; If you use constants in your value, and these constants belong to a X; dynamically loaded extension (either a PHP extension or a Zend extension), X; you may only use these constants *after* the line that loads the extension. X; X; All the values in the php.ini-dist file correspond to the builtin X; defaults (that is, if no php.ini is used, or if you delete these lines, X; the builtin defaults will be identical). X X X;;;;;;;;;;;;;;;;;;;; X; Language Options ; X;;;;;;;;;;;;;;;;;;;; X X; Enable the PHP scripting language engine under Apache. Xengine = On X X; Allow the tags are recognized. X; NOTE: Using short tags should be avoided when developing applications or X; libraries that are meant for redistribution, or deployment on PHP X; servers which are not under your control, because short tags may not X; be supported on the target server. For portable, redistributable code, X; be sure not to use short tags. Xshort_open_tag = On X X; Allow ASP-style <% %> tags. Xasp_tags = Off X X; The number of significant digits displayed in floating point numbers. Xprecision = 12 X X; Enforce year 2000 compliance (will cause problems with non-compliant browsers) Xy2k_compliance = On X X; Output buffering allows you to send header lines (including cookies) even X; after you send body content, at the price of slowing PHP's output layer a X; bit. You can enable output buffering during runtime by calling the output X; buffering functions. You can also enable output buffering for all files by X; setting this directive to On. If you wish to limit the size of the buffer X; to a certain size - you can use a maximum number of bytes instead of 'On', as X; a value for this directive (e.g., output_buffering=4096). Xoutput_buffering = Off X X; You can redirect all of the output of your scripts to a function. For X; example, if you set output_handler to "mb_output_handler", character X; encoding will be transparently converted to the specified encoding. X; Setting any output handler automatically turns on output buffering. X; Note: People who wrote portable scripts should not depend on this ini X; directive. Instead, explicitly set the output handler using ob_start(). X; Using this ini directive may cause problems unless you know what script X; is doing. X; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler" X; and you cannot use both "ob_gzhandler" and "zlib.output_compression". X;output_handler = X X; Transparent output compression using the zlib library X; Valid values for this option are 'off', 'on', or a specific buffer size X; to be used for compression (default is 4KB) X; Note: Resulting chunk size may vary due to nature of compression. PHP X; outputs chunks that are few hundreds bytes each as a result of X; compression. If you prefer a larger chunk size for better X; performance, enable output_buffering in addition. X; Note: You need to use zlib.output_handler instead of the standard X; output_handler, or otherwise the output will be corrupted. Xzlib.output_compression = Off X X; You cannot specify additional output handlers if zlib.output_compression X; is activated here. This setting does the same as output_handler but in X; a different order. X;zlib.output_handler = X X; Implicit flush tells PHP to tell the output layer to flush itself X; automatically after every output block. This is equivalent to calling the X; PHP function flush() after each and every call to print() or echo() and each X; and every HTML block. Turning this option on has serious performance X; implications and is generally recommended for debugging purposes only. Ximplicit_flush = Off X X; The unserialize callback function will be called (with the undefined class' X; name as parameter), if the unserializer finds an undefined class X; which should be instantiated. X; A warning appears if the specified function is not defined, or if the X; function doesn't include/implement the missing class. X; So only set this entry, if you really want to implement such a X; callback-function. Xunserialize_callback_func= X X; When floats & doubles are serialized store serialize_precision significant X; digits after the floating point. The default value ensures that when floats X; are decoded with unserialize, the data will remain the same. Xserialize_precision = 100 X X; Whether to enable the ability to force arguments to be passed by reference X; at function call time. This method is deprecated and is likely to be X; unsupported in future versions of PHP/Zend. The encouraged method of X; specifying which arguments should be passed by reference is in the function X; declaration. You're encouraged to try and turn this option Off and make X; sure your scripts work properly with it in order to ensure they will work X; with future versions of the language (you will receive a warning each time X; you use this feature, and the argument will be passed by value instead of by X; reference). Xallow_call_time_pass_reference = On X X; Safe Mode X; Xsafe_mode = Off X X; By default, Safe Mode does a UID compare check when X; opening files. If you want to relax this to a GID compare, X; then turn on safe_mode_gid. Xsafe_mode_gid = Off X X; When safe_mode is on, UID/GID checks are bypassed when X; including files from this directory and its subdirectories. X; (directory must also be in include_path or full path must X; be used when including) Xsafe_mode_include_dir = X X; When safe_mode is on, only executables located in the safe_mode_exec_dir X; will be allowed to be executed via the exec family of functions. Xsafe_mode_exec_dir = X X; Setting certain environment variables may be a potential security breach. X; This directive contains a comma-delimited list of prefixes. In Safe Mode, X; the user may only alter environment variables whose names begin with the X; prefixes supplied here. By default, users will only be able to set X; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR). X; X; Note: If this directive is empty, PHP will let the user modify ANY X; environment variable! Xsafe_mode_allowed_env_vars = PHP_ X X; This directive contains a comma-delimited list of environment variables that X; the end user won't be able to change using putenv(). These variables will be X; protected even if safe_mode_allowed_env_vars is set to allow to change them. Xsafe_mode_protected_env_vars = LD_LIBRARY_PATH X X; open_basedir, if set, limits all file operations to the defined directory X; and below. This directive makes most sense if used in a per-directory X; or per-virtualhost web server configuration file. This directive is X; *NOT* affected by whether Safe Mode is turned On or Off. X;open_basedir = X X; This directive allows you to disable certain functions for security reasons. X; It receives a comma-delimited list of function names. This directive is X; *NOT* affected by whether Safe Mode is turned On or Off. Xdisable_functions = X X; This directive allows you to disable certain classes for security reasons. X; It receives a comma-delimited list of class names. This directive is X; *NOT* affected by whether Safe Mode is turned On or Off. Xdisable_classes = X X; Colors for Syntax Highlighting mode. Anything that's acceptable in X; would work. X;highlight.string = #DD0000 X;highlight.comment = #FF9900 X;highlight.keyword = #007700 X;highlight.bg = #FFFFFF X;highlight.default = #0000BB X;highlight.html = #000000 X X X; X; Misc X; X; Decides whether PHP may expose the fact that it is installed on the server X; (e.g. by adding its signature to the Web server header). It is no security X; threat in any way, but it makes it possible to determine whether you use PHP X; on your server or not. Xexpose_php = On X X X;;;;;;;;;;;;;;;;;;; X; Resource Limits ; X;;;;;;;;;;;;;;;;;;; X Xmax_execution_time = 30 ; Maximum execution time of each script, in seconds Xmax_input_time = 60 ; Maximum amount of time each script may spend parsing request data Xmemory_limit = 8M ; Maximum amount of memory a script may consume (8MB) X X;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; X; Error handling and logging ; X;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; X X; error_reporting is a bit-field. Or each number up to get desired error X; reporting level X; E_ALL - All errors and warnings X; E_ERROR - fatal run-time errors X; E_WARNING - run-time warnings (non-fatal errors) X; E_PARSE - compile-time parse errors X; E_NOTICE - run-time notices (these are warnings which often result X; from a bug in your code, but it's possible that it was X; intentional (e.g., using an uninitialized variable and X; relying on the fact it's automatically initialized to an X; empty string) X; E_CORE_ERROR - fatal errors that occur during PHP's initial startup X; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's X; initial startup X; E_COMPILE_ERROR - fatal compile-time errors X; E_COMPILE_WARNING - compile-time warnings (non-fatal errors) X; E_USER_ERROR - user-generated error message X; E_USER_WARNING - user-generated warning message X; E_USER_NOTICE - user-generated notice message X; X; Examples: X; X; - Show all errors, except for notices X; X;error_reporting = E_ALL & ~E_NOTICE X; X; - Show only errors X; X;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR X; X; - Show all errors except for notices X; Xerror_reporting = E_ALL & ~E_NOTICE X X; Print out errors (as a part of the output). For production web sites, X; you're strongly encouraged to turn this feature off, and use error logging X; instead (see below). Keeping display_errors enabled on a production web site X; may reveal security information to end users, such as file paths on your Web X; server, your database schema or other information. Xdisplay_errors = On X X; Even when display_errors is on, errors that occur during PHP's startup X; sequence are not displayed. It's strongly recommended to keep X; display_startup_errors off, except for when debugging. Xdisplay_startup_errors = Off X X; Log errors into a log file (server-specific log, stderr, or error_log (below)) X; As stated above, you're strongly advised to use error logging in place of X; error displaying on production web sites. Xlog_errors = Off X X; Set maximum length of log_errors. In error_log information about the source is X; added. The default is 1024 and 0 allows to not apply any maximum length at all. Xlog_errors_max_len = 1024 X X; Do not log repeated messages. Repeated errors must occur in same file on same X; line until ignore_repeated_source is set true. Xignore_repeated_errors = Off X X; Ignore source of message when ignoring repeated messages. When this setting X; is On you will not log errors with repeated messages from different files or X; sourcelines. Xignore_repeated_source = Off X X; If this parameter is set to Off, then memory leaks will not be shown (on X; stdout or in the log). This has only effect in a debug compile, and if X; error reporting includes E_WARNING in the allowed list Xreport_memleaks = On X X; Store the last error/warning message in $php_errormsg (boolean). Xtrack_errors = Off X X; Disable the inclusion of HTML tags in error messages. X;html_errors = Off X X; If html_errors is set On PHP produces clickable error messages that direct X; to a page describing the error or function causing the error in detail. X; You can download a copy of the PHP manual from http://www.php.net/docs.php X; and change docref_root to the base URL of your local copy including the X; leading '/'. You must also specify the file extension being used including X; the dot. X;docref_root = "/phpmanual/" X;docref_ext = .html X X; String to output before an error message. X;error_prepend_string = "" X X; String to output after an error message. X;error_append_string = "" X X; Log errors to specified file. X;error_log = filename X X; Log errors to syslog (Event Log on NT, not valid in Windows 95). X;error_log = syslog X X X;;;;;;;;;;;;;;;;; X; Data Handling ; X;;;;;;;;;;;;;;;;; X; X; Note - track_vars is ALWAYS enabled as of PHP 4.0.3 X X; The separator used in PHP generated URLs to separate arguments. X; Default is "&". X;arg_separator.output = "&" X X; List of separator(s) used by PHP to parse input URLs into variables. X; Default is "&". X; NOTE: Every character in this directive is considered as separator! X;arg_separator.input = ";&" X X; This directive describes the order in which PHP registers GET, POST, Cookie, X; Environment and Built-in variables (G, P, C, E & S respectively, often X; referred to as EGPCS or GPC). Registration is done from left to right, newer X; values override older values. Xvariables_order = "EGPCS" X X; Whether or not to register the EGPCS variables as global variables. You may X; want to turn this off if you don't want to clutter your scripts' global scope X; with user data. This makes most sense when coupled with track_vars - in which X; case you can access all of the GPC variables through the $HTTP_*_VARS[], X; variables. X; X; You should do your best to write your scripts so that they do not require X; register_globals to be on; Using form variables as globals can easily lead X; to possible security problems, if the code is not very well thought of. Xregister_globals = Off X X; This directive tells PHP whether to declare the argv&argc variables (that X; would contain the GET information). If you don't use these variables, you X; should turn it off for increased performance. Xregister_argc_argv = On X X; Maximum size of POST data that PHP will accept. Xpost_max_size = 8M X X; This directive is deprecated. Use variables_order instead. Xgpc_order = "GPC" X X; Magic quotes X; X X; Magic quotes for incoming GET/POST/Cookie data. Xmagic_quotes_gpc = On X X; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc. Xmagic_quotes_runtime = Off X X; Use Sybase-style magic quotes (escape ' with '' instead of \'). Xmagic_quotes_sybase = Off X X; Automatically add files before or after any PHP document. Xauto_prepend_file = Xauto_append_file = X X; As of 4.0b4, PHP always outputs a character encoding by default in X; the Content-type: header. To disable sending of the charset, simply X; set it to be empty. X; X; PHP's built-in default is text/html Xdefault_mimetype = "text/html" X;default_charset = "iso-8859-1" X X; Always populate the $HTTP_RAW_POST_DATA variable. X;always_populate_raw_post_data = On X X X;;;;;;;;;;;;;;;;;;;;;;;;; X; Paths and Directories ; X;;;;;;;;;;;;;;;;;;;;;;;;; X X; UNIX: "/path1:/path2" X;include_path = ".:/php/includes" X; X; Windows: "\path1;\path2" X;include_path = ".;c:\php\includes" Xinclude_path = ".:/usr/local/share/pear:%%TARGET%%/admin" X X; The root of the PHP pages, used only if nonempty. X; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root X; if you are running php as a CGI under any web server (other than IIS) X; see documentation for security issues. The alternate is to use the X; cgi.force_redirect configuration below Xdoc_root = X X; The directory under which PHP opens the script using /~username used only X; if nonempty. Xuser_dir = X X; Directory in which the loadable extensions (modules) reside. X; extension_dir = "./" X X; Whether or not to enable the dl() function. The dl() function does NOT work X; properly in multithreaded servers, such as IIS or Zeus, and is automatically X; disabled on them. Xenable_dl = On X X; cgi.force_redirect is necessary to provide security running PHP as a CGI under X; most web servers. Left undefined, PHP turns this on by default. You can X; turn it off here AT YOUR OWN RISK X; **You CAN safely turn this off for IIS, in fact, you MUST.** X; cgi.force_redirect = 1 X X; if cgi.nph is enabled it will force cgi to always sent Status: 200 with X; every request. X; cgi.nph = 1 X X; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape X; (iPlanet) web servers, you MAY need to set an environment variable name that PHP X; will look for to know it is OK to continue execution. Setting this variable MAY X; cause security issues, KNOW WHAT YOU ARE DOING FIRST. X; cgi.redirect_status_env = ; X X; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's X; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok X; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting X; this to 1 will cause PHP CGI to fix it's paths to conform to the spec. A setting X; of zero causes PHP to behave as before. Default is zero. You should fix your scripts X; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. X; cgi.fix_pathinfo=0 X X; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate X; security tokens of the calling client. This allows IIS to define the X; security context that the request runs under. mod_fastcgi under Apache X; does not currently support this feature (03/17/2002) X; Set to 1 if running under IIS. Default is zero. X; fastcgi.impersonate = 1; X X; Disable logging through FastCGI connection X; fastcgi.log = 0 X X; cgi.rfc2616_headers configuration option tells PHP what type of headers to X; use when sending HTTP response code. If it's set 0 PHP sends Status: header that X; is supported by Apache. When this option is set to 1 PHP will send X; RFC2616 compliant header. X; Default is zero. X;cgi.rfc2616_headers = 0 X X X;;;;;;;;;;;;;;;; X; File Uploads ; X;;;;;;;;;;;;;;;; X X; Whether to allow HTTP file uploads. Xfile_uploads = On X X; Temporary directory for HTTP uploaded files (will use system default if not X; specified). X;upload_tmp_dir = X X; Maximum allowed size for uploaded files. Xupload_max_filesize = 2M X X X;;;;;;;;;;;;;;;;;; X; Fopen wrappers ; X;;;;;;;;;;;;;;;;;; X X; Whether to allow the treatment of URLs (like http:// or ftp://) as files. Xallow_url_fopen = On X X; Define the anonymous ftp password (your email address) X;from="john@doe.com" X X; Define the User-Agent string X; user_agent="PHP" X X; Default timeout for socket based streams (seconds) Xdefault_socket_timeout = 60 X X; If your scripts have to deal with files from Macintosh systems, X; or you are running on a Mac and need to deal with files from X; unix or win32 systems, setting this flag will cause PHP to X; automatically detect the EOL character in those files so that X; fgets() and file() will work regardless of the source of the file. X; auto_detect_line_endings = Off X X X;;;;;;;;;;;;;;;;;;;;;; X; Dynamic Extensions ; X;;;;;;;;;;;;;;;;;;;;;; X; X; If you wish to have an extension loaded automatically, use the following X; syntax: X; X; extension=modulename.extension X; X; For example, on Windows: X; X; extension=msql.dll X; X; ... or under UNIX: X; X; extension=msql.so X; X; Note that it should be the name of the module only; no directory information X; needs to go here. Specify the location of the extension with the X; extension_dir directive above. X X X;Windows Extensions X;Note that MySQL and ODBC support is now built in, so no dll is needed for it. X; X;extension=php_mbstring.dll X;extension=php_bz2.dll X;extension=php_cpdf.dll X;extension=php_crack.dll X;extension=php_curl.dll X;extension=php_db.dll X;extension=php_dba.dll X;extension=php_dbase.dll X;extension=php_dbx.dll X;extension=php_domxml.dll X;extension=php_exif.dll X;extension=php_fdf.dll X;extension=php_filepro.dll X;extension=php_gd2.dll X;extension=php_gettext.dll X;extension=php_hyperwave.dll X;extension=php_iconv.dll X;extension=php_ifx.dll X;extension=php_iisfunc.dll X;extension=php_imap.dll X;extension=php_interbase.dll X;extension=php_java.dll X;extension=php_ldap.dll X;extension=php_mcrypt.dll X;extension=php_mhash.dll X;extension=php_mime_magic.dll X;extension=php_ming.dll X;extension=php_mssql.dll X;extension=php_msql.dll X;extension=php_oci8.dll X;extension=php_openssl.dll X;extension=php_oracle.dll X;extension=php_pdf.dll X;extension=php_pgsql.dll X;extension=php_printer.dll X;extension=php_shmop.dll X;extension=php_snmp.dll X;extension=php_sockets.dll X;extension=php_sybase_ct.dll X;extension=php_w32api.dll X;extension=php_xmlrpc.dll X;extension=php_xslt.dll X;extension=php_yaz.dll X;extension=php_zip.dll X X X;;;;;;;;;;;;;;;;;;; X; Module Settings ; X;;;;;;;;;;;;;;;;;;; X X[Syslog] X; Whether or not to define the various syslog variables (e.g. $LOG_PID, X; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In X; runtime, you can define these variables by calling define_syslog_variables(). Xdefine_syslog_variables = Off X X[mail function] X; For Win32 only. XSMTP = localhost Xsmtp_port = 25 X X; For Win32 only. X;sendmail_from = me@example.com X X; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). X;sendmail_path = X X[Java] X;java.class.path = .\php_java.jar X;java.home = c:\jdk X;java.library = c:\jdk\jre\bin\hotspot\jvm.dll X;java.library.path = .\ X X[SQL] Xsql.safe_mode = Off X X[ODBC] X;odbc.default_db = Not yet implemented X;odbc.default_user = Not yet implemented X;odbc.default_pw = Not yet implemented X X; Allow or prevent persistent links. Xodbc.allow_persistent = On X X; Check that a connection is still valid before reuse. Xodbc.check_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xodbc.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xodbc.max_links = -1 X X; Handling of LONG fields. Returns number of bytes to variables. 0 means X; passthru. Xodbc.defaultlrl = 4096 X X; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char. X; See the documentation on odbc_binmode and odbc_longreadlen for an explanation X; of uodbc.defaultlrl and uodbc.defaultbinmode Xodbc.defaultbinmode = 1 X X[MySQL] X; Allow or prevent persistent links. Xmysql.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xmysql.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xmysql.max_links = -1 X X; Default port number for mysql_connect(). If unset, mysql_connect() will use X; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the X; compile-time value defined MYSQL_PORT (in that order). Win32 will only look X; at MYSQL_PORT. Xmysql.default_port = X X; Default socket name for local MySQL connects. If empty, uses the built-in X; MySQL defaults. Xmysql.default_socket = X X; Default host for mysql_connect() (doesn't apply in safe mode). Xmysql.default_host = X X; Default user for mysql_connect() (doesn't apply in safe mode). Xmysql.default_user = X X; Default password for mysql_connect() (doesn't apply in safe mode). X; Note that this is generally a *bad* idea to store passwords in this file. X; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password") X; and reveal this password! And of course, any users with read access to this X; file will be able to reveal the password as well. Xmysql.default_password = X X; Maximum time (in seconds) for connect timeout. -1 means no limit Xmysql.connect_timeout = 60 X X; Trace mode. When trace_mode is active (=On), warnings for table/index scans and X; SQL-Errors will be displayed. Xmysql.trace_mode = Off X X[mSQL] X; Allow or prevent persistent links. Xmsql.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xmsql.max_persistent = -1 X X; Maximum number of links (persistent+non persistent). -1 means no limit. Xmsql.max_links = -1 X X[PostgresSQL] X; Allow or prevent persistent links. Xpgsql.allow_persistent = On X X; Detect broken persistent links always with pg_pconnect(). Need a little overhead. Xpgsql.auto_reset_persistent = Off X X; Maximum number of persistent links. -1 means no limit. Xpgsql.max_persistent = -1 X X; Maximum number of links (persistent+non persistent). -1 means no limit. Xpgsql.max_links = -1 X X; Ignore PostgreSQL backends Notice message or not. Xpgsql.ignore_notice = 0 X X; Log PostgreSQL backends Noitce message or not. X; Unless pgsql.ignore_notice=0, module cannot log notice message. Xpgsql.log_notice = 0 X X[Sybase] X; Allow or prevent persistent links. Xsybase.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xsybase.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xsybase.max_links = -1 X X;sybase.interface_file = "/usr/sybase/interfaces" X X; Minimum error severity to display. Xsybase.min_error_severity = 10 X X; Minimum message severity to display. Xsybase.min_message_severity = 10 X X; Compatability mode with old versions of PHP 3.0. X; If on, this will cause PHP to automatically assign types to results according X; to their Sybase type, instead of treating them all as strings. This X; compatibility mode will probably not stay around forever, so try applying X; whatever necessary changes to your code, and turn it off. Xsybase.compatability_mode = Off X X[Sybase-CT] X; Allow or prevent persistent links. Xsybct.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xsybct.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xsybct.max_links = -1 X X; Minimum server message severity to display. Xsybct.min_server_severity = 10 X X; Minimum client message severity to display. Xsybct.min_client_severity = 10 X X[dbx] X; returned column names can be converted for compatibility reasons X; possible values for dbx.colnames_case are X; "unchanged" (default, if not set) X; "lowercase" X; "uppercase" X; the recommended default is either upper- or lowercase, but X; unchanged is currently set for backwards compatibility Xdbx.colnames_case = "unchanged" X X[bcmath] X; Number of decimal digits for all bcmath functions. Xbcmath.scale = 0 X X[browscap] X;browscap = extra/browscap.ini X X[Informix] X; Default host for ifx_connect() (doesn't apply in safe mode). Xifx.default_host = X X; Default user for ifx_connect() (doesn't apply in safe mode). Xifx.default_user = X X; Default password for ifx_connect() (doesn't apply in safe mode). Xifx.default_password = X X; Allow or prevent persistent links. Xifx.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xifx.max_persistent = -1 X X; Maximum number of links (persistent + non-persistent). -1 means no limit. Xifx.max_links = -1 X X; If on, select statements return the contents of a text blob instead of its id. Xifx.textasvarchar = 0 X X; If on, select statements return the contents of a byte blob instead of its id. Xifx.byteasvarchar = 0 X X; Trailing blanks are stripped from fixed-length char columns. May help the X; life of Informix SE users. Xifx.charasvarchar = 0 X X; If on, the contents of text and byte blobs are dumped to a file instead of X; keeping them in memory. Xifx.blobinfile = 0 X X; NULL's are returned as empty strings, unless this is set to 1. In that case, X; NULL's are returned as string 'NULL'. Xifx.nullformat = 0 X X[Session] X; Handler used to store/retrieve data. Xsession.save_handler = files X X; Argument passed to save_handler. In the case of files, this is the path X; where data files are stored. Note: Windows users have to change this X; variable in order to use PHP's session functions. X; As of PHP 4.0.1, you can define the path as: X; session.save_path = "N;/path" X; where N is an integer. Instead of storing all the session files in X; /path, what this will do is use subdirectories N-levels deep, and X; store the session data in those directories. This is useful if you X; or your OS have problems with lots of files in one directory, and is X; a more efficient layout for servers that handle lots of sessions. X; NOTE 1: PHP will not create this directory structure automatically. X; You can use the script in the ext/session dir for that purpose. X; NOTE 2: See the section on garbage collection below if you choose to X; use subdirectories for session storage X;session.save_path = /tmp X X; Whether to use cookies. Xsession.use_cookies = 1 X X; This option enables administrators to make their users invulnerable to X; attacks which involve passing session ids in URLs; defaults to 0. X; session.use_only_cookies = 1 X X; Name of the session (used as cookie name). Xsession.name = PHPSESSID X X; Initialize session on request startup. Xsession.auto_start = 0 X X; Lifetime in seconds of cookie or, if 0, until browser is restarted. Xsession.cookie_lifetime = 0 X X; The path for which the cookie is valid. Xsession.cookie_path = / X X; The domain for which the cookie is valid. Xsession.cookie_domain = X X; Handler used to serialize data. php is the standard serializer of PHP. Xsession.serialize_handler = php X X; Define the probability that the 'garbage collection' process is started X; on every session initialization. X; The probability is calculated by using gc_probability/gc_divisor, X; e.g. 1/100 means there is a 1% chance that the GC process starts X; on each request. X Xsession.gc_probability = 1 Xsession.gc_divisor = 100 X X; After this number of seconds, stored data will be seen as 'garbage' and X; cleaned up by the garbage collection process. Xsession.gc_maxlifetime = 1440 X X; NOTE: If you are using the subdirectory option for storing session files X; (see session.save_path above), then garbage collection does *not* X; happen automatically. You will need to do your own garbage X; collection through a shell script, cron entry, or some other method. X; For example, the following script would is the equivalent of X; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes): X; cd /path/to/sessions; find -cmin +24 | xargs rm X X; PHP 4.2 and less have an undocumented feature/bug that allows you to X; to initialize a session variable in the global scope, albeit register_globals X; is disabled. PHP 4.3 and later will warn you, if this feature is used. X; You can disable the feature and the warning separately. At this time, X; the warning is only displayed, if bug_compat_42 is enabled. X Xsession.bug_compat_42 = 1 Xsession.bug_compat_warn = 1 X X; Check HTTP Referer to invalidate externally stored URLs containing ids. X; HTTP_REFERER has to contain this substring for the session to be X; considered as valid. Xsession.referer_check = X X; How many bytes to read from the file. Xsession.entropy_length = 0 X X; Specified here to create the session id. Xsession.entropy_file = X X;session.entropy_length = 16 X X;session.entropy_file = /dev/urandom X X; Set to {nocache,private,public,} to determine HTTP caching aspects X; or leave this empty to avoid sending anti-caching headers. Xsession.cache_limiter = nocache X X; Document expires after n minutes. Xsession.cache_expire = 180 X X; trans sid support is disabled by default. X; Use of trans sid may risk your users security. X; Use this option with caution. X; - User may send URL contains active session ID X; to other person via. email/irc/etc. X; - URL that contains active session ID may be stored X; in publically accessible computer. X; - User may access your site with the same session ID X; always using URL stored in browser's history or bookmarks. Xsession.use_trans_sid = 0 X X; The URL rewriter will look for URLs in a defined set of HTML tags. X; form/fieldset are special; if you include them here, the rewriter will X; add a hidden field with the info which is otherwise appended X; to URLs. If you want XHTML conformity, remove the form entry. X; Note that all valid entries require a "=", even if no value follows. Xurl_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset=" X X[MSSQL] X; Allow or prevent persistent links. Xmssql.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xmssql.max_persistent = -1 X X; Maximum number of links (persistent+non persistent). -1 means no limit. Xmssql.max_links = -1 X X; Minimum error severity to display. Xmssql.min_error_severity = 10 X X; Minimum message severity to display. Xmssql.min_message_severity = 10 X X; Compatability mode with old versions of PHP 3.0. Xmssql.compatability_mode = Off X X; Connect timeout X;mssql.connect_timeout = 5 X X; Query timeout X;mssql.timeout = 60 X X; Valid range 0 - 2147483647. Default = 4096. X;mssql.textlimit = 4096 X X; Valid range 0 - 2147483647. Default = 4096. X;mssql.textsize = 4096 X X; Limits the number of records in each batch. 0 = all records in one batch. X;mssql.batchsize = 0 X X; Specify how datetime and datetim4 columns are returned X; On => Returns data converted to SQL server settings X; Off => Returns values as YYYY-MM-DD hh:mm:ss X;mssql.datetimeconvert = On X X; Use NT authentication when connecting to the server Xmssql.secure_connection = Off X X; Specify max number of processes. -1 = library default X; msdlib defaults to 25 X; FreeTDS defaults to 4096 X;mssql.max_procs = -1 X X[Assertion] X; Assert(expr); active by default. X;assert.active = On X X; Issue a PHP warning for each failed assertion. X;assert.warning = On X X; Don't bail out by default. X;assert.bail = Off X X; User-function to be called if an assertion fails. X;assert.callback = 0 X X; Eval the expression with current error_reporting(). Set to true if you want X; error_reporting(0) around the eval(). X;assert.quiet_eval = 0 X X[Ingres II] X; Allow or prevent persistent links. Xingres.allow_persistent = On X X; Maximum number of persistent links. -1 means no limit. Xingres.max_persistent = -1 X X; Maximum number of links, including persistents. -1 means no limit. Xingres.max_links = -1 X X; Default database (format: [node_id::]dbname[/srv_class]). Xingres.default_database = X X; Default user. Xingres.default_user = X X; Default password. Xingres.default_password = X X[Verisign Payflow Pro] X; Default Payflow Pro server. Xpfpro.defaulthost = "test-payflow.verisign.com" X X; Default port to connect to. Xpfpro.defaultport = 443 X X; Default timeout in seconds. Xpfpro.defaulttimeout = 30 X X; Default proxy IP address (if required). X;pfpro.proxyaddress = X X; Default proxy port. X;pfpro.proxyport = X X; Default proxy logon. X;pfpro.proxylogon = X X; Default proxy password. X;pfpro.proxypassword = X X[com] X; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs X;com.typelib_file = X; allow Distributed-COM calls X;com.allow_dcom = true X; autoregister constants of a components typlib on com_load() X;com.autoregister_typelib = true X; register constants casesensitive X;com.autoregister_casesensitive = false X; show warnings on duplicate constat registrations X;com.autoregister_verbose = true X X[Printer] X;printer.default_printer = "" X X[mbstring] X; language for internal character representation. X;mbstring.language = Japanese X X; internal/script encoding. X; Some encoding cannot work as internal encoding. X; (e.g. SJIS, BIG5, ISO-2022-*) X;mbstring.internal_encoding = EUC-JP X X; http input encoding. X;mbstring.http_input = auto X X; http output encoding. mb_output_handler must be X; registered as output buffer to function X;mbstring.http_output = SJIS X X; enable automatic encoding translation according to X; mbstring.internal_encoding setting. Input chars are X; converted to internal encoding by setting this to On. X; Note: Do _not_ use automatic encoding translation for X; portable libs/applications. X;mbstring.encoding_translation = Off X X; automatic encoding detection order. X; auto means X;mbstring.detect_order = auto X X; substitute_character used when character cannot be converted X; one from another X;mbstring.substitute_character = none; X X; overload(replace) single byte functions by mbstring functions. X; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(), X; etc. Possible values are 0,1,2,4 or combination of them. X; For example, 7 for overload everything. X; 0: No overload X; 1: Overload mail() function X; 2: Overload str*() functions X; 4: Overload ereg*() functions X;mbstring.func_overload = 0 X X[FrontBase] X;fbsql.allow_persistent = On X;fbsql.autocommit = On X;fbsql.default_database = X;fbsql.default_database_password = X;fbsql.default_host = X;fbsql.default_password = X;fbsql.default_user = "_SYSTEM" X;fbsql.generate_warnings = Off X;fbsql.max_connections = 128 X;fbsql.max_links = 128 X;fbsql.max_persistent = -1 X;fbsql.max_results = 128 X;fbsql.batchSize = 1000 X X[Crack] X; Modify the setting below to match the directory location of the cracklib X; dictionary files. Include the base filename, but not the file extension. X; crack.default_dictionary = "c:\php\lib\cracklib_dict" X X[exif] X; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. X; With mbstring support this will automatically be converted into the encoding X; given by corresponding encode setting. When empty mbstring.internal_encoding X; is used. For the decode settings you can distinguish between motorola and X; intel byte order. A decode setting cannot be empty. X;exif.encode_unicode = ISO-8859-15 X;exif.decode_unicode_motorola = UCS-2BE X;exif.decode_unicode_intel = UCS-2LE X;exif.encode_jis = X;exif.decode_jis_motorola = JIS X;exif.decode_jis_intel = JIS X X; Local Variables: X; tab-width: 4 X; End: END-of-freepbx/files/php4.ini exit --=-tjj6TD9+sPYaU7YjeArS--