├── .github └── workflows │ └── test-wasm_runtime.yml ├── .gitignore ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── NOTICE ├── README.md ├── dist └── .gitignore ├── docs └── slides │ ├── architecture.png │ └── workflow.png ├── examples ├── README.md ├── conf │ └── cgi_demo.conf ├── exploit-examples │ ├── Archive_Tar │ │ ├── Dockerfile.archive_tar │ │ └── run.sh │ └── README.md ├── rust-src │ ├── hello_wasm │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ └── src │ │ │ └── main.rs │ └── list_dir │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ └── src │ │ └── main.rs └── wasm_modules │ ├── php-scripts │ ├── drupal-10-zero-setup │ │ ├── .htaccess │ │ └── sites │ │ │ └── default │ │ │ └── settings.php │ ├── drupal-9-zero-setup │ │ ├── .htaccess │ │ └── sites │ │ │ └── default │ │ │ └── settings.php │ ├── drupal-setup │ │ ├── .htaccess │ │ └── sites │ │ │ └── default │ │ │ ├── default.services.yml │ │ │ ├── default.settings.php │ │ │ ├── files │ │ │ ├── .ht.sqlite │ │ │ ├── .htaccess │ │ │ ├── 2023-05 │ │ │ │ └── drupal_loves_wasm.png │ │ │ ├── config_c61ExfnW9HnJMHWuTF4-0Xi_mB6F1AB4TG_cJ_B7ja_0Dg0IrRorP9zuoN1d4CLDEqhdeq2O4g │ │ │ │ └── sync │ │ │ │ │ └── .htaccess │ │ │ ├── css │ │ │ │ ├── css_01J2lbFaMZ1OhTgA1yugqAeo2Tqfnz99SxSx6xtWfys.css │ │ │ │ ├── css_9pTlwap6T9TFW-w1BJm1YiuyTssdCjF5UFH1widU4mA.css │ │ │ │ ├── css_CruBdm0IRex3tq90-tO75K58-3Ea9141RLoxQcMj5Bg.css │ │ │ │ ├── css_PWanMhUDpZQfuCpsozG3E83XzsQE4BjVAZLhvU9I7ag.css │ │ │ │ ├── css_R6bBjXOMqZmE4fglaJd9p_n5W2cwKaQ07q6hpsWbCWs.css │ │ │ │ ├── css__1f05uQ7unB6vwl5Cd4fPYWLTSUozeAGQoKW5Mf5pXU.css │ │ │ │ ├── css__om8psNHC6cdz1JS5DByly8HItZof_tDPahh4LenZi4.css │ │ │ │ ├── css_mTPXh1uVX8B2QDsG4JsJpF8XMZsC9yLmgxywTnnxmAg.css │ │ │ │ ├── css_rdE74aLF0KPq-PpsfnKIQann4BVSD5Vgc2R6DWOjJZc.css │ │ │ │ ├── css_uImecRygwuLzNnOSp8HZ3TLP2YiO6TzmSUvTuYqMxDE.css │ │ │ │ ├── css_uhx60XgSsZW0YKuOSgdZF4efpbjgsLzt9z6WxbvzX_Q.css │ │ │ │ ├── css_yxfHOB4JwWV2pIE-sOuJhVEfkr33smtS4OPoLv9OZa8.css │ │ │ │ └── css_z9Pprg2aVzf9s34y9wPL9ZqSeQJAg8xr8wimXVHl8kk.css │ │ │ ├── js │ │ │ │ ├── js_30SfVZlqUbVtmCs0sl1pxSbXY3wuqp8pVC5eovAI10M.js │ │ │ │ ├── js_4rC_hK5Fv_k_pifcQHQ-0vu1r5_GBkGBMSL6JsxY87g.js │ │ │ │ ├── js_FtZNhfzXoxWHJcWruMmLMsG2Csfj1Z-EIriTBP8ckIA.js │ │ │ │ ├── js_L62Gu5o6Vn7QaMk7pVNrlRo_nfTPpf_J5doazXXaI0s.js │ │ │ │ ├── js_UHgjWSrztOkur-Rn4AFDGaRJdjC0gxZBarwi6ZD4snw.js │ │ │ │ ├── js_X60fEEPtOkXi0EAUY976L4jd1mC_7slyd81YikKyoFs.js │ │ │ │ ├── js_XYwq0bldv40GsqJqXGQpv5M-2uZTFnwv-Aj3-6iBc1Y.js │ │ │ │ ├── js_Y151moVVESM9BeoCt8M3cSJ2_x_o14H43dXy6nGL6JM.js │ │ │ │ ├── js_iSAFfT8oFK4fLoAcadAKXqQfUv4lVbKxcoytY89V06E.js │ │ │ │ └── js_icI2wEbD-2GGv1r0FcGAiv1_rqr9CVBwvZ1U_SSv97k.js │ │ │ ├── php │ │ │ │ └── twig │ │ │ │ │ ├── .htaccess │ │ │ │ │ ├── 6453d59dbab74___string_template__15e4c2_2b1TjIgTlWJ72ju48u__4RHE3 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── bEbdmFFLuSLGDuDKpCEm_XBXtXicOWTa52zY-h4IJ_g.php │ │ │ │ │ ├── 6453d59dbab74_block--local-actions-bloc_B1UDrOSlLsWPfwuyXrKpSTEtk │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── FctQAxDtbI0RvXxf88IWQgeWclGCDB2j_ugsIQ_ccEA.php │ │ │ │ │ ├── 6453d59dbab74_block--local-tasks-block._n9Q9sQhRPaH1eZ8Q2a2j9kAUR │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── PAcspIzAR84439FZZ7taI2GAFzKq5T-zYB7irwsLnWo.php │ │ │ │ │ ├── 6453d59dbab74_block--page-title-block.h_q36zt3oP2oV4rBSyCeClJkmSl │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── TWTWkyjJ6SXAnzJ0GfbDynslKBfVFYm0AOab-lodq-Q.php │ │ │ │ │ ├── 6453d59dbab74_block--primary-menu--plug_BfufKLzNzGCJ8HETnp-X-c9Ed │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── pJqXuQwOyrkhiUoP5QOmu7in6UAvtRDy4-gGWWOkWu4.php │ │ │ │ │ ├── 6453d59dbab74_block--secondary-menu--pl_3OorbWIU87Hm14wdJScvEVz_t │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── bIdi-vDthyHInRRTcLyMVwES4ud0StzBJEUEEAgP-F4.php │ │ │ │ │ ├── 6453d59dbab74_block--secondary-menu.htm_-SbsObRETaHQ27eggOVH35gOj │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── OA8yu_L4-EQYlRKPa75x80_EZE5hleG3YPAYzS9J5qA.php │ │ │ │ │ ├── 6453d59dbab74_block--system-branding-bl_zqOU_mCQL-44DQ-MCDVcEB0kB │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── xbUK7oxYV32RMIbfVZ_R9CJBBnwT4Hn0bWh8L6jaaq4.php │ │ │ │ │ ├── 6453d59dbab74_block--system-menu-block._HKDaiHc9YrBfTGyPYhPG5TEZS │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── cV_42OpTUJplPzp4uHZ6e5iADffBFEdjMpBP0YfobWU.php │ │ │ │ │ ├── 6453d59dbab74_block--system-messages-bl_OjSnGGsGKrRqRIomg2VZ1tPzj │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── LPnOLBJ5klVSQTk3O-Pq7DThYar5IrzlEIqnUQBZZSI.php │ │ │ │ │ ├── 6453d59dbab74_block--system-powered-by-_MRJZ_Vo0VFGVMLit7h6tCmMVq │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── rBtcta2mCp52YO9SzryhPB6_XT4WMGVAr0sy1WOKjzg.php │ │ │ │ │ ├── 6453d59dbab74_block.html.twig_YkwJOlT6-Eq3BLutXWTO1er4Y │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── B-AuQGEUzjG2OwNWJIim7mQPCFCv3NumuRM87AdHyPE.php │ │ │ │ │ ├── 6453d59dbab74_block.html.twig_i5o1jehVir1SlkoXX3v5D_42T │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── TsFGQ9-egjt38C8BaECWfrZW1LZcx26QROH86rVkIx4.php │ │ │ │ │ ├── 6453d59dbab74_block.html.twig_jCDM08Kk8G2R4C9Hu1zjhKu4t │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── eefF0fIx8sbPHx8VNmF-461tVauXGiQ6ln7koZ0W-sU.php │ │ │ │ │ ├── 6453d59dbab74_breadcrumb.html.twig_17Q2lTshBbs8LUY2JTT9aoEr- │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Ef27t7nIDmMnEcKdGOz8lV5ZLNeVlk-wpajQ5XiZS24.php │ │ │ │ │ ├── 6453d59dbab74_breadcrumb.html.twig_6N-7svMlN2Cu6TSqAtwUBJMQL │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 9mJ5W1VTaYhXyK8m_NGkr8QceEA_om-GltpwYR39JJA.php │ │ │ │ │ ├── 6453d59dbab74_container--text-format-fi_9fM5jev1UDk0NUsLncc5sgu39 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── mhdSQ9U6jKxtzjLXtNQD6KPfWK-CClYt96F7FJlusrc.php │ │ │ │ │ ├── 6453d59dbab74_container--text-format-fi_P4GdZ7O6BUfQzaZE_snK1ceIc │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── TPSMyfyGgvOQ0Gi0VBNvJKgSnfQLBszmUjmKXO5gKz8.php │ │ │ │ │ ├── 6453d59dbab74_container--text-format-fi_w5ccMmthTxK-vKMTIaNJ73mDz │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── TD4EffMfP1w_QiCK3Gv6dH7V6IhB2NsCrf0TcGWHvK8.php │ │ │ │ │ ├── 6453d59dbab74_container.html.twig_b-v_gKzPXE8-p8MHL8Sf2w6WX │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── T6z8RTlQul4f3TlU9ta-LVoWfF9hwtzeAUV0NU3xHXU.php │ │ │ │ │ ├── 6453d59dbab74_container.html.twig_ktmFe3YIsr-v4jOVjFIEZlshZ │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── waAesJkoCxlLV7fQu9MdWERwPsIqoKIbsoekonRx6Q8.php │ │ │ │ │ ├── 6453d59dbab74_datetime-form.html.twig_yIBdlB8uEwTxkmXrOTCOwPDFL │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── eHyJbTWj8ncnnh7sDm4pWiLjoFy6rWsgf0wr4-7Lw24.php │ │ │ │ │ ├── 6453d59dbab74_datetime-wrapper.html.twi_eFO5tnzCmJqDqtVgKc6l6ers1 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── gvsAcGPCiBBy0USX7suuMYabpI8ii21-97xTcfIr0ME.php │ │ │ │ │ ├── 6453d59dbab74_details.html.twig_Ql2A5d0qxkHuJkQIPNUGQYNXC │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── N8Aw6q1g9-xXcD5ZBg9evaUvI9eFQaqDVpepJiE9STc.php │ │ │ │ │ ├── 6453d59dbab74_entity-add-list.html.twig_8HcQBpAZ-HqH2L-yDskpwHcX- │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Ee0AJADsnyKNl84pDO_xYZs4lKycWeSjgQMqc8aQCtU.php │ │ │ │ │ ├── 6453d59dbab74_feed-icon.html.twig_INKpAjBH2C1fYc-08GB8qDmPy │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 67sYyuu3Buf2C5mhACVdWvnE7yw71YcPZoHj0GsAE5o.php │ │ │ │ │ ├── 6453d59dbab74_field--comment.html.twig_i-9KfYm_fK4T-zxYGjt0-qg4u │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── i_x_VMZUNVlKd1_FrTr7WpaQq6DFOglsXewPZgo0J5Y.php │ │ │ │ │ ├── 6453d59dbab74_field--node--created.html_WyU7mp05Q3SINDNWDPYSH2RXH │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── nPg_F4FVUv4r9MartY29EKZqunxzipSDtpUsxO71MYA.php │ │ │ │ │ ├── 6453d59dbab74_field--node--field-image._9bukIdljvPcWFBRFubcBoptA0 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── xr7oXIgO9f1SFgzdhYSH5JlfbKAxPkLMyhJ8ldaVvsA.php │ │ │ │ │ ├── 6453d59dbab74_field--node--title.html.t_pn6ithM9s-G7321BnRqw_dSF6 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── nVuc9T6KLx3-Zw6trBE6Q4nFwvhZmUq5vodQAVDtJ4A.php │ │ │ │ │ ├── 6453d59dbab74_field--node--uid.html.twi_z15gTsLqv9Kjzud_jIspVaLVh │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── GlG5-SDx0cgfPAXJ3biy6z1Tu5vQFAzyUaFU0-NvksQ.php │ │ │ │ │ ├── 6453d59dbab74_field--text-with-summary._J7ycPtwIkXjJ9hcRCGl-Zdl_f │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── sR51RxZM91LM2heFihHoMnsagod8LofwzLzTV5qiW48.php │ │ │ │ │ ├── 6453d59dbab74_field--text.html.twig_xJR90Whx-omqMST14A48pDpDm │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── obinYbdAZngiclzv_uHGsR_Jxufvbx8TGuF4afJxVHM.php │ │ │ │ │ ├── 6453d59dbab74_field-multiple-value-form_8a8Me_JlRRBFKo9CgOcwRS_2x │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── EojHdZaYLwccdwItWzrRMavRMIz2fESp8_xEhM8DURE.php │ │ │ │ │ ├── 6453d59dbab74_field-multiple-value-form_Mcwq8Mm8HaMeJyH_ASg1UgJno │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── HZKcZmuB8rFuq024UmERfSCONgy3APHFgauU0X3HgwI.php │ │ │ │ │ ├── 6453d59dbab74_field.html.twig_fJolV_81tBxzJ4_Bu9SGdhSjW │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── vWPlrjAGR_zj6aaYD1ODqgmwAnHBipUGJYGfvswrQW0.php │ │ │ │ │ ├── 6453d59dbab74_fieldset.html.twig_3lfIFWVhAhLoUa4Byv-KP7AUp │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 9mlPbYNxym2OpFBB4crTrAJGJj6LegQRfDGHOAqEF3c.php │ │ │ │ │ ├── 6453d59dbab74_fieldset.html.twig_LkHPNgFMvwWcO3HAGy-998MTs │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 5Dx6Otr5tEfsesTgLQi8oPJnjK-_07IxVNuPK2gmpps.php │ │ │ │ │ ├── 6453d59dbab74_file-link.html.twig_UnKbKHh83pvnerpDGnRlX_fCU │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── ya611nl0IxjxLEfCatI66qpl-W8HG4-vLdW507ODmMM.php │ │ │ │ │ ├── 6453d59dbab74_file-managed-file.html.tw_kNvREOqu4-qmlmIlaaMSanE0v │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── JPkrt2n2M915YKO0aXKL7fgSYETP6Vmu6rd25feLXhM.php │ │ │ │ │ ├── 6453d59dbab74_file-upload-help.html.twi_oRL1l-Zj2xilvKee1xfK5AkKX │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── OfvuezFp7R11Yx7I8biixdazoLorWy2rRNB3w_Wh8As.php │ │ │ │ │ ├── 6453d59dbab74_filter-guidelines.html.tw_9MzrGtNohvCPynAKcvFS3FmZ0 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── KDXzUfVlkfEqsHDB6h6iq20dhU9149b9TZOuA2D-drY.php │ │ │ │ │ ├── 6453d59dbab74_filter-guidelines.html.tw_Pk_2boCQWzpikflq2Pdyd5ZV4 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── GDXHHZrPaZJbBKT4m6P28BH2b1qgMIXpsuyE8SPz3W4.php │ │ │ │ │ ├── 6453d59dbab74_filter-tips.html.twig_e2RLE5UKFcopceHfs4JbxgOmY │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Vjdct46hpYiURRx9zo7atlWpAOijZ30egqB_k0VrN70.php │ │ │ │ │ ├── 6453d59dbab74_filter-tips.html.twig_uy4JUjcjxbzHBcPMZnn8oikUl │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── qO-dYw6GINk8IzjokEpIxadaO0RGR_LVEI_00ui7j6o.php │ │ │ │ │ ├── 6453d59dbab74_form--search-block-form.h_RR4e2Tz1rezZJ3ddYYKAexip4 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Bso9FIN4dNZrbyZhnu_cCFDMARyIjH3n8h5ZsqwzVic.php │ │ │ │ │ ├── 6453d59dbab74_form-element-label.html.t_H0wGAqr6jm5H9vwC86D-kd7u_ │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── _ADqEUySEjhOQ_RDsGU9SPI7xHCacbEexgzecMfmXkQ.php │ │ │ │ │ ├── 6453d59dbab74_form-element-label.html.t__w4E9E5f3ivuu4LlS7r6WJwOJ │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Dewk6KQ87CV537I5BYBDJmVTFUrdDBZx5uCpWMuDZKc.php │ │ │ │ │ ├── 6453d59dbab74_form-element-label.html.t_g0GKupBy7DjYT8zZUi_HkiqDd │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Fh8P0Vo-P5gfyloQMN-AmtklKczWwJxdi8DgdgvVaZ0.php │ │ │ │ │ ├── 6453d59dbab74_form-element.html.twig_CEZkUZ3KMQRDApZZmpaNv_co2 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Hl_DSnOohn9BbFze9w6Qxd-uZEHq7CWc73MUO5p6wcc.php │ │ │ │ │ ├── 6453d59dbab74_form-element.html.twig_MpERPBEw5qBIVm4JQ8FCFGvma │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── HPX0f5C6F7kd_ultfOzrEAF7N5snrkvxu3zRg33RZ0E.php │ │ │ │ │ ├── 6453d59dbab74_form-element.html.twig_OmAaW37-oMDJUOdYlkbp-UL2b │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── BUcbJwUJdaahpjeS3QsyWbELS8mE8swKunjqSDQlqbc.php │ │ │ │ │ ├── 6453d59dbab74_form.html.twig_AnMF-WyLoT8ovEC5kKNGBeMNa │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── lJJpyt2LgNm9-N9AnampUUNGhDpcby0r1Rf-u4NaS1E.php │ │ │ │ │ ├── 6453d59dbab74_form.html.twig_aVY7zMrHbgZjw1Y5aohPOlS-k │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── gVawgxX-Mt_FI57FHx6ZXn0PbDdEUcQo7VALOTtgLqw.php │ │ │ │ │ ├── 6453d59dbab74_get-started.html.twig_bi_EgksRYf6jy-FC98WMffPIx │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── XOXm8tMWzhaR6LqLi5D33ajsGi6QRvclWV7fFXUFb_w.php │ │ │ │ │ ├── 6453d59dbab74_hamburger-menu.svg_WT82dxTMoFnHJhDR_BUGgUwX0 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── HcmUwyVjQanFhXj6prXGH32Di3hXIPolMS5Na3T3v0A.php │ │ │ │ │ ├── 6453d59dbab74_html.html.twig_1SEEg_BXhMOfYiDxHhmaciuCr │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── rwWrShWxr7rBy7gwpKQApIwlWgcRt__wE6LDXFfErj4.php │ │ │ │ │ ├── 6453d59dbab74_html.html.twig_oedor6GEaA1Et3lCRU3OKhCrs │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── dTFvkGF8vljg2ITS3a_y9ylhFdl8eCEafdTL1bwfMnU.php │ │ │ │ │ ├── 6453d59dbab74_html.html.twig_zRm6D5WQ_0jPrmIpjEAVvBF6_ │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 88I20uab7Xs1exyYrVJSHSvSkFJciOFQXL37vtPysng.php │ │ │ │ │ ├── 6453d59dbab74_image-formatter.html.twig_56MtCmJZRPXzoqBR9iTV02Oj3 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── iLSBWUIiZUhURG0Tprnfsjl44LEmxQ9Tk1XEDN3Khe4.php │ │ │ │ │ ├── 6453d59dbab74_image-style.html.twig_hpb6xH4kUSrE1UHX2DV8kDH0g │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── YDkadh9BEZVltsd_-IOS-__nDWqBZc2v-_PqsoJGpkA.php │ │ │ │ │ ├── 6453d59dbab74_image-widget.html.twig_QejUaDkGebASKj_GgOcqR7GT_ │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── lig2146_hIFfqKhKipok6Cn1gOnoTDibjyUh0MrbsYs.php │ │ │ │ │ ├── 6453d59dbab74_image.html.twig_7rb6ysjKRT4F5wIip3dKOUtZ8 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── SKtR7OrC-zgVOxS5nDbBr2wRo3xdR0ACCOEu6amA71s.php │ │ │ │ │ ├── 6453d59dbab74_image.html.twig_9aezPpZ1mqPZjHbcRMMNc31u3 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 4y9KVB4Z_C0NrLgvO--2MTNr3UVHn92PkBOFtH5HULk.php │ │ │ │ │ ├── 6453d59dbab74_input--submit--header-sea_SHX6bhkZjhHWf-HzakpYXWWLN │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── dh2_njjynybHwRwMD0WscLvXxfswxikvSH49yS_ib9E.php │ │ │ │ │ ├── 6453d59dbab74_input.html.twig_LwIEgOnSaUl9GMgSvCPdN8_8k │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── h-LPVEC5oyeUyhwzqG7cu_ZSfjWyYJzVFGKxkichH8A.php │ │ │ │ │ ├── 6453d59dbab74_input.html.twig_aSCBk0jQC4JtewvVLPpq4Jiot │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── vdVfJvwRFfxhMA9NvTdU21U_nZJSbYi4qJEC5vA-x5U.php │ │ │ │ │ ├── 6453d59dbab74_input.html.twig_oEAYaZnOUvWBn3v7K7eK_OMmS │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── arzt0le1JymjocbHtQMiqDpvh7-pOI6k2yRP51CS3Rc.php │ │ │ │ │ ├── 6453d59dbab74_install-page.html.twig_YvEPZY_kMmamIP26nIJuhkvL2 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── PDBriHX_q_8thav3spSMCqfWjGVRZgDp0s1bT4QNuRY.php │ │ │ │ │ ├── 6453d59dbab74_links.html.twig_-TCrVBByj-4SBjeVohHacxtJo │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── ByUl4XcKmXfN2rJr02HyJzLQvsyOxlwvj0z0lj8Uh7Q.php │ │ │ │ │ ├── 6453d59dbab74_links.html.twig_rlED4V0iNp1Zgc1MYjOsCt5QR │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── ccCa5_TspB7nTwSVJwex-fYV3kZU52O3fGn02z6SIX0.php │ │ │ │ │ ├── 6453d59dbab74_maintenance-task-list.htm_W1goqv6yaflsJr3ZdNdJP9USz │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Msef3TEfLC0DsrQxkMXlQ1VYwoe8DqbZC0al9dXO-yA.php │ │ │ │ │ ├── 6453d59dbab74_menu--primary-menu.html.t_1BD0k0sNeJ7xChvj9HpgV4X-w │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── m8b0w872bWGX9u6Mi-oOIRD3yCjVBtY-bMHWpfxfGLA.php │ │ │ │ │ ├── 6453d59dbab74_menu--secondary-menu.html_xmZMMrP-skX0JFNPth0Qg2n_i │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── TPTbEzJcCDnkgC9adsYsrfnZMbw8ML5oybA4vTx3qvc.php │ │ │ │ │ ├── 6453d59dbab74_menu--toolbar.html.twig_mcsy-8XQEHj4xsTfwaoi2EV9l │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── br7QSXLDff3tbwpGBjaMTkPyurIPG6srdsIXa5gub2A.php │ │ │ │ │ ├── 6453d59dbab74_menu-local-action.html.tw_AwOxtfRcrC9imPJU8AW10abhq │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 5fqwRBoc-E_l0L5YoSvJ8nB_0tUKEtEVT1uitTx2eV0.php │ │ │ │ │ ├── 6453d59dbab74_menu-local-task.html.twig_Hn79umq441RVrm6r6JTzXFcZt │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── IFLvDqehfndtOm9UsheV_hL3gfjjIAmW7BVxkKsaVrk.php │ │ │ │ │ ├── 6453d59dbab74_menu-local-task.html.twig_OMy010YO4U8FyNanTI6eBvEwn │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── P0UFQPEZgzc71YmGFFOtyXe4buaWTSbAX8qf5WNhSfU.php │ │ │ │ │ ├── 6453d59dbab74_menu-local-tasks.html.twi_O5jg_0RmOI2NZH0QUD5VmjoOn │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── YADdFUZzv1O0_LveAxNnx65Ro_N7Tv7GEVdjl_BFXBg.php │ │ │ │ │ ├── 6453d59dbab74_menu-local-tasks.html.twi_qH0bfpGzLMsW-AWRcyoYXS_4u │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── X3yOzmBzWEEZo9RR4QnoycoHH2J17LK9M9O7oZPvY8o.php │ │ │ │ │ ├── 6453d59dbab74_node-add-list.html.twig_zL001mIuyMiUPCPr--2n-PT5x │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── JHDieSZF-3lp1M1-yLgmSVF4LrjAy9CcpH-ttJ5dA9Q.php │ │ │ │ │ ├── 6453d59dbab74_node-edit-form.html.twig_9NkRCBnRDIq-8LJ17lMftzH3f │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── UpjLy3sYuSqOAJVZaBmuH7BVWNFCnYVI2ww-M8gfsjQ.php │ │ │ │ │ ├── 6453d59dbab74_node.html.twig_gH-jqDDQXK2Q8OqyLbQmsyllD │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── X6Uktn6TJMlh_1GOW1jLOAmtX6r7YDM86yIeS_I73Kg.php │ │ │ │ │ ├── 6453d59dbab74_off-canvas-page-wrapper.h_ZhGidswamjT50Q-CSUIbLFdc8 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── HU4diNUwpIp33uMi021H73OspbCE93OgbXIbCmrxzBg.php │ │ │ │ │ ├── 6453d59dbab74_off-canvas-page-wrapper.h_i-vH_ZncUZtYgzANOlRczIYmQ │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Lqf_kMvsaPjr7twNKkF3vc1O_DWEAzg-O6pV6-7Po9w.php │ │ │ │ │ ├── 6453d59dbab74_off-canvas-page-wrapper.h_o5PfF2nmVaFaI6t119d-1BdC0 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── VVMVE9s_dgGuKNSQ8Bwmt8AEjPuOtLIyUiLyVNCIVFU.php │ │ │ │ │ ├── 6453d59dbab74_page-title.html.twig_eigCOL_KXkvuT1Kvdyg3-XvHY │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── EGXjoBKIND9j04BKqp-3rcVOAz6jX8A7s-3bNwJr58M.php │ │ │ │ │ ├── 6453d59dbab74_page-title.html.twig_rJCTKMW6NWH7dqNkELl96mU5R │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── IGiWkRdLV3zmeixTuTNnZAXvX-sWZ0LzfRnWufoBvXM.php │ │ │ │ │ ├── 6453d59dbab74_page.html.twig_6a5po69JjgjzF_pgLZprP5HyH │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── gEaBty-mQ23HC6I1D4sv-igGsUW8LkuUE7uYwi-Ld3w.php │ │ │ │ │ ├── 6453d59dbab74_page.html.twig_OJQrRy-gtQA3YBkEPxcHVmBaC │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 0XSHwID_bhz3lnzhZsnzRBuEUY7799tOKIQfIYMJ_0s.php │ │ │ │ │ ├── 6453d59dbab74_pager.html.twig_Dwcd2Z5E4_BRWQuNmGFFzf9io │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── jNdTBSemW8YAdAKlpuXmNUY7fxCgvqMdbyCvlPGEGFM.php │ │ │ │ │ ├── 6453d59dbab74_pager.html.twig_N4ngYphCymL0mu8VglJkZ2iks │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── OFECEjlTwREoY4_0dhS3hH-5gz2YSc-jd8JvTu0e56c.php │ │ │ │ │ ├── 6453d59dbab74_preload.twig_w1d6KX2TVlhfGRE5814BCpOmH │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── xayvJ4U3jXhDFttsN05JIrdtVbsJkcO5RprTNNhbxvg.php │ │ │ │ │ ├── 6453d59dbab74_progress-bar.html.twig_a6GLLYVmACfG2yX7BgStvJ-6b │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── TWUSh7bIBmyY0gkpmfiDu5U2dXU7zuDoN1GCviQwhPs.php │ │ │ │ │ ├── 6453d59dbab74_radios.html.twig_AYyP1TFFhRC4LSE_Z9HPD4vDP │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── Ify2MksVd7R3VX9IQFodw9LaerbN2wjEjuYKc-Egq6o.php │ │ │ │ │ ├── 6453d59dbab74_region--breadcrumb.html.t_1Ksu60vHyU2L7e9wHZ1Mb1Vqw │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── LQ9QXQefLWkzfxUk9plT2y2keRMZJLwx5FHqmKhyHe0.php │ │ │ │ │ ├── 6453d59dbab74_region--breadcrumb.html.t_tZ5pmobxdt2F7f001LmJlrxj_ │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── UG9lINqJwOVd_nDSMAnn27G0A5J4AWDwa5QpzvkUMzY.php │ │ │ │ │ ├── 6453d59dbab74_region--content-above.htm_ISddq0ad0lbq7LLDVHskBYQwj │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── inmd3POt7eKh6N9gP9vUG4zrwh_QHa5oxAx4kXEPhAA.php │ │ │ │ │ ├── 6453d59dbab74_region--content.html.twig_F4vxgq-EwzHf3Bwda7R_tqLZo │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── F4SyTh4cjKWlBFW_9EXKHnxQFkt05Oamx7wjb_GZ8uw.php │ │ │ │ │ ├── 6453d59dbab74_region--footer-bottom.htm_1iCq1s7uDfAfdDwRaNoeGTVzv │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── NeXrCtZoY0R6tryqxwhNzl7HggrfjAjwdKLBMGwHmiE.php │ │ │ │ │ ├── 6453d59dbab74_region--header.html.twig_e9S_O6p6711680OiIypWEKyQK │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 74EsvKCe5vOZJGi2OCLRbTWpSHn-VfrL-lSPmRIgL4M.php │ │ │ │ │ ├── 6453d59dbab74_region--highlighted.html._SENrGApP7GI0rPHb27XPQeNmu │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── PpP4jyd8hasFZtyEWhW2XuSRdptIaHuQwnF8ZQ0AdLQ.php │ │ │ │ │ ├── 6453d59dbab74_region--primary-menu.html_ERfiBr0obhKShESBD8YjKqNXp │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── LA-CIiugo6hazo_Rh0oiP9sc_udh06Dk461NGdylxiQ.php │ │ │ │ │ ├── 6453d59dbab74_region--secondary-menu.ht_nltC6vB_6WZ7reWYbk1nUub9V │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 4FIP7fsHb8JlOOIiOOoJGz5JNMwjG_DMqK7TlAB2ZhU.php │ │ │ │ │ ├── 6453d59dbab74_region--social.html.twig_3X_IwdIwDZYwsb1ehgWDC-AZ6 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 2cX6sqtkih7gHac9C9hWVxP0kjVVXEkoH-AerDBtYek.php │ │ │ │ │ ├── 6453d59dbab74_region.html.twig_U8OZvkupO8kHxZlvg1w2Bl5en │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 7fi9kdXMKhDzcmEkEzf1KIA0t5T0T4WgUZKyC0I6VRg.php │ │ │ │ │ ├── 6453d59dbab74_rss.svg_Txwq3-ZZ5tfq_S6QQKwEbAtr3 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 9V5wgISSpOE4iHNEj6dFlvJFbMCGVWxip6OSG71z1Yk.php │ │ │ │ │ ├── 6453d59dbab74_search.svg_6Imt0i6KTbobuOOJP2pjeN9ai │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── VVpYzpQZIcMiGs83HsTVxg5atozDTZVWTjIZlEJ3eGQ.php │ │ │ │ │ ├── 6453d59dbab74_select.html.twig_9EQFqgwxIKwzqMfIk60fcaNjD │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── yTZeAf-Bq8zyVZJuBMp9JDKu4_s6TlXNqJZcn6nfMoo.php │ │ │ │ │ ├── 6453d59dbab74_select.html.twig_Ha2njgX6dHn9iXMW_Dm9vksR9 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── nPp9o-Ua-5jmvTY0dTQb3oiLs9PWgTBUvUFsYj1bDK4.php │ │ │ │ │ ├── 6453d59dbab74_status-messages.html.twig_urpRCPcLB3jnrmZfjZKmjQuZ4 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 0J4AsJWtbDDvAewkZJxOXQn2kzk5N4SuEEdtX48PTtE.php │ │ │ │ │ ├── 6453d59dbab74_status.svg_xnC0Lssz6kqecRlDlPCWLbtLg │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── dsRb6JjbHmI8Sr6tHHIcsdRemhRpbiNtpNu8x5eBivs.php │ │ │ │ │ ├── 6453d59dbab74_tablesort-indicator.html._QN9QizadZwwqCA8ae4QzQfgZ2 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── eY1H9RYt4jiyK0-ZVQufyzCPPWB4Zztye9CKcfsJfM4.php │ │ │ │ │ ├── 6453d59dbab74_text-format-wrapper.html._pDJfjPIYrei_z8SCuk9iPEbGn │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── YmZVM7ZOSE3LQaqyfXhj0xpSbjInx2Ettj9XkAsMomw.php │ │ │ │ │ ├── 6453d59dbab74_text-format-wrapper.html._yoaOOI3I0-UNe-T2cMeTmEHJ4 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── 1wU3lMeoHVuklVPlgnK4Inq6ij1XrCITH6HJazeKOJ8.php │ │ │ │ │ ├── 6453d59dbab74_textarea.html.twig_TSUvtJTF2CIp6wMEekkfqUOkd │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── vRAohtjWUFwsqn7HN-pzgOlqpCgTOTbrFoKIx1sDyNc.php │ │ │ │ │ ├── 6453d59dbab74_textarea.html.twig_XROuWi_UTLsTwgMsWBLTjMF7g │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── alGeN8veQvaapuoEVHeWHm7v6rLXe4cFJeqQS05nuIQ.php │ │ │ │ │ ├── 6453d59dbab74_toolbar.html.twig_kNYBuPtVLSAiYrJ-NJFsgj_2P │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── oojw8rxdlMDzV7T4SFEskR7TEQFF05m9w6srUn8z8GM.php │ │ │ │ │ ├── 6453d59dbab74_toolbar.html.twig_se9U_XbxfsIsk6yCfathiZ1r1 │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── hmkTZhSvttoNrmf-BvihlmP0IW-BDWB-PxTE3gzJWls.php │ │ │ │ │ ├── 6453d59dbab74_username.html.twig_b6bJAyRq1YYVua0fqNuALq7br │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── G5hnqLL6iZTrSSmmbkjgiSkKqTNDMvA8d6nVF6AE3ww.php │ │ │ │ │ ├── 6453d59dbab74_views-exposed-form.html.t_Na6n4qSblA63tq7u0LddKMVXX │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── v5nJFeWGf5xSPmUUGT_T6hjbuhaAty76NAtfhIjw6Q4.php │ │ │ │ │ ├── 6453d59dbab74_views-view--frontpage.htm_UOBs9HNJcqYkE7Q2cJQJcOANt │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── JhFaTK_7NUornTr-7yrO7eQxyct_G68UTQZpUvd-lxg.php │ │ │ │ │ ├── 6453d59dbab74_views-view-table.html.twi_eBvvkljYJlE67uuRVu4cKE2jB │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── KhhGnYlhWAgk-Y8NqQqV6k4AtShM5R3zZRYlViPjW_c.php │ │ │ │ │ └── 6453d59dbab74_views-view.html.twig_WLcWyr6Z0IkV--AJu6qQ3WjdK │ │ │ │ │ ├── .htaccess │ │ │ │ │ └── SbXwiBdUFIKaMrnfOEc5CSMCCimLA5KLxzNDjPkxmzY.php │ │ │ └── styles │ │ │ │ ├── thumbnail │ │ │ │ └── public │ │ │ │ │ └── 2023-05 │ │ │ │ │ └── drupal_loves_wasm.png │ │ │ │ └── wide │ │ │ │ └── public │ │ │ │ └── 2023-05 │ │ │ │ └── drupal_loves_wasm.png │ │ │ └── settings.php │ ├── php-hello-slim │ │ └── index.php │ ├── php-hello │ │ └── index.php │ └── wordpress-patch │ │ ├── .htaccess │ │ ├── wp-config.php │ │ ├── wp-content │ │ ├── database │ │ │ └── .ht.sqlite │ │ └── db.php │ │ └── wp-includes │ │ ├── blocks.php │ │ └── functions.php │ ├── python-scripts │ ├── Sherlock.txt │ ├── cgi_hello_python.py │ ├── cgi_prettyfy.py │ ├── cgi_python.py │ ├── cgi_search_word_count.py │ ├── hello_python_html.py │ ├── http_request_viewer.py │ └── uploads │ │ ├── cgi_hello_python.py │ │ └── uploaded_text.txt │ └── rust-wasm │ ├── fake.wasm │ ├── hello_wasm.wasm │ └── list_dir.wasm ├── image ├── Dockerfile ├── Dockerfile.dev └── README.md ├── mod_wasm ├── .gitignore ├── README.md ├── build.sh ├── docs │ └── manual │ │ └── mod │ │ ├── allmodules.xml │ │ ├── mod_wasm.html │ │ ├── mod_wasm.html.en.utf8 │ │ ├── mod_wasm.xml │ │ └── mod_wasm.xml.meta ├── httpd.conf └── modules │ └── wasm │ ├── Makefile.in │ ├── config.m4 │ ├── mod_wasm.c │ └── mod_wasm.h └── wasm_runtime ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── Makefile ├── README.md ├── build.rs ├── cbindgen.toml ├── include ├── version.h └── wasm_runtime.h ├── src ├── c_api.rs ├── config.rs ├── execution_ctx.rs ├── ffi_utils.rs ├── lib.rs ├── module.rs ├── wasi_ctx.rs └── wasm_engine.rs └── tests ├── common └── mod.rs └── integration_tests.rs /.github/workflows/test-wasm_runtime.yml: -------------------------------------------------------------------------------- 1 | name: Test `wasm_runtime.so` 2 | 3 | on: 4 | push: 5 | branches: [ "main" ] 6 | pull_request: 7 | branches: [ "main" ] 8 | 9 | env: 10 | CARGO_TERM_COLOR: always 11 | 12 | jobs: 13 | test: 14 | strategy: 15 | fail-fast: false 16 | matrix: 17 | os: [ubuntu-latest, windows-latest, macos-latest] 18 | runs-on: ${{ matrix.os }} 19 | steps: 20 | - uses: actions/checkout@v3 21 | - name: Build 22 | working-directory: ./wasm_runtime 23 | run: cargo build --verbose 24 | - name: Run tests 25 | working-directory: ./wasm_runtime 26 | run: cargo test --verbose 27 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # mod_wasm 2 | *.la 3 | *.lo 4 | *.slo 5 | mod_wasm/.libs 6 | 7 | # OS filesystem indexes 8 | .DS_Store 9 | 10 | # IDEs working files 11 | */.vscode 12 | 13 | # sym link to httpd directory 14 | httpd 15 | 16 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to mod_wasm 2 | 3 | The mod_wasm project team welcomes contributions from the community. First, we want to thank you for taking the time to contribute! 4 | 5 | Please familiarize yourself with the [Code of Conduct](https://github.com/vmware/.github/blob/main/CODE_OF_CONDUCT.md) before contributing. 6 | 7 | Before you start working with `mod_wasm`, please read and sign our Contributor License Agreement [CLA](https://cla.vmware.com/cla/1/preview). If you wish to contribute code and you have not signed our contributor license agreement (CLA), our bot will prompt you to do so when you open a Pull Request. For any questions about the CLA process, please refer to our [FAQ](https://cla.vmware.com/faq). 8 | 9 | ## Ways to contribute 10 | 11 | We welcome many different types of contributions and not all of them need a Pull request. Contributions may include: 12 | 13 | * New features and proposals 14 | * Documentation 15 | * Bug fixes 16 | * Issue Triage 17 | * Answering questions and giving feedback 18 | * Helping to onboard new contributors 19 | * Other related activities 20 | 21 | ## Getting started 22 | 23 | Check our [README.md] file to understand the structure of this project, the different parts and how to setup your development environment. 24 | 25 | ## Contribution Flow 26 | 27 | This is a rough outline of what a contributor's workflow looks like: 28 | 29 | * Create an issue to discuss the feature or bug you want to work on 30 | * Make a fork of the repository within your GitHub account 31 | * Create a topic branch in your fork from where you want to base your work 32 | * Make commits of logical units 33 | * Make sure your commit messages are with the proper format, quality and descriptiveness (see below) 34 | * Push your changes to the topic branch in your fork 35 | * Create a pull request containing that commit 36 | 37 | We follow the GitHub workflow and you can find more details on the [GitHub flow documentation](https://docs.github.com/en/get-started/quickstart/github-flow). 38 | 39 | Example: 40 | 41 | ``` 42 | # After forking the project: 43 | git clone MY_FORK_URL 44 | cd mod_wasm 45 | git switch -c my-new-feature 46 | git commit -s -S -a 47 | git push origin my-new-feature 48 | ``` 49 | 50 | ### Pull Request Checklist 51 | 52 | Before submitting your pull request, we advise you to use the following: 53 | 54 | 1. Check if your code changes will pass both code linting checks and unit tests. 55 | 2. Ensure your commit messages are descriptive. We follow the conventions on [How to Write a Git Commit Message](http://chris.beams.io/posts/git-commit/). Be sure to include any related GitHub issue references in the commit message. See [GFM syntax](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown) for referencing issues and commits. 56 | 3. Check the commits and commits messages and ensure they are free from typos. 57 | 58 | ## Reporting Bugs and Creating Issues 59 | 60 | For specifics on what to include in your report, please follow the guidelines in the issue and pull request templates when available. 61 | 62 | ## Ask for Help 63 | 64 | The best way to reach us with a question when contributing is to ask on: 65 | 66 | * The original GitHub issue 67 | * Our [@vmwwasm Twitter account](https://twitter.com/vmwwasm) 68 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: container-image, container-multi-arch-image, push-container-multi-arch-image, dev-image, build 2 | container-image: 3 | docker build -f image/Dockerfile -t httpd-mod-wasm:latest . 4 | 5 | container-multi-arch-image: 6 | docker buildx build --progress=plain --platform linux/arm64/v8,linux/amd64 -f image/Dockerfile -t ghcr.io/vmware-labs/httpd-mod-wasm:latest . 7 | 8 | push-container-multi-arch-image: 9 | docker buildx build --progress=plain --platform linux/arm64/v8,linux/amd64 -f image/Dockerfile -t ghcr.io/vmware-labs/httpd-mod-wasm:latest --push . 10 | 11 | dev-image: 12 | docker build -f image/Dockerfile.dev -t httpd-mod-wasm-dev:latest . 13 | 14 | build: 15 | cd ./wasm_runtime && make clean_all && make all 16 | cd ./mod_wasm && ./build.sh 17 | -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2022-present VMware, Inc. 2 | 3 | This product is licensed to you under the Apache License, V2.0 (the "License"). You may not use this product except in compliance with the License. 4 | 5 | This product may include a number of subcomponents with separate copyright notices and license terms. Your use of these subcomponents is subject to the terms and conditions of the subcomponent's license, as noted in the LICENSE file. -------------------------------------------------------------------------------- /dist/.gitignore: -------------------------------------------------------------------------------- 1 | /conf/** 2 | /modules/** -------------------------------------------------------------------------------- /docs/slides/architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/docs/slides/architecture.png -------------------------------------------------------------------------------- /docs/slides/workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/docs/slides/workflow.png -------------------------------------------------------------------------------- /examples/conf/cgi_demo.conf: -------------------------------------------------------------------------------- 1 | LoadModule cgid_module modules/mod_cgid.so 2 | 3 | 4 | # 5 | # Redirect: Allows you to tell clients about documents that used to 6 | # exist in your server's namespace, but do not anymore. The client 7 | # will make a new request for the document at its new location. 8 | # Example: 9 | # Redirect permanent /foo http://www.example.com/bar 10 | 11 | # 12 | # Alias: Maps web paths into filesystem paths and is used to 13 | # access content that does not live under the DocumentRoot. 14 | # Example: 15 | # Alias /webpath /full/filesystem/path 16 | # 17 | # If you include a trailing / on /webpath then the server will 18 | # require it to be present in the URL. You will also likely 19 | # need to provide a section to allow access to 20 | # the filesystem path. 21 | 22 | # 23 | # ScriptAlias: This controls which directories contain server scripts. 24 | # ScriptAliases are essentially the same as Aliases, except that 25 | # documents in the target directory are treated as applications and 26 | # run by the server when requested rather than as documents sent to the 27 | # client. The same rules about trailing "/" apply to ScriptAlias 28 | # directives as to Alias. 29 | # 30 | ScriptAlias /cgi-bin/ "/usr/local/apache2/wasm_modules/python-scripts/" 31 | 32 | 33 | 34 | 35 | # 36 | # ScriptSock: On threaded servers, designate the path to the UNIX 37 | # socket used to communicate with the CGI daemon of mod_cgid. 38 | # 39 | ScriptSock /tmp/cgidsock 40 | 41 | 42 | 43 | AddHandler cgi-script .py 44 | 45 | 46 | 47 | 48 | AllowOverride None 49 | Options None 50 | Require all granted 51 | 52 | -------------------------------------------------------------------------------- /examples/exploit-examples/Archive_Tar/Dockerfile.archive_tar: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Container image for ease of testing Archive_Tar vulnerabilty 3 | # and how it is mitigated under WebAssembly 4 | # More info: 5 | # * https://www.drupal.org/sa-core-2020-013 6 | # * https://nvd.nist.gov/vuln/detail/CVE-2020-28949 7 | ################################################################################ 8 | ARG IMAGE_REPOSITORY=docker.io 9 | 10 | FROM $IMAGE_REPOSITORY/library/ubuntu:22.04 11 | RUN apt-get update && apt-get install wget curl unzip python3 software-properties-common -y 12 | 13 | # PHP 8.2 14 | RUN add-apt-repository ppa:ondrej/php 15 | RUN apt update 16 | RUN apt install php8.2-cli php-pear -y 17 | 18 | # Archive_Tar Exploit 19 | WORKDIR /tmp 20 | RUN wget -P /tmp https://github.com/pear/Archive_Tar/files/5551831/exploit.zip 21 | RUN unzip exploit.zip -d /exploit 22 | 23 | # Wasmtime 24 | WORKDIR /tmp 25 | RUN curl https://wasmtime.dev/install.sh -sSf | bash 26 | RUN /root/.wasmtime/bin/wasmtime --version 27 | 28 | # PHP.Wasm 29 | WORKDIR /exploit 30 | ENV PHP_8_2_0_SLIM_SHA2 9994842f3df891e77813f3fa1db1fd3630de20191ce4df6a65d5d4aa2c54c5c0 31 | RUN wget -P /exploit https://github.com/vmware-labs/webassembly-language-runtimes/releases/download/php%2F8.2.0%2B20230418-d75a618/php-cgi-8.2.0-slim.wasm \ 32 | && echo $PHP_8_2_0_SLIM_SHA2 php-cgi-8.2.0-slim.wasm | sha256sum -c - 33 | RUN /root/.wasmtime/bin/wasmtime php-cgi-8.2.0-slim.wasm -- --version 34 | 35 | # Fine-tunning the exploit 36 | WORKDIR /exploit/file_poc 37 | RUN cp steps.sh steps.sh.ORIGINAL 38 | RUN sed -i "s/python/python3/g" steps.sh 39 | RUN cp ../Archive/Tar.php . 40 | RUN sed -i "s/..\/Archive\/Tar.php/Tar.php/g" vulnerable.php 41 | RUN sed -i "/^ entries, 4 | Err(e) => { 5 | eprintln!("ERROR! Can't open path! {}", e); 6 | return; 7 | } 8 | }; 9 | 10 | for entry in entries { 11 | println!("Entry: {}", entry.unwrap().path().display()); 12 | } 13 | } -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/.ht.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/.ht.sqlite -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/.htaccess: -------------------------------------------------------------------------------- 1 | # Turn off all options we don't need. 2 | Options -Indexes -ExecCGI -Includes -MultiViews 3 | 4 | # Set the catch-all handler to prevent scripts from being executed. 5 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 6 | 7 | # Override the handler again if we're run later in the evaluation list. 8 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 9 | 10 | 11 | # If we know how to do it safely, disable the PHP engine entirely. 12 | 13 | php_flag engine off 14 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/2023-05/drupal_loves_wasm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/2023-05/drupal_loves_wasm.png -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/config_c61ExfnW9HnJMHWuTF4-0Xi_mB6F1AB4TG_cJ_B7ja_0Dg0IrRorP9zuoN1d4CLDEqhdeq2O4g/sync/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/css/css_uImecRygwuLzNnOSp8HZ3TLP2YiO6TzmSUvTuYqMxDE.css: -------------------------------------------------------------------------------- 1 | .file{display:inline-block;min-height:16px;padding-left:20px;background-repeat:no-repeat;background-position:left center;}[dir="rtl"] .file{padding-right:20px;padding-left:inherit;background-position:right center;}.file--general,.file--application-octet-stream{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/application-octet-stream.png);}.file--package-x-generic{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/package-x-generic.png);}.file--x-office-spreadsheet{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/x-office-spreadsheet.png);}.file--x-office-document{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/x-office-document.png);}.file--x-office-presentation{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/x-office-presentation.png);}.file--text-x-script{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/text-x-script.png);}.file--text-html{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/text-html.png);}.file--text-plain{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/text-plain.png);}.file--application-pdf{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/application-pdf.png);}.file--application-x-executable{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/application-x-executable.png);}.file--audio{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/audio-x-generic.png);}.file--video{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/video-x-generic.png);}.file--text{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/text-x-generic.png);}.file--image{background-image:url(/drupal-10-zero/core/themes/claro/images/classy/icons/image-x-generic.png);} 2 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/css/css_yxfHOB4JwWV2pIE-sOuJhVEfkr33smtS4OPoLv9OZa8.css: -------------------------------------------------------------------------------- 1 | .text-full > .form-item{margin-block-end:0;}.form-element--editor-format{vertical-align:top;}.filter-wrapper{margin-block:var(--sp1) var(--sp0-5);}.filter-wrapper .form-item{margin:0;}.filter-help{float:right;padding-block:var(--sp0-5);font-size:var(--font-size-xxs);}[dir="rtl"] .filter-help{float:left;}.compose-tips__item{margin-block:var(--sp1-5);}.filter-guidelines__item{margin-block-start:var(--sp1);font-size:var(--font-size-s);line-height:var(--line-height-s);}.filter-guidelines p{margin-block:var(--sp0-25) 0;}.filter-tips--long{margin-block-end:var(--sp1-5);}.filter-tips__item,.filter-tips--long p{margin-block:var(--sp0-75);}.filter-tips__item--short{margin-block:var(--sp0-25) 0;} 2 | .ui-widget-overlay{z-index:1259;}.ui-dialog{z-index:1260;} 3 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/js/js_L62Gu5o6Vn7QaMk7pVNrlRo_nfTPpf_J5doazXXaI0s.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * Customization of messages. 4 | */ 5 | 6 | ((Drupal, once) => { 7 | /** 8 | * Adds a close button to the message. 9 | * 10 | * @param {object} message 11 | * The message object. 12 | */ 13 | const closeMessage = (message) => { 14 | const messageContainer = message.querySelector( 15 | '[data-drupal-selector="messages-container"]', 16 | ); 17 | 18 | const closeBtnWrapper = document.createElement('div'); 19 | closeBtnWrapper.setAttribute('class', 'messages__button'); 20 | 21 | const closeBtn = document.createElement('button'); 22 | closeBtn.setAttribute('type', 'button'); 23 | closeBtn.setAttribute('class', 'messages__close'); 24 | 25 | const closeBtnText = document.createElement('span'); 26 | closeBtnText.setAttribute('class', 'visually-hidden'); 27 | closeBtnText.innerText = Drupal.t('Close message'); 28 | 29 | messageContainer.appendChild(closeBtnWrapper); 30 | closeBtnWrapper.appendChild(closeBtn); 31 | closeBtn.appendChild(closeBtnText); 32 | 33 | closeBtn.addEventListener('click', () => { 34 | message.classList.add('hidden'); 35 | }); 36 | }; 37 | 38 | /** 39 | * Get messages from context. 40 | * 41 | * @type {Drupal~behavior} 42 | * 43 | * @prop {Drupal~behaviorAttach} attach 44 | * Attaches the close button behavior for messages. 45 | */ 46 | Drupal.behaviors.messages = { 47 | attach(context) { 48 | once('messages', '[data-drupal-selector="messages"]', context).forEach( 49 | closeMessage, 50 | ); 51 | }, 52 | }; 53 | 54 | Drupal.olivero.closeMessage = closeMessage; 55 | })(Drupal, once); 56 | ; 57 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/js/js_Y151moVVESM9BeoCt8M3cSJ2_x_o14H43dXy6nGL6JM.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * A replacement for Modernizr touch events detection. 4 | */ 5 | 6 | document.documentElement.classList.add( 7 | 'ontouchstart' in window || 8 | (window.DocumentTouch && document instanceof window.DocumentTouch) 9 | ? 'touchevents' 10 | : 'no-touchevents', 11 | ); 12 | ; 13 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74___string_template__15e4c2_2b1TjIgTlWJ72ju48u__4RHE3/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74___string_template__15e4c2_2b1TjIgTlWJ72ju48u__4RHE3/bEbdmFFLuSLGDuDKpCEm_XBXtXicOWTa52zY-h4IJ_g.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 1 39 | echo twig_nl2br($this->extensions['Drupal\Core\Template\TwigExtension']->escapeFilter($this->env, $this->sandbox->ensureToStringAllowed(($context["value"] ?? null), 1, $this->source), "html", null, true)); 40 | } 41 | 42 | public function getTemplateName() 43 | { 44 | return "__string_template__15e4c2886fb2554f14cf09e05167a91f"; 45 | } 46 | 47 | public function isTraitable() 48 | { 49 | return false; 50 | } 51 | 52 | public function getDebugInfo() 53 | { 54 | return array ( 39 => 1,); 55 | } 56 | 57 | public function getSourceContext() 58 | { 59 | return new Source("", "__string_template__15e4c2886fb2554f14cf09e05167a91f", ""); 60 | } 61 | 62 | public function checkSecurity() 63 | { 64 | static $tags = array(); 65 | static $filters = array("nl2br" => 1, "escape" => 1); 66 | static $functions = array(); 67 | 68 | try { 69 | $this->sandbox->checkSecurity( 70 | [], 71 | ['nl2br', 'escape'], 72 | [] 73 | ); 74 | } catch (SecurityError $e) { 75 | $e->setSourceContext($this->source); 76 | 77 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 78 | $e->setTemplateLine($tags[$e->getTagName()]); 79 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 80 | $e->setTemplateLine($filters[$e->getFilterName()]); 81 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 82 | $e->setTemplateLine($functions[$e->getFunctionName()]); 83 | } 84 | 85 | throw $e; 86 | } 87 | 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--local-actions-bloc_B1UDrOSlLsWPfwuyXrKpSTEtk/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--local-tasks-block._n9Q9sQhRPaH1eZ8Q2a2j9kAUR/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--page-title-block.h_q36zt3oP2oV4rBSyCeClJkmSl/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--primary-menu--plug_BfufKLzNzGCJ8HETnp-X-c9Ed/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--secondary-menu--pl_3OorbWIU87Hm14wdJScvEVz_t/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--secondary-menu.htm_-SbsObRETaHQ27eggOVH35gOj/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--system-branding-bl_zqOU_mCQL-44DQ-MCDVcEB0kB/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--system-menu-block._HKDaiHc9YrBfTGyPYhPG5TEZS/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--system-messages-bl_OjSnGGsGKrRqRIomg2VZ1tPzj/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--system-messages-bl_OjSnGGsGKrRqRIomg2VZ1tPzj/LPnOLBJ5klVSQTk3O-Pq7DThYar5IrzlEIqnUQBZZSI.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 15 39 | echo $this->extensions['Drupal\Core\Template\TwigExtension']->escapeFilter($this->env, $this->sandbox->ensureToStringAllowed(($context["content"] ?? null), 15, $this->source), "html", null, true); 40 | echo " 41 | "; 42 | } 43 | 44 | public function getTemplateName() 45 | { 46 | return "core/modules/system/templates/block--system-messages-block.html.twig"; 47 | } 48 | 49 | public function isTraitable() 50 | { 51 | return false; 52 | } 53 | 54 | public function getDebugInfo() 55 | { 56 | return array ( 39 => 15,); 57 | } 58 | 59 | public function getSourceContext() 60 | { 61 | return new Source("", "core/modules/system/templates/block--system-messages-block.html.twig", "/usr/local/apache2/htdocs/drupal-10-zero/core/modules/system/templates/block--system-messages-block.html.twig"); 62 | } 63 | 64 | public function checkSecurity() 65 | { 66 | static $tags = array(); 67 | static $filters = array("escape" => 15); 68 | static $functions = array(); 69 | 70 | try { 71 | $this->sandbox->checkSecurity( 72 | [], 73 | ['escape'], 74 | [] 75 | ); 76 | } catch (SecurityError $e) { 77 | $e->setSourceContext($this->source); 78 | 79 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 80 | $e->setTemplateLine($tags[$e->getTagName()]); 81 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 82 | $e->setTemplateLine($filters[$e->getFilterName()]); 83 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 84 | $e->setTemplateLine($functions[$e->getFunctionName()]); 85 | } 86 | 87 | throw $e; 88 | } 89 | 90 | } 91 | } 92 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block--system-powered-by-_MRJZ_Vo0VFGVMLit7h6tCmMVq/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block.html.twig_YkwJOlT6-Eq3BLutXWTO1er4Y/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block.html.twig_i5o1jehVir1SlkoXX3v5D_42T/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_block.html.twig_jCDM08Kk8G2R4C9Hu1zjhKu4t/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_breadcrumb.html.twig_17Q2lTshBbs8LUY2JTT9aoEr-/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_breadcrumb.html.twig_6N-7svMlN2Cu6TSqAtwUBJMQL/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_container--text-format-fi_9fM5jev1UDk0NUsLncc5sgu39/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_container--text-format-fi_P4GdZ7O6BUfQzaZE_snK1ceIc/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_container--text-format-fi_w5ccMmthTxK-vKMTIaNJ73mDz/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_container.html.twig_b-v_gKzPXE8-p8MHL8Sf2w6WX/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_container.html.twig_ktmFe3YIsr-v4jOVjFIEZlshZ/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_datetime-form.html.twig_yIBdlB8uEwTxkmXrOTCOwPDFL/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_datetime-wrapper.html.twi_eFO5tnzCmJqDqtVgKc6l6ers1/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_details.html.twig_Ql2A5d0qxkHuJkQIPNUGQYNXC/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_entity-add-list.html.twig_8HcQBpAZ-HqH2L-yDskpwHcX-/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_feed-icon.html.twig_INKpAjBH2C1fYc-08GB8qDmPy/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--comment.html.twig_i-9KfYm_fK4T-zxYGjt0-qg4u/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--node--created.html_WyU7mp05Q3SINDNWDPYSH2RXH/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--node--field-image._9bukIdljvPcWFBRFubcBoptA0/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--node--title.html.t_pn6ithM9s-G7321BnRqw_dSF6/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--node--uid.html.twi_z15gTsLqv9Kjzud_jIspVaLVh/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--text-with-summary._J7ycPtwIkXjJ9hcRCGl-Zdl_f/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--text-with-summary._J7ycPtwIkXjJ9hcRCGl-Zdl_f/sR51RxZM91LM2heFihHoMnsagod8LofwzLzTV5qiW48.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->blocks = [ 28 | ]; 29 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 30 | $this->checkSecurity(); 31 | } 32 | 33 | protected function doGetParent(array $context) 34 | { 35 | // line 1 36 | return "field--text.html.twig"; 37 | } 38 | 39 | protected function doDisplay(array $context, array $blocks = []) 40 | { 41 | $macros = $this->macros; 42 | $this->parent = $this->loadTemplate("field--text.html.twig", "core/themes/olivero/templates/field/field--text-with-summary.html.twig", 1); 43 | $this->parent->display($context, array_merge($this->blocks, $blocks)); 44 | } 45 | 46 | public function getTemplateName() 47 | { 48 | return "core/themes/olivero/templates/field/field--text-with-summary.html.twig"; 49 | } 50 | 51 | public function isTraitable() 52 | { 53 | return false; 54 | } 55 | 56 | public function getDebugInfo() 57 | { 58 | return array ( 36 => 1,); 59 | } 60 | 61 | public function getSourceContext() 62 | { 63 | return new Source("", "core/themes/olivero/templates/field/field--text-with-summary.html.twig", "/usr/local/apache2/htdocs/drupal-10-zero/core/themes/olivero/templates/field/field--text-with-summary.html.twig"); 64 | } 65 | 66 | public function checkSecurity() 67 | { 68 | static $tags = array(); 69 | static $filters = array(); 70 | static $functions = array(); 71 | 72 | try { 73 | $this->sandbox->checkSecurity( 74 | [], 75 | [], 76 | [] 77 | ); 78 | } catch (SecurityError $e) { 79 | $e->setSourceContext($this->source); 80 | 81 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 82 | $e->setTemplateLine($tags[$e->getTagName()]); 83 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 84 | $e->setTemplateLine($filters[$e->getFilterName()]); 85 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 86 | $e->setTemplateLine($functions[$e->getFunctionName()]); 87 | } 88 | 89 | throw $e; 90 | } 91 | 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--text.html.twig_xJR90Whx-omqMST14A48pDpDm/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field--text.html.twig_xJR90Whx-omqMST14A48pDpDm/obinYbdAZngiclzv_uHGsR_Jxufvbx8TGuF4afJxVHM.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->blocks = [ 28 | ]; 29 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 30 | $this->checkSecurity(); 31 | } 32 | 33 | protected function doGetParent(array $context) 34 | { 35 | // line 1 36 | return "field.html.twig"; 37 | } 38 | 39 | protected function doDisplay(array $context, array $blocks = []) 40 | { 41 | $macros = $this->macros; 42 | // line 20 43 | $context["attributes"] = twig_get_attribute($this->env, $this->source, ($context["attributes"] ?? null), "addClass", [0 => "clearfix"], "method", false, false, true, 20); 44 | // line 1 45 | $this->parent = $this->loadTemplate("field.html.twig", "field--text.html.twig", 1); 46 | $this->parent->display($context, array_merge($this->blocks, $blocks)); 47 | } 48 | 49 | public function getTemplateName() 50 | { 51 | return "field--text.html.twig"; 52 | } 53 | 54 | public function isTraitable() 55 | { 56 | return false; 57 | } 58 | 59 | public function getDebugInfo() 60 | { 61 | return array ( 45 => 1, 43 => 20, 36 => 1,); 62 | } 63 | 64 | public function getSourceContext() 65 | { 66 | return new Source("", "field--text.html.twig", "core/themes/olivero/templates/field/field--text.html.twig"); 67 | } 68 | 69 | public function checkSecurity() 70 | { 71 | static $tags = array("set" => 20); 72 | static $filters = array(); 73 | static $functions = array(); 74 | 75 | try { 76 | $this->sandbox->checkSecurity( 77 | ['set'], 78 | [], 79 | [] 80 | ); 81 | } catch (SecurityError $e) { 82 | $e->setSourceContext($this->source); 83 | 84 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 85 | $e->setTemplateLine($tags[$e->getTagName()]); 86 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 87 | $e->setTemplateLine($filters[$e->getFilterName()]); 88 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 89 | $e->setTemplateLine($functions[$e->getFunctionName()]); 90 | } 91 | 92 | throw $e; 93 | } 94 | 95 | } 96 | } 97 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field-multiple-value-form_8a8Me_JlRRBFKo9CgOcwRS_2x/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field-multiple-value-form_Mcwq8Mm8HaMeJyH_ASg1UgJno/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_field.html.twig_fJolV_81tBxzJ4_Bu9SGdhSjW/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_fieldset.html.twig_3lfIFWVhAhLoUa4Byv-KP7AUp/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_fieldset.html.twig_LkHPNgFMvwWcO3HAGy-998MTs/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_file-link.html.twig_UnKbKHh83pvnerpDGnRlX_fCU/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_file-managed-file.html.tw_kNvREOqu4-qmlmIlaaMSanE0v/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_file-upload-help.html.twi_oRL1l-Zj2xilvKee1xfK5AkKX/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_file-upload-help.html.twi_oRL1l-Zj2xilvKee1xfK5AkKX/OfvuezFp7R11Yx7I8biixdazoLorWy2rRNB3w_Wh8As.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 14 39 | echo $this->extensions['Drupal\Core\Template\TwigExtension']->renderVar($this->extensions['Drupal\Core\Template\TwigExtension']->safeJoin($this->env, $this->sandbox->ensureToStringAllowed(($context["descriptions"] ?? null), 14, $this->source), "
")); 40 | echo " 41 | "; 42 | } 43 | 44 | public function getTemplateName() 45 | { 46 | return "core/modules/file/templates/file-upload-help.html.twig"; 47 | } 48 | 49 | public function isTraitable() 50 | { 51 | return false; 52 | } 53 | 54 | public function getDebugInfo() 55 | { 56 | return array ( 39 => 14,); 57 | } 58 | 59 | public function getSourceContext() 60 | { 61 | return new Source("", "core/modules/file/templates/file-upload-help.html.twig", "/usr/local/apache2/htdocs/drupal-10-zero/core/modules/file/templates/file-upload-help.html.twig"); 62 | } 63 | 64 | public function checkSecurity() 65 | { 66 | static $tags = array(); 67 | static $filters = array("safe_join" => 14); 68 | static $functions = array(); 69 | 70 | try { 71 | $this->sandbox->checkSecurity( 72 | [], 73 | ['safe_join'], 74 | [] 75 | ); 76 | } catch (SecurityError $e) { 77 | $e->setSourceContext($this->source); 78 | 79 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 80 | $e->setTemplateLine($tags[$e->getTagName()]); 81 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 82 | $e->setTemplateLine($filters[$e->getFilterName()]); 83 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 84 | $e->setTemplateLine($functions[$e->getFunctionName()]); 85 | } 86 | 87 | throw $e; 88 | } 89 | 90 | } 91 | } 92 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_filter-guidelines.html.tw_9MzrGtNohvCPynAKcvFS3FmZ0/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_filter-guidelines.html.tw_Pk_2boCQWzpikflq2Pdyd5ZV4/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_filter-tips.html.twig_e2RLE5UKFcopceHfs4JbxgOmY/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_filter-tips.html.twig_uy4JUjcjxbzHBcPMZnn8oikUl/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form--search-block-form.h_RR4e2Tz1rezZJ3ddYYKAexip4/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form-element-label.html.t_H0wGAqr6jm5H9vwC86D-kd7u_/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form-element-label.html.t__w4E9E5f3ivuu4LlS7r6WJwOJ/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form-element-label.html.t_g0GKupBy7DjYT8zZUi_HkiqDd/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form-element.html.twig_CEZkUZ3KMQRDApZZmpaNv_co2/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form-element.html.twig_MpERPBEw5qBIVm4JQ8FCFGvma/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form-element.html.twig_OmAaW37-oMDJUOdYlkbp-UL2b/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form.html.twig_AnMF-WyLoT8ovEC5kKNGBeMNa/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_form.html.twig_aVY7zMrHbgZjw1Y5aohPOlS-k/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_get-started.html.twig_bi_EgksRYf6jy-FC98WMffPIx/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_hamburger-menu.svg_WT82dxTMoFnHJhDR_BUGgUwX0/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_hamburger-menu.svg_WT82dxTMoFnHJhDR_BUGgUwX0/HcmUwyVjQanFhXj6prXGH32Di3hXIPolMS5Na3T3v0A.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 1 39 | echo ""; 40 | } 41 | 42 | public function getTemplateName() 43 | { 44 | return "@claro/../images/src/hamburger-menu.svg"; 45 | } 46 | 47 | public function getDebugInfo() 48 | { 49 | return array ( 39 => 1,); 50 | } 51 | 52 | public function getSourceContext() 53 | { 54 | return new Source("", "@claro/../images/src/hamburger-menu.svg", "/usr/local/apache2/htdocs/drupal-10-zero/core/themes/claro/images/src/hamburger-menu.svg"); 55 | } 56 | 57 | public function checkSecurity() 58 | { 59 | static $tags = array(); 60 | static $filters = array(); 61 | static $functions = array(); 62 | 63 | try { 64 | $this->sandbox->checkSecurity( 65 | [], 66 | [], 67 | [] 68 | ); 69 | } catch (SecurityError $e) { 70 | $e->setSourceContext($this->source); 71 | 72 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 73 | $e->setTemplateLine($tags[$e->getTagName()]); 74 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 75 | $e->setTemplateLine($filters[$e->getFilterName()]); 76 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 77 | $e->setTemplateLine($functions[$e->getFunctionName()]); 78 | } 79 | 80 | throw $e; 81 | } 82 | 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_html.html.twig_1SEEg_BXhMOfYiDxHhmaciuCr/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_html.html.twig_oedor6GEaA1Et3lCRU3OKhCrs/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_html.html.twig_zRm6D5WQ_0jPrmIpjEAVvBF6_/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_image-formatter.html.twig_56MtCmJZRPXzoqBR9iTV02Oj3/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_image-style.html.twig_hpb6xH4kUSrE1UHX2DV8kDH0g/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_image-style.html.twig_hpb6xH4kUSrE1UHX2DV8kDH0g/YDkadh9BEZVltsd_-IOS-__nDWqBZc2v-_PqsoJGpkA.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 20 39 | echo $this->extensions['Drupal\Core\Template\TwigExtension']->escapeFilter($this->env, $this->sandbox->ensureToStringAllowed(($context["image"] ?? null), 20, $this->source), "html", null, true); 40 | echo " 41 | "; 42 | } 43 | 44 | public function getTemplateName() 45 | { 46 | return "core/modules/image/templates/image-style.html.twig"; 47 | } 48 | 49 | public function isTraitable() 50 | { 51 | return false; 52 | } 53 | 54 | public function getDebugInfo() 55 | { 56 | return array ( 39 => 20,); 57 | } 58 | 59 | public function getSourceContext() 60 | { 61 | return new Source("", "core/modules/image/templates/image-style.html.twig", "/usr/local/apache2/htdocs/drupal-10-zero/core/modules/image/templates/image-style.html.twig"); 62 | } 63 | 64 | public function checkSecurity() 65 | { 66 | static $tags = array(); 67 | static $filters = array("escape" => 20); 68 | static $functions = array(); 69 | 70 | try { 71 | $this->sandbox->checkSecurity( 72 | [], 73 | ['escape'], 74 | [] 75 | ); 76 | } catch (SecurityError $e) { 77 | $e->setSourceContext($this->source); 78 | 79 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 80 | $e->setTemplateLine($tags[$e->getTagName()]); 81 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 82 | $e->setTemplateLine($filters[$e->getFilterName()]); 83 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 84 | $e->setTemplateLine($functions[$e->getFunctionName()]); 85 | } 86 | 87 | throw $e; 88 | } 89 | 90 | } 91 | } 92 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_image-widget.html.twig_QejUaDkGebASKj_GgOcqR7GT_/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_image.html.twig_7rb6ysjKRT4F5wIip3dKOUtZ8/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_image.html.twig_7rb6ysjKRT4F5wIip3dKOUtZ8/SKtR7OrC-zgVOxS5nDbBr2wRo3xdR0ACCOEu6amA71s.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 15 39 | echo "extensions['Drupal\Core\Template\TwigExtension']->escapeFilter($this->env, $this->sandbox->ensureToStringAllowed(($context["attributes"] ?? null), 15, $this->source), "html", null, true); 41 | echo " /> 42 | "; 43 | } 44 | 45 | public function getTemplateName() 46 | { 47 | return "core/modules/system/templates/image.html.twig"; 48 | } 49 | 50 | public function isTraitable() 51 | { 52 | return false; 53 | } 54 | 55 | public function getDebugInfo() 56 | { 57 | return array ( 39 => 15,); 58 | } 59 | 60 | public function getSourceContext() 61 | { 62 | return new Source("", "core/modules/system/templates/image.html.twig", "/usr/local/apache2/htdocs/drupal-10-zero/core/modules/system/templates/image.html.twig"); 63 | } 64 | 65 | public function checkSecurity() 66 | { 67 | static $tags = array(); 68 | static $filters = array("escape" => 15); 69 | static $functions = array(); 70 | 71 | try { 72 | $this->sandbox->checkSecurity( 73 | [], 74 | ['escape'], 75 | [] 76 | ); 77 | } catch (SecurityError $e) { 78 | $e->setSourceContext($this->source); 79 | 80 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 81 | $e->setTemplateLine($tags[$e->getTagName()]); 82 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 83 | $e->setTemplateLine($filters[$e->getFilterName()]); 84 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 85 | $e->setTemplateLine($functions[$e->getFunctionName()]); 86 | } 87 | 88 | throw $e; 89 | } 90 | 91 | } 92 | } 93 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_image.html.twig_9aezPpZ1mqPZjHbcRMMNc31u3/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_input--submit--header-sea_SHX6bhkZjhHWf-HzakpYXWWLN/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_input.html.twig_LwIEgOnSaUl9GMgSvCPdN8_8k/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_input.html.twig_aSCBk0jQC4JtewvVLPpq4Jiot/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_input.html.twig_oEAYaZnOUvWBn3v7K7eK_OMmS/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_install-page.html.twig_YvEPZY_kMmamIP26nIJuhkvL2/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_links.html.twig_-TCrVBByj-4SBjeVohHacxtJo/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_links.html.twig_rlED4V0iNp1Zgc1MYjOsCt5QR/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_maintenance-task-list.htm_W1goqv6yaflsJr3ZdNdJP9USz/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu--primary-menu.html.t_1BD0k0sNeJ7xChvj9HpgV4X-w/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu--secondary-menu.html_xmZMMrP-skX0JFNPth0Qg2n_i/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu--toolbar.html.twig_mcsy-8XQEHj4xsTfwaoi2EV9l/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu-local-action.html.tw_AwOxtfRcrC9imPJU8AW10abhq/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu-local-task.html.twig_Hn79umq441RVrm6r6JTzXFcZt/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu-local-task.html.twig_OMy010YO4U8FyNanTI6eBvEwn/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu-local-tasks.html.twi_O5jg_0RmOI2NZH0QUD5VmjoOn/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_menu-local-tasks.html.twi_qH0bfpGzLMsW-AWRcyoYXS_4u/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_node-add-list.html.twig_zL001mIuyMiUPCPr--2n-PT5x/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_node-edit-form.html.twig_9NkRCBnRDIq-8LJ17lMftzH3f/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_node.html.twig_gH-jqDDQXK2Q8OqyLbQmsyllD/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_off-canvas-page-wrapper.h_ZhGidswamjT50Q-CSUIbLFdc8/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_off-canvas-page-wrapper.h_i-vH_ZncUZtYgzANOlRczIYmQ/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_off-canvas-page-wrapper.h_o5PfF2nmVaFaI6t119d-1BdC0/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_page-title.html.twig_eigCOL_KXkvuT1Kvdyg3-XvHY/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_page-title.html.twig_rJCTKMW6NWH7dqNkELl96mU5R/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_page.html.twig_6a5po69JjgjzF_pgLZprP5HyH/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_page.html.twig_OJQrRy-gtQA3YBkEPxcHVmBaC/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_pager.html.twig_Dwcd2Z5E4_BRWQuNmGFFzf9io/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_pager.html.twig_N4ngYphCymL0mu8VglJkZ2iks/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_preload.twig_w1d6KX2TVlhfGRE5814BCpOmH/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_progress-bar.html.twig_a6GLLYVmACfG2yX7BgStvJ-6b/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_radios.html.twig_AYyP1TFFhRC4LSE_Z9HPD4vDP/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--breadcrumb.html.t_1Ksu60vHyU2L7e9wHZ1Mb1Vqw/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--breadcrumb.html.t_tZ5pmobxdt2F7f001LmJlrxj_/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--content-above.htm_ISddq0ad0lbq7LLDVHskBYQwj/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--content.html.twig_F4vxgq-EwzHf3Bwda7R_tqLZo/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--footer-bottom.htm_1iCq1s7uDfAfdDwRaNoeGTVzv/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--header.html.twig_e9S_O6p6711680OiIypWEKyQK/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--header.html.twig_e9S_O6p6711680OiIypWEKyQK/74EsvKCe5vOZJGi2OCLRbTWpSHn-VfrL-lSPmRIgL4M.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 15 39 | echo " 40 | "; 41 | // line 16 42 | echo $this->extensions['Drupal\Core\Template\TwigExtension']->escapeFilter($this->env, $this->sandbox->ensureToStringAllowed(($context["content"] ?? null), 16, $this->source), "html", null, true); 43 | echo " 44 |
45 | "; 46 | } 47 | 48 | public function getTemplateName() 49 | { 50 | return "core/themes/olivero/templates/layout/region--header.html.twig"; 51 | } 52 | 53 | public function isTraitable() 54 | { 55 | return false; 56 | } 57 | 58 | public function getDebugInfo() 59 | { 60 | return array ( 42 => 16, 39 => 15,); 61 | } 62 | 63 | public function getSourceContext() 64 | { 65 | return new Source("", "core/themes/olivero/templates/layout/region--header.html.twig", "/usr/local/apache2/htdocs/drupal-10-zero/core/themes/olivero/templates/layout/region--header.html.twig"); 66 | } 67 | 68 | public function checkSecurity() 69 | { 70 | static $tags = array(); 71 | static $filters = array("escape" => 16); 72 | static $functions = array(); 73 | 74 | try { 75 | $this->sandbox->checkSecurity( 76 | [], 77 | ['escape'], 78 | [] 79 | ); 80 | } catch (SecurityError $e) { 81 | $e->setSourceContext($this->source); 82 | 83 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 84 | $e->setTemplateLine($tags[$e->getTagName()]); 85 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 86 | $e->setTemplateLine($filters[$e->getFilterName()]); 87 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 88 | $e->setTemplateLine($functions[$e->getFunctionName()]); 89 | } 90 | 91 | throw $e; 92 | } 93 | 94 | } 95 | } 96 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--highlighted.html._SENrGApP7GI0rPHb27XPQeNmu/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--primary-menu.html_ERfiBr0obhKShESBD8YjKqNXp/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--primary-menu.html_ERfiBr0obhKShESBD8YjKqNXp/LA-CIiugo6hazo_Rh0oiP9sc_udh06Dk461NGdylxiQ.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 15 39 | echo " 40 | "; 41 | // line 16 42 | echo $this->extensions['Drupal\Core\Template\TwigExtension']->escapeFilter($this->env, $this->sandbox->ensureToStringAllowed(($context["content"] ?? null), 16, $this->source), "html", null, true); 43 | echo " 44 | "; 45 | } 46 | 47 | public function getTemplateName() 48 | { 49 | return "core/themes/olivero/templates/layout/region--primary-menu.html.twig"; 50 | } 51 | 52 | public function isTraitable() 53 | { 54 | return false; 55 | } 56 | 57 | public function getDebugInfo() 58 | { 59 | return array ( 42 => 16, 39 => 15,); 60 | } 61 | 62 | public function getSourceContext() 63 | { 64 | return new Source("", "core/themes/olivero/templates/layout/region--primary-menu.html.twig", "/usr/local/apache2/htdocs/drupal-10-zero/core/themes/olivero/templates/layout/region--primary-menu.html.twig"); 65 | } 66 | 67 | public function checkSecurity() 68 | { 69 | static $tags = array(); 70 | static $filters = array("escape" => 16); 71 | static $functions = array(); 72 | 73 | try { 74 | $this->sandbox->checkSecurity( 75 | [], 76 | ['escape'], 77 | [] 78 | ); 79 | } catch (SecurityError $e) { 80 | $e->setSourceContext($this->source); 81 | 82 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 83 | $e->setTemplateLine($tags[$e->getTagName()]); 84 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 85 | $e->setTemplateLine($filters[$e->getFilterName()]); 86 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 87 | $e->setTemplateLine($functions[$e->getFunctionName()]); 88 | } 89 | 90 | throw $e; 91 | } 92 | 93 | } 94 | } 95 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--secondary-menu.ht_nltC6vB_6WZ7reWYbk1nUub9V/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region--social.html.twig_3X_IwdIwDZYwsb1ehgWDC-AZ6/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_region.html.twig_U8OZvkupO8kHxZlvg1w2Bl5en/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_rss.svg_Txwq3-ZZ5tfq_S6QQKwEbAtr3/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_rss.svg_Txwq3-ZZ5tfq_S6QQKwEbAtr3/9V5wgISSpOE4iHNEj6dFlvJFbMCGVWxip6OSG71z1Yk.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 1 39 | echo " 40 | 41 | 42 | "; 43 | } 44 | 45 | public function getTemplateName() 46 | { 47 | return "@olivero/../images/rss.svg"; 48 | } 49 | 50 | public function getDebugInfo() 51 | { 52 | return array ( 39 => 1,); 53 | } 54 | 55 | public function getSourceContext() 56 | { 57 | return new Source("", "@olivero/../images/rss.svg", "/usr/local/apache2/htdocs/drupal-10-zero/core/themes/olivero/images/rss.svg"); 58 | } 59 | 60 | public function checkSecurity() 61 | { 62 | static $tags = array(); 63 | static $filters = array(); 64 | static $functions = array(); 65 | 66 | try { 67 | $this->sandbox->checkSecurity( 68 | [], 69 | [], 70 | [] 71 | ); 72 | } catch (SecurityError $e) { 73 | $e->setSourceContext($this->source); 74 | 75 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 76 | $e->setTemplateLine($tags[$e->getTagName()]); 77 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 78 | $e->setTemplateLine($filters[$e->getFilterName()]); 79 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 80 | $e->setTemplateLine($functions[$e->getFunctionName()]); 81 | } 82 | 83 | throw $e; 84 | } 85 | 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_search.svg_6Imt0i6KTbobuOOJP2pjeN9ai/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_search.svg_6Imt0i6KTbobuOOJP2pjeN9ai/VVpYzpQZIcMiGs83HsTVxg5atozDTZVWTjIZlEJ3eGQ.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 1 39 | echo " 40 | 41 | 42 | "; 43 | } 44 | 45 | public function getTemplateName() 46 | { 47 | return "@olivero/../images/search.svg"; 48 | } 49 | 50 | public function getDebugInfo() 51 | { 52 | return array ( 39 => 1,); 53 | } 54 | 55 | public function getSourceContext() 56 | { 57 | return new Source("", "@olivero/../images/search.svg", "/usr/local/apache2/htdocs/drupal-10-zero/core/themes/olivero/images/search.svg"); 58 | } 59 | 60 | public function checkSecurity() 61 | { 62 | static $tags = array(); 63 | static $filters = array(); 64 | static $functions = array(); 65 | 66 | try { 67 | $this->sandbox->checkSecurity( 68 | [], 69 | [], 70 | [] 71 | ); 72 | } catch (SecurityError $e) { 73 | $e->setSourceContext($this->source); 74 | 75 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 76 | $e->setTemplateLine($tags[$e->getTagName()]); 77 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 78 | $e->setTemplateLine($filters[$e->getFilterName()]); 79 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 80 | $e->setTemplateLine($functions[$e->getFunctionName()]); 81 | } 82 | 83 | throw $e; 84 | } 85 | 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_select.html.twig_9EQFqgwxIKwzqMfIk60fcaNjD/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_select.html.twig_Ha2njgX6dHn9iXMW_Dm9vksR9/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_status-messages.html.twig_urpRCPcLB3jnrmZfjZKmjQuZ4/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_status.svg_xnC0Lssz6kqecRlDlPCWLbtLg/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_status.svg_xnC0Lssz6kqecRlDlPCWLbtLg/dsRb6JjbHmI8Sr6tHHIcsdRemhRpbiNtpNu8x5eBivs.php: -------------------------------------------------------------------------------- 1 | source = $this->getSourceContext(); 26 | 27 | $this->parent = false; 28 | 29 | $this->blocks = [ 30 | ]; 31 | $this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension'); 32 | $this->checkSecurity(); 33 | } 34 | 35 | protected function doDisplay(array $context, array $blocks = []) 36 | { 37 | $macros = $this->macros; 38 | // line 1 39 | echo " 40 | 41 | 42 | "; 43 | } 44 | 45 | public function getTemplateName() 46 | { 47 | return "@olivero/../images/status.svg"; 48 | } 49 | 50 | public function getDebugInfo() 51 | { 52 | return array ( 39 => 1,); 53 | } 54 | 55 | public function getSourceContext() 56 | { 57 | return new Source("", "@olivero/../images/status.svg", "/usr/local/apache2/htdocs/drupal-10-zero/core/themes/olivero/images/status.svg"); 58 | } 59 | 60 | public function checkSecurity() 61 | { 62 | static $tags = array(); 63 | static $filters = array(); 64 | static $functions = array(); 65 | 66 | try { 67 | $this->sandbox->checkSecurity( 68 | [], 69 | [], 70 | [] 71 | ); 72 | } catch (SecurityError $e) { 73 | $e->setSourceContext($this->source); 74 | 75 | if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) { 76 | $e->setTemplateLine($tags[$e->getTagName()]); 77 | } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) { 78 | $e->setTemplateLine($filters[$e->getFilterName()]); 79 | } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) { 80 | $e->setTemplateLine($functions[$e->getFunctionName()]); 81 | } 82 | 83 | throw $e; 84 | } 85 | 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_tablesort-indicator.html._QN9QizadZwwqCA8ae4QzQfgZ2/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_text-format-wrapper.html._pDJfjPIYrei_z8SCuk9iPEbGn/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_text-format-wrapper.html._yoaOOI3I0-UNe-T2cMeTmEHJ4/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_textarea.html.twig_TSUvtJTF2CIp6wMEekkfqUOkd/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_textarea.html.twig_XROuWi_UTLsTwgMsWBLTjMF7g/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_toolbar.html.twig_kNYBuPtVLSAiYrJ-NJFsgj_2P/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_toolbar.html.twig_se9U_XbxfsIsk6yCfathiZ1r1/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_username.html.twig_b6bJAyRq1YYVua0fqNuALq7br/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_views-exposed-form.html.t_Na6n4qSblA63tq7u0LddKMVXX/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_views-view--frontpage.htm_UOBs9HNJcqYkE7Q2cJQJcOANt/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_views-view-table.html.twi_eBvvkljYJlE67uuRVu4cKE2jB/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/php/twig/6453d59dbab74_views-view.html.twig_WLcWyr6Z0IkV--AJu6qQ3WjdK/.htaccess: -------------------------------------------------------------------------------- 1 | # Deny all requests from Apache 2.4+. 2 | 3 | Require all denied 4 | 5 | 6 | # Deny all requests from Apache 2.0-2.2. 7 | 8 | Deny from all 9 | 10 | 11 | # Turn off all options we don't need. 12 | Options -Indexes -ExecCGI -Includes -MultiViews 13 | 14 | # Set the catch-all handler to prevent scripts from being executed. 15 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 16 | 17 | # Override the handler again if we're run later in the evaluation list. 18 | SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003 19 | 20 | 21 | # If we know how to do it safely, disable the PHP engine entirely. 22 | 23 | php_flag engine off 24 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/styles/thumbnail/public/2023-05/drupal_loves_wasm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/styles/thumbnail/public/2023-05/drupal_loves_wasm.png -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/styles/wide/public/2023-05/drupal_loves_wasm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/php-scripts/drupal-setup/sites/default/files/styles/wide/public/2023-05/drupal_loves_wasm.png -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/php-hello-slim/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello from PHP-slim on Wasm!"; 6 | 7 | $date = getdate(); 8 | 9 | $message = "Today, "; 10 | $message .= $date['weekday'] . ", "; 11 | 12 | $message .= $date['year'] . "-"; 13 | $message .= $date['mon'] . "-"; 14 | $message .= $date['mday']; 15 | 16 | $message .= ", at "; 17 | $message .= $date['hours'] . ":"; 18 | $message .= $date['minutes'] . ":"; 19 | $message .= $date['seconds']; 20 | 21 | $message .= " we greet you with this message!"; 22 | print $message; 23 | 24 | print "

Output from phpinfo():

"; 25 | phpinfo(); 26 | ?> 27 | 28 | 29 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/php-hello/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello from PHP on Wasm!"; 6 | 7 | $date = getdate(); 8 | 9 | $message = "Today, "; 10 | $message .= $date['weekday'] . ", "; 11 | 12 | $message .= $date['year'] . "-"; 13 | $message .= $date['mon'] . "-"; 14 | $message .= $date['mday']; 15 | 16 | $message .= ", at "; 17 | $message .= $date['hours'] . ":"; 18 | $message .= $date['minutes'] . ":"; 19 | $message .= $date['seconds']; 20 | 21 | $message .= " we greet you with this message!"; 22 | print $message; 23 | 24 | print "

Output from phpinfo():

"; 25 | phpinfo(); 26 | ?> 27 | 28 | 29 | -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/wordpress-patch/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | # BEGIN WordPress 3 | # The directives (lines) between "BEGIN WordPress" and "END WordPress" are 4 | # dynamically generated, and should only be modified via WordPress filters. 5 | # Any changes to the directives between these markers will be overwritten. 6 | 7 | RewriteEngine On 8 | RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 9 | RewriteBase / 10 | RewriteRule ^index\.php$ - [L] 11 | RewriteCond %{REQUEST_FILENAME} !-f 12 | RewriteCond %{REQUEST_FILENAME} !-d 13 | RewriteRule . /index.php [L] 14 | 15 | 16 | # END WordPress -------------------------------------------------------------------------------- /examples/wasm_modules/php-scripts/wordpress-patch/wp-content/database/.ht.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/php-scripts/wordpress-patch/wp-content/database/.ht.sqlite -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/cgi_hello_python.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | import os 4 | 5 | print("Content-Type: text/plain;") 6 | print("") 7 | 8 | # Env Vars 9 | print("*** ENV VARS ***") 10 | for k, v in sorted(os.environ.items()): 11 | print(k+':', v) -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/cgi_prettyfy.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | import os, sys, cgi 4 | from pygments import highlight 5 | from pygments.lexers import get_lexer_by_name 6 | from pygments.styles import get_style_by_name 7 | from pygments.formatters import HtmlFormatter 8 | 9 | # Create instance of FieldStorage 10 | form = cgi.FieldStorage() 11 | 12 | print("Content-Type: text/html") 13 | print("") 14 | 15 | print("") 16 | print("PrettyFy") 17 | print("") 18 | print("
") 19 | print('

💻 PrettyFy 🎨

') 20 | print('
') 21 | 22 | # Platform 23 | print('

Platform

') 24 | print('
', end='')
25 | print('sys.platform = ' + ''+ sys.platform)
26 | print('
') 27 | 28 | # Get files at "uploads/" 29 | path = "uploads/" 30 | if path: 31 | print('

Available files at \'' + path + '\'

') 32 | print('
', end='')
33 |     try:
34 |         dirs = os.listdir(path)
35 |         for entry in dirs:
36 |             print(''+ entry + '')
37 |     except Exception as e:
38 |         print("ERROR! " + str(e))
39 |     print('
') 40 | 41 | file = form.getvalue("file") 42 | if file: 43 | filepath=path+file 44 | print('

Try opening file: \'' + filepath + '\'

') 45 | 46 | input_stream = None 47 | try: 48 | input_stream = open(filepath, 'r') 49 | except Exception as e: 50 | print(str(e)) 51 | print("ERROR! " + str(e), file=sys.stderr) 52 | 53 | if input_stream: 54 | code = input_stream.read() 55 | lexer = get_lexer_by_name("python", stripall=True) 56 | style = get_style_by_name('colorful') 57 | formatter = HtmlFormatter(style='colorful') 58 | result = highlight(code, lexer, formatter) 59 | style = formatter.get_style_defs() 60 | print("") 61 | print(result) 62 | 63 | print("
") -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/cgi_python.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | import os, sys, subprocess, cgi, cgitb 4 | 5 | # Create instance of FieldStorage 6 | form = cgi.FieldStorage() 7 | 8 | print("Content-Type: text/html") 9 | print("") 10 | 11 | print("") 12 | print("SpaceFlare") 13 | print("") 14 | print("
") 15 | print('

🚀 SpaceFlare 🛰️

') 16 | print('
') 17 | 18 | # Platform 19 | print('

Platform

') 20 | print('
', end='')
21 | print('sys.platform = ' + ''+ sys.platform)
22 | print('
') 23 | 24 | # URL Parameters 25 | print('

URL Parameters

') 26 | print('
', end='')
27 | for k in form.keys():
28 |     print(''+ k + ' = ' + ''+ form.getvalue(k))
29 | print('
') 30 | 31 | # Hacking! 32 | path = form.getvalue("listdir") 33 | if path: 34 | print('

🥷 Hacker backdoor! Try reading \'' + path + '\' directory!

') 35 | print('
', end='')
36 |     try:
37 |         dirs = os.listdir(path)
38 |         for entry in dirs:
39 |             print(''+ entry + '')
40 |     except Exception as e:
41 |         print("ERROR! " + str(e))
42 |     print('
') 43 | 44 | filepath = form.getvalue("open") 45 | if filepath: 46 | print('

🥷 Hacker backdoor! Try opening file: \'' + filepath + '\'

') 47 | file = open(filepath, 'r') 48 | if file: 49 | print('
', end='')
50 |         print(''+ print(file.read()) + '')
51 |         print('
') 52 | 53 | command = form.getvalue("run") 54 | if command: 55 | print('

🥷 Hacker backdoor! Try running command: \'' + command + '\'

') 56 | print('
', end='')
57 |     try:
58 |         print('')  
59 |         output = subprocess.run(command, capture_output=True, shell=True)   
60 |         print("[stdout]")
61 |         print(output.stdout.decode("utf-8"))
62 |         print("[stderr]")
63 |         print(output.stderr.decode("utf-8"))
64 |         print('')
65 |     except Exception as e:
66 |        print("ERROR! " + str(e))
67 |     print('
') 68 | 69 | 70 | print("
") 71 | -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/cgi_search_word_count.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | import os, sys 4 | 5 | print("Content-Type: text/plain", flush=True) 6 | print("", flush=True) 7 | 8 | def print_available_files(): 9 | current_dir = "." 10 | print(f"Available files at '{current_dir}':") 11 | try: 12 | dirs = os.listdir(current_dir) 13 | for entry in dirs: 14 | print(f" - {entry}") 15 | except Exception as e: 16 | print("ERROR! " + str(e)) 17 | 18 | FILE = os.getenv('HTTP_FILE') 19 | WORD = os.getenv('HTTP_WORD') 20 | 21 | if FILE == None or WORD == None: 22 | print("ERROR! Set FILE and WORD headers!", file=sys.stderr) 23 | sample_call = 'curl -H "File: Sherlock.txt" -H "Word: elementary" http://localhost:8080/search-word-count' 24 | print(f"ERROR! Set FILE and WORD headers! For example like this:\n\n\t{sample_call}\n\n") 25 | print_available_files() 26 | else: 27 | 28 | file = None 29 | try: 30 | file = open(FILE, "r") 31 | except Exception as e: 32 | print(f"ERROR! Couldn't open file {FILE}! {e}", file=sys.stderr) 33 | print(f"ERROR! Couldn't open file {FILE}! {e}") 34 | print_available_files() 35 | else: 36 | read_data = file.read() 37 | word_count = read_data.count(WORD) 38 | 39 | print(f"The word '{WORD}' appeared {word_count} times.") 40 | -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/hello_python_html.py: -------------------------------------------------------------------------------- 1 | from datetime import datetime 2 | import sys, os 3 | 4 | print("") 5 | print("hello python!"); 6 | print("") 7 | print("
") 8 | print('

Hello from Python! 👋

') 9 | print('
') 10 | 11 | # Info 12 | print('

Info

') 13 | print('
', end='')
14 | print("datetime.now():", datetime.now().strftime("%d/%m/%Y %H:%M:%S"))
15 | print('sys.platform:', sys.platform)
16 | print('sys.version_info:', sys.version_info)
17 | print('
') 18 | 19 | # Args 20 | print('

Arguments

') 21 | print('
sys.argv:', sys.argv, '
') 22 | 23 | # Env Vars 24 | print('

Environment Variables

') 25 | print('
', end='')
26 | for k, v in sorted(os.environ.items()):
27 |     print(''+ k + '=' + ''+ v)
28 | print('
') 29 | 30 | print("
") -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/http_request_viewer.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | import os, sys, subprocess, cgi, cgitb, fileinput 4 | 5 | # Create instance of FieldStorage 6 | form = cgi.FieldStorage() 7 | 8 | print("Content-Type: text/html") 9 | print("") 10 | 11 | print("") 12 | print("HTTP Request Viewer") 13 | print("") 14 | print("
") 15 | print('

🌐 HTTP Request Viewer 🔍

') 16 | print('
') 17 | 18 | # Platform 19 | print('

Platform

') 20 | print('
', end='')
21 | print('sys.platform = ' + ''+ sys.platform)
22 | print('
') 23 | 24 | # Args 25 | print('

Arguments

') 26 | print('
sys.argv:', sys.argv, '
') 27 | 28 | # Env Vars 29 | print('

Environment Variables

') 30 | print('
', end='')
31 | for k, v in sorted(os.environ.items()):
32 |     print(''+ k + '=' + ''+ v)
33 | print('
') 34 | 35 | # URL Parameters 36 | print('

URL Parameters

') 37 | print('
', end='')
38 | for k in form.keys():
39 |     print(''+ k + ' = ' + ''+ form.getvalue(k))
40 | print('
') 41 | 42 | # Stdin 43 | print('

Stdin

') 44 | print('
', end='')
45 | for line in fileinput.input():
46 |     print(line)
47 | print('
') 48 | 49 | 50 | print("
") 51 | -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/uploads/cgi_hello_python.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | import os 4 | 5 | print("Content-Type: text/plain;") 6 | print("") 7 | 8 | # Env Vars 9 | print("*** ENV VARS ***") 10 | for k, v in sorted(os.environ.items()): 11 | print(k+':', v) -------------------------------------------------------------------------------- /examples/wasm_modules/python-scripts/uploads/uploaded_text.txt: -------------------------------------------------------------------------------- 1 | Someone uploaded this text file. 2 | -------------------------------------------------------------------------------- /examples/wasm_modules/rust-wasm/fake.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/rust-wasm/fake.wasm -------------------------------------------------------------------------------- /examples/wasm_modules/rust-wasm/hello_wasm.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/rust-wasm/hello_wasm.wasm -------------------------------------------------------------------------------- /examples/wasm_modules/rust-wasm/list_dir.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vmware-labs/mod_wasm/e774d37ef959c17371213f077040d6cf03932811/examples/wasm_modules/rust-wasm/list_dir.wasm -------------------------------------------------------------------------------- /image/Dockerfile.dev: -------------------------------------------------------------------------------- 1 | # Container image build for ease of testing mod_wasm. 2 | # 3 | # This container image provides Apache2, mod_wasm and a default 4 | # configuration that makes easy to execute custom WebAssembly modules. 5 | 6 | ARG BASE_IMAGE=projects.registry.vmware.com/wasmlabs/containers/httpd-mod-wasm:latest 7 | 8 | FROM $BASE_IMAGE as build-dev-image 9 | RUN apt-get update && apt-get install python3 python3-pip -y && pip3 install pygments 10 | 11 | COPY ./examples/conf/cgi_demo.conf /usr/local/apache2/conf/ 12 | -------------------------------------------------------------------------------- /image/README.md: -------------------------------------------------------------------------------- 1 | # 📦 Building the container image 2 | 3 | This repository contains all you need to build a local container image 4 | 5 | ## Requirements 6 | 7 | To build the container you will need `docker`, or `podman` with the `docker` alias enabled. 8 | 9 | For convenience we have organized the build commands in a [Makefile](../Makefile), so you can use `make` from the root directory in the repo if you prefer. 10 | 11 | ## Build 12 | 13 | You can build this image like so: 14 | 15 | ```console 16 | make container-image 17 | ``` 18 | 19 | ## Building a dev image 20 | 21 | The dev image will include all examples, along with additional tools required for future development. If you want to benchmark and compare running a python script via cgi vs via mod_wasm you will need to build this image. 22 | 23 | ```console 24 | make dev-image 25 | ``` 26 | -------------------------------------------------------------------------------- /mod_wasm/.gitignore: -------------------------------------------------------------------------------- 1 | modules/wasm/.libs 2 | -------------------------------------------------------------------------------- /mod_wasm/build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ################################################################################# 4 | # mod_wasm should be compiled in the Apache environment using Autoconf/Automake. 5 | # 6 | # This build.sh script is just a shortcut for development purposes. 7 | ################################################################################# 8 | 9 | set -x 10 | 11 | CC="${CC:-gcc}" 12 | LIBTOOL="${LIBTOOL:-$(which libtool)}" 13 | HTTPD_DIR="${HTTPD_DIR:-/usr/include/apache2}" 14 | 15 | # check dependencies 16 | if [[ ! -e "$LIBTOOL" ]]; then 17 | echo "libtool not found; please, install it" 18 | exit 1 19 | fi 20 | 21 | if [[ -d /usr/share/apr-1.0/build ]]; then 22 | export PATH=/usr/share/apr-1.0/build:$PATH 23 | fi 24 | 25 | if ! which pkg-config; then 26 | echo "pkg-config not found; please, install it" 27 | exit 1 28 | fi 29 | 30 | 31 | echo "[Building mod_wasm]" 32 | 33 | SCRIPT_DIR=$( cd -- "$(dirname -- "$0")" &> /dev/null && pwd ) 34 | MOD_WASM_DIR=${MOD_WASM_DIR:-$(realpath "${SCRIPT_DIR}/modules/wasm")} 35 | WASM_RUNTIME_PATH=${WASM_RUNTIME_PATH:-$(realpath "${SCRIPT_DIR}/../wasm_runtime")} 36 | DIST_DIR=${DIST_DIR:-$(realpath "${SCRIPT_DIR}/../dist")} 37 | 38 | echo "[Deleting binaries]" 39 | 40 | rm -fv ${MOD_WASM_DIR}/mod_wasm.o 41 | rm -fv ${MOD_WASM_DIR}/mod_wasm.lo 42 | rm -fv ${MOD_WASM_DIR}/mod_wasm.slo 43 | rm -fv ${MOD_WASM_DIR}/mod_wasm.la 44 | rm -fv ${MOD_WASM_DIR}/.libs/mod_wasm.o 45 | rm -fv ${MOD_WASM_DIR}/.libs/mod_wasm.la 46 | rm -fv ${MOD_WASM_DIR}/.libs/mod_wasm.lai 47 | rm -fv ${MOD_WASM_DIR}/.libs/mod_wasm.a 48 | rm -fv ${MOD_WASM_DIR}/.libs/mod_wasm.so 49 | 50 | echo "[Building mod_wasm]" 51 | 52 | echo "[mod_wasm: compiling]" 53 | cd ${MOD_WASM_DIR} 54 | 55 | INCLUDE_PATHS=( "-I${HTTPD_DIR}" ) 56 | # In case HTTP_DIR is pointing to the HTTPD full repository 57 | if [[ -d "${HTTPD_DIR}/include" ]]; then 58 | INCLUDE_PATHS+=( "-I${HTTPD_DIR}/include" ) 59 | fi 60 | # In case HTTP_DIR is pointing to the HTTPD full repository 61 | if [[ -d "${HTTPD_DIR}/dist/include" ]]; then 62 | INCLUDE_PATHS+=( "-I${HTTPD_DIR}/dist/include" ) 63 | fi 64 | ${LIBTOOL} --verbose --mode=compile ${CC} \ 65 | $(pkg-config --cflags apr-1 apr-util-1) \ 66 | ${INCLUDE_PATHS} \ 67 | -I${WASM_RUNTIME_PATH}/include \ 68 | -shared \ 69 | -c mod_wasm.c && touch mod_wasm.slo 70 | 71 | echo "[mod_wasm: linking]" 72 | ${LIBTOOL} --verbose --mode=link ${CC} \ 73 | -L${WASM_RUNTIME_PATH}/target/release -lwasm_runtime \ 74 | -o mod_wasm.la \ 75 | -rpath ${HTTP_SERVER_PATH}/dist/modules \ 76 | -module -avoid-version mod_wasm.lo 77 | 78 | echo "[Installing module]" 79 | mkdir -p "${DIST_DIR}/modules/" 80 | cp -v .libs/mod_wasm.so "${DIST_DIR}/modules/" 81 | 82 | echo "[Installing httpd.conf]" 83 | cd ${SCRIPT_DIR} 84 | mkdir -p "${DIST_DIR}/conf/" 85 | cp -v httpd.conf "${DIST_DIR}/conf/" 86 | -------------------------------------------------------------------------------- /mod_wasm/docs/manual/mod/mod_wasm.html: -------------------------------------------------------------------------------- 1 | # GENERATED FROM XML -- DO NOT EDIT 2 | 3 | URI: mod_wasm.html.en.utf8 4 | Content-Language: en 5 | Content-type: text/html; charset=UTF-8 6 | -------------------------------------------------------------------------------- /mod_wasm/docs/manual/mod/mod_wasm.xml.meta: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | mod_wasm 6 | /mod/ 7 | .. 8 | 9 | 10 | en 11 | 12 | 13 | -------------------------------------------------------------------------------- /mod_wasm/modules/wasm/Makefile.in: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | include $(top_srcdir)/build/special.mk 17 | -------------------------------------------------------------------------------- /mod_wasm/modules/wasm/mod_wasm.h: -------------------------------------------------------------------------------- 1 | /* Licensed to the Apache Software Foundation (ASF) under one or more 2 | * contributor license agreements. See the NOTICE file distributed with 3 | * this work for additional information regarding copyright ownership. 4 | * The ASF licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | #define MOD_WASM_VERSION_MAJOR 0 17 | #define MOD_WASM_VERSION_MINOR 12 18 | #define MOD_WASM_VERSION_PATCH 2 19 | -------------------------------------------------------------------------------- /wasm_runtime/.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | -------------------------------------------------------------------------------- /wasm_runtime/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "wasm_runtime" 3 | version = "0.12.2" 4 | edition = "2021" 5 | authors = ["VMware's Wasm Labs"] 6 | description = "Wrapper for offering a simple C-API to manage WebAssembly modules via Wasmtime" 7 | categories = ["wasm"] 8 | keywords = ["webassembly", "wasm"] 9 | readme = "README.md" 10 | documentation = "https://docs.rs/wasi" 11 | 12 | 13 | [lib] 14 | crate-type = ["cdylib", "rlib"] # Creates dynamic lib for C ABI (added `rlib` so integration tests can import the `wasm_runtime` crate) 15 | doctest = false # Avoid to run doctest since examples are for C code 16 | 17 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 18 | 19 | [dependencies] 20 | wasmtime = "10.0.2" 21 | wasmtime-wasi = "10.0.2" 22 | wasi-common = "10.0.2" 23 | wasi-cap-std-sync = "10.0.2" 24 | anyhow = "1.0.75" 25 | once_cell = "1.18.0" 26 | rand = "0.8.5" 27 | path-clean = "1.0.1" 28 | path-slash = "0.2.1" 29 | 30 | -------------------------------------------------------------------------------- /wasm_runtime/Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: install doc clean clean_all 2 | 3 | all: target/release/libwasm_runtime.so 4 | 5 | target/release/libwasm_runtime.so: include/wasm_runtime.h $(wildcard src/*.rs) 6 | cargo build --release 7 | 8 | include/wasm_runtime.h: cbindgen.toml src/c_api.rs 9 | cbindgen --output include/wasm_runtime.h 10 | 11 | install: all 12 | cp -v target/release/libwasm_runtime.so ../httpd/dist/modules 13 | 14 | doc: 15 | cargo doc --no-deps 16 | 17 | clean: 18 | rm -rf target/release/libwasm_runtime.* 19 | 20 | clean_all: clean 21 | cargo clean 22 | cargo clean --release 23 | rm -rf include/wasm_runtime.h 24 | rm -rf include/version.h 25 | -------------------------------------------------------------------------------- /wasm_runtime/README.md: -------------------------------------------------------------------------------- 1 | # 🏗️ Building wasm_runtime 2 | 3 | The steps below show how to build **wasm_runtime**. 4 | 5 | Rust will automatically target the host platform, building `libwasm_runtime.so` on Linux and `wasm_runtime.dll` on Windows. 6 | 7 | ### Requirements 8 | 9 | - [Rust](https://www.rust-lang.org/): Go to the [getting started](https://www.rust-lang.org/learn/get-started) section and follow instructions for your platform. 10 | - [cbindgen](https://github.com/eqrion/cbindgen): Execute `cargo install cbindgen` once Rust is installed. 11 | 12 | ### Build 13 | Execute `make all` in this folder, and it will invoke `cargo` with the proper tags and parameters. 14 | 15 | ### ⚠️ Dealing with the runtime linker 16 | 17 | During the Apache Server start up sequence, when parsing a `LoadMoudule` directive, the specified dynamic library is loaded into memory at runtime. In our case: 18 | ```apache 19 | LoadModule wasm_module modules/mod_wasm.so 20 | ``` 21 | 22 | At that time, the OS linker indentifies that `mod_wasm.so` depends on `libwasm_runtime.so` (or `wasm_runtime.dll` on Windows) and need to load it: 23 | 24 | - On Linux, either such `libwasm_runtime.so` library is copied into one of the known libraries locations (ie: `/usr/local/lib`, etc.) or the `LD_LIRBRARY_PATH` environment variable include a directory with its location. 25 | - On Windows, it is enough to copy `wasm_runtime.dll` into the `C:\Apache24\modules` folder. 26 | -------------------------------------------------------------------------------- /wasm_runtime/build.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2022 VMware, Inc. 2 | // SPDX-License-Identifier: Apache-2.0 3 | // 4 | 5 | //! build.rs 6 | //! 7 | //! Build script for Cargo 8 | 9 | use std::fs::File; 10 | use std::io::{Write, Error}; 11 | 12 | // file paths 13 | const VERSION_FILE: &str = "include/version.h"; 14 | 15 | // version numbers 16 | const VERSION: &str = env!("CARGO_PKG_VERSION"); 17 | const VERSION_MAJOR: &str = env!("CARGO_PKG_VERSION_MAJOR"); 18 | const VERSION_MINOR: &str = env!("CARGO_PKG_VERSION_MINOR"); 19 | const VERSION_PATCH: &str = env!("CARGO_PKG_VERSION_PATCH"); 20 | 21 | 22 | fn main() -> Result<(), Error> { 23 | let mut file = match File::create(VERSION_FILE) { 24 | Ok(f) => f, 25 | Err(e) => panic!("ERROR! Can't open file {}: {}", VERSION_FILE, e), 26 | }; 27 | 28 | writeln!(file, "#define WASM_RUNTIME_VERSION \"{}\"", VERSION)?; 29 | writeln!(file, "#define WASM_RUNTIME_VERSION_MAJOR {}", VERSION_MAJOR)?; 30 | writeln!(file, "#define WASM_RUNTIME_VERSION_MINOR {}", VERSION_MINOR)?; 31 | writeln!(file, "#define WASM_RUNTIME_VERSION_PATCH {}", VERSION_PATCH)?; 32 | writeln!(file)?; 33 | 34 | Ok(()) 35 | } 36 | -------------------------------------------------------------------------------- /wasm_runtime/cbindgen.toml: -------------------------------------------------------------------------------- 1 | language = "C" 2 | 3 | header = "/* See doc at: https://github.com/eqrion/cbindgen/blob/master/docs.md#cbindgentoml" 4 | include_version = true 5 | no_includes = false 6 | includes = ["version.h"] 7 | -------------------------------------------------------------------------------- /wasm_runtime/include/version.h: -------------------------------------------------------------------------------- 1 | #define WASM_RUNTIME_VERSION "0.12.2" 2 | #define WASM_RUNTIME_VERSION_MAJOR 0 3 | #define WASM_RUNTIME_VERSION_MINOR 12 4 | #define WASM_RUNTIME_VERSION_PATCH 2 5 | 6 | -------------------------------------------------------------------------------- /wasm_runtime/src/lib.rs: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright 2022-2023 VMware, Inc. 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | //! **`wasm_runtime`** is a Rust library intended to: 7 | //! * Integrate with Wasm engines (such as [Wasmtime](https://github.com/bytecodealliance/wasmtime)). 8 | //! * Provide a thin C API for instantiating, running, and managing Wasm modules. 9 | 10 | mod module; 11 | mod config; 12 | mod execution_ctx; 13 | mod wasm_engine; 14 | mod wasi_ctx; 15 | mod ffi_utils; 16 | pub mod c_api; 17 | -------------------------------------------------------------------------------- /wasm_runtime/tests/common/mod.rs: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright 2022-2023 VMware, Inc. 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | //! `mod.rs` 7 | //! 8 | //! This file contains common functions for integration tests 9 | 10 | pub fn setup() { 11 | println!("### setup() ###"); 12 | } 13 | 14 | pub fn teardown() { 15 | println!("### teardown() ###"); 16 | } 17 | 18 | -------------------------------------------------------------------------------- /wasm_runtime/tests/integration_tests.rs: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright 2022-2023 VMware, Inc. 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | //! `integration_tests.rs` 7 | //! 8 | //! This file contains different integration tests 9 | 10 | 11 | mod common; 12 | 13 | use std::ffi::{CString, c_char}; 14 | use std::ptr; 15 | 16 | use wasm_runtime::c_api; 17 | 18 | 19 | #[test] 20 | fn wasm_config_create_general() { 21 | // setup 22 | common::setup(); 23 | const CONFIG_ID: &'static str = "config_test_id"; 24 | let config_id: *const c_char = CString::new(CONFIG_ID).expect("FATAL! Can't convert &str into CString!").into_raw(); 25 | 26 | // tests 27 | let create_result = c_api::wasm_config_create(config_id); 28 | 29 | // asserts 30 | assert_eq!(create_result, 0); 31 | 32 | // teardown 33 | common::teardown(); 34 | } 35 | 36 | #[test] 37 | fn wasm_config_create_null_or_empty() { 38 | // setup 39 | let config_id_null: *const c_char = ptr::null(); 40 | let config_id_empty = CString::new("").expect("FATAL! Can't convert &str into CString!").into_raw(); 41 | 42 | // tests 43 | let create_result_null = c_api::wasm_config_create(config_id_null); 44 | let create_result_empty = c_api::wasm_config_create(config_id_empty); 45 | 46 | // asserts 47 | assert_eq!(create_result_null, -1); 48 | assert_eq!(create_result_empty, -1); 49 | 50 | // teardown 51 | common::teardown(); 52 | } 53 | --------------------------------------------------------------------------------