[0001] [0002] [0003] [0004] [0005] [0006] [0007] [0008] [0009] [0010] [0011] [0012] [0013] [0014] [0015] [0016] [0017] [0018] [0019] [0020] [0021] [0022] [0023] [0024] [0025] [0026] [0027] [0028] [0029] [0030] [0031] [0032] [0033] [0034] [0035] [0036] [0037] [0038] [0039] [0040] [0041] [0042] [0043] [0044] [0045] [0046] [0047] [0048] [0049] [0050] [0051] [0052] [0053] [0054] [0055] [0056] [0057] [0058] [0059] [0060] [0061] [0062] [0063] [0064] [0065] [0066] [0067] [0068] [0069] [0070] [0071] [0072] [0073] [0074] [0075] [0076] [0077] [0078] [0079] [0080] [0081] [0082] [0083] [0084] [0085] [0086] [0087] [0088] [0089] [0090] [0091] [0092] [0093] [0094] [0095] [0096] [0097] [0098] [0099] [0100] [0101] [0102] [0103] [0104] [0105] [0106] [0107] [0108] [0109] [0110] [0111] [0112] [0113] [0114] [0115] [0116] [0117] [0118] [0119] [0120] [0121] [0122] [0123] [0124] [0125] [0126] [0127] [0128] [0129] [0130] [0131] [0132] [0133] [0134] [0135] [0136] [0137] [0138] [0139] [0140] [0141] [0142] [0143] [0144] [0145] [0146] [0147] [0148] [0149] [0150] [0151] [0152] [0153] [0154] [0155] [0156] [0157] [0158] [0159] [0160] [0161] [0162] [0163] [0164] [0165] [0166] [0167] [0168] [0169] [0170] [0171] [0172] [0173] [0174] [0175] [0176] [0177] [0178] [0179] [0180] [0181] [0182] [0183] [0184] [0185] [0186] [0187] [0188] [0189] [0190] [0191] [0192] [0193] [0194] [0195] [0196] [0197] [0198] [0199] [0200] [0201] [0202] [0203] [0204] [0205] [0206] [0207] [0208] [0209] [0210] [0211] [0212] [0213] [0214] [0215] [0216] [0217] [0218] [0219] [0220] [0221] [0222] [0223] [0224] [0225] [0226] [0227] [0228] [0229] [0230] [0231] [0232] [0233] [0234] [0235] [0236] [0237] [0238] [0239] [0240] [0241] [0242] [0243] [0244] [0245] [0246] [0247] [0248] [0249] [0250] [0251] [0252] [0253] [0254] [0255] [0256] [0257] [0258] [0259] [0260] [0261] [0262] [0263] [0264] [0265] [0266] [0267] [0268] [0269] [0270] [0271] [0272] [0273] [0274] [0275] [0276] [0277] [0278] [0279] [0280] [0281] [0282] [0283] [0284] [0285] [0286] [0287] [0288] [0289] [0290] [0291] [0292] [0293] [0294] [0295] [0296] [0297] [0298] [0299] [0300] [0301] [0302] [0303] [0304] [0305] [0306] [0307] [0308] [0309] [0310] [0311] [0312] [0313] [0314] [0315] [0316] [0317] [0318] [0319] [0320] [0321] [0322] [0323] [0324] [0325] [0326] [0327] [0328] [0329] [0330] [0331] [0332] [0333] [0334] [0335] [0336] [0337] [0338] [0339] [0340] [0341] [0342] [0343] [0344] [0345] [0346] [0347] [0348] [0349] [0350] [0351] [0352] [0353] [0354] [0355] [0356] [0357] [0358] [0359] [0360] [0361] [0362] [0363] [0364] [0365] [0366] [0367] [0368] [0369] [0370] [0371] [0372] [0373] [0374] [0375] [0376] [0377] [0378] [0379] [0380] [0381] [0382] [0383] [0384] [0385] [0386] [0387] [0388] [0389] [0390] [0391] [0392] [0393] [0394] [0395] [0396] [0397] [0398] [0399] [0400] [0401] [0402] [0403] [0404] [0405] [0406] [0407] [0408] [0409] [0410] [0411] [0412] [0413] [0414] [0415] [0416] [0417] [0418] [0419] [0420] [0421] [0422] [0423] [0424] [0425] [0426] [0427] [0428] [0429]
<!DOCTYPE html> <!-- WASDOC AXP-2.0.0 (CGILIB AXP-1.9.9) --> <!-- wasDOC Copyright (C) 2019,2020 Mark G.Daniel - Apache-2.0 licenced --> <!-- 3-NOV-2021 02:57 --> <noscript>NOTE: SOME FUNCTIONALITY EMPLOYS JAVASCRIPT</noscript> <div id="erreport1" style="display:none;"></div> <script> function errorReport(string) { for (var cnt = 1; cnt <= 2; cnt++) { var err = document.getElementById('erreport'+cnt); err.style.display = 'block'; err.innerHTML += string; } } </script> <style type="text/css"> html { font-family: arial, verdana, sans-serif; font-size:12pt; margin:1em; } h1 { font-size:124%; font-style:bold; margin-top:1em; margin-bottom:0.5em; } h2 { font-size:120%; font-style:bold; margin-top:1.1em; margin-bottom:0.4em; } h3 { font-size:116%; font-style:bold; margin-top:1.0em; margin-bottom:0.3em; } h4 { font-size:112%; font-style:bold; margin-top:1.1em; margin-bottom:0.3em; } h5 { font-size:112%; font-style:bold; margin-top:1.1em; margin-bottom:0.3em; } h6 { font-size:112%; font-style:bold; padding:0; margin:0; } h1 .text { text-decoration:underline; } h1 .numb { padding-right:0.8em; } h1 .numb:empty { display:none; padding-right:0; } h2 .numb { padding-right:0.8em; } h2 .numb:empty { display:none; padding-right:0; } h3 .numb { padding-right:0.8em; } h3 .numb:empty { display:none; padding-right:0; } h4 .numb { padding-right:0.8em; } h4 .numb:empty { display:none; padding-right:0; } h5 .numb { display:none; padding-right:0; } h6 .numb { display:none; padding-right:0; } kbd { font-family:monospace; } noscript { font-size:1.2em; } p { line-height:1.1em; margin-top:1em; margin-bottom:1em; } .chunk { font-size:130%; text-decoration:underline; } .head {} .high {} .bold { font-weight:bold; } .center { text-align:center; } .italic { font-style:italic; } .left { text-align:left; } .nowrap { white-space:nowrap; } .prewrap { white-space:pre; } .right { text-align:right; } .strike { text-decoration:line-through; } .under { text-decoration:underline; } .backlight { background-color:#f2f2f2; } .display0 { display:none; } img { max-width:100%; } .imglink { } .link { } .blank { } .list { margin-bottom:1em; } .list li { margin-top:0.5em; } .list0 li { margin-top:0; } .item {} .tabl { border-collapse:collapse; text-align:left; margin:0.4em 2em 0.5em 2em; } .tabu { border-collapse:collapse; text-align:right; margin:0.4em 2em 0.5em 2em; } .tabr { vertical-align:top; } .tabh { padding:0.2em 0 0 2em; margin:0; } .tabd { padding:0.1em 0 0 2em; margin:0; } .tabh:first-of-type, td:first-of-type { padding-left:0; } .tabu .tabh, .tabu .tabd { border:1px solid gray; padding:0.2em 0.3em 0.2em 0.3em; } .tab0 { border:none; visibility:hidden; max-width:1em; white-space:nowrap; overflow:hidden; } .tabauto { margin-left:auto; margin-right:auto; } .tabr:empty { height:0.2em; } .tabu .tabh:empty, .tabu .tabd:empty { border:none; visibility:hidden; } .error { font-size:110%; color:black; background-color:yellow; font-family:sans-serif; font-weight:bold; font-style:normal; width:95%; border:solid 1px gray; padding:0.5em 1em 0.5em 1em; } .error::before { content:'\026a0\00a0'; } .image { } .page { width:98%; border:1px dashed gray; margin:1.5em 0 1.8em 0; } .epage { width:98%; border:1px dashed black; margin:1.5em 0 1.8em 0; } .monosp { font-family:monospace; } .ppage { display:none; } .simple { list-style-type:none; } .valtop { vertical-align:top; } .valmid { vertical-align:middle; } .valbot { vertical-align:bottom; } .code { border-style:solid; border-width:0 0 0 1px; padding-left:1em; font-family:monospace; white-space:pre; } .block { } .blockof { margin:0.4em 2em 0.5em 2em; } .example { border-style:dashed; border-width:0 0 0 1px; padding-left:1em; margin-top:0.5em; margin-bottom:0.5em; white-space:pre; } .indent { margin-left:2em; margin-right:2em; } .noindent { margin-left:0; margin-right:0; } .inblock { display:inline-block; } .mono { white-space:pre; font-family:monospace; } .note { margin:0.4em 2em 0.5em 2em; page-break-inside:avoid; } .note h5 { margin-top:0 } .note_hr { width:80%; border:1px solid gray; } .prop { padding-left:1em; margin-top:0.5em; margin-bottom:0.5em; } .quote { border-style:dashed; border-width:0 0 0 1px; padding-left:1em; margin-top:0.5em; margin-bottom:0.5em; } .this { display:none; } a:link,a:visited { color:black; text-decoration:none; } a:hover,a:active { text-decoration:underline; } a:focus { outline:0; } :target:before { content:''; display:block; height:0.1em; margin:-0.1em; } a.link:link, a.link:visited,a.link:active { color:midnightBlue; text-decoration:underline; text-decoration-style:solid; } .TOC1cols1 { width:80%; max-width:80%; } .TOC1cols2 { column-count:2; width:80%; max-width:80%; } .TOC1cols3 { column-count:3; max-width:90%; max-width:90%; } .TOC1cols4 { column-count:4; max-width:100%; max-width:100%; } .TOC1table { margin-left:2em; white-space:nowrap; break-inside:auto; } .TOC1table tr { vertical-align:top; text-align:left; break-inside:avoid; break-after:auto; } .TOC1table td+td { padding:0 0 0 0.5em; } .TOC1table .numb { width:3em; max-width:3em; } .TOC1table .sepr { width:5em; max-width:6em; overflow:hidden; } .TOC1table .majr { font-weight:bold; } .TOC1table .text { white-space:normal; } /* These are due to Firefox (at least <= 76) recalcitrant multi-column handling. Web search "Split table into css columns, issue in Firefox" (stackoverflow). "Good grief, Charlie Brown!" */ .TOC1cols2 table, .TOC1cols2 tbody, .TOC1cols2 tr, .TOC1cols3 table, .TOC1cols3 tbody, .TOC1cols3 tr, .TOC1cols4 table, .TOC1cols4 tbody, .TOC1cols4 tr { display:block; padding:0; } .TOC2cols1 { width:60%; max-width:60%; } .TOC2cols2 { column-count:2; width:70%; max-width:70%; } .TOC2cols3 { column-count:3; width:80%; max-width:80%; } .TOC2cols4 { column-count:4; width:90%; max-width:90%; } .TOC2table { margin-left:2em; white-space:nowrap; break-inside:auto; } .TOC2table tr { vertical-align:top; text-align:left; break-inside:avoid; break-after:auto; } .TOC2table .numb { font-weight:bold; padding-right:0.5em; } .TOC2table .text { width:100%; white-space:normal; } /* see "recalcitrant" above */ .TOC2cols2 table, .TOC2cols2 tbody, .TOC2cols2 tr, .TOC2cols3 table, .TOC2cols3 tbody, .TOC2cols3 tr, .TOC2cols4 table, .TOC2cols4 tbody, .TOC2cols4 tr { display:block; padding:0; } .NAVtable { margin:0.1em 0 0 2em; } .NAVtable td { font-size:110%; font-weight:bold; padding:0; margin:0; } .NAVtable a { padding:0 0.5em 0 0.5em; text-decoration:none; } .IDXcols1 { width:80%; max-width:80%; } .IDXcols2 { column-count:2; width:90%; max-width:90%; } .IDXcols3 { column-count:3; width:95%; max-width:95%; } .IDXcols4 { column-count:4; width:100%; max-width:100%; } .IDXtable { margin:1em 0 1em 2em; white-space:nowrap; break-inside:auto; } .IDXtable tr { vertical-align:top; text-align:left; break-inside:avoid; break-after:auto; } .IDXtable .alpha { font-weight:bold; min-width:2em; } .IDXtable .text { width:100%; white-space:normal; } .IDXtable .para:before { content:'\00b6\00a0'; } /* see "recalcitrant" above */ .IDXcols2 table, .IDXcols2 tbody, .IDXcols2 tr, .IDXcols3 table, .IDXcols3 tbody, .IDXcols3 tr, .IDXcols4 table, .IDXcols4 tbody, .IDXcols4 tr { display:block; padding:0; } .insight { background-color:cyan; font-family:monospace; padding:0 0.2em 0 0.2em; margin:0 0.2em 0 0.2em; font-size:100%; font-style:normal; font-weight:normal; text-decoration:none; } .wasdoc { font-family: "Lucida Console", Monaco, monospace; letter-spacing:-0.07em; } @media screen { .blank::after { content:"\2924"; } .print { display:none; } } @media print { table { page-break-inside:avoid; } .noprint { display:none; } .page { border:none; page-break-after: always; } .epage { display:none; } .ppage { page-break-after:always; } .NAVtable { display:none; } .NAVprint { display:block!important; } } @page { margin:2cm 1cm 2cm 1cm; } </style> <!-- source:0000_SCRIPTING.WASDOC --> <style type="text/css">._smiley::after { font-size:150%; vertical-align:middle; content:'\263a' }</style> <style type="text/css">._frowny::after { font-size:150%; vertical-align:middle; content:'\2639' }</style> <a id="0." href="#"></a> <title>WASD Scripting Environment</title> <a id="0.0.0.0.1" href="#"></a> <a id="0.wasdscriptingenvironment" href="#"></a> <a id="wasdscriptingenvironment" href="#"></a> <h1 class="head" style="font-size:140%;"><span class="text">WASD Scripting Environment</span></h1> <p> For version 12.0 release of WASD VMS Web Services. <p> Published November 2021 <p> Document generated using <span class="high wasdoc">wasDOC</span> version 2.0.0 <a id="0.0.0.0.2" href="#"></a> <a id="0.abstract" href="#"></a> <a id="abstract" href="#"></a> <h5 class="head"><span class="text">Abstract</span></h5> <p> This document introduces the WASD Web Services package and provides detailed installation, update and configuration instructions. <p> For installation and update details see <a class="link blank" target="_blank" href="../install/">WASD Web Services - Installation</a> <p> For detailed configuration information see <a class="link blank" target="_blank" href="../config/">WASD Web Services - Configuration</a> <p> For the more significant features and facilities available see <a class="link blank" target="_blank" href="../features/">WASD Web Services - Features</a> <p> And for a description of WASD Web document, SSI and directory listing behaviours and options, <a class="link blank" target="_blank" href="../env/">WASD Web Services - Environment</a> <a id="0.0.0.0.3" href="#"></a> <a id="0.onlinesearch" href="#"></a> <a id="onlinesearch" href="#"></a> <h5 class="head"><span class="text">Online Search</span></h5> <p> <table class="tabl noindent" style="border:1px #808080 solid;background-color:#eeeeee;margin-bottom:1.5em;"> <tr class="tabr"> <td class="tabd" style="padding:0.5em;"><form action="/cgi-bin/query/wasd_root/wasdoc/config/*.html" target="_top"> <input type="submit" value="Search for:"> <input type="text" name="search" size="20"> <input type="reset" value="Reset"> </form> </table> <p> <span class="high bold">WASD VMS Web Services – Copyright © 1996-2021 Mark G. Daniel</span> <a id="0.0.0.0.3.1" href="#"></a> <a id="0.apachelicenseversion20" href="#"></a> <a id="apachelicenseversion20" href="#"></a> <h6 class="head display0"><span class="text">Apache License, Version 2.0</span></h6> <a id="0.0.0.0.3.2" href="#"></a> <a id="0.license" href="#"></a> <a id="license" href="#"></a> <h6 class="head display0"><span class="text">License</span></h6> <p> Licensed under the <span class="high bold">Apache License</span>, Version 2.0 (the "License"); <div class="blockof quote" style="font-size:0.9em;width:49em;margin:-0.5em 0 0 1em;">you may not use this software except in compliance with the License. You may obtain a copy of the License at <p> <a class="link blank" target="_blank" style="margin-left:1em;" href="https://www.apache.org/licenses/LICENSE-2.0">https://www.apache.org/licenses/LICENSE-2.0</a> <p> Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. </div> <p> <a class="link" href="mailto:Mark.Daniel@wasd.vsm.com.au">Mark.Daniel@wasd.vsm.com.au</a> <br> <span class="high bold italic">A pox on the houses of all spamers. Make that two poxes.</span> <p> All copyright and trademarks within this document belong to their rightful owners. See <a class="link" href="scripting013.html#13.attributionandacknowledgement">13. Attribution and Acknowledgement</a>. <p> This is a static (file), multipart document. <br> Alternative <a class="link" href="/wasd_root/wasdoc/scripting/">single</a> static and <a class="link" href="/cgi-bin/wasdoc/wasd_root/wasdoc/scripting/">dynamic</a> documents. <br> Links followed by ⤤ open in a new page. <a id="0.0.0.0.4.2" href="#"></a> <a id="0.tableofcontent" href="#"></a> <a id="tableofcontent" href="#"></a> <h1 class="head" style="font-size:120%;"><span class="text">Table of Content</span></h1> <div class="TOC1cols2"> <table class="TOC1table"> <tr><td class="sepr"><a href="scripting001.html#1.introduction">1.</a>………………&hellip<td class="text majr"><a href="scripting001.html#1.introduction">Introduction</a> <tr><td class="sepr"><a href="scripting001.html#1.1.scriptingaccounts">1.1</a>………………&hellip<td class="text"><a href="scripting001.html#1.1.scriptingaccounts">Scripting Accounts</a> <tr><td class="sepr"><a href="scripting001.html#1.2.scriptingprocesses">1.2</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.scriptingprocesses">Scripting Processes</a> <tr><td class="sepr"><a href="scripting001.html#1.2.1.processmanagement">1.2.1</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.1.processmanagement">Process Management</a> <tr><td class="sepr"><a href="scripting001.html#1.2.2.processnomenclature">1.2.2</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.2.processnomenclature">Process Nomenclature</a> <tr><td class="sepr"><a href="scripting001.html#1.2.3.processscripting">1.2.3</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.3.processscripting">Process Scripting</a> <tr><td class="sepr"><a href="scripting001.html#1.2.3.1.personascripting">1.2.3.1</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.3.1.personascripting">Persona Scripting</a> <tr><td class="sepr"><a href="scripting001.html#1.2.3.2.restrictingpersonascripting">1.2.3.2</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.3.2.restrictingpersonascripting">Restricting Persona Scripting</a> <tr><td class="sepr"><a href="scripting001.html#1.2.3.3.processpriorities">1.2.3.3</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.3.3.processpriorities">Process Priorities</a> <tr><td class="sepr"><a href="scripting001.html#1.2.4.scriptprocessdefault">1.2.4</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.4.scriptprocessdefault">Script Process Default</a> <tr><td class="sepr"><a href="scripting001.html#1.2.5.scriptprocessparsetype">1.2.5</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.5.scriptprocessparsetype">Script Process Parse Type</a> <tr><td class="sepr"><a href="scripting001.html#1.2.6.scriptprocessrundown">1.2.6</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.6.scriptprocessrundown">Script Process Run-Down</a> <tr><td class="sepr"><a href="scripting001.html#1.2.7.clientrecalcitrance">1.2.7</a>………………&hellip<td class="text"><a href="scripting001.html#1.2.7.clientrecalcitrance">Client Recalcitrance</a> <tr><td class="sepr"><a href="scripting001.html#1.3.scriptproctor">1.3</a>………………&hellip<td class="text"><a href="scripting001.html#1.3.scriptproctor">Script Proctor</a> <tr><td class="sepr"><a href="scripting001.html#1.4.cachingscriptoutput">1.4</a>………………&hellip<td class="text"><a href="scripting001.html#1.4.cachingscriptoutput">Caching Script Output</a> <tr><td class="sepr"><a href="scripting001.html#1.5.enablingascript">1.5</a>………………&hellip<td class="text"><a href="scripting001.html#1.5.enablingascript">Enabling A Script</a> <tr><td class="sepr"><a href="scripting001.html#1.6.scriptmapping">1.6</a>………………&hellip<td class="text"><a href="scripting001.html#1.6.scriptmapping">Script Mapping</a> <tr><td class="sepr"><a href="scripting001.html#1.7.scriptruntime">1.7</a>………………&hellip<td class="text"><a href="scripting001.html#1.7.scriptruntime">Script Run-Time</a> <tr><td class="sepr"><a href="scripting001.html#1.8.unixsyntax">1.8</a>………………&hellip<td class="text"><a href="scripting001.html#1.8.unixsyntax">Unix Syntax</a> <tr><td class="sepr"><a href="scripting001.html#1.9.scriptinglogicals">1.9</a>………………&hellip<td class="text"><a href="scripting001.html#1.9.scriptinglogicals">Scripting Logicals</a> <tr><td class="sepr"><a href="scripting001.html#1.10.scriptingscratchspace">1.10</a>………………&hellip<td class="text"><a href="scripting001.html#1.10.scriptingscratchspace">Scripting Scratch Space</a> <tr><td class="sepr"><a href="scripting001.html#1.11.dclprocessingofrequests">1.11</a>………………&hellip<td class="text"><a href="scripting001.html#1.11.dclprocessingofrequests">DCL Processing of Requests</a> <tr><td class="sepr"><a href="scripting001.html#1.12.scriptingfunctionlibrary">1.12</a>………………&hellip<td class="text"><a href="scripting001.html#1.12.scriptingfunctionlibrary">Scripting Function Library</a> <tr><td class="sepr"><a href="scripting001.html#1.13.scriptrequestedservergeneratederrorresponses">1.13</a>………………&hellip<td class="text"><a href="scripting001.html#1.13.scriptrequestedservergeneratederrorresponses">Script-Requested, Server-Generated Error Responses</a> <tr><td class="sepr"><a href="scripting002.html#2.cgi">2.</a>………………&hellip<td class="text majr"><a href="scripting002.html#2.cgi">CGI</a> <tr><td class="sepr"><a href="scripting002.html#2.1.cgienvironmentvariables">2.1</a>………………&hellip<td class="text"><a href="scripting002.html#2.1.cgienvironmentvariables">CGI Environment Variables</a> <tr><td class="sepr"><a href="scripting002.html#2.2.scriptoutput">2.2</a>………………&hellip<td class="text"><a href="scripting002.html#2.2.scriptoutput">Script Output</a> <tr><td class="sepr"><a href="scripting002.html#2.2.1.cgicompliantoutput">2.2.1</a>………………&hellip<td class="text"><a href="scripting002.html#2.2.1.cgicompliantoutput">CGI Compliant Output</a> <tr><td class="sepr"><a href="scripting002.html#2.2.2.nonparsedheaderoutput">2.2.2</a>………………&hellip<td class="text"><a href="scripting002.html#2.2.2.nonparsedheaderoutput">Non-Parsed-Header Output</a> <tr><td class="sepr"><a href="scripting002.html#2.2.3.bulkcontentoutput">2.2.3</a>………………&hellip<td class="text"><a href="scripting002.html#2.2.3.bulkcontentoutput">Bulk Content Output</a> <tr><td class="sepr"><a href="scripting002.html#2.3.rawhttpinputpostprocessing">2.3</a>………………&hellip<td class="text"><a href="scripting002.html#2.3.rawhttpinputpostprocessing">Raw HTTP Input (POST Processing)</a> <tr><td class="sepr"><a href="scripting002.html#2.4.cgifunctionlibrary">2.4</a>………………&hellip<td class="text"><a href="scripting002.html#2.4.cgifunctionlibrary">CGI Function Library</a> <tr><td class="sepr"><a href="scripting002.html#2.5.cgiutlutility">2.5</a>………………&hellip<td class="text"><a href="scripting002.html#2.5.cgiutlutility">CGIUTL Utility</a> <tr><td class="sepr"><a href="scripting003.html#3.cgiplus">3.</a>………………&hellip<td class="text majr"><a href="scripting003.html#3.cgiplus">CGIplus</a> <tr><td class="sepr"><a href="scripting003.html#3.1.cgiplusprogramming">3.1</a>………………&hellip<td class="text"><a href="scripting003.html#3.1.cgiplusprogramming">CGIplus Programming</a> <tr><td class="sepr"><a href="scripting003.html#3.2.codeexamples">3.2</a>………………&hellip<td class="text"><a href="scripting003.html#3.2.codeexamples">Code Examples</a> <tr><td class="sepr"><a href="scripting003.html#3.3.otherconsiderations">3.3</a>………………&hellip<td class="text"><a href="scripting003.html#3.3.otherconsiderations">Other Considerations</a> <tr><td class="sepr"><a href="scripting004.html#4.runtimeenvironments">4.</a>………………&hellip<td class="text majr"><a href="scripting004.html#4.runtimeenvironments">Run-Time Environments</a> <tr><td class="sepr"><a href="scripting004.html#4.1.rteprogramming">4.1</a>………………&hellip<td class="text"><a href="scripting004.html#4.1.rteprogramming">RTE Programming</a> <tr><td class="sepr"><a href="scripting004.html#4.2.serverconfiguration">4.2</a>………………&hellip<td class="text"><a href="scripting004.html#4.2.serverconfiguration">Server Configuration</a> <tr><td class="sepr"><a href="scripting005.html#5.websocket">5.</a>………………&hellip<td class="text majr"><a href="scripting005.html#5.websocket">WebSocket</a> <tr><td class="sepr"><a href="scripting005.html#5.1.multiclientwebsocketapplications">5.1</a>………………&hellip<td class="text"><a href="scripting005.html#5.1.multiclientwebsocketapplications">Multi-Client WebSocket Applications</a> <tr><td class="sepr"><a href="scripting005.html#5.2.websocketapplication">5.2</a>………………&hellip<td class="text"><a href="scripting005.html#5.2.websocketapplication">WebSocket Application</a> <tr><td class="sepr"><a href="scripting005.html#5.3.websocketlibrary">5.3</a>………………&hellip<td class="text"><a href="scripting005.html#5.3.websocketlibrary">WebSocket Library</a> <tr><td class="sepr"><a href="scripting005.html#5.4.websocketapplicationexamples">5.4</a>………………&hellip<td class="text"><a href="scripting005.html#5.4.websocketapplicationexamples">WebSocket Application Examples</a> <tr><td class="sepr"><a href="scripting005.html#5.4.1.chat">5.4.1</a>………………&hellip<td class="text"><a href="scripting005.html#5.4.1.chat">Chat</a> <tr><td class="sepr"><a href="scripting005.html#5.4.2.echo">5.4.2</a>………………&hellip<td class="text"><a href="scripting005.html#5.4.2.echo">Echo</a> <tr><td class="sepr"><a href="scripting005.html#5.4.3.mouse">5.4.3</a>………………&hellip<td class="text"><a href="scripting005.html#5.4.3.mouse">Mouse</a> <tr><td class="sepr"><a href="scripting005.html#5.5.websocketconfiguration">5.5</a>………………&hellip<td class="text"><a href="scripting005.html#5.5.websocketconfiguration">WebSocket Configuration</a> <tr><td class="sepr"><a href="scripting005.html#5.5.1.websocketthrottle">5.5.1</a>………………&hellip<td class="text"><a href="scripting005.html#5.5.1.websocketthrottle">WebSocket Throttle</a> <tr><td class="sepr"><a href="scripting005.html#5.5.2.websocketcommandline">5.5.2</a>………………&hellip<td class="text"><a href="scripting005.html#5.5.2.websocketcommandline">WebSocket Command-Line</a> <tr><td class="sepr"><a href="scripting005.html#5.5.3.websocketversion">5.5.3</a>………………&hellip<td class="text"><a href="scripting005.html#5.5.3.websocketversion">WebSocket Version</a> <tr><td class="sepr"><a href="scripting005.html#5.6.websocketthroughput">5.6</a>………………&hellip<td class="text"><a href="scripting005.html#5.6.websocketthroughput">WebSocket Throughput</a> <tr><td class="sepr"><a href="scripting005.html#5.7.websocketreferences">5.7</a>………………&hellip<td class="text"><a href="scripting005.html#5.7.websocketreferences">WebSocket References</a> <tr><td class="sepr"><a href="scripting005.html#5.8.wasdquotrawquotsocket">5.8</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.wasdquotrawquotsocket">WASD "Raw"Socket</a> <tr><td class="sepr"><a href="scripting005.html#5.8.1.rawsocketapplication">5.8.1</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.1.rawsocketapplication">RawSocket Application</a> <tr><td class="sepr"><a href="scripting005.html#5.8.2.rawsocketlibrary">5.8.2</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.2.rawsocketlibrary">RawSocket Library</a> <tr><td class="sepr"><a href="scripting005.html#5.8.3.rawsocketapplicationexamples">5.8.3</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.3.rawsocketapplicationexamples">RawSocket Application Examples</a> <tr><td class="sepr"><a href="scripting005.html#5.8.3.1.chat">5.8.3.1</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.3.1.chat">Chat</a> <tr><td class="sepr"><a href="scripting005.html#5.8.3.2.echo">5.8.3.2</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.3.2.echo">Echo</a> <tr><td class="sepr"><a href="scripting005.html#5.8.3.3.terminalserver">5.8.3.3</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.3.3.terminalserver">Terminal Server</a> <tr><td class="sepr"><a href="scripting005.html#5.8.4.rawsocketconfiguration">5.8.4</a>………………&hellip<td class="text"><a href="scripting005.html#5.8.4.rawsocketconfiguration">RawSocket Configuration</a> <tr><td class="sepr"><a href="scripting006.html#6.cgicallouts">6.</a>………………&hellip<td class="text majr"><a href="scripting006.html#6.cgicallouts">CGI Callouts</a> <tr><td class="sepr"><a href="scripting006.html#6.1.requestsandresponses">6.1</a>………………&hellip<td class="text"><a href="scripting006.html#6.1.requestsandresponses">Requests and Responses</a> <tr><td class="sepr"><a href="scripting006.html#6.2.codeexamples">6.2</a>………………&hellip<td class="text"><a href="scripting006.html#6.2.codeexamples">Code Examples</a> <tr><td class="sepr"><a href="scripting007.html#7.isapi">7.</a>………………&hellip<td class="text majr"><a href="scripting007.html#7.isapi">ISAPI</a> <tr><td class="sepr"><a href="scripting007.html#7.1.cgisapi">7.1</a>………………&hellip<td class="text"><a href="scripting007.html#7.1.cgisapi">CGIsapi</a> <tr><td class="sepr"><a href="scripting007.html#7.2.writingisapiscripts">7.2</a>………………&hellip<td class="text"><a href="scripting007.html#7.2.writingisapiscripts">Writing ISAPI Scripts</a> <tr><td class="sepr"><a href="scripting007.html#7.3.serverconfiguration">7.3</a>………………&hellip<td class="text"><a href="scripting007.html#7.3.serverconfiguration">Server Configuration</a> <tr><td class="sepr"><a href="scripting008.html#8.decnetamposu">8.</a>………………&hellip<td class="text majr"><a href="scripting008.html#8.decnetamposu">DECnet & OSU</a> <tr><td class="sepr"><a href="scripting008.html#8.1.scriptsystemenvironment">8.1</a>………………&hellip<td class="text"><a href="scripting008.html#8.1.scriptsystemenvironment">Script System Environment</a> <tr><td class="sepr"><a href="scripting008.html#8.1.1.proxyaccess">8.1.1</a>………………&hellip<td class="text"><a href="scripting008.html#8.1.1.proxyaccess">Proxy Access</a> <tr><td class="sepr"><a href="scripting008.html#8.1.2.decnetobjects">8.1.2</a>………………&hellip<td class="text"><a href="scripting008.html#8.1.2.decnetobjects">DECnet Objects</a> <tr><td class="sepr"><a href="scripting008.html#8.1.3.reducingscriptlatency">8.1.3</a>………………&hellip<td class="text"><a href="scripting008.html#8.1.3.reducingscriptlatency">Reducing Script Latency</a> <tr><td class="sepr"><a href="scripting008.html#8.1.4.decnetosustartup">8.1.4</a>………………&hellip<td class="text"><a href="scripting008.html#8.1.4.decnetosustartup">DECnet/OSU Startup</a> <tr><td class="sepr"><a href="scripting008.html#8.2.cgi">8.2</a>………………&hellip<td class="text"><a href="scripting008.html#8.2.cgi">CGI</a> <tr><td class="sepr"><a href="scripting008.html#8.3.osudecthreadsemulation">8.3</a>………………&hellip<td class="text"><a href="scripting008.html#8.3.osudecthreadsemulation">OSU (DECthreads) Emulation</a> <tr><td class="sepr"><a href="scripting008.html#8.4.userscripts">8.4</a>………………&hellip<td class="text"><a href="scripting008.html#8.4.userscripts">User Scripts</a> <tr><td class="sepr"><a href="scripting009.html#9.otherenvironments">9.</a>………………&hellip<td class="text majr"><a href="scripting009.html#9.otherenvironments">Other Environments</a> <tr><td class="sepr"><a href="scripting009.html#9.1.java">9.1</a>………………&hellip<td class="text"><a href="scripting009.html#9.1.java">Java</a> <tr><td class="sepr"><a href="scripting009.html#9.1.1.cgiplusonly">9.1.1</a>………………&hellip<td class="text"><a href="scripting009.html#9.1.1.cgiplusonly">CGIplus Only</a> <tr><td class="sepr"><a href="scripting009.html#9.1.2.requirements">9.1.2</a>………………&hellip<td class="text"><a href="scripting009.html#9.1.2.requirements">Requirements</a> <tr><td class="sepr"><a href="scripting009.html#9.1.3.carriagecontrol">9.1.3</a>………………&hellip<td class="text"><a href="scripting009.html#9.1.3.carriagecontrol">Carriage Control</a> <tr><td class="sepr"><a href="scripting009.html#9.2.perl">9.2</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.perl">Perl</a> <tr><td class="sepr"><a href="scripting009.html#9.2.1.activatingperl">9.2.1</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.1.activatingperl">Activating Perl</a> <tr><td class="sepr"><a href="scripting009.html#9.2.2.cgienvironment">9.2.2</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.2.cgienvironment">CGI Environment</a> <tr><td class="sepr"><a href="scripting009.html#9.2.3.postedrequests">9.2.3</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.3.postedrequests">POSTed Requests</a> <tr><td class="sepr"><a href="scripting009.html#9.2.4.reducinglatency">9.2.4</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.4.reducinglatency">Reducing Latency</a> <tr><td class="sepr"><a href="scripting009.html#9.2.4.1.cgiplus">9.2.4.1</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.4.1.cgiplus">CGIplus</a> <tr><td class="sepr"><a href="scripting009.html#9.2.4.2.runtimeenvironment">9.2.4.2</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.4.2.runtimeenvironment">Run-Time Environment</a> <tr><td class="sepr"><a href="scripting009.html#9.2.5.requirements">9.2.5</a>………………&hellip<td class="text"><a href="scripting009.html#9.2.5.requirements">Requirements</a> <tr><td class="sepr"><a href="scripting010.html#10.requestredaction">10.</a>………………&hellip<td class="text majr"><a href="scripting010.html#10.requestredaction">Request Redaction</a> <tr><td class="sepr"><a href="scripting011.html#11.rawtcpipsocket">11.</a>………………&hellip<td class="text majr"><a href="scripting011.html#11.rawtcpipsocket">Raw TCP/IP Socket</a> <tr><td class="sepr"><a href="scripting012.html#12.index">12.</a>………………&hellip<td class="text majr"><a href="scripting012.html#12.index">Index</a> <tr><td class="sepr"><a href="scripting013.html#13.attributionandacknowledgement">13.</a>………………&hellip<td class="text majr"><a href="scripting013.html#13.attributionandacknowledgement">Attribution and Acknowledgement</a> </table> </div> <br> <!-- source:0100_INTRO.WASDOC --> <table class="NAVtable NAVprint"><tr> <td><a href="javascript:window.history.back();">↩︎</a> <td><a>↖︎</a> <td><a>↑︎</a> <td><a href="scripting001.html#1.">↘︎</a> <td><a href="javascript:window.history.forward();">↪︎</a> </table>