├── .devcontainer
└── devcontainer.json
├── .editorconfig
├── .gitmodules
├── CMakeLists.txt
├── CMakeModules
├── FindLibLdap.cmake
├── FindPCRE.cmake
└── common.cmake
├── GPL.txt
├── INSTALL
├── LICENSE
├── LSQUICCOMMIT
├── Makefile.am
├── Makefile.in
├── README.md
├── aclocal.m4
├── addon
└── example
│ ├── Makefile
│ ├── README
│ ├── ccc.sh
│ ├── checksessionhooks.c
│ ├── hellohandler.c
│ ├── hellohandler2.c
│ ├── imgresize.c
│ ├── make.Autodepend
│ ├── mtaltreadwrite.c
│ ├── mtaltreadwriteobs.c
│ ├── mteventcancel.c
│ ├── mteventseq.c
│ ├── mtflood.c
│ ├── mtgetters.c
│ ├── mtheaders.c
│ ├── mthello.c
│ ├── mtpost.c
│ ├── mtpostmt.c
│ ├── mtpostmt2.c
│ ├── mtsendfile.c
│ ├── mtsetters.c
│ ├── mytest.c
│ ├── replybigbufhandler.c
│ ├── reqform.html
│ ├── reqinfhandler.c
│ ├── reqobservmodule.c
│ ├── sendfile.c
│ ├── sendfilehandler.c
│ ├── setrespheader.c
│ ├── testcontext.c
│ ├── testenableflag1.c
│ ├── testenableflag2.c
│ ├── testenableflag3.c
│ ├── testenableflag4.c
│ ├── testenv.c
│ ├── testhttpauth.c
│ ├── testmoduledata.c
│ ├── testparam.c
│ ├── testredirect.c
│ ├── testredirectmt.c
│ ├── testreqenv.c
│ ├── testserverhook.c
│ ├── testsuspend.c
│ ├── testtimer.c
│ ├── testviewdata.c
│ ├── updatehttpout.c
│ ├── updatetcpin1.c
│ ├── updatetcpin2.c
│ ├── updatetcpout1.c
│ ├── updatetcpout2.c
│ ├── uploadchecker.c
│ ├── waitfullreqbody.c
│ └── waitfullrespbody.c
├── ax_check_ip2location.m4
├── ax_check_liblua.m4
├── ax_check_libudns.m4
├── ax_check_openssl.m4
├── ax_check_zlib.m4
├── ax_lib_expat.m4
├── ax_path_lib_pcre.m4
├── build.sh
├── config.guess
├── config.sub
├── configure
├── configure.ac
├── depcomp
├── dist
├── Example
│ ├── cgi-bin
│ │ └── helloworld
│ └── html
│ │ ├── .htaccess
│ │ ├── blocked
│ │ └── index.html
│ │ ├── css
│ │ ├── bootstrap.min.css
│ │ └── custom.css
│ │ ├── error404.html
│ │ ├── img
│ │ ├── 404-icon.png
│ │ ├── blocked_content-icon.png
│ │ ├── cgi-icon.png
│ │ ├── file_upload-icon.png
│ │ ├── olsws_logo.png
│ │ ├── php-icon.png
│ │ ├── powered_by_ols-new.png
│ │ └── pwd_protect-icon.png
│ │ ├── index.html
│ │ ├── phpinfo.php
│ │ ├── protected
│ │ └── index.html
│ │ ├── upload.html
│ │ └── upload.php
├── GPL.txt
├── VERSION
├── add-ons
│ ├── snmp_monitoring
│ │ ├── README
│ │ ├── class.litespeed_snmp_bridge.php
│ │ ├── class.litespeed_stats.php
│ │ ├── litespeed_cacti_template.xml
│ │ ├── litespeed_extapp.xml
│ │ ├── litespeed_general.xml
│ │ ├── litespeed_vhost.xml
│ │ └── sample.php
│ └── webcachemgr
│ │ ├── VERSION
│ │ ├── autoloader.php
│ │ ├── bootstrap.php
│ │ ├── bootstrap_cli.php
│ │ └── src
│ │ ├── AjaxResponse.php
│ │ ├── CliController.php
│ │ ├── Context
│ │ ├── Context.php
│ │ ├── ContextOption.php
│ │ ├── RootCLIContextOption.php
│ │ ├── RootPanelContextOption.php
│ │ └── UserCLIContextOption.php
│ │ ├── DashNotifier.php
│ │ ├── LSCMException.php
│ │ ├── LogEntry.php
│ │ ├── Logger.php
│ │ ├── Panel
│ │ ├── CPanel.php
│ │ ├── ControlPanel.php
│ │ ├── CustomPanel.php
│ │ ├── CustomPanelBase.php
│ │ ├── DirectAdmin.php
│ │ └── Plesk.php
│ │ ├── PanelController.php
│ │ ├── PluginVersion.php
│ │ ├── RedefineGlobalFuncs.php
│ │ ├── ThirdParty
│ │ └── Polyfill
│ │ │ ├── LICENSE
│ │ │ └── Utf8.php
│ │ ├── UserCommand.php
│ │ ├── Util.php
│ │ ├── View
│ │ ├── AjaxView.php
│ │ ├── Model
│ │ │ ├── Ajax
│ │ │ │ └── CacheMgrRowViewModel.php
│ │ │ ├── CacheRootNotSetViewModel.php
│ │ │ ├── DashNotifierViewModel.php
│ │ │ ├── DataFileMsgViewModel.php
│ │ │ ├── ManageViewModel.php
│ │ │ ├── MassDashDisableProgressViewModel.php
│ │ │ ├── MassDashNotifyProgressViewModel.php
│ │ │ ├── MassEnableDisableProgressViewModel.php
│ │ │ ├── MassEnableDisableViewModel.php
│ │ │ ├── MissingTplViewModel.php
│ │ │ ├── RefreshStatusProgressViewModel.php
│ │ │ ├── ScanProgressStepViewModel.php
│ │ │ ├── ScanProgressViewModel.php
│ │ │ ├── UnflagAllProgressViewModel.php
│ │ │ ├── VersionChangeViewModel.php
│ │ │ └── VersionManageViewModel.php
│ │ └── Tpl
│ │ │ ├── Ajax
│ │ │ ├── CacheMgrActionsCol.tpl
│ │ │ ├── CacheMgrFlagCol.tpl
│ │ │ └── CacheMgrStatusCol.tpl
│ │ │ ├── Blocks
│ │ │ └── InputSubmitBtn.tpl
│ │ │ ├── CacheRootNotSet.tpl
│ │ │ ├── DashNotifier.tpl
│ │ │ ├── DataFileMsg.tpl
│ │ │ ├── Manage.tpl
│ │ │ ├── MassDashDisableProgress.tpl
│ │ │ ├── MassDashNotifyProgress.tpl
│ │ │ ├── MassEnableDisable.tpl
│ │ │ ├── MassEnableDisableProgress.tpl
│ │ │ ├── MissingTpl.tpl
│ │ │ ├── RefreshStatusProgress.tpl
│ │ │ ├── ScanProgress.tpl
│ │ │ ├── ScanProgressStep1.tpl
│ │ │ ├── ScanProgressStep2.tpl
│ │ │ ├── UnflagAllProgress.tpl
│ │ │ ├── VersionChange.tpl
│ │ │ └── VersionManage.tpl
│ │ ├── WPCaller.php
│ │ ├── WPDashMsgs.php
│ │ ├── WPInstall.php
│ │ ├── WPInstallStorage.php
│ │ └── WpWrapper
│ │ ├── PluginUpgrader.php
│ │ ├── WpConstants.php
│ │ ├── WpFuncs.php
│ │ ├── WpQuery.php
│ │ ├── WpTextdomainRegistry.php
│ │ └── Wpdb.php
├── admin
│ ├── conf
│ │ ├── admin_config.conf.in
│ │ ├── admin_config_ssl.conf.in
│ │ └── php.ini
│ ├── html.open
│ │ ├── favicon.ico
│ │ ├── index.php
│ │ ├── lib
│ │ │ ├── CAuthorizer.php
│ │ │ ├── CData.php
│ │ │ ├── CNode.php
│ │ │ ├── CValidation.php
│ │ │ ├── ControllerBase.php
│ │ │ ├── DAttrBase.php
│ │ │ ├── DAttrHelp.php
│ │ │ ├── DInfo.php
│ │ │ ├── DKeywordAlias.php
│ │ │ ├── DMsg.php
│ │ │ ├── DPage.php
│ │ │ ├── DTbl.php
│ │ │ ├── DTblDefBase.php
│ │ │ ├── DTblMap.php
│ │ │ ├── LogViewer.php
│ │ │ ├── PathTool.php
│ │ │ ├── PlainConfParser.php
│ │ │ ├── SInfo.php
│ │ │ ├── XmlParser.php
│ │ │ ├── blowfish.php
│ │ │ ├── jCryption.php
│ │ │ ├── ows
│ │ │ │ ├── ConfValidation.php
│ │ │ │ ├── DAttr.php
│ │ │ │ ├── DPageDef.php
│ │ │ │ ├── DTblDef.php
│ │ │ │ ├── Product.php
│ │ │ │ ├── RealTimeStats.php
│ │ │ │ ├── Service.php
│ │ │ │ └── UI.php
│ │ │ └── util
│ │ │ │ └── build_php
│ │ │ │ ├── BuildConfig.php
│ │ │ │ ├── build_common.template
│ │ │ │ ├── build_install.template
│ │ │ │ ├── build_install_ext.template
│ │ │ │ ├── build_manual_run.template
│ │ │ │ ├── build_prepare.template
│ │ │ │ ├── build_prepare_ext.template
│ │ │ │ └── buildfunc.inc.php
│ │ ├── login.php
│ │ ├── res
│ │ │ ├── css
│ │ │ │ ├── bootstrap.min.css
│ │ │ │ ├── font-awesome.min.css
│ │ │ │ ├── googlefonts.css
│ │ │ │ ├── lockscreen.min.css
│ │ │ │ ├── lst-webadmin.min.css
│ │ │ │ └── smartadmin-production.min.css
│ │ │ ├── fonts
│ │ │ │ ├── FontAwesome.otf
│ │ │ │ ├── fontawesome-webfont.eot
│ │ │ │ ├── fontawesome-webfont.svg
│ │ │ │ ├── fontawesome-webfont.ttf
│ │ │ │ ├── fontawesome-webfont.woff
│ │ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ │ ├── glyphicons-halflings-regular.svg
│ │ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ │ ├── open-sans-v17-latin-300.woff
│ │ │ │ ├── open-sans-v17-latin-300.woff2
│ │ │ │ ├── open-sans-v17-latin-700.woff
│ │ │ │ ├── open-sans-v17-latin-700.woff2
│ │ │ │ ├── open-sans-v17-latin-700italic.woff
│ │ │ │ ├── open-sans-v17-latin-700italic.woff2
│ │ │ │ ├── open-sans-v17-latin-italic.woff
│ │ │ │ ├── open-sans-v17-latin-italic.woff2
│ │ │ │ ├── open-sans-v17-latin-regular.woff
│ │ │ │ └── open-sans-v17-latin-regular.woff2
│ │ │ ├── img
│ │ │ │ ├── ajax-loader.gif
│ │ │ │ ├── alpha.png
│ │ │ │ ├── blank.gif
│ │ │ │ ├── clear.png
│ │ │ │ ├── favicon
│ │ │ │ │ └── favicon.ico
│ │ │ │ ├── hue.png
│ │ │ │ ├── icons
│ │ │ │ │ ├── adminconfig.gif
│ │ │ │ │ ├── administrator.gif
│ │ │ │ │ ├── application.gif
│ │ │ │ │ ├── cgi.gif
│ │ │ │ │ ├── controlpanel.gif
│ │ │ │ │ ├── database.gif
│ │ │ │ │ ├── debug.gif
│ │ │ │ │ ├── down.gif
│ │ │ │ │ ├── edit.gif
│ │ │ │ │ ├── fast_cgi.gif
│ │ │ │ │ ├── favicon.ico
│ │ │ │ │ ├── file.gif
│ │ │ │ │ ├── filter.gif
│ │ │ │ │ ├── form.gif
│ │ │ │ │ ├── graph.gif
│ │ │ │ │ ├── help.png
│ │ │ │ │ ├── info.gif
│ │ │ │ │ ├── link.gif
│ │ │ │ │ ├── load_balancer.gif
│ │ │ │ │ ├── lock.gif
│ │ │ │ │ ├── ls_sapi.gif
│ │ │ │ │ ├── module.gif
│ │ │ │ │ ├── module_handler.gif
│ │ │ │ │ ├── network.gif
│ │ │ │ │ ├── play.gif
│ │ │ │ │ ├── record.gif
│ │ │ │ │ ├── redirect.gif
│ │ │ │ │ ├── refresh.gif
│ │ │ │ │ ├── report.gif
│ │ │ │ │ ├── script.gif
│ │ │ │ │ ├── search.gif
│ │ │ │ │ ├── serverconfig.gif
│ │ │ │ │ ├── servlet_engine.gif
│ │ │ │ │ ├── shield.gif
│ │ │ │ │ ├── stop.gif
│ │ │ │ │ ├── trash.gif
│ │ │ │ │ ├── up.gif
│ │ │ │ │ ├── web.gif
│ │ │ │ │ ├── web_link.gif
│ │ │ │ │ └── web_server.gif
│ │ │ │ ├── loading.gif
│ │ │ │ ├── lsws_bolt.png
│ │ │ │ ├── lsws_bolt.svg
│ │ │ │ ├── mappin-default.png
│ │ │ │ ├── minus.png
│ │ │ │ ├── mybg.png
│ │ │ │ ├── plus.png
│ │ │ │ ├── product_logo.gif
│ │ │ │ ├── product_logo.svg
│ │ │ │ ├── ribbon.png
│ │ │ │ ├── sa-dark.png
│ │ │ │ ├── sa-default.png
│ │ │ │ ├── sort_asc.png
│ │ │ │ ├── sort_asc_disabled.png
│ │ │ │ ├── sort_both.png
│ │ │ │ ├── sort_desc.png
│ │ │ │ ├── sort_desc_disabled.png
│ │ │ │ └── vt-menu.png
│ │ │ ├── js
│ │ │ │ ├── app.config.min.js
│ │ │ │ ├── bootstrap
│ │ │ │ │ └── bootstrap.min.js
│ │ │ │ ├── jcryption
│ │ │ │ │ └── jquery.jcryption.min.js
│ │ │ │ ├── libs
│ │ │ │ │ ├── jquery-2.2.4.min.js
│ │ │ │ │ └── jquery-ui-1.12.1.min.js
│ │ │ │ ├── lst-app.min.js
│ │ │ │ ├── notification
│ │ │ │ │ ├── SmartNotification.js
│ │ │ │ │ └── SmartNotification.min.js
│ │ │ │ └── plugin
│ │ │ │ │ ├── datatable-responsive
│ │ │ │ │ └── datatables.responsive.min.js
│ │ │ │ │ ├── datatables
│ │ │ │ │ ├── dataTables.bootstrap.min.js
│ │ │ │ │ ├── dataTables.colReorder.min.js
│ │ │ │ │ ├── dataTables.colVis.min.js
│ │ │ │ │ ├── dataTables.tableTools.min.js
│ │ │ │ │ ├── jquery.dataTables.min.js
│ │ │ │ │ └── swf
│ │ │ │ │ │ ├── copy_csv_xls.swf
│ │ │ │ │ │ └── copy_csv_xls_pdf.swf
│ │ │ │ │ ├── flot
│ │ │ │ │ ├── jquery.flot.cust.min.js
│ │ │ │ │ ├── jquery.flot.fillbetween.min.js
│ │ │ │ │ ├── jquery.flot.orderBar.min.js
│ │ │ │ │ ├── jquery.flot.pie.min.js
│ │ │ │ │ ├── jquery.flot.resize.min.js
│ │ │ │ │ └── jquery.flot.tooltip.min.js
│ │ │ │ │ └── msie-fix
│ │ │ │ │ └── jquery.mb.browser.min.js
│ │ │ └── lang
│ │ │ │ ├── en-US_msg.php
│ │ │ │ ├── en-US_tips.php
│ │ │ │ ├── ja-JP_msg.php
│ │ │ │ ├── ja-JP_tips.php
│ │ │ │ ├── util_sortlang.php
│ │ │ │ ├── zh-CN_msg.php
│ │ │ │ └── zh-CN_tips.php
│ │ └── view
│ │ │ ├── UIBase.php
│ │ │ ├── UIProperty.php
│ │ │ ├── ajax_data.php
│ │ │ ├── compilePHP.php
│ │ │ ├── confMgr.php
│ │ │ ├── dashboard.php
│ │ │ ├── inc
│ │ │ ├── auth.php
│ │ │ ├── configui.php
│ │ │ ├── global.php
│ │ │ ├── header.php
│ │ │ ├── nav.php
│ │ │ └── scripts.php
│ │ │ ├── logviewer.php
│ │ │ ├── realtimestats.php
│ │ │ └── serviceMgr.php
│ └── misc
│ │ ├── admpass.sh
│ │ ├── build_admin_php.sh
│ │ ├── convertxml.php
│ │ ├── convertxml.sh
│ │ ├── create_admin_keypair.sh
│ │ ├── enable_phpa.sh
│ │ ├── gdb-bt
│ │ ├── genjCryptionKeyPair.php
│ │ ├── gzipStatic.sh
│ │ ├── htpasswd.php
│ │ ├── lscmctl
│ │ ├── lshttpd.service.in
│ │ ├── lsup.sh
│ │ ├── lsws.rc.gentoo.in
│ │ ├── lsws.rc.in
│ │ ├── php.ini
│ │ ├── rc-inst.sh
│ │ ├── rc-uninst.sh
│ │ ├── testbeta.sh
│ │ └── uninstall.sh
├── adminssl.conf
├── bin
│ └── lswsctrl
├── conf
│ ├── httpd_config.conf.in
│ ├── mime.properties
│ ├── switch_config.sh
│ ├── templates
│ │ ├── ccl.conf
│ │ └── rails.conf
│ └── vhosts
│ │ └── Example
│ │ ├── htgroup
│ │ ├── htpasswd
│ │ └── vhconf.conf
├── docs
│ ├── AdminGeneral_Help.html
│ ├── AdminListeners_General_Help.html
│ ├── AdminListeners_SSL_Help.html
│ ├── AdminSecurity_Help.html
│ ├── App_Server_Context.html
│ ├── App_Server_Help.html
│ ├── CGI_Context.html
│ ├── CompilePHP_Help.html
│ ├── Context_Help.html
│ ├── ExtApp_Help.html
│ ├── External_FCGI.html
│ ├── External_FCGI_Auth.html
│ ├── External_LB.html
│ ├── External_LSAPI.html
│ ├── External_PL.html
│ ├── External_Servlet.html
│ ├── External_WS.html
│ ├── FCGI_Context.html
│ ├── Java_Web_App_Context.html
│ ├── LB_Context.html
│ ├── LSAPI_Context.html
│ ├── Listeners_General_Help.html
│ ├── Listeners_SSL_Help.html
│ ├── Module_Context.html
│ ├── Module_Help.html
│ ├── Proxy_Context.html
│ ├── Real_Time_Stats_Help.html
│ ├── Redirect_Context.html
│ ├── Rewrite_Help.html
│ ├── ScriptHandler_Help.html
│ ├── ServGeneral_Help.html
│ ├── ServLog_Help.html
│ ├── ServSecurity_Help.html
│ ├── ServTuning_Help.html
│ ├── ServerStat_Help.html
│ ├── Servlet_Context.html
│ ├── Static_Context.html
│ ├── Templates_Help.html
│ ├── VHGeneral_Help.html
│ ├── VHSSL_Help.html
│ ├── VHSecurity_Help.html
│ ├── VHWebSocket_Help.html
│ ├── VirtualHosts_Help.html
│ ├── admin.html
│ ├── config.html
│ ├── css
│ │ └── hdoc.css
│ ├── img
│ │ ├── attention.svg
│ │ ├── info.svg
│ │ ├── lightning-bolt.svg
│ │ ├── lsws_logo.svg
│ │ ├── ols_logo.svg
│ │ ├── shield.svg
│ │ └── web-adc_logo.svg
│ ├── index.html
│ ├── install.html
│ ├── intro.html
│ ├── ja-JP
│ │ ├── AdminGeneral_Help.html
│ │ ├── AdminListeners_General_Help.html
│ │ ├── AdminListeners_SSL_Help.html
│ │ ├── AdminSecurity_Help.html
│ │ ├── App_Server_Context.html
│ │ ├── App_Server_Help.html
│ │ ├── CGI_Context.html
│ │ ├── CompilePHP_Help.html
│ │ ├── Context_Help.html
│ │ ├── ExtApp_Help.html
│ │ ├── External_FCGI.html
│ │ ├── External_FCGI_Auth.html
│ │ ├── External_LB.html
│ │ ├── External_LSAPI.html
│ │ ├── External_PL.html
│ │ ├── External_Servlet.html
│ │ ├── External_WS.html
│ │ ├── FCGI_Context.html
│ │ ├── Java_Web_App_Context.html
│ │ ├── LB_Context.html
│ │ ├── LSAPI_Context.html
│ │ ├── Listeners_General_Help.html
│ │ ├── Listeners_SSL_Help.html
│ │ ├── Module_Context.html
│ │ ├── Module_Help.html
│ │ ├── Proxy_Context.html
│ │ ├── Real_Time_Stats_Help.html
│ │ ├── Redirect_Context.html
│ │ ├── Rewrite_Help.html
│ │ ├── ScriptHandler_Help.html
│ │ ├── ServGeneral_Help.html
│ │ ├── ServLog_Help.html
│ │ ├── ServSecurity_Help.html
│ │ ├── ServTuning_Help.html
│ │ ├── ServerStat_Help.html
│ │ ├── Servlet_Context.html
│ │ ├── Static_Context.html
│ │ ├── Templates_Help.html
│ │ ├── VHGeneral_Help.html
│ │ ├── VHSSL_Help.html
│ │ ├── VHSecurity_Help.html
│ │ ├── VHWebSocket_Help.html
│ │ ├── VirtualHosts_Help.html
│ │ ├── admin.html
│ │ ├── config.html
│ │ ├── index.html
│ │ ├── install.html
│ │ ├── intro.html
│ │ ├── license.html
│ │ ├── security.html
│ │ └── webconsole.html
│ ├── license.html
│ ├── security.html
│ ├── webconsole.html
│ └── zh-CN
│ │ ├── AdminGeneral_Help.html
│ │ ├── AdminListeners_General_Help.html
│ │ ├── AdminListeners_SSL_Help.html
│ │ ├── AdminSecurity_Help.html
│ │ ├── App_Server_Context.html
│ │ ├── App_Server_Help.html
│ │ ├── CGI_Context.html
│ │ ├── CompilePHP_Help.html
│ │ ├── Context_Help.html
│ │ ├── ExtApp_Help.html
│ │ ├── External_FCGI.html
│ │ ├── External_FCGI_Auth.html
│ │ ├── External_LB.html
│ │ ├── External_LSAPI.html
│ │ ├── External_PL.html
│ │ ├── External_Servlet.html
│ │ ├── External_WS.html
│ │ ├── FCGI_Context.html
│ │ ├── Java_Web_App_Context.html
│ │ ├── LB_Context.html
│ │ ├── LSAPI_Context.html
│ │ ├── Listeners_General_Help.html
│ │ ├── Listeners_SSL_Help.html
│ │ ├── Module_Context.html
│ │ ├── Module_Help.html
│ │ ├── Proxy_Context.html
│ │ ├── Real_Time_Stats_Help.html
│ │ ├── Redirect_Context.html
│ │ ├── Rewrite_Help.html
│ │ ├── ScriptHandler_Help.html
│ │ ├── ServGeneral_Help.html
│ │ ├── ServLog_Help.html
│ │ ├── ServSecurity_Help.html
│ │ ├── ServTuning_Help.html
│ │ ├── ServerStat_Help.html
│ │ ├── Servlet_Context.html
│ │ ├── Static_Context.html
│ │ ├── Templates_Help.html
│ │ ├── VHGeneral_Help.html
│ │ ├── VHSSL_Help.html
│ │ ├── VHSecurity_Help.html
│ │ ├── VHWebSocket_Help.html
│ │ ├── VirtualHosts_Help.html
│ │ ├── admin.html
│ │ ├── config.html
│ │ ├── index.html
│ │ ├── install.html
│ │ ├── intro.html
│ │ ├── license.html
│ │ ├── security.html
│ │ └── webconsole.html
├── fcgi-bin
│ ├── RackRunner.rb
│ ├── lsnode.js
│ ├── lsnodesm.js
│ └── lsperld.fpl
├── functions.sh
├── install.sh
├── lsns
│ ├── bin
│ │ ├── common.py
│ │ ├── lscgctl
│ │ ├── lscgstats
│ │ ├── lsnsctl
│ │ ├── lspkgctl
│ │ └── lssetup
│ ├── conf
│ │ └── lscntr.txt
│ └── logs
│ │ └── .gitignore
├── lsrecaptcha
│ ├── _recaptcha
│ └── _recaptcha.shtml
└── share
│ └── autoindex
│ ├── assets
│ ├── css
│ │ └── autoindex.css
│ ├── icons
│ │ ├── corner-left-up.svg
│ │ ├── file-text.svg
│ │ ├── file.svg
│ │ ├── folder-fill.svg
│ │ ├── image.svg
│ │ ├── music.svg
│ │ └── video.svg
│ └── js
│ │ ├── tablesort.js
│ │ └── tablesort.number.js
│ ├── autoindex_include.php
│ ├── bwlimit.html
│ ├── default.php
│ ├── default_nojs.php
│ ├── default_withjs.php
│ └── icons
│ ├── corner-left-up.svg
│ ├── file-text.svg
│ ├── file.svg
│ ├── folder-fill.svg
│ ├── image.svg
│ ├── music.svg
│ └── video.svg
├── dlbrotli.sh
├── dlbssl.sh
├── dlmaxminddb.sh
├── doc
├── ModuleDeveloperGuide.odt
└── ModuleDeveloperGuide.pdf
├── fixtimestamp.sh
├── format.sh
├── include
├── ls.h
├── lsdef.h
├── lsiapi.doxc
├── lsquic.h
├── lsquic_types.h
└── lsr
│ ├── DoxygenLayout.xml
│ ├── ls_aho.h
│ ├── ls_atomic.h
│ ├── ls_base64.h
│ ├── ls_buf.h
│ ├── ls_confparser.h
│ ├── ls_crc64.h
│ ├── ls_dlinkq.h
│ ├── ls_edio.h
│ ├── ls_evtcb.h
│ ├── ls_fileio.h
│ ├── ls_hash.h
│ ├── ls_lfqueue.h
│ ├── ls_lfstack.h
│ ├── ls_link.h
│ ├── ls_llmq.h
│ ├── ls_llxq.h
│ ├── ls_lock.h
│ ├── ls_log.h
│ ├── ls_loopbuf.h
│ ├── ls_map.h
│ ├── ls_md5.h
│ ├── ls_node.h
│ ├── ls_objarray.h
│ ├── ls_objpool.h
│ ├── ls_pcreg.h
│ ├── ls_pool.h
│ ├── ls_ptrlist.h
│ ├── ls_sha1.h
│ ├── ls_shm.h
│ ├── ls_stack.h
│ ├── ls_str.h
│ ├── ls_strlist.h
│ ├── ls_strtool.h
│ ├── ls_swap.h
│ ├── ls_time.h
│ ├── ls_tsstack.h
│ ├── ls_types.h
│ ├── ls_xpool.h
│ ├── lsrapi.doxc
│ └── xxhash.h
├── install-sh
├── install_lsrecaptcha.sh
├── installudns.sh
├── ltmain.sh
├── missing
├── modverinfo.sh
├── nodejs_integration
├── nodejs
│ ├── README-NODE
│ ├── binding.gyp
│ ├── lsnodeapi.cc
│ ├── lsnodesrv.js
│ └── myfirst.js
└── udns-0.4.tar.gz
├── openlitespeed.kdev4
├── src
├── .cvsignore
├── CMakeLists.txt
├── Makefile.am
├── Makefile.in
├── adns
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── adns.cpp
│ └── adns.h
├── config.h.cmake
├── config.h.in
├── edio
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── aioeventhandler.cpp
│ ├── aioeventhandler.h
│ ├── aiooutputstream.cpp
│ ├── aiooutputstream.h
│ ├── aioreqeventhandler.h
│ ├── aiosendfile.cpp
│ ├── aiosendfile.h
│ ├── bufferedos.cpp
│ ├── bufferedos.h
│ ├── cacheos.cpp
│ ├── cacheos.h
│ ├── callbackqueue.cpp
│ ├── callbackqueue.h
│ ├── devpoller.cpp
│ ├── devpoller.h
│ ├── ediostream.cpp
│ ├── ediostream.h
│ ├── epoll.cpp
│ ├── epoll.h
│ ├── eventhandler.h
│ ├── eventnotifier.cpp
│ ├── eventnotifier.h
│ ├── eventprocessor.cpp
│ ├── eventprocessor.h
│ ├── eventreactor.cpp
│ ├── eventreactor.h
│ ├── evtcbque.cpp
│ ├── evtcbque.h
│ ├── fdindex.cpp
│ ├── fdindex.h
│ ├── flowcontrol.cpp
│ ├── flowcontrol.h
│ ├── inputstream.cpp
│ ├── inputstream.h
│ ├── iochain.cpp
│ ├── iochain.h
│ ├── iouring.cpp
│ ├── iouring.h
│ ├── kqueuer.cpp
│ ├── kqueuer.h
│ ├── liburing
│ │ ├── include
│ │ │ ├── liburing.h
│ │ │ └── liburing
│ │ │ │ ├── barrier.h
│ │ │ │ ├── io_uring.h
│ │ │ │ └── time_types.h
│ │ ├── queue.c
│ │ ├── register.c
│ │ ├── setup.c
│ │ ├── syscall.c
│ │ └── syscall.h
│ ├── linuxaio.cpp
│ ├── linuxaio.h
│ ├── lookupfd.cpp
│ ├── lookupfd.h
│ ├── lsaioreq.cpp
│ ├── lsaioreq.h
│ ├── lsiouringreq.cpp
│ ├── lsiouringreq.h
│ ├── lslinuxaioreq.cpp
│ ├── lslinuxaioreq.h
│ ├── lsposixaioreq.cpp
│ ├── lsposixaioreq.h
│ ├── multiplexer.cpp
│ ├── multiplexer.h
│ ├── multiplexerfactory.cpp
│ ├── multiplexerfactory.h
│ ├── outputbuf.cpp
│ ├── outputbuf.h
│ ├── outputstream.cpp
│ ├── outputstream.h
│ ├── poller.cpp
│ ├── poller.h
│ ├── pollfdreactor.cpp
│ ├── pollfdreactor.h
│ ├── reactorindex.cpp
│ ├── reactorindex.h
│ ├── rtsigio.cpp
│ ├── rtsigio.h
│ ├── sigeventdispatcher.cpp
│ ├── sigeventdispatcher.h
│ ├── ssledstream.cpp
│ ├── ssledstream.h
│ └── streamstat.h
├── extensions
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── cgi
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── cgiconnection.cpp
│ │ ├── cgiconnection.h
│ │ ├── cgidconfig.cpp
│ │ ├── cgidconfig.h
│ │ ├── cgidconn.cpp
│ │ ├── cgidconn.h
│ │ ├── cgidreq.cpp
│ │ ├── cgidreq.h
│ │ ├── cgidworker.cpp
│ │ ├── cgidworker.h
│ │ ├── cgroupconn.cpp
│ │ ├── cgroupconn.h
│ │ ├── cgroupuse.cpp
│ │ ├── cgroupuse.h
│ │ ├── lscgid.cpp
│ │ ├── lscgid.h
│ │ ├── lscgiddef.h
│ │ ├── ns.c
│ │ ├── ns.h
│ │ ├── nsipc.h
│ │ ├── nsopts.c
│ │ ├── nsopts.h
│ │ ├── nspersist.c
│ │ ├── nspersist.h
│ │ ├── nsutils.c
│ │ ├── nsutils.h
│ │ ├── suexec.cpp
│ │ ├── suexec.h
│ │ ├── use_bwrap.c
│ │ └── use_bwrap.h
│ ├── detached.h
│ ├── extconn.cpp
│ ├── extconn.h
│ ├── extrequest.cpp
│ ├── extrequest.h
│ ├── extworker.cpp
│ ├── extworker.h
│ ├── extworkerconfig.cpp
│ ├── extworkerconfig.h
│ ├── fcgi
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── fcgiapp.cpp
│ │ ├── fcgiapp.h
│ │ ├── fcgiappconfig.cpp
│ │ ├── fcgiappconfig.h
│ │ ├── fcgiconnection.cpp
│ │ ├── fcgiconnection.h
│ │ ├── fcgidef.h
│ │ ├── fcgienv.cpp
│ │ ├── fcgienv.h
│ │ ├── fcginamevaluepair.cpp
│ │ ├── fcginamevaluepair.h
│ │ ├── fcgirecord.cpp
│ │ ├── fcgirecord.h
│ │ ├── fcgireqlist.cpp
│ │ ├── fcgireqlist.h
│ │ ├── fcgirequest.cpp
│ │ ├── fcgirequest.h
│ │ ├── fcgistarter.cpp
│ │ ├── fcgistarter.h
│ │ ├── samplefcgiextconn.cpp
│ │ └── samplefcgiextconn.h
│ ├── httpextprocessor.cpp
│ ├── httpextprocessor.h
│ ├── iprocessortimer.cpp
│ ├── iprocessortimer.h
│ ├── jk
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── jconn.cpp
│ │ ├── jconn.h
│ │ ├── jkajp13.cpp
│ │ ├── jkajp13.h
│ │ ├── jworker.cpp
│ │ ├── jworker.h
│ │ ├── jworkerconfig.cpp
│ │ └── jworkerconfig.h
│ ├── l4conn.cpp
│ ├── l4conn.h
│ ├── loadbalancer.cpp
│ ├── loadbalancer.h
│ ├── localworker.cpp
│ ├── localworker.h
│ ├── localworkerconfig.cpp
│ ├── localworkerconfig.h
│ ├── lsapi
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── lsapiconfig.cpp
│ │ ├── lsapiconfig.h
│ │ ├── lsapiconn.cpp
│ │ ├── lsapiconn.h
│ │ ├── lsapidef.h
│ │ ├── lsapireq.cpp
│ │ ├── lsapireq.h
│ │ ├── lsapiworker.cpp
│ │ └── lsapiworker.h
│ ├── pidlist.cpp
│ ├── pidlist.h
│ ├── proxy
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── proxyconfig.cpp
│ │ ├── proxyconfig.h
│ │ ├── proxyconn.cpp
│ │ ├── proxyconn.h
│ │ ├── proxyworker.cpp
│ │ └── proxyworker.h
│ ├── registry
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── appconfig.cpp
│ │ ├── appconfig.h
│ │ ├── extappregistry.cpp
│ │ └── extappregistry.h
│ ├── ssl4conn.cpp
│ └── ssl4conn.h
├── h2
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── h2connbase.cpp
│ ├── h2connbase.h
│ ├── h2connection.cpp
│ ├── h2connection.h
│ ├── h2protocol.cpp
│ ├── h2protocol.h
│ ├── h2stream.cpp
│ ├── h2stream.h
│ ├── h2streambase.cpp
│ ├── h2streambase.h
│ ├── h2streampool.cpp
│ ├── h2streampool.h
│ ├── lsxpack_error_code.h
│ ├── ssledstream.cpp
│ ├── ssledstream.h
│ ├── unpackedheaders.cpp
│ └── unpackedheaders.h
├── http
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── accesscache.cpp
│ ├── accesscache.h
│ ├── accesslog.cpp
│ ├── accesslog.h
│ ├── authuser.cpp
│ ├── authuser.h
│ ├── awstats.cpp
│ ├── awstats.h
│ ├── cacheelement.cpp
│ ├── cacheelement.h
│ ├── chunkinputstream.cpp
│ ├── chunkinputstream.h
│ ├── chunkoutputstream.cpp
│ ├── chunkoutputstream.h
│ ├── clientcache.cpp
│ ├── clientcache.h
│ ├── clientinfo.cpp
│ ├── clientinfo.h
│ ├── connlimitctrl.cpp
│ ├── connlimitctrl.h
│ ├── contextlist.cpp
│ ├── contextlist.h
│ ├── contextnode.cpp
│ ├── contextnode.h
│ ├── contexttree.cpp
│ ├── contexttree.h
│ ├── denieddir.cpp
│ ├── denieddir.h
│ ├── eventdispatcher.cpp
│ ├── eventdispatcher.h
│ ├── expiresctrl.cpp
│ ├── expiresctrl.h
│ ├── expression.cpp
│ ├── expression.h
│ ├── handlerfactory.cpp
│ ├── handlerfactory.h
│ ├── handlertype.cpp
│ ├── handlertype.h
│ ├── hiochainstream.cpp
│ ├── hiochainstream.h
│ ├── hiohandlerfactory.cpp
│ ├── hiohandlerfactory.h
│ ├── hiostream.cpp
│ ├── hiostream.h
│ ├── hotlinkctrl.cpp
│ ├── hotlinkctrl.h
│ ├── htauth.cpp
│ ├── htauth.h
│ ├── htpasswd.cpp
│ ├── htpasswd.h
│ ├── httpaiosendfile.cpp
│ ├── httpaiosendfile.h
│ ├── httpcache.cpp
│ ├── httpcache.h
│ ├── httpcgitool.cpp
│ ├── httpcgitool.h
│ ├── httpcontext.cpp
│ ├── httpcontext.h
│ ├── httpdefs.h
│ ├── httpextconnector.cpp
│ ├── httpextconnector.h
│ ├── httphandler.cpp
│ ├── httphandler.h
│ ├── httpheader.cpp
│ ├── httpheader.h
│ ├── httplistener.cpp
│ ├── httplistener.h
│ ├── httplistenerlist.cpp
│ ├── httplistenerlist.h
│ ├── httplog.cpp
│ ├── httplog.h
│ ├── httplogsource.cpp
│ ├── httplogsource.h
│ ├── httpmethod.cpp
│ ├── httpmethod.h
│ ├── httpmime.cpp
│ ├── httpmime.h
│ ├── httprange.cpp
│ ├── httprange.h
│ ├── httpreq.cpp
│ ├── httpreq.h
│ ├── httpresourcemanager.cpp
│ ├── httpresourcemanager.h
│ ├── httpresp.cpp
│ ├── httpresp.h
│ ├── httprespheaders.cpp
│ ├── httprespheaders.h
│ ├── httpserverconfig.cpp
│ ├── httpserverconfig.h
│ ├── httpserverversion.cpp
│ ├── httpserverversion.h
│ ├── httpsession.cpp
│ ├── httpsession.h
│ ├── httpsessionmt.h
│ ├── httpsignals.cpp
│ ├── httpsignals.h
│ ├── httpstats.cpp
│ ├── httpstats.h
│ ├── httpstatuscode.cpp
│ ├── httpstatuscode.h
│ ├── httpstatusline.cpp
│ ├── httpstatusline.h
│ ├── httpver.cpp
│ ├── httpver.h
│ ├── httpvhost.cpp
│ ├── httpvhost.h
│ ├── httpvhostlist.cpp
│ ├── httpvhostlist.h
│ ├── ip2geo.h
│ ├── iptogeo2.cpp
│ ├── iptogeo2.h
│ ├── iptoloc.cpp
│ ├── iptoloc.h
│ ├── l4handler.cpp
│ ├── l4handler.h
│ ├── ls_http_header.h
│ ├── moduserdir.cpp
│ ├── moduserdir.h
│ ├── moov.cpp
│ ├── moov.h
│ ├── moovP.h
│ ├── mtsessdata.h
│ ├── nshttp.h
│ ├── ntwkiolink.cpp
│ ├── ntwkiolink.h
│ ├── phpconfig.cpp
│ ├── phpconfig.h
│ ├── pipeappender.cpp
│ ├── pipeappender.h
│ ├── platforms.h
│ ├── recaptcha.cpp
│ ├── recaptcha.h
│ ├── reqhandler.cpp
│ ├── reqhandler.h
│ ├── reqparser.cpp
│ ├── reqparser.h
│ ├── reqparserparam.h
│ ├── reqstats.cpp
│ ├── reqstats.h
│ ├── requestvars.cpp
│ ├── requestvars.h
│ ├── rewriteengine.cpp
│ ├── rewriteengine.h
│ ├── rewritemap.cpp
│ ├── rewritemap.h
│ ├── rewriterule.cpp
│ ├── rewriterule.h
│ ├── rewriterulelist.cpp
│ ├── rewriterulelist.h
│ ├── sendfileinfo.cpp
│ ├── sendfileinfo.h
│ ├── serverprocessconfig.cpp
│ ├── serverprocessconfig.h
│ ├── smartsettings.cpp
│ ├── smartsettings.h
│ ├── staticfilecache.cpp
│ ├── staticfilecache.h
│ ├── staticfilecachedata.cpp
│ ├── staticfilecachedata.h
│ ├── staticfilehandler.cpp
│ ├── staticfilehandler.h
│ ├── statusurlmap.cpp
│ ├── statusurlmap.h
│ ├── stderrlogger.cpp
│ ├── stderrlogger.h
│ ├── subrequest.cpp
│ ├── throttlecontrol.cpp
│ ├── throttlecontrol.h
│ ├── urimatch.cpp
│ ├── urimatch.h
│ ├── userdir.cpp
│ ├── userdir.h
│ ├── vhostmap.cpp
│ └── vhostmap.h
├── httpdtest.cpp
├── httpdtest.h
├── liblsquic
├── log4cxx
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── appender.cpp
│ ├── appender.h
│ ├── appendermanager.cpp
│ ├── appendermanager.h
│ ├── bench.cpp
│ ├── fileappender.cpp
│ ├── fileappender.h
│ ├── ilog.cpp
│ ├── ilog.h
│ ├── layout.cpp
│ ├── layout.h
│ ├── level.cpp
│ ├── level.h
│ ├── logger.cpp
│ ├── logger.h
│ ├── loggingevent.cpp
│ ├── loggingevent.h
│ ├── logrotate.cpp
│ ├── logrotate.h
│ ├── logsession.cpp
│ ├── logsession.h
│ ├── nsdefs.h
│ ├── patternlayout.cpp
│ ├── patternlayout.h
│ ├── tmplogid.cpp
│ └── tmplogid.h
├── lshpack
├── lsiapi
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── ediohandler.cpp
│ ├── ediohandler.h
│ ├── envmanager.cpp
│ ├── envmanager.h
│ ├── internal.h
│ ├── lsiapi.cpp
│ ├── lsiapi.h
│ ├── lsiapi_const.cpp
│ ├── lsiapi_const.h
│ ├── lsiapigd.cpp
│ ├── lsiapigd.h
│ ├── lsiapihooks.cpp
│ ├── lsiapihooks.h
│ ├── lsiapilib.cpp
│ ├── lsiapilib.h
│ ├── lsimoduledata.cpp
│ ├── lsimoduledata.h
│ ├── modulehandler.cpp
│ ├── modulehandler.h
│ ├── modulemanager.cpp
│ ├── modulemanager.h
│ ├── moduletimer.cpp
│ └── moduletimer.h
├── lsr
│ ├── CMakeLists.txt
│ ├── dynamic_annotations.h
│ ├── ls_aho.c
│ ├── ls_base64.c
│ ├── ls_buf.c
│ ├── ls_confparser.c
│ ├── ls_crc64.c
│ ├── ls_dlinkq.c
│ ├── ls_fileio.c
│ ├── ls_hash.c
│ ├── ls_internal.h
│ ├── ls_lfqueue.c
│ ├── ls_lfstack.c
│ ├── ls_link.c
│ ├── ls_llmq.c
│ ├── ls_llxq.c
│ ├── ls_lock.c
│ ├── ls_loopbuf.c
│ ├── ls_map.c
│ ├── ls_md5.c
│ ├── ls_memcheck.h
│ ├── ls_mpscq.c
│ ├── ls_objarray.c
│ ├── ls_objpool.c
│ ├── ls_offload.h
│ ├── ls_pcreg.c
│ ├── ls_pool.c
│ ├── ls_pooldef.h
│ ├── ls_poolint.h
│ ├── ls_ptrlist.c
│ ├── ls_sha1.c
│ ├── ls_shm.cpp
│ ├── ls_stack.c
│ ├── ls_str.c
│ ├── ls_strlist.c
│ ├── ls_strtool.c
│ ├── ls_threadcheck.h
│ ├── ls_time.c
│ ├── ls_tsstack.c
│ ├── ls_xpool.c
│ ├── ls_xpool_int.h
│ ├── xxhash.c
│ └── xxhash.h
├── lstl
│ └── thash.h
├── main.cpp
├── main
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── configctx.cpp
│ ├── configctx.h
│ ├── httpconfigloader.cpp
│ ├── httpconfigloader.h
│ ├── httpserver.cpp
│ ├── httpserver.h
│ ├── lshttpdmain.cpp
│ ├── lshttpdmain.h
│ ├── mainserverconfig.cpp
│ ├── mainserverconfig.h
│ ├── plainconf.cpp
│ ├── plainconf.h
│ ├── serverinfo.cpp
│ ├── serverinfo.h
│ ├── timestamp.h
│ ├── zconfclient.cpp
│ ├── zconfclient.h
│ ├── zconfmanager.cpp
│ └── zconfmanager.h
├── modules
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── cache
│ │ ├── CMakeLists.txt
│ │ ├── cache.cpp
│ │ ├── cache.kdev4
│ │ ├── cacheconfig.cpp
│ │ ├── cacheconfig.h
│ │ ├── cachectrl.cpp
│ │ ├── cachectrl.h
│ │ ├── cacheentry.cpp
│ │ ├── cacheentry.h
│ │ ├── cachehash.cpp
│ │ ├── cachehash.h
│ │ ├── cachemanager.cpp
│ │ ├── cachemanager.h
│ │ ├── cachestore.cpp
│ │ ├── cachestore.h
│ │ ├── ceheader.cpp
│ │ ├── ceheader.h
│ │ ├── dirhashcacheentry.cpp
│ │ ├── dirhashcacheentry.h
│ │ ├── dirhashcachestore.cpp
│ │ ├── dirhashcachestore.h
│ │ ├── shmcachemanager.cpp
│ │ └── shmcachemanager.h
│ ├── js
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.f
│ │ ├── lsjsengine.cpp
│ │ ├── lsjsengine.h
│ │ ├── modjs.cpp
│ │ └── modjs.h
│ ├── lsrecaptcha
│ │ ├── README.md
│ │ ├── build_lsrecaptcha.sh
│ │ └── src
│ │ │ ├── ls
│ │ │ └── lsapi
│ │ │ │ ├── def.go
│ │ │ │ ├── logger.go
│ │ │ │ ├── lsapi.go
│ │ │ │ ├── lsapidef.h
│ │ │ │ ├── lsgo.c
│ │ │ │ ├── lsgo.h
│ │ │ │ ├── packet.go
│ │ │ │ ├── response.go
│ │ │ │ ├── sys.go
│ │ │ │ └── worker.go
│ │ │ └── lsrecaptcha
│ │ │ ├── generator.go
│ │ │ ├── main.go
│ │ │ └── verifier.go
│ ├── lua
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── Makefile.f
│ │ ├── Makefile.in
│ │ ├── README
│ │ ├── edluastream.cpp
│ │ ├── edluastream.h
│ │ ├── lsluaapi.cpp
│ │ ├── lsluaapi.h
│ │ ├── lsluadefs.h
│ │ ├── lsluaengine.cpp
│ │ ├── lsluaengine.h
│ │ ├── lsluaheader.cpp
│ │ ├── lsluaregex.cpp
│ │ ├── lsluasession.cpp
│ │ ├── lsluasession.h
│ │ ├── lsluashared.cpp
│ │ └── modlua.cpp
│ ├── mod_lsphp
│ │ ├── CMakeLists.txt
│ │ ├── build.sh
│ │ ├── configure_mod_lsphp.sh
│ │ ├── php-7.2-opcache-patch.txt
│ │ └── src
│ │ │ ├── CMakeLists.txt
│ │ │ ├── config.m4
│ │ │ ├── mod_lsphp.c
│ │ │ └── mod_lsphp.h
│ ├── modgzip
│ │ ├── CMakeLists.txt
│ │ └── modgzip.cpp
│ ├── modinspector
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── Makefile.f
│ │ ├── Makefile.in
│ │ ├── README
│ │ └── modinspector.cpp
│ ├── modreqparser
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── Makefile.f
│ │ ├── Makefile.in
│ │ ├── README
│ │ └── modreqparser.cpp
│ ├── modsecurity-ls
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.f
│ │ ├── README
│ │ ├── dllibmodsecurity.sh
│ │ └── mod_security.cpp
│ ├── pagespeed
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.f
│ │ ├── README
│ │ ├── dlpsol.sh
│ │ ├── log_message_handler.cpp
│ │ ├── log_message_handler.h
│ │ ├── ls_base_fetch.cpp
│ │ ├── ls_base_fetch.h
│ │ ├── ls_caching_headers.cpp
│ │ ├── ls_caching_headers.h
│ │ ├── ls_message_handler.cpp
│ │ ├── ls_message_handler.h
│ │ ├── ls_rewrite_driver_factory.cpp
│ │ ├── ls_rewrite_driver_factory.h
│ │ ├── ls_rewrite_options.cpp
│ │ ├── ls_rewrite_options.h
│ │ ├── ls_server_context.cpp
│ │ ├── ls_server_context.h
│ │ ├── ls_uamatcher.cpp
│ │ ├── ls_uamatcher.h
│ │ ├── pagespeed.cpp
│ │ └── pagespeed.h
│ ├── prelinkedmods.cpp
│ └── uploadprogress
│ │ ├── CMakeLists.txt
│ │ ├── Makefile.am
│ │ ├── Makefile.f
│ │ ├── Makefile.in
│ │ ├── README
│ │ └── uploadprogress.cpp
├── quic
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── ls_sendmmsg.h
│ ├── packetbuf.h
│ ├── pbset.cpp
│ ├── pbset.h
│ ├── quicengine.cpp
│ ├── quicengine.h
│ ├── quiclog.h
│ ├── quicshm.cpp
│ ├── quicshm.h
│ ├── quicstream.cpp
│ ├── quicstream.h
│ ├── udplistener.cpp
│ ├── udplistener.h
│ └── udpspoof.h
├── shm
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── addrmap.cpp
│ ├── addrmap.h
│ ├── ls_shmhashcmp.cpp
│ ├── ls_shmhashstat.cpp
│ ├── ls_shmstat.cpp
│ ├── lsshm.cpp
│ ├── lsshm.h
│ ├── lsshmhash.cpp
│ ├── lsshmhash.h
│ ├── lsshmhashobserver.cpp
│ ├── lsshmhashobserver.h
│ ├── lsshmlock.cpp
│ ├── lsshmlock.h
│ ├── lsshmpool.cpp
│ ├── lsshmpool.h
│ ├── lsshmtidmgr.cpp
│ ├── lsshmtidmgr.h
│ └── lsshmtypes.h
├── socket
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── coresocket.cpp
│ ├── coresocket.h
│ ├── datagramsocket.cpp
│ ├── datagramsocket.h
│ ├── errorno.cpp
│ ├── errorno.h
│ ├── filecntl.cpp
│ ├── filecntl.h
│ ├── gsockaddr.cpp
│ ├── gsockaddr.h
│ ├── hostinfo.cpp
│ ├── hostinfo.h
│ ├── ipv4addr.cpp
│ ├── ipv4addr.h
│ ├── ls_sock.c
│ ├── ls_sock.h
│ ├── rawsocket.cpp
│ ├── rawsocket.h
│ ├── reuseport.cpp
│ ├── reuseport.h
│ ├── serversocket.cpp
│ ├── serversocket.h
│ ├── sockdef.h
│ ├── streamsocket.cpp
│ ├── streamsocket.h
│ ├── tcpconnection.cpp
│ ├── tcpconnection.h
│ ├── tcpserversocket.cpp
│ ├── tcpserversocket.h
│ ├── tcpsockopt.cpp
│ ├── tcpsockopt.h
│ ├── udpsocket.cpp
│ └── udpsocket.h
├── spdy
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── protocoldef.h
│ ├── spdyconnection.cpp
│ ├── spdyconnection.h
│ ├── spdydebug.cpp
│ ├── spdydebug.h
│ ├── spdyprotocol.cpp
│ ├── spdyprotocol.h
│ ├── spdystream.cpp
│ ├── spdystream.h
│ ├── spdystreampool.cpp
│ ├── spdystreampool.h
│ ├── spdyzlibfilter.cpp
│ └── spdyzlibfilter.h
├── ssi
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── ssiconfig.cpp
│ ├── ssiconfig.h
│ ├── ssiengine.cpp
│ ├── ssiengine.h
│ ├── ssiruntime.cpp
│ ├── ssiruntime.h
│ ├── ssiscript.cpp
│ └── ssiscript.h
├── sslpp
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── hiocrypto.h
│ ├── ls_fdbuf_bio.c
│ ├── ls_fdbuf_bio.h
│ ├── ocsp
│ │ ├── ocsp.c
│ │ └── ocsp.h
│ ├── sslasyncpk.cpp
│ ├── sslasyncpk.h
│ ├── sslcert.cpp
│ ├── sslcert.h
│ ├── sslcertcomp.cpp
│ ├── sslcertcomp.h
│ ├── sslconnection.cpp
│ ├── sslconnection.h
│ ├── sslcontext.cpp
│ ├── sslcontext.h
│ ├── sslcontextconfig.cpp
│ ├── sslcontextconfig.h
│ ├── ssldef.h
│ ├── sslengine.cpp
│ ├── sslengine.h
│ ├── sslerror.cpp
│ ├── sslerror.h
│ ├── sslocspstapling.cpp
│ ├── sslocspstapling.h
│ ├── sslsesscache.cpp
│ ├── sslsesscache.h
│ ├── sslticket.cpp
│ ├── sslticket.h
│ ├── sslutil.cpp
│ └── sslutil.h
├── thread
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── crewworker.cpp
│ ├── crewworker.h
│ ├── mtnotifier.cpp
│ ├── mtnotifier.h
│ ├── offloader.cpp
│ ├── pthreadcond.cpp
│ ├── pthreadcond.h
│ ├── pthreadmutex.cpp
│ ├── pthreadmutex.h
│ ├── pthreadworkqueue.cpp
│ ├── pthreadworkqueue.h
│ ├── thread.cpp
│ ├── thread.h
│ ├── workcrew.cpp
│ ├── workcrew.h
│ ├── worker.cpp
│ └── worker.h
└── util
│ ├── CMakeLists.txt
│ ├── accesscontrol.cpp
│ ├── accesscontrol.h
│ ├── accessdef.h
│ ├── aho.h
│ ├── autobuf.h
│ ├── autostr.cpp
│ ├── autostr.h
│ ├── blockbuf.cpp
│ ├── blockbuf.h
│ ├── brotlibuf.cpp
│ ├── brotlibuf.h
│ ├── compressor.cpp
│ ├── compressor.h
│ ├── configentry.cpp
│ ├── configentry.h
│ ├── connpool.cpp
│ ├── connpool.h
│ ├── crashguard.cpp
│ ├── crashguard.h
│ ├── daemonize.cpp
│ ├── daemonize.h
│ ├── datetime.cpp
│ ├── datetime.h
│ ├── dlinkqueue.cpp
│ ├── dlinkqueue.h
│ ├── duplicable.cpp
│ ├── duplicable.h
│ ├── emailsender.cpp
│ ├── emailsender.h
│ ├── env.cpp
│ ├── env.h
│ ├── fdpass.cpp
│ ├── fdpass.h
│ ├── filtermatch.cpp
│ ├── filtermatch.h
│ ├── gfactory.cpp
│ ├── gfactory.h
│ ├── ghash.cpp
│ ├── ghash.h
│ ├── gmap.h
│ ├── gnew.cpp
│ ├── gnew.h
│ ├── gpath.cpp
│ ├── gpath.h
│ ├── gpointerlist.cpp
│ ├── gpointerlist.h
│ ├── gsendfile.h
│ ├── guardedapp.cpp
│ ├── guardedapp.h
│ ├── gzipbuf.cpp
│ ├── gzipbuf.h
│ ├── hashdatacache.cpp
│ ├── hashdatacache.h
│ ├── hashstringmap.cpp
│ ├── hashstringmap.h
│ ├── httpfetch.cpp
│ ├── httpfetch.h
│ ├── httpfetchdriver.cpp
│ ├── httpfetchdriver.h
│ ├── httputil.cpp
│ ├── httputil.h
│ ├── iconnection.cpp
│ ├── iconnection.h
│ ├── ienv.h
│ ├── iovec.cpp
│ ├── iovec.h
│ ├── itimer.cpp
│ ├── itimer.h
│ ├── keydata.cpp
│ ├── keydata.h
│ ├── linkedobj.cpp
│ ├── linkedobj.h
│ ├── linkedqueue.cpp
│ ├── linkedqueue.h
│ ├── linkobjpool.cpp
│ ├── linkobjpool.h
│ ├── logfile.cpp
│ ├── logfile.h
│ ├── loopbuf.cpp
│ ├── loopbuf.h
│ ├── ls_hash_fun.h
│ ├── misc
│ ├── denydup.h
│ ├── profiletime.cpp
│ └── profiletime.h
│ ├── ni_fio.c
│ ├── ni_fio.h
│ ├── objarray.h
│ ├── objpool.cpp
│ ├── objpool.h
│ ├── pcregex.cpp
│ ├── pcregex.h
│ ├── pcutil.cpp
│ ├── pcutil.h
│ ├── pidfile.cpp
│ ├── pidfile.h
│ ├── pool.cpp
│ ├── pool.h
│ ├── poolalloc.cpp
│ ├── poolalloc.h
│ ├── radixtree.cpp
│ ├── radixtree.h
│ ├── refcounter.cpp
│ ├── refcounter.h
│ ├── resourcepool.cpp
│ ├── resourcepool.h
│ ├── rlimits.cpp
│ ├── rlimits.h
│ ├── semaphore.cpp
│ ├── semaphore.h
│ ├── signalutil.cpp
│ ├── signalutil.h
│ ├── ssnprintf.h
│ ├── staticobj.cpp
│ ├── staticobj.h
│ ├── stringlist.cpp
│ ├── stringlist.h
│ ├── stringmap.cpp
│ ├── stringmap.h
│ ├── stringtool.cpp
│ ├── stringtool.h
│ ├── swap.h
│ ├── sysinfo
│ ├── bsd_nicdetect.cpp
│ ├── linux_nicdetect.cpp
│ ├── nicdetect.cpp
│ ├── nicdetect.h
│ ├── partitioninfo.cpp
│ ├── partitioninfo.h
│ ├── siocglif_nicdetect.cpp
│ ├── systeminfo.cpp
│ └── systeminfo.h
│ ├── timer.cpp
│ ├── timer.h
│ ├── timerprocessor.cpp
│ ├── timerprocessor.h
│ ├── timertask.cpp
│ ├── timertask.h
│ ├── tlinklist.cpp
│ ├── tlinklist.h
│ ├── tsingleton.cpp
│ ├── tsingleton.h
│ ├── vmembuf.cpp
│ ├── vmembuf.h
│ ├── xmlnode.cpp
│ ├── xmlnode.h
│ └── xpool.h
├── support
├── CMakeLists.txt
├── Makefile.am
├── Makefile.in
├── cmd_ns
│ ├── CMakeLists.txt
│ ├── cmd_ns.c
│ ├── ns.c
│ ├── nsopts.c
│ ├── nspersist.c
│ └── nsutils.c
└── unmount_ns
│ ├── CMakeLists.txt
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── ns.c
│ ├── nsopts.c
│ ├── nspersist.c
│ ├── nsutils.c
│ └── unmount_ns.c
├── test
├── CMakeLists.txt
├── asan_run
├── edio
│ ├── bufferedostest.cpp
│ ├── bufferedostest.h
│ ├── multiplexertest.cpp
│ └── multiplexertest.h
├── extensions
│ └── fcgistartertest.cpp
├── http
│ ├── chunkistest.cpp
│ ├── chunkistest.h
│ ├── chunkostest.cpp
│ ├── chunkostest.h
│ ├── contexttreebench.cpp
│ ├── contexttreetest.cpp
│ ├── contexttreetest.h
│ ├── datetimetest.cpp
│ ├── datetimetest.h
│ ├── denieddirtest.cpp
│ ├── denieddirtest.h
│ ├── expirestest.cpp
│ ├── expirestest.h
│ ├── fcgistartertest.h
│ ├── httpbuftest.cpp
│ ├── httpbuftest.h
│ ├── httpcgitooltest.cpp
│ ├── httpcgitooltest.h
│ ├── httpheadertest.cpp
│ ├── httpheadertest.h
│ ├── httpiptogeo2test.cpp
│ ├── httplistenerstest.cpp
│ ├── httplistenerstest.h
│ ├── httpmimetest.cpp
│ ├── httpmimetest.h
│ ├── httprangetest.cpp
│ ├── httprangetest.h
│ ├── httpreqheaderstest.cpp
│ ├── httpreqheaderstest.h
│ ├── httpreqtest.cpp
│ ├── httpreqtest.h
│ ├── httprequestlinetest.cpp
│ ├── httprequestlinetest.h
│ ├── httpvhostlisttest.cpp
│ ├── httpvhostlisttest.h
│ ├── reqparsertest.cpp
│ ├── rewritetest.cpp
│ ├── rewritetest.h
│ ├── statusurlmaptest.cpp
│ └── statusurlmaptest.h
├── lsiapi
│ ├── envhandler.cpp
│ ├── lsiapihookstest.cpp
│ ├── moduleconf.cpp
│ ├── moduledata.cpp
│ └── moduletimertest.cpp
├── lsr
│ ├── asan.exp.stderr
│ ├── asan.exp.stdout
│ ├── ls_ahotest.cpp
│ ├── ls_ahotest.h
│ ├── ls_base64test.cpp
│ ├── ls_buftest.cpp
│ ├── ls_confparsertest.cpp
│ ├── ls_dlinkqtest.cpp
│ ├── ls_hashtest.cpp
│ ├── ls_lfqueuetest.c
│ ├── ls_lfstacktest.cpp
│ ├── ls_linktest.cpp
│ ├── ls_llmqtest.c
│ ├── ls_locktest.cpp
│ ├── ls_loopbuftest.cpp
│ ├── ls_maptest.cpp
│ ├── ls_md5test.cpp
│ ├── ls_objarraytest.cpp
│ ├── ls_objpooltest.cpp
│ ├── ls_pcregtest.cpp
│ ├── ls_pooltest.cpp
│ ├── ls_ptrlisttest.cpp
│ ├── ls_sha1test.cpp
│ ├── ls_stacktest.cpp
│ ├── ls_strlisttest.cpp
│ ├── ls_strtest.cpp
│ ├── ls_strtooltest.cpp
│ ├── ls_strtooltest.h
│ ├── ls_thrsafetest.cpp
│ ├── ls_valgrindtest.c
│ ├── ls_xpooltest.cpp
│ ├── run_asantest.sh
│ ├── run_valgrindtest.sh
│ ├── timer.cpp
│ ├── valgrind.exp.stderr
│ └── valgrind.exp.stdout
├── lua
│ ├── lslua.cpp
│ ├── lsluatty.cpp
│ └── luatest.cpp
├── mthandler
│ ├── POSTtest.cpp
│ └── POSTtest2.cpp
├── serverroot
│ ├── bin
│ │ └── lshttpd.sh
│ ├── cert
│ │ ├── server.crt
│ │ ├── server.key
│ │ └── server.pem
│ ├── cgi-bin
│ │ ├── helloworld
│ │ ├── large
│ │ ├── nobody
│ │ ├── phpinfo.php
│ │ ├── printenv
│ │ └── testpost.pl
│ ├── conf
│ │ ├── httpd.conf
│ │ ├── httpd_config.xml
│ │ ├── m1
│ │ ├── m2
│ │ ├── mime.properties
│ │ └── myconfig.xml
│ ├── htpasswd
│ ├── logs
│ │ └── dummy
│ ├── vhost
│ │ ├── vh1
│ │ │ └── conf
│ │ │ │ └── vhconf.xml
│ │ └── vh3
│ │ │ └── conf
│ │ │ └── vhconf.xml
│ └── wwwroot
│ │ ├── cgipost.html
│ │ ├── cgipost1.html
│ │ ├── error404.html
│ │ ├── fcgipost.html
│ │ ├── hello.php
│ │ ├── htatest
│ │ ├── .htaccess
│ │ ├── test
│ │ │ ├── sub1
│ │ │ │ ├── .htaccess
│ │ │ │ └── index.html
│ │ │ └── sub2
│ │ │ │ └── index.html
│ │ └── test_htaccess
│ │ ├── index.html
│ │ ├── phpinfo.php
│ │ ├── phppost.html
│ │ ├── protected
│ │ └── index.html
│ │ ├── small.html
│ │ ├── temp.esi
│ │ ├── test.html
│ │ └── test
│ │ ├── index.html
│ │ ├── sub1
│ │ └── .htaccess
│ │ └── sub2
│ │ └── index.html
├── shm
│ ├── lsshmdebug.cpp
│ ├── lsshmdebug.h
│ ├── shmbaselrutest.cpp
│ ├── shmmemcachedtest.cpp
│ ├── shmtest.cpp
│ ├── shmxtest.cpp
│ ├── testshm.cpp
│ ├── testshmapi.cpp
│ ├── testshmhash.cpp
│ └── testshmreg.cpp
├── socket
│ ├── coresockettest.cpp
│ ├── coresockettest.h
│ ├── hostinfotest.cpp
│ ├── hostinfotest.h
│ ├── tcpsockettest.cpp
│ └── tcpsockettest.h
├── spdy
│ ├── dummiostream.cpp
│ ├── dummyiostream.h
│ ├── pushtest.cpp
│ ├── spdyconnectiontest.cpp
│ └── spdyzlibfiltertest.cpp
├── thread
│ ├── mtnotifiertest.cpp
│ ├── pthreadworkqueuetest.cpp
│ ├── threadtest.cpp
│ └── workcrewtest.cpp
├── unittest_main.cpp
└── util
│ ├── accesscontroltest.cpp
│ ├── accesscontroltest.h
│ ├── ahotest.cpp
│ ├── ahotest.h
│ ├── brotlibuftest.cpp
│ ├── dlinkqueuetest.cpp
│ ├── dlinkqueuetest.h
│ ├── filtermatchtest.cpp
│ ├── filtermatchtest.h
│ ├── ghashtest.cpp
│ ├── ghashtest.h
│ ├── gmaptest.cpp
│ ├── gmaptest.h
│ ├── gpathtest.cpp
│ ├── gpathtest.h
│ ├── gpointerlisttest.cpp
│ ├── gzipbuftest.cpp
│ ├── gzipbuftest.h
│ ├── httpfetchtest.cpp
│ ├── httpfetchtest.h
│ ├── linkedobjtest.cpp
│ ├── linkedobjtest.h
│ ├── logfiletest.cpp
│ ├── logfiletest.h
│ ├── loopbuftest.cpp
│ ├── loopbuftest.h
│ ├── objarraytest.cpp
│ ├── objpooltest.cpp
│ ├── partitioninfotest.cpp
│ ├── partitioninfotest.h
│ ├── pcregextest.cpp
│ ├── pcregextest.h
│ ├── poolalloctest.cpp
│ ├── poolalloctest.h
│ ├── radixtreetest.cpp
│ ├── stringmaptest.cpp
│ ├── stringmaptest.h
│ ├── stringtooltest.cpp
│ ├── stringtooltest.h
│ ├── vmembuftest.cpp
│ ├── vmembuftest.h
│ ├── xmlnodetest.cpp
│ └── xmlnodetest.h
├── thread_sanitizer_blacklist
└── thread_sanitizer_suppress
/.devcontainer/devcontainer.json:
--------------------------------------------------------------------------------
1 | {
2 | "image": "mcr.microsoft.com/devcontainers/universal:2",
3 | "features": {
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | # http://editorconfig.org
2 |
3 | # top-most EditorConfig file
4 | root = true
5 |
6 | # Unix-style newlines with a newline ending every file
7 | [*]
8 | end_of_line = lf
9 | insert_final_newline = true
10 |
11 | [*.{cpp,h}]
12 | charset = utf-8
13 | indent_style = space
14 | indent_size = 4
15 | tab_width = 4
16 | trim_trailing_whitespace = true
17 |
18 | [*.sh]
19 | indent_style = space
20 | indent_size = 4
21 |
22 | [*.php]
23 | indent_style = space
24 | indent_size = 4
25 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lsquic"]
2 | path = lsquic
3 | url = https://github.com/litespeedtech/lsquic.git
4 |
--------------------------------------------------------------------------------
/CMakeModules/common.cmake:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 | include_directories ("${PROJECT_SOURCE_DIR}/openssl/include" "${PROJECT_SOURCE_DIR}/src" "${PROJECT_BINARY_DIR}/src")
3 |
4 |
--------------------------------------------------------------------------------
/INSTALL:
--------------------------------------------------------------------------------
1 | About installation, please read below article
2 | https://openlitespeed.org/#install
--------------------------------------------------------------------------------
/LSQUICCOMMIT:
--------------------------------------------------------------------------------
1 | 7686d8fcef284cda07a951ad74a5e90c69a9dfb1
2 |
--------------------------------------------------------------------------------
/Makefile.am:
--------------------------------------------------------------------------------
1 |
2 | SUBDIRS = src
3 | AUTOMAKE_OPTIONS = foreign
4 |
5 | install-data-hook:
6 | ( cd dist; ./install.sh "$(DESTDIR)$(prefix)" "$(OPENLSWS_USER)" "$(OPENLSWS_GROUP)" "$(OPENLSWS_ADMIN)" "$(OPENLSWS_PASSWORD)" "$(OPENLSWS_EMAIL)" "$(OPENLSWS_ADMINSSL)" "$(OPENLSWS_ADMINPORT)" "$(USE_LSPHP7)" "$(DEFAULT_TMP_DIR)" "$(PID_FILE)" "$(OPENLSWS_EXAMPLEPORT)" "$(IS_LSCPD)" ;)
7 | ( rm -f $(DESTDIR)$(prefix)/modules/modinspector.la $(DESTDIR)$(prefix)/modules/modreqparser.la $(DESTDIR)$(prefix)/modules/uploadprogress.la $(DESTDIR)$(prefix)/modules/mod_lua.la )
8 |
9 | ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS}
10 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | OpenLiteSpeed Web Server
2 | ========
3 |
4 | Description
5 | --------
6 |
7 | OpenLiteSpeed is a high-performance, lightweight, open source HTTP server developed and copyrighted by
8 | LiteSpeed Technologies. Users are free to download, use, distribute, and modify OpenLiteSpeed and its
9 | source code in accordance with the precepts of the GPLv3 license.
10 |
11 | This is the official repository for OpenLiteSpeed's source code. It is maintained by LiteSpeed
12 | Technologies.
13 |
14 | Documentation
15 | --------
16 |
17 | Users can find all OpenLiteSpeed documentation on the [OpenLiteSpeed site](https://openlitespeed.org),
18 | but here are some quick links to important parts of the site:
19 |
20 | [Installation](https://openlitespeed.org/kb/category/installation/)
21 |
22 | [Configuration](https://openlitespeed.org/kb/category/configuration/)
23 |
24 | [Road map](https://openlitespeed.org/mediawiki/index.php/Road_Map)
25 |
26 | [Release log](https://openlitespeed.org/release-log/)
27 |
28 | Get in Touch
29 | --------
30 |
31 | OpenLiteSpeed has a [Google Group](https://groups.google.com/forum/#!forum/openlitespeed-development). If
32 | you find a bug, want to request new features, or just want to talk about OpenLiteSpeed, this is the place
33 | to do it.
34 |
--------------------------------------------------------------------------------
/addon/example/Makefile:
--------------------------------------------------------------------------------
1 | LSIAPIDIR = /home/ron/Documents/litespeedtech/openlitespeed
2 |
3 | CXX = clang++
4 | #CXX = g++-4.8
5 | CC = clang
6 | #CXXFLAGS = -std=c++11 -Wall -O0 -g
7 | #CXXFLAGS = -Wall -O0 -m32 -g -fno-inline -fno-omit-frame-pointer
8 |
9 | # TODO: CXXFLAGS = -I $(LSIAPIDIR)/include -Wall -g -O0 -fPIC
10 |
11 | #MY_CMAKE_TSAN_FLAG = -DUSE_THREADCHECK -DDYNAMIC_ANNOTATIONS_ENABLED -fsanitize=thread
12 | #MY_CMAKE_ASAN_FLAG = -fsanitize=address -fsanitize-recover=address -fno-omit-frame-pointer
13 |
14 | CXXFLAGS = $(MY_CMAKE_ASAN_FLAG) $(MY_CMAKE_TSAN_FLAG) -I $(LSIAPIDIR)/src -I $(LSIAPIDIR)/include -Wall -g -fPIC -D_REENTRANT -Werror=return-type -Wno-comment -Wmissing-field-initializers
15 |
16 | LDFLAGS = -lgd
17 |
18 |
19 | ifeq ($(UNAME_S),Darwin)
20 | CXXFLAGS += "-undefined dynamic_lookup"
21 | endif
22 |
23 | CFLAGS = $(CXXFLAGS)
24 |
25 | MODEXMPL_SRCS := $(wildcard *.c)
26 |
27 | MODEXMPL_OBJS = $(MODEXMPL_SRCS:.c=.o)
28 | MODEXMPL_SOS = $(MODEXMPL_SRCS:.c=.so)
29 |
30 | SRCS = $(MODEXMPL_SRCS);
31 | OBJS = $(MODEXMPL_OBJS);
32 | SOS = $(MODEXMPL_SOS);
33 |
34 | all: $(SOS)
35 |
36 |
37 | -include make.Autodepend
38 |
--------------------------------------------------------------------------------
/addon/example/README:
--------------------------------------------------------------------------------
1 | How to build the example module and use it.
2 |
3 | There are four steps:
4 |
5 | 1, You need to compile and build it. You can simply use the ccc.sh script to compile and build the module.
6 | For example:
7 | ./ccc.sh hellohandler.c
8 | Then you will get the module file hellohandler.so
9 |
10 | 2, Copy the module file to $LSWS-HOME/modules/
11 |
12 | 3, In the admin console, Configuration/Server/Modules/, add the newly created module and enable it; in the above example, the name is hellohandler.
13 |
14 | 4, Restart openlitespeed and it should be added.
15 |
--------------------------------------------------------------------------------
/ax_check_ip2location.m4:
--------------------------------------------------------------------------------
1 | #
2 | # AC_IP2LOCATION_CHECK
3 | #
4 | AC_DEFUN([AC_IP2LOCATION_CHECK],[
5 |
6 | if test "x$ip2location_dir" != "x"
7 | then
8 | IP2LOCATION_INCLUDES="$ip2location_dir"
9 | save_CFLAGS="$CFLAGS"
10 | CFLAGS="$CFLAGS -I$ip2location_dir"
11 | save_CPPFLAGS="$CPPFLAGS"
12 | CPPFLAGS="$CPPFLAGS -I$ip2location_dir"
13 | else
14 | save_CFLAGS="$CFLAGS"
15 | save_CPPFLAGS="$CPPFLAGS"
16 | fi
17 |
18 | AC_CHECK_HEADER(IP2Location.h,,
19 | [
20 | if test "x$ip2location_dir" != "x"
21 | then
22 | AC_MSG_ERROR([IP2Location header not found in directory specified in --with-ip2loc])
23 | else
24 | if test "x$need_ip2location" = "xyes"
25 | then
26 | AC_MSG_ERROR(Header file IP2Location.h not found.)
27 | else
28 | need_ip2location=no
29 | fi
30 | fi
31 | ])
32 |
33 | if test "x$need_ip2location" != "xno"
34 | then
35 | IP2LOCATION_LIBS="-lIP2Location"
36 | CFLAGS="$save_CFLAGS"
37 | CPPFLAGS="$save_CPPFLAGS"
38 | AC_SUBST(IP2LOCATION_INCLUDES)
39 | AC_SUBST([IP2LOCATION_LIBS])
40 |
41 | fi
42 | ])
43 |
--------------------------------------------------------------------------------
/ax_check_liblua.m4:
--------------------------------------------------------------------------------
1 | #
2 | # AC_LIBLUA_CHECK
3 | #
4 | AC_DEFUN([AC_LIBLUA_CHECK],[
5 |
6 | if test "x$lua_dir" != "x"
7 | then
8 | LUA_INCLUDES="$lua_dir"
9 | save_CFLAGS="$CFLAGS"
10 | CFLAGS="$CFLAGS -I$lua_dir"
11 | save_CPPFLAGS="$CPPFLAGS"
12 | CPPFLAGS="$CPPFLAGS -I$lua_dir"
13 | else
14 | save_CFLAGS="$CFLAGS"
15 | save_CPPFLAGS="$CPPFLAGS"
16 | fi
17 |
18 | AC_CHECK_HEADERS(lua.h lualib.h lauxlib.h,,
19 | [
20 | if test "x$lua_dir" != "x"
21 | then
22 | AC_MSG_ERROR([liblua header not found in directory specified in --with-lua])
23 | else
24 | if test "x$need_lua" = "xyes"
25 | then
26 | AC_MSG_ERROR(Header file lua.h not found.)
27 | else
28 | need_lua=no
29 | fi
30 | fi
31 | ])
32 |
33 | if test "x$need_lua" != "xno"
34 | then
35 | CFLAGS="$save_CFLAGS"
36 | CPPFLAGS="$save_CPPFLAGS"
37 | AC_SUBST(LUA_INCLUDES)
38 | fi
39 | ])
--------------------------------------------------------------------------------
/dist/Example/cgi-bin/helloworld:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | date=`date -u '+%a, %d %b %Y %H:%M:%S %Z'`
4 |
5 | cat << EOF
6 | Content-type: text/plain
7 | Expires: $date
8 |
9 | Hello World
10 |
11 | EOF
12 |
13 |
--------------------------------------------------------------------------------
/dist/Example/html/.htaccess:
--------------------------------------------------------------------------------
1 | # .htaccess
2 |
--------------------------------------------------------------------------------
/dist/Example/html/blocked/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Blocked page
7 |
8 |
9 |
10 |
11 |
You should not be able to see this page unlesss remove the "/blocked/" context.
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/dist/Example/html/error404.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Page Not Found
4 |
5 |
6 |
7 | Request Page Not Found
8 | This is a customized error page for missing pages.
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/dist/Example/html/img/404-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/404-icon.png
--------------------------------------------------------------------------------
/dist/Example/html/img/blocked_content-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/blocked_content-icon.png
--------------------------------------------------------------------------------
/dist/Example/html/img/cgi-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/cgi-icon.png
--------------------------------------------------------------------------------
/dist/Example/html/img/file_upload-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/file_upload-icon.png
--------------------------------------------------------------------------------
/dist/Example/html/img/olsws_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/olsws_logo.png
--------------------------------------------------------------------------------
/dist/Example/html/img/php-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/php-icon.png
--------------------------------------------------------------------------------
/dist/Example/html/img/powered_by_ols-new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/powered_by_ols-new.png
--------------------------------------------------------------------------------
/dist/Example/html/img/pwd_protect-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/Example/html/img/pwd_protect-icon.png
--------------------------------------------------------------------------------
/dist/Example/html/phpinfo.php:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/dist/Example/html/protected/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Protected page
7 |
8 |
9 |
10 |
11 |
Congratulation! You gave the right user name and password.
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/dist/VERSION:
--------------------------------------------------------------------------------
1 | 1.8.3
2 |
--------------------------------------------------------------------------------
/dist/add-ons/snmp_monitoring/README:
--------------------------------------------------------------------------------
1 | LiteSpeed SNMPD Bridge + Cacti Templates
2 | ----------------------------------------
3 |
4 | For the most up-to-date installation documentation, please refer to our online "SNMP Monitoring" wiki:
5 |
6 | http://www.litespeedtech.com/support/wiki/doku.php?id=litespeed_wiki:snmp_cacti_monitoring
7 |
8 | Release Log:
9 | -----------
10 | 1.0 08-23-2006
11 |
12 |
13 |
--------------------------------------------------------------------------------
/dist/add-ons/snmp_monitoring/sample.php:
--------------------------------------------------------------------------------
1 | 1 only valid LiteSpeed Enterprise (num of cpus licensed)
15 | $report_path = "/tmp/lshttpd/"; //<-- path to .rtreport folder. Default is /tmp/lshttpd/
16 |
17 | $cache_time = 0; //<-- seconds to cache parsed data
18 | $cache_file = "/tmp/_lsws_sampe_cache.txt"; //<-- cache file..full path.
19 |
20 |
21 | //get params from snmpd pass mechanism
22 | if(array_key_exists(1,$_SERVER["argv"]) && array_key_exists(2,$_SERVER["argv"])) {
23 | $type = trim($_SERVER["argv"][1]);
24 | $oid = trim($_SERVER["argv"][2]);
25 |
26 | $bridge = new litespeed_snmp_bridge($processes, $report_path, $cache_time, $cache_file);
27 | $bridge->process($type, $oid);
28 |
29 | }
30 |
31 | ?>
32 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/VERSION:
--------------------------------------------------------------------------------
1 | 1.17.2
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/autoloader.php:
--------------------------------------------------------------------------------
1 | scanDepth = 2;
30 | $this->batchTimeout = 0;
31 | $this->batchSize = 0;
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/Context/RootPanelContextOption.php:
--------------------------------------------------------------------------------
1 | scanDepth = 2;
33 | $this->batchTimeout = 60;
34 | $this->batchSize = 10;
35 |
36 | $sharedTplDir = realpath(__DIR__ . '/../View/Tpl');
37 |
38 | if ( !is_string($sharedTplDir) ) {
39 | $sharedTplDir = '/usr/local/lsws/add-ons/webcachemgr/src/View/Tpl';
40 | }
41 |
42 | $this->sharedTplDir = $sharedTplDir;
43 | }
44 |
45 | }
46 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/Context/UserCLIContextOption.php:
--------------------------------------------------------------------------------
1 | expectedPermissions = self::IS_NOT_ROOT;
34 | $this->scanDepth = 2;
35 | $this->batchTimeout = 0;
36 | $this->batchSize = 0;
37 | $this->logFile = '';
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/LSCMException.php:
--------------------------------------------------------------------------------
1 | runAsUser() return status.
30 | */
31 | const E_NON_FATAL = 103;
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/Panel/CustomPanelBase.php:
--------------------------------------------------------------------------------
1 | getSharedTplDir() . '/CacheRootNotSet.tpl';
34 | }
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/View/Model/MissingTplViewModel.php:
--------------------------------------------------------------------------------
1 | init($msg);
30 | }
31 |
32 | private function init( $msg )
33 | {
34 | $this->tplData[self::FLD_MSG] = $msg;
35 | }
36 |
37 | /**
38 | *
39 | * @param string $field
40 | * @return null|string
41 | */
42 | public function getTplData( $field )
43 | {
44 | if ( !isset($this->tplData[$field]) ) {
45 | return null;
46 | }
47 |
48 | return $this->tplData[$field];
49 | }
50 |
51 | public function getTpl()
52 | {
53 | return Context::getOption()->getSharedTplDir() . '/MissingTpl.tpl';
54 | }
55 |
56 | }
57 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/View/Tpl/Ajax/CacheMgrFlagCol.tpl:
--------------------------------------------------------------------------------
1 | viewModel->getTplData(ViewModel::FLD_LIST_DATA);
6 |
7 | $classes = 'icon-btn';
8 |
9 | foreach ( $listData as $path => $info ):
10 | $flagData = $info['flagData'];
11 |
12 | ?>
13 |
14 |
17 |
25 | |
26 |
27 | viewModel->getTplData(ViewModel::FLD_LIST_DATA);
6 |
7 | foreach ( $listData as $path => $info ):
8 | $statusData = $info['statusData'];
9 |
10 | ?>
11 |
12 |
14 |
15 |
17 |
18 | |
19 |
20 |
10 |
11 |
54 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/View/Tpl/CacheRootNotSet.tpl:
--------------------------------------------------------------------------------
1 | 'Cache Root Not Set',
5 | );
6 | $this->loadTplBlock('Title.tpl', $d);
7 |
8 | ?>
9 |
10 |
11 |
12 | Server and/or Virtual Host cache root has not yet been set. Please go to
13 | Cache Root Setup
14 | and set these first.
15 |
16 |
17 |
18 | 'Back'
22 | );
23 | $this->loadTplBlock('ButtonPanelBackNext.tpl', $d);
24 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/View/Tpl/DataFileMsg.tpl:
--------------------------------------------------------------------------------
1 | viewModel->getTplData(ViewModel::FLD_TITLE);
6 | $discover = $this->viewModel->getTplData(ViewModel::FLD_DISCOVER);
7 |
8 | $d = array(
9 | 'title' => $title
10 | );
11 | $this->loadTplBlock('Title.tpl', $d);
12 |
13 | ?>
14 |
15 |
25 |
26 | 'Back'
30 | );
31 | $this->loadTplBlock('ButtonPanelBackNext.tpl', $d);
32 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/View/Tpl/MissingTpl.tpl:
--------------------------------------------------------------------------------
1 | viewModel->getTplData(ViewModel::FLD_MSG);
6 |
7 | ?>
8 |
9 |
14 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/View/Tpl/RefreshStatusProgress.tpl:
--------------------------------------------------------------------------------
1 | viewModel->getTplData(ViewModel::FLD_ICON);
6 | $installCount = $this->viewModel->getTplData(ViewModel::FLD_INSTALLS_COUNT);
7 |
8 | $d = array(
9 | 'title' => 'Refreshing Status of WordPress Installations...',
10 | 'icon' => $icon
11 | );
12 | $this->loadTplBlock('Title.tpl', $d);
13 |
14 | ?>
15 |
16 |
17 | Refreshing Status for 0 out of
18 | ...
19 |
20 |
21 | 'Back',
25 | 'backDo' => 'lscwp_manage',
26 | 'visibility' => 'hidden'
27 | );
28 | $this->loadTplBlock('ButtonPanelBackNext.tpl', $d);
29 |
30 | ?>
31 |
32 |
35 |
36 |
37 | 'errMsgs',
41 | 'class' => 'scrollable',
42 | );
43 | $this->loadTplBlock('DivMsgBox.tpl', $d);
44 |
45 | ?>
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/WpWrapper/WpConstants.php:
--------------------------------------------------------------------------------
1 | wpQuery = new \WP_Query($query);
41 | }
42 |
43 | /**
44 | *
45 | * @since 1.17
46 | *
47 | * @return \WP_Query
48 | *
49 | * @noinspection PhpUndefinedClassInspection
50 | */
51 | public function getWpWpQueryObject()
52 | {
53 | return $this->wpQuery;
54 | }
55 | }
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/WpWrapper/WpTextdomainRegistry.php:
--------------------------------------------------------------------------------
1 | wpTextdomainRegistry = new \WP_Textdomain_Registry();
38 | }
39 |
40 | /**
41 | *
42 | * @since 1.17
43 | *
44 | * @return \WP_Textdomain_Registry
45 | *
46 | * @noinspection PhpUndefinedClassInspection
47 | */
48 | public function getWpWpTextdomainRegistryObject()
49 | {
50 | return $this->wpTextdomainRegistry;
51 | }
52 | }
--------------------------------------------------------------------------------
/dist/add-ons/webcachemgr/src/WpWrapper/Wpdb.php:
--------------------------------------------------------------------------------
1 | blogs;
38 | }
39 |
40 | /**
41 | * https://developer.wordpress.org/reference/classes/wpdb/get_col/
42 | *
43 | * @since 1.17
44 | *
45 | * @global \wpdb $wpdb
46 | *
47 | * @param string|null $query
48 | * @param int $x
49 | *
50 | * @return array
51 | *
52 | * @noinspection PhpUndefinedClassInspection
53 | */
54 | public static function getCol( $query = null, $x = 0 )
55 | {
56 | global $wpdb;
57 |
58 | return $wpdb->get_col($query, $x);
59 | }
60 | }
--------------------------------------------------------------------------------
/dist/admin/conf/admin_config.conf.in:
--------------------------------------------------------------------------------
1 | enableCoreDump 1
2 | sessionTimeout 3600
3 |
4 | errorlog $SERVER_ROOT/admin/logs/error.log {
5 | useServer 0
6 | logLevel INFO
7 | rollingSize 10M
8 | }
9 |
10 | accessLog $SERVER_ROOT/admin/logs/access.log {
11 | useServer 0
12 | rollingSize 10M
13 | keepDays 90
14 | logReferer 1
15 | logUserAgent 1
16 | }
17 |
18 | accessControl {
19 | allow ALL
20 | }
21 |
22 | listener adminListener {
23 | address *:%ADMIN_PORT%
24 | secure 0
25 | }
26 |
--------------------------------------------------------------------------------
/dist/admin/conf/admin_config_ssl.conf.in:
--------------------------------------------------------------------------------
1 | enableCoreDump 1
2 | sessionTimeout 3600
3 |
4 | errorlog $SERVER_ROOT/admin/logs/error.log {
5 | useServer 0
6 | logLevel INFO
7 | rollingSize 10M
8 | }
9 |
10 | accessLog $SERVER_ROOT/admin/logs/access.log {
11 | useServer 0
12 | rollingSize 10M
13 | keepDays 90
14 | logReferer 1
15 | logUserAgent 1
16 | }
17 |
18 | accessControl {
19 | allow ALL
20 | }
21 |
22 | listener adminListener{
23 | address *:%ADMIN_PORT%
24 | secure 1
25 | keyFile $SERVER_ROOT/admin/conf/%SSL_HOSTNAME%.key
26 | certFile $SERVER_ROOT/admin/conf/%SSL_HOSTNAME%.crt
27 | clientVerify 0
28 | }
29 |
--------------------------------------------------------------------------------
/dist/admin/html.open/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/favicon.ico
--------------------------------------------------------------------------------
/dist/admin/html.open/lib/ows/DAttr.php:
--------------------------------------------------------------------------------
1 | cyberpanelBlocked) {
10 | if (PathTool::IsCyberPanel()) {
11 | return 'Locked due to CyberPanel';
12 | }
13 | }
14 |
15 | // no other block
16 | return false;
17 | }
18 |
19 | public function bypassSavePost()
20 | {
21 | return ($this->IsFlagOn(DAttr::BM_NOEDIT));
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/dist/admin/html.open/lib/ows/Service.php:
--------------------------------------------------------------------------------
1 | print_conf_page($disp, $page);
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/dist/admin/html.open/lib/util/build_php/build_common.template:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | ###########################################
4 | EXTRA_PATH_ENV="__extra_path_env__"
5 | PROGRESS_F=__progress_f__
6 | PHP_VERSION=__php_version__
7 | PHP_BUILD_DIR=__php_build_dir__
8 | ###########################################
9 |
10 | PATH=${EXTRA_PATH_ENV}$PATH
11 |
12 | check_errs()
13 | {
14 | if [ "${1}" -ne "0" ] ; then
15 | echo "**ERROR** ${2}"
16 | echo "**ERROR** ${2}" >> ${PROGRESS_F}
17 | exit ${1}
18 | fi
19 | }
20 |
21 | main_msg()
22 | {
23 | # write to both stdout and progress
24 | echo "${1}"
25 | echo "${1}" >> ${PROGRESS_F}
26 | }
27 |
28 | # clear out
29 | echo "**MAIN_STATUS** retrieved from ${PROGRESS_F}" > ${PROGRESS_F}
30 |
31 |
--------------------------------------------------------------------------------
/dist/admin/html.open/lib/util/build_php/build_manual_run.template:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | ###########################################
4 | # Please manually run this script after preparation finished successfully.
5 | # You can monitor the log output from web console.
6 | # You need to run as root or with root privilege in order to install into system directory.
7 | ###########################################
8 |
9 | INSTALL_SCRIPT=__install_script__
10 | LOG_FILE=__log_file__
11 | PHP_VERSION=__php_version__
12 | PHP_BUILD_DIR=__php_build_dir__
13 | PHP_USR=__php_usr__
14 | PHP_USRGROUP=__php_usrgroup__
15 |
16 |
17 | echo "Manually running installation script: ${INSTALL_SCRIPT}"
18 | echo "Running at background with command:"
19 | echo "${INSTALL_SCRIPT} 1> ${LOG_FILE} 2>&1"
20 |
21 | ${INSTALL_SCRIPT} 1> ${LOG_FILE} 2>&1
22 |
23 | INST_USER=`id`
24 | INST_USER=`expr "${INST_USER}" : 'uid=.*(\(.*\)) gid=.*'`
25 |
26 | if [ "x${INST_USER}" = "xroot" ]; then
27 | echo "chown -R ${PHP_USR}:${PHP_USRGROUP} ${PHP_BUILD_DIR}/php-${PHP_VERSION}"
28 | chown -R ${PHP_USR}:${PHP_USRGROUP} ${PHP_BUILD_DIR}/php-${PHP_VERSION}
29 | fi
30 |
31 | if [ -f "/etc/cagefs/cagefs.mp" ] ; then
32 | # cagefs installed first, need update mount point
33 | cagefsctl --update
34 | fi
35 |
--------------------------------------------------------------------------------
/dist/admin/html.open/res/css/lockscreen.min.css:
--------------------------------------------------------------------------------
1 | .lockscreen{height:250px;left:50%;margin-left:-239px;margin-top:-185px;position:absolute;top:50%;width:478px}.lockscreen .logo{padding:15px 0;display:block}.lockscreen .logo+div{background:#FFF;box-shadow:-31px 32px 53px rgba(0,0,0,.2);overflow:hidden;padding:13px;position:relative}.lockscreen .logo>:first-child{margin:0}.lockscreen .logo img{width:29px;margin-top:-4px;margin-right:-2px}.lockscreen .logo+div>img{float:left}.lockscreen .logo+div>img+div{float:right;width:318px}.lockscreen .logo+div>img+div>:first-child{margin-top:0}.lockscreen .logo+div>img+div>:first-child>:first-child{opacity:.1;padding:15px}.lockscreen .logo+div>img+div>:first-child>small{display:block;padding-top:5px}.lockscreen .logo+div>img+div>:first-child+p{margin-bottom:12px}@media (max-width:767px){.lockscreen .logo+div>img{float:none!important}.lockscreen{height:auto;left:5%;margin-left:0;margin-top:0;position:absolute;top:0;width:90%;text-align:center}.lockscreen .logo+div>img+div{float:none;width:100%;height:auto}}
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-300.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-300.woff
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-300.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-300.woff2
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-700.woff
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-700.woff2
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-700italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-700italic.woff
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-700italic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-700italic.woff2
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-italic.woff
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-italic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-italic.woff2
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-regular.woff
--------------------------------------------------------------------------------
/dist/admin/html.open/res/fonts/open-sans-v17-latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/fonts/open-sans-v17-latin-regular.woff2
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/ajax-loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/ajax-loader.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/alpha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/alpha.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/blank.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/blank.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/clear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/clear.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/favicon/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/favicon/favicon.ico
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/hue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/hue.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/adminconfig.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/adminconfig.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/administrator.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/administrator.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/application.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/application.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/cgi.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/cgi.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/controlpanel.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/controlpanel.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/database.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/database.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/debug.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/debug.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/down.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/down.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/edit.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/edit.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/fast_cgi.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/fast_cgi.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/favicon.ico
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/file.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/file.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/filter.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/filter.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/form.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/form.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/graph.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/graph.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/help.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/info.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/info.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/link.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/link.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/load_balancer.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/load_balancer.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/lock.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/lock.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/ls_sapi.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/ls_sapi.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/module.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/module.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/module_handler.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/module_handler.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/network.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/network.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/play.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/play.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/record.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/record.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/redirect.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/redirect.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/refresh.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/refresh.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/report.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/report.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/script.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/script.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/search.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/search.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/serverconfig.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/serverconfig.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/servlet_engine.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/servlet_engine.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/shield.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/shield.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/stop.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/stop.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/trash.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/trash.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/up.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/up.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/web.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/web.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/web_link.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/web_link.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/icons/web_server.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/icons/web_server.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/loading.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/lsws_bolt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/lsws_bolt.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/lsws_bolt.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
15 |
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/mappin-default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/mappin-default.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/minus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/minus.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/mybg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/mybg.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/plus.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/product_logo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/product_logo.gif
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/ribbon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/ribbon.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/sa-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/sa-dark.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/sa-default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/sa-default.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/sort_asc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/sort_asc.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/sort_asc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/sort_asc_disabled.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/sort_both.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/sort_both.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/sort_desc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/sort_desc.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/sort_desc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/sort_desc_disabled.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/img/vt-menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/img/vt-menu.png
--------------------------------------------------------------------------------
/dist/admin/html.open/res/js/app.config.min.js:
--------------------------------------------------------------------------------
1 | $.navAsAjax=true;$.sound_path="sound/";$.sound_on=false;var throttle_delay=350,menu_speed=235,ignore_key_elms=["#header, #left-panel, #main, div.page-footer, #shortcut, #divSmallBoxes, #divMiniIcons, #divbigBoxes, script"];
--------------------------------------------------------------------------------
/dist/admin/html.open/res/js/plugin/datatables/swf/copy_csv_xls.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/js/plugin/datatables/swf/copy_csv_xls.swf
--------------------------------------------------------------------------------
/dist/admin/html.open/res/js/plugin/datatables/swf/copy_csv_xls_pdf.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/admin/html.open/res/js/plugin/datatables/swf/copy_csv_xls_pdf.swf
--------------------------------------------------------------------------------
/dist/admin/html.open/res/js/plugin/flot/jquery.flot.fillbetween.min.js:
--------------------------------------------------------------------------------
1 | /*! SmartAdmin - v1.4.1 - 2014-06-22 */!function(a){function b(a){function b(a,b){var c;for(c=0;cc||c>=b.length?null:b[c]):null}function c(a,c,d){if(null!=c.fillBetween){var e=b(c,a.getData());if(e){for(var f,g,h,i,j,k,l,n=d.pointsize,o=d.points,p=e.datapoints.pointsize,q=e.datapoints.points,r=[],s=c.lines.show,t=n>2&&d.format[2].y,u=s&&c.lines.steps,v=!0,w=0,x=0;;){if(w>=o.length)break;if(l=r.length,null==o[w]){for(m=0;n>m;++m)r.push(o[w+m]);w+=n}else if(x>=q.length){if(!s)for(m=0;n>m;++m)r.push(o[w+m]);w+=n}else if(null==q[x]){for(m=0;n>m;++m)r.push(null);v=!0,x+=p}else{if(f=o[w],g=o[w+1],i=q[x],j=q[x+1],k=0,f==i){for(m=0;n>m;++m)r.push(o[w+m]);k=j,w+=n,x+=p}else if(f>i){if(s&&w>0&&null!=o[w-n]){for(h=g+(o[w-n+1]-g)*(i-f)/(o[w-n]-f),r.push(i),r.push(h),m=2;n>m;++m)r.push(o[w+m]);k=j}x+=p}else{if(v&&s){w+=n;continue}for(m=0;n>m;++m)r.push(o[w+m]);s&&x>0&&null!=q[x-p]&&(k=j+(q[x-p+1]-j)*(f-i)/(q[x-p]-i)),w+=n}v=!1,l!=r.length&&t&&(r[l+2]=k)}if(u&&l!=r.length&&l>0&&null!=r[l]&&r[l]!=r[l-n]&&r[l+1]!=r[l-n+1]){for(m=0;n>m;++m)r[l+n+m]=r[l+m];r[l+1]=r[l-n+1]}}d.points=r}}}a.hooks.processDatapoints.push(c)}var c={series:{fillBetween:null}};a.plot.plugins.push({init:b,options:c,name:"fillbetween",version:"1.0"})}(jQuery);
--------------------------------------------------------------------------------
/dist/admin/html.open/res/js/plugin/flot/jquery.flot.resize.min.js:
--------------------------------------------------------------------------------
1 | /*! SmartAdmin - v1.4.1 - 2014-06-22 */!function(a,b,c){function d(){e=b[h](function(){f.each(function(){var b=a(this),c=b.width(),d=b.height(),e=a.data(this,j);(c!==e.w||d!==e.h)&&b.trigger(i,[e.w=c,e.h=d])}),d()},g[k])}var e,f=a([]),g=a.resize=a.extend(a.resize,{}),h="setTimeout",i="resize",j=i+"-special-event",k="delay",l="throttleWindow";g[k]=250,g[l]=!0,a.event.special[i]={setup:function(){if(!g[l]&&this[h])return!1;var b=a(this);f=f.add(b),a.data(this,j,{w:b.width(),h:b.height()}),1===f.length&&d()},teardown:function(){if(!g[l]&&this[h])return!1;var b=a(this);f=f.not(b),b.removeData(j),f.length||clearTimeout(e)},add:function(b){function d(b,d,f){var g=a(this),h=a.data(this,j);h.w=d!==c?d:g.width(),h.h=f!==c?f:g.height(),e.apply(this,arguments)}if(!g[l]&&this[h])return!1;var e;return a.isFunction(b)?(e=b,d):(e=b.handler,void(b.handler=d))}}}(jQuery,this),function(a){function b(a){function b(){var b=a.getPlaceholder();0!=b.width()&&0!=b.height()&&(a.resize(),a.setupGrid(),a.draw())}function c(a){a.getPlaceholder().resize(b)}function d(a){a.getPlaceholder().unbind("resize",b)}a.hooks.bindEvents.push(c),a.hooks.shutdown.push(d)}var c={};a.plot.plugins.push({init:b,options:c,name:"resize",version:"1.0"})}(jQuery);
--------------------------------------------------------------------------------
/dist/admin/html.open/res/lang/util_sortlang.php:
--------------------------------------------------------------------------------
1 |
11 |
12 |
47 |
--------------------------------------------------------------------------------
/dist/admin/html.open/view/inc/auth.php:
--------------------------------------------------------------------------------
1 |
23 |
--------------------------------------------------------------------------------
/dist/admin/misc/convertxml.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | CUR_DIR=`dirname "$0"`
4 | cd $CUR_DIR
5 | CUR_DIR=`pwd`
6 |
7 | echo "Coverting XML fortmat configuration files to plain text configuration files."
8 |
9 | if [ "x$1" = "x" ] ; then
10 | echo Need server_root as parameter, such as /usr/local/lsws
11 | echo Usage: $0 Server_Root
12 | echo .
13 | exit 1
14 | fi
15 |
16 | SERVER_ROOT=$1
17 | echo "Server_root is $SERVER_ROOT, converting ..."
18 |
19 | #The below command will convert XML to conf, if the second parameter is 2xml,
20 | #such as
21 | # php convertxml.php $SERVER_ROOT 2xml
22 | #then it will cpnvert conf to xml
23 | $SERVER_ROOT/admin/fcgi-bin/admin_php convertxml.php $SERVER_ROOT $SERVER_ROOT/backup/recover_xml.sh
24 |
25 | echo "Converting finished."
26 |
27 |
--------------------------------------------------------------------------------
/dist/admin/misc/create_admin_keypair.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | CUR_DIR=`dirname "$0"`
4 | cd $CUR_DIR
5 | CUR_DIR=`pwd`
6 |
7 | echo "Generating key pair for web console login page, please wait ..."
8 | openssl genrsa -out key.pem 512
9 |
10 | if [ "$?" -eq "0" ] ; then
11 | ../fcgi-bin/admin_php -q genjCryptionKeyPair.php key.pem
12 | rm -f key.pem
13 | else
14 | ../fcgi-bin/admin_php -q genjCryptionKeyPair.php
15 | fi
16 |
17 |
18 |
--------------------------------------------------------------------------------
/dist/admin/misc/gdb-bt:
--------------------------------------------------------------------------------
1 | bt full
2 | info registers
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/dist/admin/misc/gzipStatic.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | LEVEL=$1
3 | FN=$2
4 | FN_GZ="$FN.lsz"
5 | FN_GZL="$FN.lszl"
6 | FN_GZT="$FN.lszt"
7 |
8 | if [ -f $FN_GZL ] || [ -f $FN_GZT ] || [ -f $FN_GZ ]; then
9 | exit 0
10 | fi
11 |
12 | touch $FN_GZL
13 | gzip -c -$LEVEL $FN > $FN_GZT
14 |
15 | if [ $? -eq 0 ]; then
16 | mv $FN_GZT $FN_GZ
17 | else
18 | rm $FN_GZT
19 | fi
20 | rm $FN_GZL
21 | exit 0
--------------------------------------------------------------------------------
/dist/admin/misc/htpasswd.php:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/admin/misc/lshttpd.service.in:
--------------------------------------------------------------------------------
1 | # should be added as /usr/lib/systemd/system/lshttpd.service
2 | [Unit]
3 | Description=OpenLiteSpeed HTTP Server
4 | After=network-online.target remote-fs.target nss-lookup.target
5 | Wants=network-online.target
6 |
7 | [Service]
8 | Type=forking
9 | PIDFile=/var/run/openlitespeed.pid
10 | ExecStart=%LSWS_CTRL% start
11 | ExecReload=%LSWS_CTRL% restart
12 | ExecStop=%LSWS_CTRL% delay-stop
13 |
14 | KillMode=none
15 | PrivateTmp=false
16 | Restart=on-failure
17 | RestartSec=5
18 |
19 | # do not want to be limited in anyway
20 | CPUAccounting=false
21 | TasksAccounting=false
22 | MemoryAccounting=false
23 |
24 | [Install]
25 | WantedBy=multi-user.target
26 | #Alias=lsws.service
27 | Alias=openlitespeed.service
28 |
--------------------------------------------------------------------------------
/dist/admin/misc/lsws.rc.gentoo.in:
--------------------------------------------------------------------------------
1 | #!/sbin/runscript
2 |
3 | depend()
4 | {
5 | need net
6 | use mysql dns netmount postgres
7 | after sshd
8 | }
9 |
10 | start()
11 | {
12 | ebegin "Starting LiteSpeed Web Server"
13 | "%LSWS_CTRL%" start 2>/dev/null 1>&2
14 | eend $?
15 | }
16 |
17 | stop()
18 | {
19 | ebegin "Stopping LiteSped Web Server"
20 | "%LSWS_CTRL%" delay-stop 2>/dev/null 1>&2
21 | eend $?
22 | }
23 |
24 | restart()
25 | {
26 | ebegin "Restarting LiteSpeed Web Server"
27 | "%LSWS_CTRL%" restart 2>/dev/null 1>&2
28 | eend $?
29 | }
30 |
--------------------------------------------------------------------------------
/dist/admin/misc/testbeta.sh:
--------------------------------------------------------------------------------
1 | lsup.sh
--------------------------------------------------------------------------------
/dist/adminssl.conf:
--------------------------------------------------------------------------------
1 | SSL_COUNTRY=US
2 | SSL_STATE=NJ
3 | SSL_LOCALITY=Virtual
4 | SSL_ORG=LiteSpeedCommunity
5 | SSL_ORGUNIT=Testing
6 | SSL_HOSTNAME=webadmin
7 | SSL_EMAIL=.
8 |
--------------------------------------------------------------------------------
/dist/conf/vhosts/Example/htgroup:
--------------------------------------------------------------------------------
1 | group1: user1,user2, user3
2 | group2:
3 | user: user8, test
4 | group3:
5 |
--------------------------------------------------------------------------------
/dist/conf/vhosts/Example/htpasswd:
--------------------------------------------------------------------------------
1 | test:kF2EDBE2Ux8sQ
2 | user1:SQtevcsBBnBPY
3 |
--------------------------------------------------------------------------------
/dist/docs/img/attention.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
16 |
--------------------------------------------------------------------------------
/dist/docs/img/info.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
17 |
--------------------------------------------------------------------------------
/dist/docs/img/lightning-bolt.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
13 |
--------------------------------------------------------------------------------
/dist/lsns/conf/lscntr.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/lsns/conf/lscntr.txt
--------------------------------------------------------------------------------
/dist/lsns/logs/.gitignore:
--------------------------------------------------------------------------------
1 | # Ignore everything in this directory
2 | *
3 | # Except this file
4 | !.gitignore
5 |
--------------------------------------------------------------------------------
/dist/lsrecaptcha/_recaptcha:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/dist/lsrecaptcha/_recaptcha
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/icons/corner-left-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/icons/file-text.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/icons/file.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/icons/folder-fill.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/icons/image.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/icons/music.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/icons/video.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
--------------------------------------------------------------------------------
/dist/share/autoindex/assets/js/tablesort.number.js:
--------------------------------------------------------------------------------
1 | (function(){
2 | var cleanNumber = function(i) {
3 | return i.replace(/[^\-?0-9.]/g, '');
4 | },
5 |
6 | compareNumber = function(a, b) {
7 | a = parseFloat(a);
8 | b = parseFloat(b);
9 |
10 | a = isNaN(a) ? 0 : a;
11 | b = isNaN(b) ? 0 : b;
12 |
13 | return a - b;
14 | };
15 |
16 | Tablesort.extend('number', function(item) {
17 | return item.match(/^[-+]?[£\x24Û¢´€]?\d+\s*([,\.]\d{0,2})/) || // Prefixed currency
18 | item.match(/^[-+]?\d+\s*([,\.]\d{0,2})?[£\x24Û¢´€]/) || // Suffixed currency
19 | item.match(/^[-+]?(\d)*-?([,\.]){0,1}-?(\d)+([E,e][\-+][\d]+)?%?$/); // Number
20 | }, function(a, b) {
21 | a = cleanNumber(a);
22 | b = cleanNumber(b);
23 |
24 | return compareNumber(b, a);
25 | });
26 | }());
27 |
--------------------------------------------------------------------------------
/dist/share/autoindex/default.php:
--------------------------------------------------------------------------------
1 | printPage();
8 |
9 |
10 |
--------------------------------------------------------------------------------
/dist/share/autoindex/default_nojs.php:
--------------------------------------------------------------------------------
1 | printPage();
8 |
9 |
--------------------------------------------------------------------------------
/dist/share/autoindex/default_withjs.php:
--------------------------------------------------------------------------------
1 | printPage();
8 |
9 |
10 |
--------------------------------------------------------------------------------
/dist/share/autoindex/icons/corner-left-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
--------------------------------------------------------------------------------
/dist/share/autoindex/icons/file-text.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
--------------------------------------------------------------------------------
/dist/share/autoindex/icons/file.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
--------------------------------------------------------------------------------
/dist/share/autoindex/icons/folder-fill.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
--------------------------------------------------------------------------------
/dist/share/autoindex/icons/image.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
--------------------------------------------------------------------------------
/dist/share/autoindex/icons/music.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
--------------------------------------------------------------------------------
/dist/share/autoindex/icons/video.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
--------------------------------------------------------------------------------
/dlbrotli.sh:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 | cd `dirname "$0"`
4 | echo "Checking libbrotli ..."
5 |
6 | DLCMD=
7 | source dist/functions.sh 2>/dev/null
8 | if [ $? != 0 ] ; then
9 | . dist/functions.sh
10 | if [ $? != 0 ] ; then
11 | echo [ERROR] Can not include 'functions.sh'.
12 | exit 1
13 | fi
14 | fi
15 |
16 |
17 |
18 | if [ ! -f brotli-master/out/libbrotlidec-static.a ] ; then
19 |
20 | detectdlcmd
21 | echo -e "\033[38;5;148mDownloading libbrotli latest version and building, it will take several minutes ...\033[39m"
22 |
23 | which cmake
24 | if [ $? != 0 ] ; then
25 | echo -e "\033[38;5;148mError: can not find cmake, you need to install cmake to continue.\033[39m"
26 | exit 1
27 | fi
28 |
29 | $DLCMD br.zip https://codeload.github.com/google/brotli/zip/master
30 | unzip br.zip
31 | cd brotli-master
32 |
33 | mkdir out
34 | cd out
35 | ../configure-cmake
36 | make
37 | cd ../..
38 |
39 | if [ ! -f brotli-master/out/libbrotlidec-static.a ] ; then
40 | echo -e "\033[38;5;148mError: failed to make libbrotli libraries.\033[39m"
41 | exit 1
42 | else
43 | echo -e "\033[38;5;148mGood, libbrotli libraries made.\033[39m"
44 | exit 0
45 | fi
46 | else
47 | echo -e "\033[38;5;148mLibbrotli libraries exist.\033[39m"
48 | exit 0
49 | fi
50 |
51 |
--------------------------------------------------------------------------------
/dlmaxminddb.sh:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 | cd `dirname "$0"`
4 | CURDIR=`pwd`
5 |
6 | echo "Checking libmaxminddb ..."
7 |
8 | DLCMD=
9 | source dist/functions.sh 2>/dev/null
10 | if [ $? != 0 ] ; then
11 | . dist/functions.sh
12 | if [ $? != 0 ] ; then
13 | echo [ERROR] Can not include 'functions.sh'.
14 | exit 1
15 | fi
16 | fi
17 |
18 |
19 | VERSION=1.5.2
20 | URL=https://github.com/maxmind/libmaxminddb/archive/$VERSION.tar.gz
21 |
22 | if [ ! -f "libmaxminddb/src/.libs/libmaxminddb.a" ] ; then
23 |
24 | detectdlcmd
25 | echo -e "\033[38;5;148mDownloading libmaxminddb version $VERSION and building, it will take several minutes ...\033[39m"
26 |
27 | $DLCMD mmdb.tgz $URL
28 | tar xf mmdb.tgz
29 | mv libmaxminddb-$VERSION ../libmaxminddb
30 | cd ../libmaxminddb
31 |
32 | ./bootstrap
33 | ./configure --disable-tests
34 | make
35 |
36 | if [ ! -f "src/.libs/libmaxminddb.a" ] ; then
37 | echo -e "\033[38;5;148mError: failed to make libmaxminddb library.\033[39m"
38 | exit 1
39 | else
40 | echo -e "\033[38;5;148mGood, libmaxminddb made.\033[39m"
41 | cd ..
42 | mv libmaxminddb $CURDIR/
43 | exit 0
44 | fi
45 | else
46 | echo -e "\033[38;5;148mlibmaxminddb library exist.\033[39m"
47 | exit 0
48 | fi
49 |
--------------------------------------------------------------------------------
/doc/ModuleDeveloperGuide.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/doc/ModuleDeveloperGuide.odt
--------------------------------------------------------------------------------
/doc/ModuleDeveloperGuide.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/doc/ModuleDeveloperGuide.pdf
--------------------------------------------------------------------------------
/fixtimestamp.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #When using git clone to get the source code, the timestamp will be lost.
3 | #then when run make, it will cause re-config issue.
4 |
5 | touch aclocal.m4
6 | sleep 2
7 |
8 | touch Makefile.in
9 | touch src/Makefile.in
10 | touch src/edio/Makefile.in
11 | touch src/extensions/Makefile.in
12 | touch src/http/Makefile.in
13 | touch src/spdy/Makefile.in
14 | touch src/log4cxx/Makefile.in
15 | touch src/main/Makefile.in
16 | touch src/socket/Makefile.in
17 | touch src/sslpp/Makefile.in
18 | touch src/ssi/Makefile.in
19 | touch src/lsiapi/Makefile.in
20 | touch src/modules/Makefile.in
21 | touch src/shm/Makefile.in
22 | touch src/modules/cache/Makefile.in
23 | sleep 2
24 |
25 | touch configure
26 | touch src/config.h.in
27 |
--------------------------------------------------------------------------------
/include/lsquic.h:
--------------------------------------------------------------------------------
1 | ../lsquic/include/lsquic.h
--------------------------------------------------------------------------------
/include/lsquic_types.h:
--------------------------------------------------------------------------------
1 | ../lsquic/include/lsquic_types.h
--------------------------------------------------------------------------------
/install_lsrecaptcha.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | if [ -z "${GOROOT}" ]; then
4 | echo "NOTICE: The GOROOT environment variable MUST be set prior to calling this script."
5 | echo "The GOROOT environment variable should point to where Go is installed."
6 | exit 1
7 | fi
8 |
9 | OS=`uname -s`
10 |
11 | if [ "x$OS" = "xFreeBSD" ]; then
12 | setenv GOPATH "${PWD}/src/modules/lsrecaptcha/go"
13 | elif [ "x$OS" = "xLinux" ]; then
14 | export GOPATH="${PWD}/src/modules/lsrecaptcha/go"
15 | else
16 | echo "unsupported OS ${OS}."
17 | fi
18 |
19 | go build lsrecaptcha
20 | cp lsrecaptcha dist/lsrecaptcha/_recaptcha
21 |
22 |
23 |
--------------------------------------------------------------------------------
/installudns.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #Download udns source code and install it
3 |
4 | DLCMD=
5 | source dist/functions.sh 2>/dev/null
6 | if [ $? != 0 ] ; then
7 | . dist/functions.sh
8 | if [ $? = 0 ] ; then
9 | detectdlcmd
10 | else
11 | DLCMD="curl -o"
12 | fi
13 | fi
14 |
15 |
16 | echo Will download stable version of the udns library 0.4 and install it
17 | $DLCMD ./udns.tar.gz http://www.corpit.ru/mjt/udns/udns-0.4.tar.gz
18 | tar xf udns.tar.gz
19 | cd udns-0.4/
20 | ./configure
21 | make
22 | cd ../
23 |
--------------------------------------------------------------------------------
/modverinfo.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | #
3 | # This script is to gather pre-defined modules version info
4 | #
5 | #
6 |
7 | OS=`uname -s`
8 | ALL_VER_INFO=
9 | DEFINED_VALUE=
10 | get_file_defined_value()
11 | {
12 | DEFINED_VALUE=`grep "$2" "$1" | awk '{print substr($3,1,40)}' | tr -d '"' `
13 | }
14 |
15 | MODULESPACE=
16 | if [ "x$OS" = "xLinux" ] ; then
17 | MODULESPACE="\\n"
18 | fi
19 |
20 | get_file_defined_value src/modules/modgzip/modgzip.cpp "#define MODULE_VERSION"
21 | ALL_VER_INFO="$ALL_VER_INFO\\tmodgzip $DEFINED_VALUE$MODULESPACE"
22 |
23 | if [ "${OS}" != "Darwin" ] ; then
24 |
25 | get_file_defined_value src/modules/cache/cache.cpp "#define MODULE_VERSION_INFO"
26 | ALL_VER_INFO="$ALL_VER_INFO\\tcache $DEFINED_VALUE$MODULESPACE"
27 |
28 | get_file_defined_value src/modules/modinspector/modinspector.cpp "#define MODULE_VERSION_INFO"
29 | ALL_VER_INFO="$ALL_VER_INFO\\tmodinspector $DEFINED_VALUE$MODULESPACE"
30 |
31 | get_file_defined_value src/modules/uploadprogress/uploadprogress.cpp "#define MODULE_VERSION_INFO"
32 | ALL_VER_INFO="$ALL_VER_INFO\\tuploadprogress $DEFINED_VALUE$MODULESPACE"
33 |
34 |
35 | get_file_defined_value src/modules/modsecurity-ls/mod_security.cpp "#define VERSIONNUMBER"
36 | ALL_VER_INFO="$ALL_VER_INFO\\tmod_security $DEFINED_VALUE$MODULESPACE"
37 |
38 | fi
39 |
40 | echo $ALL_VER_INFO
41 |
--------------------------------------------------------------------------------
/nodejs_integration/nodejs/README-NODE:
--------------------------------------------------------------------------------
1 | ##
2 | ## Open LiteSpeed is an open source HTTP server. *
3 | ## Copyright (C) 2014 LiteSpeed Technologies, Inc. *
4 | ##
5 | ## LiteSpeed Node.js implementation note...
6 | ## This is sample implementation on how the LiteSpeed pass control to Node.js.
7 | ##
8 | ## binding.gyp - binding (makefile) for Node.js C++
9 | ## lsnodeapi.cc - Node.js V8 C++ addon
10 | ## lsnodesrv.js - Java Script to run any java script inside the sandbox
11 | ## myfirst.js - Java Script for testing purpose
12 | ##
13 | ## (1) Need to install the LiteSpeed Node.js handler
14 | ##
15 | ## (2) Compile C++ addon module (binding.gyp, lsnodeapi.cc) for Node.js.
16 | ## need: binding.gyp and lsnodeapi.cc
17 | ## ./deps/npm/bin/node-gyp-bin/node-gyp --debug configure build
18 | ## (3) Need to run LiteSpeed Java Script Server
19 | ## node lsnodesrv.js /home/user/lsws/socket/LS_NODE
20 | ## (4) Testing the connection.
21 | ## curl -i http://localhost:8088/myfirst.js
22 | ##
23 | ## Note -
24 | ## The LiteSpeed handler and litespeed.js should agree on the server_path.
25 | ## Currently I hard coded the path
26 | ## server_path = "/home/user/lsws/socket/LS_NODE";
27 | ## We should use the user parameters instead.
28 | ##
29 | ##
30 |
31 |
--------------------------------------------------------------------------------
/nodejs_integration/nodejs/binding.gyp:
--------------------------------------------------------------------------------
1 | {
2 | "targets": [
3 | {
4 | "target_name": "lsnodeapi",
5 | "sources": [ "lsnodeapi.cc" ]
6 | }
7 | ]
8 | }
9 |
--------------------------------------------------------------------------------
/nodejs_integration/nodejs/myfirst.js:
--------------------------------------------------------------------------------
1 | // console.log('myfirst.node Hello LiteSpeed Node JS')
2 |
3 | response.write("\r\n"
4 | + "\r\n"
5 | + "Hello LiteSpeed from myfirst.node\r\n"
6 | + "\r\n"
7 | + "\r\n");
8 | // console.log('myfirst.node Bye LiteSpeed Node JS')
9 |
10 |
--------------------------------------------------------------------------------
/nodejs_integration/udns-0.4.tar.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/nodejs_integration/udns-0.4.tar.gz
--------------------------------------------------------------------------------
/openlitespeed.kdev4:
--------------------------------------------------------------------------------
1 | [Project]
2 | Manager=KDevCMakeManager
3 | Name=openlitespeed
4 |
--------------------------------------------------------------------------------
/src/.cvsignore:
--------------------------------------------------------------------------------
1 | Makefile
2 | Makefile.in
3 | *.moc.cpp
4 | *.moc
5 |
--------------------------------------------------------------------------------
/src/adns/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | cmake_minimum_required(VERSION 3.0)
3 |
4 | SET(adns_STAT_SRCS
5 | adns.cpp
6 | )
7 |
8 | add_library(adns STATIC ${adns_STAT_SRCS} )
9 |
--------------------------------------------------------------------------------
/src/adns/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libadns.a
3 |
4 | INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | libadns_a_METASOURCES = AUTO
7 |
8 | libadns_a_SOURCES = adns.cpp
9 |
10 | ####### kdevelop will overwrite this part!!! (end)############
11 |
--------------------------------------------------------------------------------
/src/config.h.cmake:
--------------------------------------------------------------------------------
1 | #ifndef __CONFIG_H__
2 | #define __CONFIG_H__
3 |
4 | #define LS_ENABLE_SPDY 1
5 | #define DEFAULT_TMP_DIR "/tmp/lshttpd"
6 | #define PID_FILE "/tmp/lshttpd/lshttpd.pid"
7 |
8 | #define PACKAGE_VERSION "@CMAKE_PROJECT_VERSION@"
9 | #define LS_MODULE_VERSION_INFO "\tlsquic 4.2.0\n\tmodgzip 1.1\n\tcache 1.66\n\tmod_security 1.4 (with libmodsecurity v3.0.13)\n"
10 | #define LS_MODULE_VERSION_INFO_ONELINE "lsquic 4.2.0, modgzip 1.1, cache 1.66, mod_security 1.4 (with libmodsecurity v3.0.13)"
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/src/edio/Makefile.am:
--------------------------------------------------------------------------------
1 | noinst_LIBRARIES = libedio.a
2 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(top_srcdir)/src/edio/liburing/include/
3 | libedio_a_METASOURCES = AUTO
4 |
5 | libedio_a_SOURCES = reactorindex.cpp fdindex.cpp kqueuer.cpp epoll.cpp rtsigio.cpp ediostream.cpp outputbuf.cpp cacheos.cpp \
6 | inputstream.cpp bufferedos.cpp outputstream.cpp flowcontrol.cpp iochain.cpp multiplexerfactory.cpp eventreactor.cpp poller.cpp \
7 | multiplexer.cpp pollfdreactor.cpp lookupfd.cpp devpoller.cpp aioeventhandler.cpp sigeventdispatcher.cpp aiooutputstream.cpp \
8 | aiosendfile.cpp eventnotifier.cpp eventprocessor.cpp evtcbque.cpp linuxaioctx.cpp \
9 | iouring.cpp liburing/queue.c liburing/register.c liburing/setup.c liburing/syscall.c asynciovs.cpp
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/edio/liburing/include/liburing/time_types.h:
--------------------------------------------------------------------------------
1 | /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 | #ifndef _LINUX_TIME_TYPES_H
3 | #define _LINUX_TIME_TYPES_H
4 |
5 | #include
6 |
7 | struct __kernel_timespec {
8 | __kernel_time64_t tv_sec; /* seconds */
9 | long long tv_nsec; /* nanoseconds */
10 | };
11 |
12 | struct __kernel_itimerspec {
13 | struct __kernel_timespec it_interval; /* timer period */
14 | struct __kernel_timespec it_value; /* timer expiration */
15 | };
16 |
17 | /*
18 | * legacy timeval structure, only embedded in structures that
19 | * traditionally used 'timeval' to pass time intervals (not absolute
20 | * times). Do not add new users. If user space fails to compile
21 | * here, this is probably because it is not y2038 safe and needs to
22 | * be changed to use another interface.
23 | */
24 | #ifndef __kernel_old_timeval
25 | struct __kernel_old_timeval {
26 | __kernel_long_t tv_sec;
27 | __kernel_long_t tv_usec;
28 | };
29 | #endif
30 |
31 | struct __kernel_sock_timeval {
32 | __s64 tv_sec;
33 | __s64 tv_usec;
34 | };
35 |
36 | #endif /* _LINUX_TIME_TYPES_H */
37 |
--------------------------------------------------------------------------------
/src/edio/liburing/syscall.h:
--------------------------------------------------------------------------------
1 | /* SPDX-License-Identifier: MIT */
2 | #ifndef LIBURING_SYSCALL_H
3 | #define LIBURING_SYSCALL_H
4 |
5 | /*
6 | * System calls
7 | */
8 | extern int __sys_io_uring_setup(unsigned entries, struct io_uring_params *p);
9 | extern int __sys_io_uring_enter(int fd, unsigned to_submit,
10 | unsigned min_complete, unsigned flags, sigset_t *sig);
11 | extern int __sys_io_uring_register(int fd, unsigned int opcode, const void *arg,
12 | unsigned int nr_args);
13 |
14 | #endif
15 |
--------------------------------------------------------------------------------
/src/edio/linuxaio.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2002 Lite Speed Technologies Inc, All Rights Reserved.
3 | * LITE SPEED PROPRIETARY/CONFIDENTIAL.
4 | */
5 |
6 |
7 | #ifndef LINUXAIO_H
8 | #define LINUXAIO_H
9 |
10 | #if defined(LS_AIO_USE_LINUX_AIO)
11 | #include
12 | //#include
13 |
14 | #include "edio/eventreactor.h"
15 | #include "util/tsingleton.h"
16 |
17 | class LsLinuxAioReq;
18 |
19 | class LinuxAio : public EventReactor
20 | , public TSingleton< LinuxAio >
21 | {
22 | private:
23 | friend class TSingleton< LinuxAio >;
24 | static const int s_check_event_count = 128;
25 | int m_eventfd;
26 | io_context_t m_context;
27 |
28 | int read_eventfd(int &pending);
29 | int check_pending();
30 |
31 | void start();
32 | void close_eventfd();
33 | LinuxAio(const LinuxAio &other);
34 |
35 | public:
36 | LinuxAio()
37 | : m_eventfd(-1)
38 | , m_context((io_context_t)0)
39 | {}
40 | virtual ~LinuxAio();
41 |
42 | int load();
43 | int get_eventfd() { return m_eventfd; };
44 | io_context_t get_context() { return m_context; }
45 | virtual int handleEvents(short int event);
46 |
47 | };
48 |
49 | LS_SINGLETON_DECL(LinuxAio);
50 |
51 | #endif // LS_AIO_USE_LINUX_AIO guard
52 | #endif // LINUXAIO_H Guard
53 |
--------------------------------------------------------------------------------
/src/extensions/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | add_subdirectory(fcgi)
5 | add_subdirectory(cgi)
6 | add_subdirectory(jk)
7 | add_subdirectory(proxy)
8 | add_subdirectory(registry)
9 | add_subdirectory(lsapi)
10 |
11 |
12 | SET(extensions_STAT_SRCS
13 | loadbalancer.cpp
14 | localworkerconfig.cpp
15 | localworker.cpp
16 | pidlist.cpp
17 | iprocessortimer.cpp
18 | httpextprocessor.cpp
19 | extrequest.cpp
20 | extworker.cpp
21 | extconn.cpp
22 | extworkerconfig.cpp
23 | #l4conn.cpp
24 | ssl4conn.cpp
25 | )
26 |
27 | add_library(extensions STATIC ${extensions_STAT_SRCS})
28 |
29 |
--------------------------------------------------------------------------------
/src/extensions/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libextensions.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | libextensions_a_METASOURCES = AUTO
7 |
8 | libextensions_a_SOURCES = loadbalancer.cpp localworkerconfig.cpp localworker.cpp pidlist.cpp iprocessortimer.cpp httpextprocessor.cpp \
9 | extrequest.cpp extworker.cpp extconn.cpp extworkerconfig.cpp l4conn.cpp \
10 | cgi/lscgid.cpp cgi/suexec.cpp cgi/cgidreq.cpp cgi/cgidconfig.cpp cgi/cgidworker.cpp cgi/cgidconn.cpp cgi/cgroupconn.cpp cgi/cgroupuse.cpp \
11 | cgi/use_bwrap.c cgi/ns.c cgi/nsopts.c cgi/nspersist.c cgi/nsutils.c \
12 | fcgi/fcgienv.cpp fcgi/fcgiappconfig.cpp fcgi/fcgiapp.cpp fcgi/fcginamevaluepair.cpp fcgi/fcgiconnection.cpp fcgi/fcgirecord.cpp \
13 | jk/jkajp13.cpp jk/jworker.cpp jk/jworkerconfig.cpp jk/jconn.cpp \
14 | proxy/proxyconfig.cpp proxy/proxyworker.cpp proxy/proxyconn.cpp \
15 | registry/extappregistry.cpp registry/appconfig.cpp\
16 | lsapi/lsapiworker.cpp lsapi/lsapireq.cpp lsapi/lsapiconn.cpp lsapi/lsapiconfig.cpp
17 |
18 | ####### kdevelop will overwrite this part!!! (end)############
19 | #noinst_HEADERS = localworkerconfig.h localworker.h loadbalancer.h
20 |
--------------------------------------------------------------------------------
/src/extensions/cgi/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | #include_directories("/usr/lib64/glib-2.0/include")
4 | #include_directories("/usr/include/glib-2.0")
5 |
6 | ########### next target ###############
7 |
8 | SET(cgi_STAT_SRCS
9 | suexec.cpp
10 | cgidreq.cpp
11 | cgidconfig.cpp
12 | cgidworker.cpp
13 | cgidconn.cpp
14 | lscgid.cpp
15 | cgroupconn.cpp
16 | cgroupuse.cpp
17 | ns.c
18 | nsopts.c
19 | nspersist.c
20 | nsutils.c
21 | use_bwrap.c
22 | )
23 |
24 | add_library(cgi STATIC ${cgi_STAT_SRCS})
25 |
26 |
27 | ########### install files ###############
28 |
29 |
30 |
31 |
32 | #original Makefile.am contents follow:
33 |
34 | ######## kdevelop will overwrite this part!!! (begin)##########
35 | #noinst_LIBRARIES = libcgi.a
36 | #
37 | #INCLUDES = $(all_includes)
38 | #
39 | #libcgi_a_METASOURCES = AUTO
40 | #
41 | #libcgi_a_SOURCES = suexec.cpp cgidreq.cpp cgidconfig.cpp cgidworker.cpp cgidconn.cpp
42 | #
43 | #
44 | #EXTRA_DIST = cgidconn.cpp cgidconn.h cgidworker.cpp cgidworker.h cgidconfig.cpp cgidconfig.h cgidreq.cpp cgidreq.h lscgiddef.h suexec.cpp suexec.h
45 | #
46 | ######## kdevelop will overwrite this part!!! (end)############
47 |
--------------------------------------------------------------------------------
/src/extensions/cgi/Makefile.am:
--------------------------------------------------------------------------------
1 | noinst_LIBRARIES = libcgi.a
2 |
3 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src
4 |
5 | libcgi_a_METASOURCES = AUTO
6 |
7 | libcgi_a_SOURCES = lscgid.cpp suexec.cpp cgidreq.cpp cgidconfig.cpp cgidworker.cpp cgidconn.cpp cgroupconn.cpp cgroupuse.cpp use_bwrap.c ns.c nsopts.c nspersist.c nsutils.c
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/extensions/cgi/nsipc.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2002-2020 Lite Speed Technologies Inc, All Rights Reserved.
3 | * LITE SPEED PROPRIETARY/CONFIDENTIAL.
4 | */
5 | #ifndef _NSIPC_H
6 | #define _NSIPC_H
7 |
8 | #if defined(linux) || defined(__linux) || defined(__linux__) || defined(__gnu_linux__)
9 |
10 | #ifdef __cplusplus
11 | extern "C"
12 | {
13 | #endif
14 |
15 | /**
16 | * @file nsipc.h
17 | * @brief This module defines the IPC between the clone'd parent and child.
18 | */
19 |
20 | enum nsipc_msgs
21 | {
22 | NSIPC_PARENT_DONE,
23 | NSIPC_CHILD_STARTED,
24 | NSIPC_ERROR,
25 | };
26 |
27 | typedef struct nsipc_parent_done_s
28 | {
29 | enum nsipc_msgs m_type;
30 | } nsipc_parent_done_t;
31 |
32 | typedef struct nsipc_child_started_s
33 | {
34 | enum nsipc_msgs m_type;
35 | pid_t m_pid;
36 | } nsipc_child_started_t;
37 |
38 | typedef struct nsipc_error_s
39 | {
40 | enum nsipc_msgs m_type;
41 | int m_rc;
42 | } nsipc_error_t;
43 |
44 | typedef union nsipc_u
45 | {
46 | nsipc_parent_done_t m_done;
47 | nsipc_child_started_t m_started;
48 | nsipc_error_t m_error;
49 | } nsipc_t;
50 |
51 | #ifdef __cplusplus
52 | }
53 | #endif
54 |
55 | #endif // Linux only
56 |
57 | #endif // _NSIPC_H
58 |
--------------------------------------------------------------------------------
/src/extensions/fcgi/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(fcgi_STAT_SRCS
7 | fcgienv.cpp
8 | fcgiappconfig.cpp
9 | fcgiapp.cpp
10 | fcginamevaluepair.cpp
11 | fcgiconnection.cpp
12 | fcgirecord.cpp
13 | )
14 |
15 | add_library(fcgi STATIC ${fcgi_STAT_SRCS})
16 |
17 |
18 | ########### install files ###############
19 |
20 |
21 |
22 |
23 | #original Makefile.am contents follow:
24 |
25 | ######## kdevelop will overwrite this part!!! (begin)##########
26 | #noinst_LIBRARIES = libfcgi.a
27 | #
28 | #INCLUDES = $(all_includes)
29 | #
30 | #libfcgi_a_METASOURCES = AUTO
31 | #
32 | #libfcgi_a_SOURCES = fcgienv.cpp fcgiappconfig.cpp fcgiapp.cpp fcginamevaluepair.cpp fcgiconnection.cpp fcgirecord.cpp
33 | #
34 | #
35 | #EXTRA_DIST = fcgirecord.cpp fcgirecord.h fcgiconnection.cpp fcgiconnection.h fcginamevaluepair.cpp fcginamevaluepair.h fcgiapp.cpp fcgiapp.h fcgidef.h fcgiappconfig.cpp fcgiappconfig.h fcgienv.cpp fcgienv.h
36 | #
37 | ######## kdevelop will overwrite this part!!! (end)############
38 |
--------------------------------------------------------------------------------
/src/extensions/fcgi/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libfcgi.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(all_includes)
5 |
6 | libfcgi_a_METASOURCES = AUTO
7 |
8 | libfcgi_a_SOURCES = fcgienv.cpp fcgiappconfig.cpp fcgiapp.cpp fcginamevaluepair.cpp fcgiconnection.cpp fcgirecord.cpp
9 |
10 |
11 | EXTRA_DIST = fcgirecord.cpp fcgirecord.h fcgiconnection.cpp fcgiconnection.h fcginamevaluepair.cpp fcginamevaluepair.h fcgiapp.cpp fcgiapp.h fcgidef.h fcgiappconfig.cpp fcgiappconfig.h fcgienv.cpp fcgienv.h
12 |
13 | ####### kdevelop will overwrite this part!!! (end)############
14 |
--------------------------------------------------------------------------------
/src/extensions/jk/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(jk_STAT_SRCS
7 | jkajp13.cpp
8 | jworker.cpp
9 | jworkerconfig.cpp
10 | jconn.cpp
11 | )
12 |
13 | add_library(jk STATIC ${jk_STAT_SRCS})
14 |
15 |
16 | ########### install files ###############
17 |
18 |
19 |
20 |
21 | #original Makefile.am contents follow:
22 |
23 | ######## kdevelop will overwrite this part!!! (begin)##########
24 | #noinst_LIBRARIES = libjk.a
25 | #
26 | #INCLUDES = $(all_includes)
27 | #
28 | #libjk_a_METASOURCES = AUTO
29 | #
30 | #libjk_a_SOURCES = jkajp13.cpp jworker.cpp jworkerconfig.cpp jconn.cpp
31 | #
32 | #
33 | #EXTRA_DIST = jconn.cpp jconn.h jworkerconfig.cpp jworkerconfig.h jworker.cpp jworker.h jkajp13.cpp jkajp13.h
34 | #
35 | ######## kdevelop will overwrite this part!!! (end)############
36 |
--------------------------------------------------------------------------------
/src/extensions/jk/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libjk.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(all_includes)
5 |
6 | libjk_a_METASOURCES = AUTO
7 |
8 | libjk_a_SOURCES = jkajp13.cpp jworker.cpp jworkerconfig.cpp jconn.cpp
9 |
10 |
11 | EXTRA_DIST = jconn.cpp jconn.h jworkerconfig.cpp jworkerconfig.h jworker.cpp jworker.h jkajp13.cpp jkajp13.h
12 |
13 | ####### kdevelop will overwrite this part!!! (end)############
14 |
--------------------------------------------------------------------------------
/src/extensions/lsapi/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(lsapi_STAT_SRCS
7 | lsapiworker.cpp
8 | lsapireq.cpp
9 | lsapiconn.cpp
10 | lsapiconfig.cpp
11 | )
12 |
13 | add_library(lsapi STATIC ${lsapi_STAT_SRCS})
14 |
15 |
16 | ########### install files ###############
17 |
18 |
19 |
20 |
21 | #original Makefile.am contents follow:
22 |
23 | ######## kdevelop will overwrite this part!!! (begin)##########
24 | #noinst_LIBRARIES = liblsapi.a
25 | #
26 | #INCLUDES = $(all_includes)
27 | #
28 | #liblsapi_a_METASOURCES = AUTO
29 | #
30 | #liblsapi_a_SOURCES = lsapiworker.cpp lsapireq.cpp lsapiconn.cpp lsapiconfig.cpp
31 | #
32 | #
33 | #EXTRA_DIST = lsapiconfig.cpp lsapiconfig.h lsapiconn.cpp lsapiconn.h lsapireq.cpp lsapireq.h lsapidef.h lsapiworker.cpp lsapiworker.h
34 | #
35 | ######## kdevelop will overwrite this part!!! (end)############
36 |
--------------------------------------------------------------------------------
/src/extensions/lsapi/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = liblsapi.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(all_includes)
5 |
6 | liblsapi_a_METASOURCES = AUTO
7 |
8 | liblsapi_a_SOURCES = lsapiworker.cpp lsapireq.cpp lsapiconn.cpp lsapiconfig.cpp
9 |
10 |
11 | EXTRA_DIST = lsapiconfig.cpp lsapiconfig.h lsapiconn.cpp lsapiconn.h lsapireq.cpp lsapireq.h lsapidef.h lsapiworker.cpp lsapiworker.h
12 |
13 | ####### kdevelop will overwrite this part!!! (end)############
14 |
--------------------------------------------------------------------------------
/src/extensions/proxy/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(proxy_STAT_SRCS
7 | proxyconfig.cpp
8 | proxyworker.cpp
9 | proxyconn.cpp
10 | )
11 |
12 | add_library(proxy STATIC ${proxy_STAT_SRCS})
13 |
14 |
15 | ########### install files ###############
16 |
17 |
18 |
19 |
20 | #original Makefile.am contents follow:
21 |
22 | ######## kdevelop will overwrite this part!!! (begin)##########
23 | #noinst_LIBRARIES = libproxy.a
24 | #
25 | #INCLUDES = $(all_includes)
26 | #
27 | #libproxy_a_METASOURCES = AUTO
28 | #
29 | #libproxy_a_SOURCES = proxyconfig.cpp proxyworker.cpp proxyconn.cpp
30 | #
31 | #
32 | #EXTRA_DIST = proxyconn.cpp proxyconn.h proxyworker.cpp proxyworker.h proxyconfig.cpp proxyconfig.h
33 | #
34 | ######## kdevelop will overwrite this part!!! (end)############
35 |
--------------------------------------------------------------------------------
/src/extensions/proxy/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libproxy.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(all_includes)
5 |
6 | libproxy_a_METASOURCES = AUTO
7 |
8 | libproxy_a_SOURCES = proxyconfig.cpp proxyworker.cpp proxyconn.cpp
9 |
10 |
11 | EXTRA_DIST = proxyconn.cpp proxyconn.h proxyworker.cpp proxyworker.h proxyconfig.cpp proxyconfig.h
12 |
13 | ####### kdevelop will overwrite this part!!! (end)############
14 |
--------------------------------------------------------------------------------
/src/extensions/registry/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(registry_STAT_SRCS
7 | appconfig.cpp
8 | extappregistry.cpp
9 | )
10 |
11 | add_library(registry STATIC ${registry_STAT_SRCS})
12 |
13 |
14 | ########### install files ###############
15 |
16 |
17 |
18 |
19 | #original Makefile.am contents follow:
20 |
21 | ######## kdevelop will overwrite this part!!! (begin)##########
22 | #noinst_LIBRARIES = libregistry.a
23 | #
24 | #INCLUDES = $(all_includes)
25 | #
26 | #libregistry_a_METASOURCES = AUTO
27 | #
28 | #libregistry_a_SOURCES = extappregistry.cpp
29 | #
30 | #
31 | #EXTRA_DIST = extappregistry.cpp extappregistry.h
32 | #
33 | ######## kdevelop will overwrite this part!!! (end)############
34 |
--------------------------------------------------------------------------------
/src/extensions/registry/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libregistry.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(all_includes)
5 |
6 | libregistry_a_METASOURCES = AUTO
7 |
8 | libregistry_a_SOURCES = extappregistry.cpp appconfig.cpp
9 |
10 |
11 | EXTRA_DIST = extappregistry.cpp extappregistry.h
12 |
13 | ####### kdevelop will overwrite this part!!! (end)############
14 |
--------------------------------------------------------------------------------
/src/h2/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | add_definitions(-DXXH_HEADER_NAME="lsr/xxhash.h")
4 |
5 | SET(h2_STAT_SRCS
6 | h2connection.cpp
7 | h2protocol.cpp
8 | h2stream.cpp
9 | h2streampool.cpp
10 | unpackedheaders.cpp
11 | h2connbase.cpp
12 | h2streambase.cpp
13 | ../lshpack/lshpack.c
14 | )
15 |
16 | add_library(h2 STATIC ${h2_STAT_SRCS})
17 |
18 |
--------------------------------------------------------------------------------
/src/h2/Makefile.am:
--------------------------------------------------------------------------------
1 | noinst_LIBRARIES = libh2.a
2 |
3 | INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src
4 |
5 | libh2_a_METASOURCES = AUTO
6 |
7 | libh2_a_SOURCES = h2connection.cpp \
8 | h2protocol.cpp h2stream.cpp unpackedheaders.cpp \
9 | h2streampool.cpp h2connbase.cpp h2streambase.cpp \
10 | ../lshpack/lshpack.c
11 |
12 | noinst_HEADERS =
13 |
--------------------------------------------------------------------------------
/src/http/cacheelement.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 |
--------------------------------------------------------------------------------
/src/http/reqhandler.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 |
--------------------------------------------------------------------------------
/src/liblsquic:
--------------------------------------------------------------------------------
1 | ../lsquic/src/liblsquic
--------------------------------------------------------------------------------
/src/log4cxx/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(log4cxx_STAT_SRCS
7 | appendermanager.cpp
8 | fileappender.cpp
9 | logrotate.cpp
10 | patternlayout.cpp
11 | loggingevent.cpp
12 | ilog.cpp
13 | bench.cpp
14 | layout.cpp
15 | appender.cpp
16 | logger.cpp
17 | level.cpp
18 | logsession.cpp
19 | tmplogid.cpp
20 | )
21 |
22 | add_library(log4cxx STATIC ${log4cxx_STAT_SRCS})
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/log4cxx/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = liblog4cxx.a
3 |
4 | INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | liblog4cxx_a_METASOURCES = AUTO
7 |
8 | liblog4cxx_a_SOURCES = appendermanager.cpp fileappender.cpp logrotate.cpp \
9 | patternlayout.cpp loggingevent.cpp ilog.cpp bench.cpp layout.cpp appender.cpp \
10 | logger.cpp level.cpp logsession.cpp tmplogid.cpp
11 |
12 |
13 | EXTRA_DIST = level.cpp level.h logger.cpp logger.h appender.cpp appender.h \
14 | nsdefs.h layout.cpp layout.h bench.cpp ilog.cpp ilog.h loggingevent.cpp \
15 | loggingevent.h patternlayout.cpp patternlayout.h logrotate.cpp logrotate.h \
16 | fileappender.cpp fileappender.h appendermanager.cpp appendermanager.h
17 |
18 | ####### kdevelop will overwrite this part!!! (end)############
19 | noinst_HEADERS = appendermanager.h
20 |
--------------------------------------------------------------------------------
/src/log4cxx/ilog.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2015 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 | #include "ilog.h"
19 |
20 |
--------------------------------------------------------------------------------
/src/lshpack:
--------------------------------------------------------------------------------
1 | ../lsquic/src/lshpack
--------------------------------------------------------------------------------
/src/lsiapi/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | SET(lsiapi_STAT_SRCS
4 | ediohandler.cpp
5 | envmanager.cpp
6 | lsimoduledata.cpp
7 | lsiapihooks.cpp
8 | modulehandler.cpp
9 | lsiapi.cpp
10 | lsiapi_const.cpp
11 | lsiapilib.cpp
12 | lsiapigd.cpp
13 | modulemanager.cpp
14 | moduletimer.cpp
15 | )
16 |
17 | add_library(lsiapi STATIC ${lsiapi_STAT_SRCS})
18 |
19 |
--------------------------------------------------------------------------------
/src/lsiapi/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = liblsiapi.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | liblsiapi_a_METASOURCES = AUTO
7 |
8 | liblsiapi_a_SOURCES = ediohandler.cpp lsiapi.cpp lsimoduledata.cpp lsiapihooks.cpp modulehandler.cpp modulemanager.cpp lsiapilib.cpp lsiapigd.cpp envmanager.cpp \
9 | moduletimer.cpp lsiapi_const.cpp
10 |
11 |
--------------------------------------------------------------------------------
/src/lsr/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | cmake_minimum_required(VERSION 3.0)
3 |
4 |
5 | ########### next target ###############
6 |
7 | SET(lsr_STAT_SRCS
8 | ls_aho.c
9 | ls_base64.c
10 | ls_buf.c
11 | ls_confparser.c
12 | ls_crc64.c
13 | ls_dlinkq.c
14 | ls_fileio.c
15 | ls_hash.c
16 | ls_lfqueue.c
17 | ls_lfstack.c
18 | ls_link.c
19 | ls_llmq.c
20 | ls_llxq.c
21 | ls_lock.c
22 | ls_loopbuf.c
23 | ls_map.c
24 | ls_md5.c
25 | ls_mpscq.c
26 | ls_objarray.c
27 | ls_objpool.c
28 | ls_pcreg.c
29 | ls_pool.c
30 | ls_ptrlist.c
31 | ls_sha1.c
32 | ls_shm.cpp
33 | ls_stack.c
34 | ls_str.c
35 | ls_strlist.c
36 | ls_strtool.c
37 | ls_time.c
38 | ls_tsstack.c
39 | ls_xpool.c
40 | xxhash.c
41 | )
42 |
43 | add_library(lsr STATIC ${lsr_STAT_SRCS} )
44 |
45 |
--------------------------------------------------------------------------------
/src/lsr/ls_dlinkq.c:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2015 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 | #include
19 |
20 |
--------------------------------------------------------------------------------
/src/lsr/ls_link.c:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2015 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 | #include
19 |
--------------------------------------------------------------------------------
/src/main/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(main_STAT_SRCS
7 | mainserverconfig.cpp
8 | lshttpdmain.cpp
9 | serverinfo.cpp
10 | httpconfigloader.cpp
11 | httpserver.cpp
12 | plainconf.cpp
13 | configctx.cpp
14 | zconfclient.cpp
15 | zconfmanager.cpp
16 | ../sslpp/sslcontextconfig.cpp
17 | )
18 |
19 | add_library(main STATIC ${main_STAT_SRCS})
20 |
21 |
22 | ########### install files ###############
23 |
24 |
25 |
26 |
27 | #original Makefile.am contents follow:
28 |
29 | ######## kdevelop will overwrite this part!!! (begin)##########
30 | #noinst_LIBRARIES = libmain.a
31 | #
32 | #INCLUDES = $(all_includes)
33 | #
34 | #libmain_a_METASOURCES = AUTO
35 | #
36 | #libmain_a_SOURCES = lshttpdmain.cpp serverinfo.cpp httpserverbuilder.cpp \
37 | # httpserver.cpp
38 | #
39 | #
40 | #EXTRA_DIST = license.cpp license.h httpserver.cpp httpserver.h httpserverbuilder.cpp httpserverbuilder.h serverinfo.cpp serverinfo.h lshttpdmain.cpp lshttpdmain.h timestamp.h
41 | #
42 | ######## kdevelop will overwrite this part!!! (end)############
43 |
--------------------------------------------------------------------------------
/src/main/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libmain.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | libmain_a_METASOURCES = AUTO
7 |
8 | libmain_a_SOURCES = mainserverconfig.cpp lshttpdmain.cpp serverinfo.cpp httpconfigloader.cpp \
9 | httpserver.cpp plainconf.cpp configctx.cpp zconfclient.cpp zconfmanager.cpp \
10 | ../sslpp/sslcontextconfig.cpp
11 |
12 | ####### kdevelop will overwrite this part!!! (end)############
13 |
--------------------------------------------------------------------------------
/src/modules/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | add_subdirectory(modgzip)
4 | add_subdirectory(cache)
5 |
6 | if (MOD_REQPARSER)
7 | message("Make mod_reqparser")
8 | add_subdirectory(modreqparser)
9 | endif()
10 |
11 | if (MOD_PAGESPEED)
12 | message("Make mod_pagespeed")
13 | add_subdirectory(pagespeed)
14 | endif()
15 |
16 | if (MOD_LUA)
17 | message("Make mod_lua")
18 | add_subdirectory(lua)
19 | endif()
20 |
21 | if (MOD_INSPECTOR)
22 | message("Make mod_inspector")
23 | add_subdirectory(modinspector)
24 | endif()
25 |
26 | if (MOD_UPLOADPROGRESS)
27 | message("Make UploadProgress")
28 | add_subdirectory(uploadprogress)
29 | endif()
30 |
31 | if (MOD_LSPHP)
32 | message("Make mod_lsphp")
33 | add_subdirectory(mod_lsphp)
34 | endif()
35 |
36 | if (MOD_SECURITY)
37 | message("Make mod_security")
38 | add_subdirectory(modsecurity-ls)
39 | endif()
40 |
41 |
--------------------------------------------------------------------------------
/src/modules/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 |
3 | ####### kdevelop will overwrite this part!!! (begin)##########
4 | noinst_LIBRARIES = libmodules.a
5 |
6 | # AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
7 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(top_srcdir)/src/modules/cache
8 |
9 | libmodules_a_METASOURCES = AUTO
10 |
11 | libmodules_a_SOURCES = modgzip/modgzip.cpp \
12 | cache/cache.cpp cache/cacheentry.cpp cache/cachehash.cpp cache/cachestore.cpp \
13 | cache/ceheader.cpp cache/dirhashcacheentry.cpp cache/dirhashcachestore.cpp \
14 | cache/cacheconfig.cpp cache/cachectrl.cpp \
15 | cache/cachemanager.cpp cache/shmcachemanager.cpp
16 |
17 |
18 |
19 | if HAVE_LIBLUA
20 | SUBDIRS = uploadprogress lua modinspector modreqparser
21 | else
22 | SUBDIRS = uploadprogress modinspector modreqparser
23 | endif
24 |
25 | #noinst_HEADERS =
26 |
27 |
--------------------------------------------------------------------------------
/src/modules/cache/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | include_directories(./;../;../../;)
4 |
5 | add_library(cache STATIC
6 | cachemanager.cpp
7 | shmcachemanager.cpp
8 | cacheentry.cpp
9 | cachehash.cpp
10 | cachestore.cpp
11 | ceheader.cpp
12 | dirhashcacheentry.cpp
13 | dirhashcachestore.cpp
14 | cacheconfig.cpp
15 | cachectrl.cpp
16 | cache.cpp
17 | )
18 |
--------------------------------------------------------------------------------
/src/modules/cache/cache.kdev4:
--------------------------------------------------------------------------------
1 | [Project]
2 | Manager=KDevCMakeManager
3 | Name=page_cache
4 |
--------------------------------------------------------------------------------
/src/modules/js/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | cmake_minimum_required(VERSION 3.0)
3 | INCLUDE( ${PROJECT_SOURCE_DIR}/CMakeModules/common.cmake)
4 |
5 | set(CMAKE_VERBOSE_MAKEFILE ON)
6 | set(MY_CMAKE_WARNING_FLAGS " -Wall -Wextra -Wno-unused-parameter" )
7 | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MY_CMAKE_WARNING_FLAGS}" )
8 | #set(CMAKE_C_FLAGS " -Wall " )
9 | #set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${MY_CMAKE_WARNING_FLAGS}" )
10 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MY_CMAKE_WARNING_FLAGS}" )
11 |
12 | SET(js_STAT_SRCS
13 | lsjsengine.cpp
14 | modjs.cpp
15 | )
16 |
17 |
18 | add_library(mod_js MODULE ${js_STAT_SRCS} )
19 | set_target_properties(mod_js PROPERTIES PREFIX "")
20 |
--------------------------------------------------------------------------------
/src/modules/js/Makefile.f:
--------------------------------------------------------------------------------
1 | CC=g++
2 | LFSFLAGS= $(shell getconf LFS_CFLAGS) -D_GLIBCXX_USE_CXX11_ABI=0
3 | CFLAGS= -fPIC -fvisibility=hidden -g -Wall -c -D_REENTRANT -I../../../include/ -I./ -I../ -I../../ $(LFSFLAGS)
4 | ifeq ($(BUILDSTATIC), 1)
5 | ALLLIB := -nodefaultlibs $(shell g++ -print-file-name='libstdc++.a') -lm -lc -lgcc_eh -lc_nonshared -lgcc
6 | endif
7 |
8 | OS := $(shell uname)
9 | ifeq ($(OS), Darwin)
10 | LDFLAGS= $(ALLLIB) -fPIC -g -undefined dynamic_lookup -Wall $(LFSFLAGS) -shared
11 | else
12 | LDFLAGS= $(ALLLIB) -fPIC -g -Wall $(LFSFLAGS) -shared
13 | endif
14 |
15 | SOURCES = lsjsengine.cpp modjs.cpp
16 |
17 | $(shell rm *.o)
18 |
19 | OBJECTS=$(SOURCES:.cpp=.o)
20 | TARGET = mod_js.so
21 |
22 | all: $(TARGET)
23 |
24 | $(TARGET): $(OBJECTS)
25 | $(CC) $(OBJECTS) -o $@ $(LDFLAGS)
26 |
27 | .cpp.o:
28 | $(CC) $(CFLAGS) $< -o $@
29 |
30 | clean:
31 | rm *.o
32 |
--------------------------------------------------------------------------------
/src/modules/lsrecaptcha/README.md:
--------------------------------------------------------------------------------
1 | Lsrecaptcha
2 | ========
3 |
4 | Description
5 | --------
6 |
7 | The lsrecaptcha Go module is a custom Recaptcha processor.
8 | The Recaptcha validation is still performed by Google. This executable
9 | will check if the response is successful and if so, notify the web server
10 | that the client successfully completed the Recaptcha challenge.
11 |
12 | Compilation
13 | --------
14 |
15 | If desired, the module can be compiled manually. The only prerequisites
16 | are that Golang is installed and the GOROOT environment variable is set.
17 |
18 | After that, run `build_lsrecaptcha.sh`. This should generate a binary
19 | named `_recaptcha`. This binary should be copied to `$SERVER_ROOT/lsrecaptcha/`
20 | and installation is complete.
21 |
22 |
--------------------------------------------------------------------------------
/src/modules/lsrecaptcha/build_lsrecaptcha.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | if which go ; then
4 | echo "Go is installed, continue with installation."
5 | else
6 | echo "Go is not yet installed. Please install Golang and try again."
7 | exit 1
8 | fi
9 |
10 | CUR_PATH=`dirname $0`
11 | cd $CUR_PATH
12 | CUR_PATH=`pwd`
13 |
14 | if which setenv ; then
15 | setenv GOPATH "${CUR_PATH}"
16 | else
17 | export GOPATH="${CUR_PATH}"
18 | fi
19 | export GO111MODULE=off
20 | export CGO_ENABLED=1
21 |
22 | echo "GOPATH set to ${GOPATH}"
23 | go build lsrecaptcha
24 |
25 | if [ $? -eq 0 ]; then
26 | echo "Build succeeded."
27 | cp lsrecaptcha ../../../dist/lsrecaptcha/_recaptcha
28 | exit 0
29 | else
30 | echo "Build failed."
31 | exit 1
32 | fi
33 |
34 |
--------------------------------------------------------------------------------
/src/modules/lua/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | cmake_minimum_required(VERSION 3.0)
3 | INCLUDE( ${PROJECT_SOURCE_DIR}/CMakeModules/common.cmake)
4 |
5 | set(LUAJITDIR "${PROJECT_SOURCE_DIR}/../third-party/include/luajit-2.1/")
6 | include_directories(${LUAJITDIR})
7 |
8 | set(CMAKE_VERBOSE_MAKEFILE ON)
9 | set(MY_CMAKE_WARNING_FLAGS " -Wall -Wextra -Wno-unused-parameter" )
10 | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MY_CMAKE_WARNING_FLAGS}" )
11 | #set(CMAKE_C_FLAGS " -Wall " )
12 | #set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${MY_CMAKE_WARNING_FLAGS}" )
13 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MY_CMAKE_WARNING_FLAGS}" )
14 | set(LUAJITHEADERS ${LUAJITDIR}/luajit.h)
15 |
16 | SET(lua_STAT_SRCS
17 | lsluaengine.cpp
18 | edluastream.cpp
19 | lsluaapi.cpp
20 | lsluasession.cpp
21 | lsluaheader.cpp
22 | lsluashared.cpp
23 | lsluaregex.cpp
24 | modlua.cpp
25 | )
26 |
27 |
28 | add_library(mod_lua MODULE ${lua_STAT_SRCS} ${LUAJITHEADERS})
29 | target_link_libraries(mod_lua libluajit.a
30 | -nodefaultlibs libstdc++.a
31 | pthread rt
32 | ${LIBSAN} crypt m gcc_eh c c_nonshared gcc)
33 | set_target_properties(mod_lua PROPERTIES PREFIX "")
34 |
--------------------------------------------------------------------------------
/src/modules/lua/Makefile.am:
--------------------------------------------------------------------------------
1 | modulesdir=$(prefix)/modules
2 |
3 | modules_LTLIBRARIES=mod_lua.la
4 | mod_lua_la_LDFLAGS= -module -avoid-version -shared
5 |
6 | AM_CPPFLAGS= -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(LUA_INCLUDES)
7 |
8 | mod_lua_la_METASOURCES= AUTO
9 |
10 | mod_lua_la_SOURCES=lsluaengine.cpp edluastream.cpp lsluaapi.cpp \
11 | lsluasession.cpp lsluaheader.cpp lsluashared.cpp lsluaregex.cpp modlua.cpp
12 |
13 | #noinst_HEADERS =
14 |
--------------------------------------------------------------------------------
/src/modules/lua/Makefile.f:
--------------------------------------------------------------------------------
1 | CC=g++
2 | LFSFLAGS= $(shell getconf LFS_CFLAGS) -D_GLIBCXX_USE_CXX11_ABI=0
3 | CFLAGS= -fPIC -fvisibility=hidden -g -Wall -c -D_REENTRANT -I../../../include/ -I./ -I../ -I../../ -I/usr/local/include/luajit-2.0/ $(LFSFLAGS)
4 | ifeq ($(BUILDSTATIC), 1)
5 | ALLLIB := -nodefaultlibs $(shell g++ -print-file-name='libstdc++.a') -lm -lc -lgcc_eh -lc_nonshared -lgcc
6 | endif
7 |
8 |
9 | OS := $(shell uname)
10 | ifeq ($(OS), Darwin)
11 | LDFLAGS= $(ALLLIB) -fPIC -g -undefined dynamic_lookup -Wall $(LFSFLAGS) -shared
12 | else
13 | LDFLAGS= $(ALLLIB) -fPIC -g -Wall $(LFSFLAGS) -shared
14 | endif
15 |
16 | SOURCES =lsluaengine.cpp edluastream.cpp lsluaapi.cpp \
17 | lsluasession.cpp lsluaheader.cpp lsluashared.cpp lsluaregex.cpp modlua.cpp
18 |
19 | $(shell rm *.o)
20 |
21 | OBJECTS=$(SOURCES:.cpp=.o)
22 | TARGET = mod_lua.so
23 |
24 | all: $(TARGET)
25 |
26 | $(TARGET): $(OBJECTS)
27 | $(CC) $(OBJECTS) -o $@ $(LDFLAGS)
28 |
29 | .cpp.o:
30 | $(CC) $(CFLAGS) $< -o $@
31 |
32 | clean:
33 | rm *.o
34 |
--------------------------------------------------------------------------------
/src/modules/mod_lsphp/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | add_custom_target(php ALL COMMAND ${CMAKE_COMMAND} -E env ASAN=${ASAN} TSAN=${TSAN} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} ./build.sh
2 | WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/src/modules/mod_lsphp)
3 | #set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${PROJECT_SOURCE_DIR}/src/test/unittest-cpp/UnitTest++/libUnitTest++.a")
4 |
--------------------------------------------------------------------------------
/src/modules/mod_lsphp/php-7.2-opcache-patch.txt:
--------------------------------------------------------------------------------
1 | diff -ru a/ext/opcache/ZendAccelerator.c php-src-php-7.2.1/ext/opcache/ZendAccelerator.c
2 | --- a/ext/opcache/ZendAccelerator.c 2018-01-16 12:39:04.745409335 -0500
3 | +++ b/ext/opcache/ZendAccelerator.c 2018-01-16 12:40:03.218301920 -0500
4 | @@ -1492,7 +1492,7 @@
5 | int i, ag_size = (sizeof(jit_auto_globals_info) / sizeof(jit_auto_globals_info[0]));
6 |
7 | for (i = 0; i < ag_size ; i++) {
8 | - jit_auto_globals_str[i] = zend_string_init(jit_auto_globals_info[i].name, jit_auto_globals_info[i].len, 1);
9 | + jit_auto_globals_str[i] = zend_string_init(jit_auto_globals_info[i].name, jit_auto_globals_info[i].len, 0);
10 | zend_string_hash_val(jit_auto_globals_str[i]);
11 | jit_auto_globals_str[i] = accel_new_interned_string(jit_auto_globals_str[i]);
12 | }
13 |
--------------------------------------------------------------------------------
/src/modules/mod_lsphp/src/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
4 | set(CMAKE_CSS_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wall")
5 |
6 | include_directories(./;../;../../;)
7 |
8 | execute_process( COMMAND getconf LFS_CFLAGS
9 | OUTPUT_VARIABLE LFS_CFLAGS )
10 |
11 | add_definitions( ${LFS_CFLAGS} )
12 |
13 | add_library(mod_lsphp SHARED
14 | mod_lsphp.c
15 | )
16 | set_target_properties(mod_lsphp PROPERTIES PREFIX "")
17 |
--------------------------------------------------------------------------------
/src/modules/modgzip/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | SET(modgzip_STAT_SRCS
4 | modgzip.cpp
5 | )
6 |
7 | add_library(modgzip STATIC ${modgzip_STAT_SRCS})
8 |
9 |
--------------------------------------------------------------------------------
/src/modules/modinspector/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
4 | set(CMAKE_CSS_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wall")
5 |
6 | execute_process( COMMAND getconf LFS_CFLAGS
7 | OUTPUT_VARIABLE LFS_CFLAGS )
8 |
9 | add_definitions( ${LFS_CFLAGS} )
10 |
11 | add_library(modinspector SHARED
12 | modinspector.cpp
13 | )
14 |
15 | set_target_properties(modinspector PROPERTIES PREFIX "")
16 |
--------------------------------------------------------------------------------
/src/modules/modinspector/Makefile.am:
--------------------------------------------------------------------------------
1 | modulesdir=$(prefix)/modules
2 |
3 | modules_LTLIBRARIES=modinspector.la
4 | modinspector_la_LDFLAGS= -module -avoid-version -shared
5 |
6 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
7 | modinspector_la_METASOURCES= AUTO
8 |
9 | modinspector_la_SOURCES=modinspector.cpp
10 |
11 | #noinst_HEADERS =
12 |
13 |
--------------------------------------------------------------------------------
/src/modules/modinspector/Makefile.f:
--------------------------------------------------------------------------------
1 | CC=g++
2 | LFSFLAGS= $(shell getconf LFS_CFLAGS) -D_GLIBCXX_USE_CXX11_ABI=0
3 | INCLUDEPATH= -I../../util/ -I./ -I../../../include -I../ -I../../
4 |
5 | ifeq ($(BUILDSTATIC), 1)
6 | ALLLIB := -nodefaultlibs $(shell g++ -print-file-name='libstdc++.a') -lm -lc -lgcc_eh -lc_nonshared -lgcc
7 | endif
8 |
9 |
10 | OS := $(shell uname)
11 | ifeq ($(OS), Darwin)
12 | LDFLAGS := $(ALLLIB) -fPIC -undefined dynamic_lookup
13 | else
14 | LDFLAGS := $(ALLLIB) -fPIC
15 | endif
16 |
17 |
18 | #make -f Makefile.f CFG=debug will create a debug version module
19 | ifeq ($(CFG), debug)
20 | CFLAGS := -fPIC -g -fvisibility=hidden -Wall -c -D_REENTRANT $(INCLUDEPATH) $(LFSFLAGS)
21 | LDFLAGS := $(LDFLAGS) -g3 -O0 -Wall $(LFSFLAGS) -shared
22 | else
23 | CFLAGS := -fPIC -g -O2 -fvisibility=hidden -Wall -c -D_REENTRANT $(INCLUDEPATH) $(LFSFLAGS)
24 | LDFLAGS := $(LDFLAGS) -g -O2 -Wall $(LFSFLAGS) -shared
25 | endif
26 |
27 | SOURCES =modinspector.cpp
28 |
29 | $(shell rm *.o )
30 |
31 | OBJECTS=$(SOURCES:.cpp=.o)
32 | TARGET = modinspector.so
33 |
34 | all: $(TARGET)
35 |
36 | $(TARGET): $(OBJECTS)
37 | $(CC) $(INCLUDEPATH) $(OBJECTS) -o $@ $(LDFLAGS)
38 |
39 | .cpp.o:
40 | $(CC) $(CFLAGS) $< -o $@
41 |
42 | clean:
43 | rm *.o
44 |
--------------------------------------------------------------------------------
/src/modules/modinspector/README:
--------------------------------------------------------------------------------
1 | About OpenLiteSpeed's modinspector Module
2 |
3 | After OpenLiteSpeed has been installed, there should be a file named modinspector.so in $LSWS_ROOT/modules/. If this file is not there, some error has likely occurred during installation and you will need to build the module yourself. Please follow the steps below to build the module:
4 |
5 | 2. Run following command in /openlitespeed_download/src/modules/modinspector to make modinspector.so:
6 | make -f Makefile.f
7 |
8 | Note: If compiling does not work, try "gmake" instead of "make".
9 |
10 | 3. Copy the file to the modules directory in your OpenLiteSpeed installation. (Normally, it should be $LSWS_ROOT/modules/.)
11 |
12 | For usage, please refer to http://open.litespeedtech.com/mediawiki/index.php/Help:Modules:modinspector
13 |
14 | Thanks and enjoy.
15 |
--------------------------------------------------------------------------------
/src/modules/modreqparser/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
4 | set(CMAKE_CSS_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wall")
5 |
6 |
7 | add_library(modreqparser SHARED modreqparser.cpp)
8 |
9 | set_target_properties(modreqparser PROPERTIES PREFIX "")
--------------------------------------------------------------------------------
/src/modules/modreqparser/Makefile.am:
--------------------------------------------------------------------------------
1 | modulesdir=$(prefix)/modules
2 |
3 | modules_LTLIBRARIES=modreqparser.la
4 | modreqparser_la_LDFLAGS= -module -avoid-version -shared
5 |
6 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src
7 |
8 | modreqparser_la_METASOURCES= AUTO
9 |
10 | modreqparser_la_SOURCES=modreqparser.cpp
11 |
12 | #noinst_HEADERS =
13 |
14 |
--------------------------------------------------------------------------------
/src/modules/modreqparser/Makefile.f:
--------------------------------------------------------------------------------
1 | CC=g++
2 | LFSFLAGS= $(shell getconf LFS_CFLAGS) -D_GLIBCXX_USE_CXX11_ABI=0
3 | INCLUDEPATH= -I../../util/ -I./ -I../../../include -I../ -I../../
4 |
5 | ifeq ($(BUILDSTATIC), 1)
6 | ALLLIB := -nodefaultlibs $(shell g++ -print-file-name='libstdc++.a') -lm -lc -lgcc_eh -lc_nonshared -lgcc
7 | endif
8 |
9 |
10 | OS := $(shell uname)
11 | ifeq ($(OS), Darwin)
12 | LDFLAGS := $(ALLLIB) -fPIC -undefined dynamic_lookup
13 | else
14 | LDFLAGS := $(ALLLIB) -fPIC
15 | endif
16 |
17 |
18 | #make -f Makefile.f CFG=debug will create a debug version module
19 | ifeq ($(CFG), debug)
20 | CFLAGS := -fPIC -g -fvisibility=hidden -Wall -c -D_REENTRANT $(INCLUDEPATH) $(LFSFLAGS)
21 | LDFLAGS := $(LDFLAGS) -g3 -O0 -Wall $(LFSFLAGS) -shared
22 | else
23 | CFLAGS := -fPIC -g -O2 -fvisibility=hidden -Wall -c -D_REENTRANT $(INCLUDEPATH) $(LFSFLAGS)
24 | LDFLAGS := $(LDFLAGS) -g -O2 -Wall $(LFSFLAGS) -shared
25 | endif
26 |
27 | SOURCES =modreqparser.cpp
28 |
29 | $(shell rm *.o )
30 |
31 | OBJECTS=$(SOURCES:.cpp=.o)
32 | TARGET = modreqparser.so
33 |
34 | all: $(TARGET)
35 |
36 | $(TARGET): $(OBJECTS)
37 | $(CC) $(INCLUDEPATH) $(OBJECTS) -o $@ $(LDFLAGS)
38 |
39 | .cpp.o:
40 | $(CC) $(CFLAGS) $< -o $@
41 |
42 | clean:
43 | rm *.o
44 |
--------------------------------------------------------------------------------
/src/modules/modreqparser/README:
--------------------------------------------------------------------------------
1 | About OpenLiteSpeed's modreqparser Module
2 |
3 | After OpenLiteSpeed has been installed, there should be a file named modreqparser.so in $LSWS_ROOT/modules/. If this file is not there, some error has likely occurred during installation and you will need build the module yourself. Please follow the steps below to build the module:
4 |
5 | 2. Run following command in /openlitespeed_download/src/modules/modreqparser to make modreqparser.so:
6 | make -f Makefile.f
7 |
8 | Note: If compiling does not work, try "gmake" instead of "make".
9 |
10 | 3. Copy the file to the modules directory in your OpenLiteSpeed installation. (Normally, it should be $LSWS_ROOT/modules/.)
11 |
12 | For configuration instructions, please refer to http://open.litespeedtech.com/mediawiki/index.php/Help:Modules:modreqparser
13 |
14 | Thanks and enjoy.
15 |
--------------------------------------------------------------------------------
/src/modules/modsecurity-ls/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++17 -Wall")
4 |
5 | include_directories(${PROJECT_SOURCE_DIR}/../third-party/ModSecurity/headers/)
6 |
7 | execute_process( COMMAND getconf LFS_CFLAGS
8 | OUTPUT_VARIABLE LFS_CFLAGS )
9 |
10 | add_definitions( ${LFS_CFLAGS} )
11 |
12 | include(CheckCCompilerFlag)
13 | set(EXTRA_FLAGS "")
14 | check_c_compiler_flag(-Wno-unused-function HAS_NO_UNUSED_FUNCTION)
15 | if(HAS_NO_UNUSED_FUNCTION)
16 | # Silence warnings about unused modsecurity::intervention::clear() et al:
17 | set(EXTRA_FLAGS "${EXTRA_FLAGS} -Wno-unused-function")
18 | endif()
19 | check_c_compiler_flag(-Wno-sign-compare HAS_NO_SIGN_COMPARE)
20 | if(HAS_NO_SIGN_COMPARE)
21 | # Silence warnings in rules.h:
22 | set(EXTRA_FLAGS "${EXTRA_FLAGS} -Wno-sign-compare")
23 | endif()
24 | set_source_files_properties(mod_security.cpp PROPERTIES COMPILE_FLAGS ${EXTRA_FLAGS})
25 |
26 | add_library(mod_security SHARED
27 | mod_security.cpp
28 | )
29 |
30 |
31 | target_link_libraries(mod_security libmodsecurity.a
32 | -nodefaultlibs libstdc++.a
33 | pthread rt -llmdb -lxml2 -lcurl -lssl -lcrypto -lz -lpcre -lyajl
34 | ${LIBSAN} crypt m gcc_eh c c_nonshared gcc)
35 |
36 | set_target_properties(mod_security PROPERTIES PREFIX "")
37 |
--------------------------------------------------------------------------------
/src/modules/modsecurity-ls/README:
--------------------------------------------------------------------------------
1 | About OpenLiteSpeed's mod_security Module
2 |
3 | After OpenLiteSpeed has been installed, there should be a file named mod_security.so in $LSWS_ROOT/modules/. If this file is not there, some error has likely occurred during installation and you will need build the module yourself. Please follow the steps below to build the module:
4 |
5 | 2. Run following command in /openlitespeed_download/src/modules/modsecurity_ls to make mod_security.so:
6 | make -f Makefile.f
7 |
8 | Note: If compiling does not work, try "gmake" instead of "make". FreeBSD need to use gmake.
9 |
10 | 3. Copy the file to the modules directory in your OpenLiteSpeed installation. (Normally, it should be $LSWS_ROOT/modules/.)
11 |
12 | For configuration instructions, please refer to http://open.litespeedtech.com/mediawiki/index.php/Help:Modules:mod_security
13 |
14 | Thanks and enjoy.
15 |
--------------------------------------------------------------------------------
/src/modules/pagespeed/README:
--------------------------------------------------------------------------------
1 | About OpenLiteSpeed's PageSpeed Module
2 |
3 | This module is not built automatically during OpenLiteSpeed installation. Please follow the following steps to build the PageSpeed Module:
4 |
5 | Note: PSOL and OpenLiteSpeed's PageSpeed Module is only available for Linux.
6 |
7 | 1. Run "make -f Makefile.f" command to make modpagespeed.so, if compiling does not work, try "gmake" instead of "make".
8 |
9 | 2. Copy the file to the modules directory in your OpenLiteSpeed installation. (Normally, it should be $LSWS_ROOT/modules/.)
10 |
11 | For configuration, please refer to https://developers.google.com/speed/pagespeed/module/config_filters
12 |
13 | OpenLiteSpeed's PageSpeed Module configuration follows the NGINX PageSpeed configuration syntax (in the link above).
14 |
15 | Thanks and enjoy.
16 |
--------------------------------------------------------------------------------
/src/modules/uploadprogress/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
4 | set(CMAKE_CSS_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wall")
5 |
6 | execute_process( COMMAND getconf LFS_CFLAGS
7 | OUTPUT_VARIABLE LFS_CFLAGS )
8 |
9 | add_definitions( ${LFS_CFLAGS} )
10 |
11 | add_library(uploadprogress SHARED
12 | uploadprogress.cpp
13 | )
14 |
15 | set_target_properties(uploadprogress PROPERTIES PREFIX "")
16 |
--------------------------------------------------------------------------------
/src/modules/uploadprogress/Makefile.am:
--------------------------------------------------------------------------------
1 | modulesdir=$(prefix)/modules
2 |
3 | modules_LTLIBRARIES=uploadprogress.la
4 | uploadprogress_la_LDFLAGS= -module -avoid-version -shared
5 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
6 |
7 | uploadprogress_la_METASOURCES= AUTO
8 |
9 | uploadprogress_la_SOURCES=uploadprogress.cpp
10 |
11 | #noinst_HEADERS =
12 |
13 |
--------------------------------------------------------------------------------
/src/modules/uploadprogress/Makefile.f:
--------------------------------------------------------------------------------
1 | CC=g++
2 | LFSFLAGS= $(shell getconf LFS_CFLAGS) -D_GLIBCXX_USE_CXX11_ABI=0
3 | INCLUDEPATH= -I../../util/ -I./ -I../../../include -I../ -I../../
4 |
5 | ifeq ($(BUILDSTATIC), 1)
6 | ALLLIB := -nodefaultlibs $(shell g++ -print-file-name='libstdc++.a') -lm -lc -lgcc_eh -lc_nonshared -lgcc
7 | endif
8 |
9 |
10 | OS := $(shell uname)
11 | ifeq ($(OS), Darwin)
12 | LDFLAGS := $(ALLLIB) -fPIC -undefined dynamic_lookup
13 | else
14 | LDFLAGS := $(ALLLIB) -fPIC
15 | endif
16 |
17 |
18 | #make -f Makefile.f CFG=debug will create a debug version module
19 | ifeq ($(CFG), debug)
20 | CFLAGS := -fPIC -g -fvisibility=hidden -Wall -c -D_REENTRANT $(INCLUDEPATH) $(LFSFLAGS)
21 | LDFLAGS := $(LDFLAGS) -g3 -O0 -Wall $(LFSFLAGS) -shared
22 | else
23 | CFLAGS := -fPIC -g -O2 -fvisibility=hidden -Wall -c -D_REENTRANT $(INCLUDEPATH) $(LFSFLAGS)
24 | LDFLAGS := $(LDFLAGS) -g -O2 -Wall $(LFSFLAGS) -shared
25 | endif
26 |
27 |
28 | SOURCES =uploadprogress.cpp
29 |
30 | $(shell rm *.o )
31 |
32 | OBJECTS=$(SOURCES:.cpp=.o)
33 | TARGET = uploadprogress.so
34 |
35 | all: $(TARGET)
36 |
37 | $(TARGET): $(OBJECTS)
38 | $(CC) $(INCLUDEPATH) $(OBJECTS) -o $@ $(LDFLAGS)
39 |
40 | .cpp.o:
41 | $(CC) $(CFLAGS) $< -o $@
42 |
43 | clean:
44 | rm *.o
45 |
--------------------------------------------------------------------------------
/src/modules/uploadprogress/README:
--------------------------------------------------------------------------------
1 | About OpenLiteSpeed's upload progress Module
2 |
3 | After OpenLiteSpeed has been installed, there should be a file named uploadprogress.so in $LSWS_ROOT/modules/. If this file is not there, some error has likely occurred during installation and you will need to build the module yourself. Please follow the steps below to build the module:
4 |
5 | 2. Run following command in /openlitespeed_download/src/modules/uploadprogress to make uploadprogress.so:
6 | make -f Makefile.f
7 |
8 | Note: If compiling does not work, try "gmake" instead of "make".
9 |
10 | 3. Copy the file to the modules directory in your OpenLiteSpeed installation. (Normally, it should be $LSWS_ROOT/modules/.)
11 |
12 | For usage, please refer to http://open.litespeedtech.com/mediawiki/index.php/Help:Modules:uploadprogress
13 |
14 | Thanks and enjoy.
15 |
--------------------------------------------------------------------------------
/src/quic/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(quic_STAT_SRCS quicshm.cpp udplistener.cpp
7 | quicengine.cpp
8 | quicstream.cpp
9 | pbset.cpp
10 | #pkt_capture.c
11 | )
12 |
13 | add_library(quic STATIC ${quic_STAT_SRCS})
14 |
15 |
--------------------------------------------------------------------------------
/src/quic/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libquic.a
3 |
4 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | libquic_a_METASOURCES = AUTO
7 |
8 | libquic_a_SOURCES = quicshm.cpp udplistener.cpp quicengine.cpp \
9 | quicstream.cpp pbset.cpp
10 |
11 | ####### kdevelop will overwrite this part!!! (end)############
12 |
--------------------------------------------------------------------------------
/src/shm/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | cmake_minimum_required(VERSION 3.0)
3 |
4 | SET(shm_STAT_SRCS addrmap.cpp
5 | lsshm.cpp
6 | lsshmhash.cpp
7 | lsshmlock.cpp
8 | lsshmpool.cpp
9 | lsshmtidmgr.cpp
10 | lsshmhashobserver.cpp
11 | )
12 |
13 | add_library(lsshm STATIC ${shm_STAT_SRCS} )
14 |
15 | #add_library(lsshm SHARED ${shm_STAT_SRCS} )
16 |
17 |
--------------------------------------------------------------------------------
/src/shm/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = liblsshm.a
3 |
4 | INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | liblsshm_a_METASOURCES = AUTO
7 |
8 | liblsshm_a_SOURCES = lsshmlock.cpp lsshmhash.cpp lsshmpool.cpp lsshm.cpp \
9 | lsshmtidmgr.cpp lsshmhashobserver.cpp addrmap.cpp
10 |
11 | #lsshmlruhash.cpp
12 | ####### kdevelop will overwrite this part!!! (end)############
13 |
--------------------------------------------------------------------------------
/src/shm/lsshmhashobserver.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | *
3 | */
4 |
5 | #include "lsshmhashobserver.h"
6 |
7 | LsShmHashObserver::LsShmHashObserver(LsShmHash *pHash)
8 | : m_pHash(pHash)
9 | {}
10 |
11 | LsShmHashObserver::~LsShmHashObserver()
12 | {}
13 |
--------------------------------------------------------------------------------
/src/shm/lsshmhashobserver.h:
--------------------------------------------------------------------------------
1 | #ifndef LSSHMHASHOBSERVER_H
2 | #define LSSHMHASHOBSERVER_H
3 |
4 | #include
5 |
6 | class LsShmHash;
7 | class LsShmHashObserver
8 | {
9 | public:
10 | explicit LsShmHashObserver(LsShmHash *pHash);
11 | virtual ~LsShmHashObserver();
12 |
13 | virtual int onNewEntry(const void *pKey, int keyLen, const void *pVal,
14 | int valLen, uint32_t lruTm) = 0;
15 | virtual int onDelEntry(const void *pKey, int keyLen) = 0;
16 |
17 | LsShmHash *getHash() const { return m_pHash; }
18 |
19 | private:
20 | LsShmHash *m_pHash;
21 |
22 | LS_NO_COPY_ASSIGN(LsShmHashObserver);
23 | };
24 |
25 | #endif // LSSHMHASHOBSERVER_H
26 |
--------------------------------------------------------------------------------
/src/socket/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 | INCLUDE( ${PROJECT_SOURCE_DIR}/CMakeModules/common.cmake)
3 |
4 |
5 | SET(socket_STAT_SRCS
6 | reuseport.cpp
7 | gsockaddr.cpp
8 | hostinfo.cpp
9 | tcpsockopt.cpp
10 | tcpserversocket.cpp
11 | tcpconnection.cpp
12 | streamsocket.cpp
13 | serversocket.cpp
14 | coresocket.cpp
15 | )
16 |
17 | add_library(socket STATIC ${socket_STAT_SRCS})
18 |
19 |
--------------------------------------------------------------------------------
/src/socket/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libsocket.a
3 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
4 | libsocket_a_METASOURCES = AUTO
5 |
6 | libsocket_a_SOURCES = reuseport.cpp gsockaddr.cpp hostinfo.cpp tcpsockopt.cpp tcpserversocket.cpp tcpconnection.cpp \
7 | streamsocket.cpp serversocket.cpp coresocket.cpp
8 |
9 |
10 | ####### kdevelop will overwrite this part!!! (end)############
11 |
--------------------------------------------------------------------------------
/src/socket/filecntl.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 | #include "filecntl.h"
19 |
20 |
--------------------------------------------------------------------------------
/src/socket/ipv4addr.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 | #include "ipv4addr.h"
19 |
--------------------------------------------------------------------------------
/src/socket/reuseport.h:
--------------------------------------------------------------------------------
1 |
2 | #ifndef __REUSEPORT_H__
3 | #define __REUSEPORT_H__
4 |
5 | #include
6 |
7 | class ReusePortFds : public TObjArray
8 | {
9 | public:
10 | ReusePortFds()
11 | {}
12 | ~ReusePortFds()
13 | { close(); }
14 | int passFds(const char *type, const char *addr, int target_fd);
15 | int getFdCount(int* maxfd);
16 |
17 | int getActiveFd(int seq, int *n);
18 |
19 | int shrink(int size);
20 |
21 | void close();
22 | };
23 |
24 | #endif //__REUSEPORT_H__
25 |
26 |
--------------------------------------------------------------------------------
/src/spdy/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(spdy_STAT_SRCS
7 | spdyprotocol.cpp
8 | spdyconnection.cpp
9 | spdystream.cpp
10 | spdyzlibfilter.cpp
11 | spdystreampool.cpp
12 | spdydebug.cpp
13 | )
14 |
15 | add_library(spdy STATIC ${spdy_STAT_SRCS})
16 |
17 |
--------------------------------------------------------------------------------
/src/spdy/Makefile.am:
--------------------------------------------------------------------------------
1 | noinst_LIBRARIES = libspdy.a
2 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
3 | libspdy_a_METASOURCES = AUTO
4 |
5 | libspdy_a_SOURCES = spdyprotocol.cpp spdyconnection.cpp spdystream.cpp \
6 | spdyzlibfilter.cpp spdystreampool.cpp \
7 | spdydebug.cpp
8 |
9 | noinst_HEADERS =
10 |
--------------------------------------------------------------------------------
/src/ssi/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(ssi_STAT_SRCS
7 | ssiengine.cpp
8 | ssiconfig.cpp
9 | ssiruntime.cpp
10 | ssiscript.cpp
11 | ../http/requestvars.cpp
12 | )
13 |
14 | add_library(ssi STATIC ${ssi_STAT_SRCS})
15 |
--------------------------------------------------------------------------------
/src/ssi/Makefile.am:
--------------------------------------------------------------------------------
1 | noinst_LIBRARIES = libssi.a
2 | AM_CPPFLAGS = -I$(top_srcdir)/openssl/include/ -I$(top_srcdir)/include -I$(top_srcdir)/src
3 | libssi_a_METASOURCES = AUTO
4 |
5 | libssi_a_SOURCES = ssiengine.cpp ssiconfig.cpp ssiruntime.cpp ssiscript.cpp ../http/requestvars.cpp
6 |
7 |
--------------------------------------------------------------------------------
/src/sslpp/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 |
4 | ########### next target ###############
5 |
6 | SET(sslpp_STAT_SRCS
7 | sslcontextconfig.cpp
8 | sslengine.cpp
9 | sslcert.cpp
10 | sslcertcomp.cpp
11 | sslerror.cpp
12 | sslconnection.cpp
13 | sslcontext.cpp
14 | sslocspstapling.cpp
15 | sslsesscache.cpp
16 | sslticket.cpp
17 | sslutil.cpp
18 | sslasyncpk.cpp
19 | ocsp/ocsp.c
20 | ls_fdbuf_bio.c
21 | )
22 |
23 | add_library(sslpp STATIC ${sslpp_STAT_SRCS})
24 |
25 |
26 |
--------------------------------------------------------------------------------
/src/sslpp/Makefile.am:
--------------------------------------------------------------------------------
1 | ####### kdevelop will overwrite this part!!! (begin)##########
2 | noinst_LIBRARIES = libsslpp.a
3 |
4 | INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src
5 |
6 | libsslpp_a_METASOURCES = AUTO
7 |
8 | libsslpp_a_SOURCES = sslengine.cpp sslcert.cpp sslerror.cpp sslconnection.cpp \
9 | sslcontext.cpp sslocspstapling.cpp sslsesscache.cpp \
10 | sslticket.cpp sslutil.cpp sslcontextconfig.cpp ocsp/ocsp.c ls_fdbuf_bio.c \
11 | sslasyncpk.cpp sslcertcomp.cpp
12 |
13 |
14 | EXTRA_DIST = sslcontext.cpp sslcontext.h sslconnection.cpp sslconnection.h \
15 | sslerror.cpp sslerror.h sslcert.cpp sslcert.h sslengine.cpp sslengine.h \
16 | sslutil.cpp sslutil.h sslcontextconfig.cpp \
17 | sslcontextconfig.h ls_fdbuf_bio.h ls_fdbuf_bio.c \
18 | sslasyncpk.h sslasyncpk.cpp sslcertcomp.cpp sslcertcomp.h
19 |
20 |
21 | ####### kdevelop will overwrite this part!!! (end)############
22 |
--------------------------------------------------------------------------------
/src/thread/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | cmake_minimum_required(VERSION 3.0)
3 |
4 |
5 | ########### next target ###############
6 |
7 | SET(thread_STAT_SRCS
8 | mtnotifier.cpp
9 | pthreadcond.cpp
10 | pthreadmutex.cpp
11 | pthreadworkqueue.cpp
12 | thread.cpp
13 | workcrew.cpp
14 | worker.cpp
15 | crewworker.cpp
16 | offloader.cpp
17 | )
18 |
19 | add_library(thread STATIC ${thread_STAT_SRCS} )
20 |
21 |
--------------------------------------------------------------------------------
/src/thread/Makefile.am:
--------------------------------------------------------------------------------
1 | noinst_LIBRARIES = libthread.a
2 |
3 | INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src
4 |
5 | libthread_a_METASOURCES = AUTO
6 |
7 | libthread_a_SOURCES = mtnotifier.cpp pthreadcond.cpp pthreadmutex.cpp \
8 | pthreadworkqueue.cpp thread.cpp workcrew.cpp \
9 | worker.cpp crewworker.cpp offloader.cpp
10 |
11 | noinst_HEADERS =
12 |
13 |
--------------------------------------------------------------------------------
/src/thread/worker.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 | #include
19 |
--------------------------------------------------------------------------------
/src/util/gnew.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 |
--------------------------------------------------------------------------------
/src/util/gpointerlist.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 |
19 |
--------------------------------------------------------------------------------
/src/util/itimer.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 | #include "itimer.h"
19 |
20 |
--------------------------------------------------------------------------------
/src/util/pool.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 |
--------------------------------------------------------------------------------
/src/util/tsingleton.cpp:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 |
--------------------------------------------------------------------------------
/support/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | if (${CMAKE_HOST_SYSTEM_NAME} MATCHES "Linux")
4 | add_subdirectory(unmount_ns)
5 | add_subdirectory(cmd_ns)
6 | endif()
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/support/Makefile.am:
--------------------------------------------------------------------------------
1 | SUBDIRS = unmount_ns
2 |
--------------------------------------------------------------------------------
/support/cmd_ns/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 2.8)
2 |
3 | add_definitions(-DNOT_LSCGID)
4 |
5 | SET(cmd_ns_SRCS
6 | cmd_ns.c
7 | nsopts.c
8 | nspersist.c
9 | nsutils.c
10 | ns.c
11 | )
12 |
13 | include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/extensions/cgi)
14 |
15 | add_executable(cmd_ns ${cmd_ns_SRCS} )
16 |
17 | target_link_libraries(cmd_ns
18 | rt )
19 |
20 |
21 |
--------------------------------------------------------------------------------
/support/cmd_ns/ns.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/ns.c
--------------------------------------------------------------------------------
/support/cmd_ns/nsopts.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/nsopts.c
--------------------------------------------------------------------------------
/support/cmd_ns/nspersist.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/nspersist.c
--------------------------------------------------------------------------------
/support/cmd_ns/nsutils.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/nsutils.c
--------------------------------------------------------------------------------
/support/unmount_ns/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0)
2 |
3 | add_definitions(-DNOT_LSCGID)
4 |
5 | SET(unmount_ns_SRCS
6 | unmount_ns.c
7 | nsopts.c
8 | nspersist.c
9 | nsutils.c
10 | ns.c
11 | )
12 |
13 | include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/extensions/cgi)
14 | #link_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../third-party/lib/)
15 |
16 | add_executable(unmount_ns ${unmount_ns_SRCS} )
17 |
18 | target_link_libraries(unmount_ns rt)
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/support/unmount_ns/Makefile.am:
--------------------------------------------------------------------------------
1 | bin_PROGRAMS = unmount_ns
2 |
3 | unmount_ns_SOURCES = unmount_ns.c \
4 | nsopts.c \
5 | nspersist.c \
6 | nsutils.c \
7 | ns.c
8 |
9 |
10 | AM_LDFLAGS = $(OPENSSL_LDFLAGS) -L/usr/lib -L/usr/local/lib -L/usr/lib64
11 | AM_CPPFLAGS = -std=c++0x -I$(top_srcdir)/ssl/include/ -I$(top_srcdir)/src/extensions/cgi -I$(top_srcdir)/include -I$(top_srcdir)/src $(PCRE_CFLAGS) $(EXPAT_CFLAGS)
12 | AM_CXXFLAGS = -std=c++0x
13 |
--------------------------------------------------------------------------------
/support/unmount_ns/ns.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/ns.c
--------------------------------------------------------------------------------
/support/unmount_ns/nsopts.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/nsopts.c
--------------------------------------------------------------------------------
/support/unmount_ns/nspersist.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/nspersist.c
--------------------------------------------------------------------------------
/support/unmount_ns/nsutils.c:
--------------------------------------------------------------------------------
1 | ../../src/extensions/cgi/nsutils.c
--------------------------------------------------------------------------------
/test/asan_run:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | SYMBOLIZER=$(ls -l /usr/lib/llvm-*/bin/llvm-symbolizer | tail -1 | sed s'/.*\/usr/\/usr/')
3 | #export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-4.0/bin/llvm-symbolizer
4 | export ASAN_SYMBOLIZER_PATH=$SYMBOLIZER
5 | # keep running:
6 | export ASAN_OPTIONS="halt_on_error=0:strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1"
7 | export TSAN_OPTIONS="history_size=7 suppressions=../thread_sanitizer_suppress"
8 | # get a core dump:
9 | #ulimit -c unlimited
10 | #export ASAN_OPTIONS=abort_on_error=1
11 | exec $*
12 |
--------------------------------------------------------------------------------
/test/http/httprangetest.h:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * Open LiteSpeed is an open source HTTP server. *
3 | * Copyright (C) 2013 - 2022 LiteSpeed Technologies, Inc. *
4 | * *
5 | * This program is free software: you can redistribute it and/or modify *
6 | * it under the terms of the GNU General Public License as published by *
7 | * the Free Software Foundation, either version 3 of the License, or *
8 | * (at your option) any later version. *
9 | * *
10 | * This program is distributed in the hope that it will be useful, *
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 | * GNU General Public License for more details. *
14 | * *
15 | * You should have received a copy of the GNU General Public License *
16 | * along with this program. If not, see http://www.gnu.org/licenses/. *
17 | *****************************************************************************/
18 |
--------------------------------------------------------------------------------
/test/lsr/asan.exp.stdout:
--------------------------------------------------------------------------------
1 | hello world!
2 | end!
3 |
--------------------------------------------------------------------------------
/test/lsr/valgrind.exp.stdout:
--------------------------------------------------------------------------------
1 | hello world!
2 | end!
3 |
--------------------------------------------------------------------------------
/test/serverroot/cert/server.key:
--------------------------------------------------------------------------------
1 | -----BEGIN RSA PRIVATE KEY-----
2 | Proc-Type: 4,ENCRYPTED
3 | DEK-Info: DES-EDE3-CBC,CFBDAD4BCBCE1E6D
4 |
5 | 1m4SFZYXPiTatfs1d1EsLzSppbP251NNjAD+LRHZl7ZePKs88QoL7dNB42cgkctR
6 | jXaFAm1C0/cIxiSOXt5OzCH+31wgSzeE2eUu3e/PmZ40J0qNX6gM4X0JtZb/7zQu
7 | aqUGRhzt4NRg0OaISoOl/xZW/VY2d5TrCWs76t+bVGDDgENYWJ/OL1E2fW4vZ68i
8 | IRdpNs+P3EXgz9QgzmqRd0oL+Bl0Uu9MSGRcYWY+p5KPnlUQz3KmuMZtqlSgqJCE
9 | +mL1DjW0hihIj0IYP44y70DCJ10G9jVK0P9lQg1dlmpuHZShQ9mxrlMRacZ8cK0R
10 | vMRg6KbI9Scq0Gn1Rb9i/iZxY686zHHIxKFxG54e0rgMj3p8pS5SvyfUT+g/GrCk
11 | 8GezbMLqBAmqdCxy5uSVOnepzMsI5xQ2YscYQwP1E5tHGdHRT5NMPlZ6cGvU+PNU
12 | W5f007O3Jc/YZ59va3x8KJl8RKcMkxddjRePP86JcY1VuMzT+RbsHp4jj4LXq9Lf
13 | DiTrKn7BnFGzhliCn5LhtFM9QRVow6UNPCA/Pd4rbC/ahn/utOLb4Ho3aIDPhJO5
14 | oG5jcAKCZBAQQ7/QNtl56Oi7zfjrOzYyLzMZLNdMxHMZ4mjZpIz1nXKgGGJiDYZL
15 | k6iwsC3BArxrNyBNdiGohTTivNb91zXnlkYcTKwUzdTAoA/efUtcRDTV9oxX3QY5
16 | QNnxyTmUHMjtYMYFAFoQXWuiNCJ9Pk0/oqhjXUdTnlUhvUyYsHRK/qC4MdpYrmmR
17 | JPU0+SeUaYgYDOgooHYhO+mTBkQtkdrpYDh/8W7DU563KDqvdjQQZw==
18 | -----END RSA PRIVATE KEY-----
19 |
--------------------------------------------------------------------------------
/test/serverroot/cert/server.pem:
--------------------------------------------------------------------------------
1 | -----BEGIN RSA PRIVATE KEY-----
2 | MIICXQIBAAKBgQDRqNuwMJbrGq6Wzd8SZ1dwnRLh25PX1TeD53aTk3sl4eHbFm57
3 | nU9LDMJRErLbu8CoQMztb1TP6VxiB2q1U4uDwVBp6Kt+o3+yFKFQ6G694hOiPPy/
4 | VMW7kSVXIvyz6tFyF0JHRFgxUyV2IWTIzpq/8fil1ChXmxOKpKkZUyv4EwIDAQAB
5 | AoGAPZ1eUr003QsOXAtMj2AHdnTy46VgIYHrurv/QQeKnWtwsK468eEdOHUbdjAE
6 | mEbpK4k/sFeTmTZ/i9+aIIfY6+sQnvecGHkcc6m/wPoBPeL9X+mDNNM5bXkU1mNN
7 | 8dCAHd+ocTqYgHABC5PC+bCe1wPkPOMZZsJ159j8Iehx9gECQQD5F1tvcSM8OhO3
8 | KSX/Sbsl5vRqpqrZB0lZq1gCZiLwwJhVobPKc+EZaYcsJaFF9kfB1jQJZjRlb51F
9 | PZ8KfopTAkEA13mFdWmRgvWysuq06MvMLrTa0Nv6IiCVYUnVjHW/Tl0B9CiQ4jxs
10 | nC4WxP15QdEU43o2kpVYl1pQLA+DXiijQQJAZMA5z52nbtje2JrgL54XAIGmIu0+
11 | 9YGo/Yf8lRvSziZYd2psWlr8lVbFwemGjdHLvG9zpMmeL9kxd6wxBAGi2QJBAJqz
12 | 0AL9eZCp8NQOOTcO4xkBljzwQwVvmXCRPzYqb+DGXBm9alBUC7KSUJy8U+vSPooX
13 | +8iAW2vHVtpbhPj8ekECQQC03CiaB86upu8R5s/owADzKj16DGExZJip8k5NBICV
14 | EwzkttpByVIIoI+WAJ8pagK333u06CX3kxDtVz5NZPxM
15 | -----END RSA PRIVATE KEY-----
16 |
--------------------------------------------------------------------------------
/test/serverroot/cgi-bin/helloworld:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | date=`date -u '+%a, %d %b %Y %H:%M:%S %Z'`
4 |
5 | cat << EOF
6 | Content-type: text/plain
7 | Expires: $date
8 |
9 | Hello World
10 |
11 | EOF
12 |
13 |
--------------------------------------------------------------------------------
/test/serverroot/cgi-bin/large:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | date=`date -u '+%a, %d %b %Y %H:%M:%S %Z'`
4 |
5 | cat << EOF
6 | Content-type: text/html
7 | Expires: $date
8 |
9 | EOF
10 |
11 | cat ../wwwroot/test.html
12 |
--------------------------------------------------------------------------------
/test/serverroot/cgi-bin/nobody:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | cat << EOF
4 | Content-type: text/plain
5 |
6 | EOF
--------------------------------------------------------------------------------
/test/serverroot/cgi-bin/phpinfo.php:
--------------------------------------------------------------------------------
1 | #!./php-cgi
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/test/serverroot/cgi-bin/printenv:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | date=`date -u '+%a, %d %b %Y %H:%M:%S %Z'`
4 |
5 | cat << EOF
6 | Content-type: text/plain
7 | Expires: $date
8 |
9 | CGI printenv
10 |
11 | EOF
12 |
13 | echo 'Date:'
14 | date
15 | echo
16 | echo 'Id:'
17 | id
18 | echo
19 | echo 'Env:'
20 | printenv
21 | echo
22 | if [ "$CONTENT_LENGTH" != "" ] ; then
23 | if [ "$CONTENT_LENGTH" -ne 0 ] ; then
24 | echo 'Input:'
25 | echo
26 | dd bs=1 count=$CONTENT_LENGTH
27 | echo
28 | fi
29 | fi
30 |
--------------------------------------------------------------------------------
/test/serverroot/cgi-bin/testpost.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl -w
2 | use strict;
3 | use CGI qw(:standard escapeHTML);
4 |
5 | #get parameter
6 |
7 | my $id = param('textfield');
8 | my $hidden = param('hiddenField');
9 | my $passwd = param('textfield2');
10 | my $suggest = param('textfield3');
11 | my $radio = param('radiobutton');
12 | my $select = param('select');
13 | # my $file = param('uploadfile');
14 |
15 | print header(), start_html("Test post back"),
16 | p("id = ", tt(escapeHTML($id))),
17 | p("passwd = ", tt(escapeHTML($passwd))),
18 | p("hidden = ", tt(escapeHTML($hidden))),
19 | p("suggest = ", tt(escapeHTML($suggest))),
20 | p("radio = ", tt(escapeHTML($radio))),
21 | p("select = ", tt(escapeHTML($select))),
22 | # p("file = ", tt(escapeHTML($file))),
23 | end_html();
24 |
--------------------------------------------------------------------------------
/test/serverroot/htpasswd:
--------------------------------------------------------------------------------
1 | test:kF2EDBE2Ux8sQ
2 | user1:HZ.U8kgjnMOHo
3 |
--------------------------------------------------------------------------------
/test/serverroot/logs/dummy:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/test/serverroot/logs/dummy
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/cgipost.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CGITest
5 |
6 |
7 |
8 |
9 | This is CGI post test.
10 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/cgipost1.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CGITest
5 |
6 |
7 |
8 |
9 | This is CGI post test.
10 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/error404.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Page Not Found
4 |
5 |
6 |
7 | Request Page Not Found
8 | This is a custom error page for 404 status.
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/fcgipost.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CGITest
5 |
6 |
7 |
8 |
9 | This is CGI post test.
10 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/hello.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | PHP Test
4 |
5 |
6 | "; ?>
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/htatest/.htaccess:
--------------------------------------------------------------------------------
1 | #test access file
2 | AuthName testHTAccess
3 | AuthType basic
4 | AuthUserFile /home/gwang/proj/dev/httpd/httpd/serverroot/htpasswd
5 | AuthGroupFile /home/gwang/proj/dev/httpd/httpd/serverroot/htgroup
6 |
7 | redirect /htatest/redir/temp0 /
8 | redirect temp /htatest/redir/temp1 /
9 | redirect permanent /htatest/redir/perm1/ /
10 | redirect seeother /htatest/redir/seeother /
11 | redirect gone /htatest/redir/gone /gone
12 |
13 | redirectTemp /htatest/redir/temp2 /
14 | redirectPermanent /htatest/redir/perm2 /
15 |
16 | order allow,deny
17 | allow from 127.0.0.1
18 | deny from all
19 |
20 |
21 | order allow,deny
22 | deny from all
23 |
24 |
25 |
26 | ForceType text/html
27 |
28 |
29 |
30 | order deny,allow
31 | allow from all
32 |
33 |
34 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/htatest/test/sub1/.htaccess:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/test/serverroot/wwwroot/htatest/test/sub1/.htaccess
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/htatest/test/sub1/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Test page
7 |
8 |
9 |
10 |
11 |
This is a test page
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/htatest/test/sub2/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Test page
7 |
8 |
9 |
10 |
11 |
This is a test page
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/htatest/test_htaccess:
--------------------------------------------------------------------------------
1 | #test access file
2 | AuthName testHTAccess
3 | AuthType basic
4 | AuthUserFile /home/gwang/proj/dev/httpd/httpd/serverroot/htpasswd
5 | AuthGroupFile /home/gwang/proj/dev/httpd/httpd/serverroot/htgroup
6 |
7 | redirect /htatest/redir/temp0 /
8 | redirect temp /htatest/redir/temp1 /
9 | redirect permanent /htatest/redir/perm1/ /
10 | redirect seeother /htatest/redir/seeother /
11 | redirect gone /htatest/redir/gone /gone
12 |
13 | redirectTemp /htatest/redir/temp2 /
14 | redirectPermanent /htatest/redir/perm2 /
15 |
16 | order allow,deny
17 | allow from 127.0.0.1
18 | deny from all
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Test page
7 |
8 |
9 |
10 |
11 |
This is a test page
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/phpinfo.php:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/phppost.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CGITest
5 |
6 |
7 |
8 |
9 | This is PHP post test.
10 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/protected/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Test page
7 |
8 |
9 |
10 |
11 |
This is a protected page
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/small.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Test page
7 |
8 |
9 |
10 |
11 |
This is a test page
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/temp.esi:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | and or ><
5 |
6 |
7 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/test/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Test page
7 |
8 |
9 |
10 |
11 |
This is a test page
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/test/sub1/.htaccess:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/test/serverroot/wwwroot/test/sub1/.htaccess
--------------------------------------------------------------------------------
/test/serverroot/wwwroot/test/sub2/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Test page
7 |
8 |
9 |
10 |
11 |
This is a test page
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/thread_sanitizer_blacklist:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litespeedtech/openlitespeed/252f18c1c56fcd6ccbea17ddd9d27696470eed31/thread_sanitizer_blacklist
--------------------------------------------------------------------------------
/thread_sanitizer_suppress:
--------------------------------------------------------------------------------
1 | # suppressions file for ols
2 | deadlock:HttpSession::lockMtRace
3 | deadlock:HttpSession::trylockMtRace
4 | deadlock:HttpSession::unlockMtRace
5 |
--------------------------------------------------------------------------------