Member ENVVAR in CGICBLDEV2 / QCBLLESRC

1.00 
 ********START OF PGM : ENVVAR  ****************************************
2.00 
       *================================================================
3.00 
       *
4.00 
       *  After compiling this module, create the program as follow:
5.00 
       *
6.00 
       *  CRTPGM  PGM(CGICBLDEV2/ENVVAR) MODULE(CGICBLDEV2/ENVVAR)
7.00 
       *          BNDDIR(CGICBLDEV2/CGICBLDEV2)
8.00 
       *          ACTGRP(ENVVAR) AUT(*USE)
9.00 
       *
10.00 
       *================================================================
11.00 
        PROCESS NOXREF APOST
12.00 
        ID    DIVISION.
13.00 
        PROGRAM-ID. ENVVAR.
14.00 
        ENVIRONMENT DIVISION.
15.00 
        CONFIGURATION SECTION.
16.00 
        SPECIAL-NAMES.
17.00 
              copy CPYSPCNAME of CGICBLDEV2-QCBLLESRC.
18.00 
        INPUT-OUTPUT SECTION.
19.00 
        FILE-CONTROL.
20.00 
       *=================================================================
21.00 
        DATA DIVISION.
22.00 
        FILE SECTION.
23.00 
       *=================================================================
24.00 
        WORKING-STORAGE SECTION.
25.00 
       *=================================================================
26.00 
        01         HTML-DATA.
27.00 
       * Variables to execute a command
28.00 
            05     rc                  PIC  S9(9) comp-4.
29.00 
            05     cmd                 PIC  X(2000).
30.00 
       * Variables to parse the input string
31.00 
            05     varnamein           PIC  X(50).
32.00 
            05     xyrname             PIC  X(30).
33.00 
            05     request             PIC  X(10).
34.00 
       * Variables to load external HTML
35.00 
            05     fn                  PIC  X(10) VALUE 'HTMLEXAMPL'.
36.00 
            05     lib                 PIC  X(10) VALUE 'CGICBLDEV2'.
37.00 
            05     mbr                 PIC  X(10) VALUE 'ENVVAR'.
38.00 
       * Variable for QWrtSection procedure
39.00 
            05     HtmlSects           PIC  X(1000).
40.00 
       * Variables for QUpdHtmlVar procedure
41.00 
            05     varnameout          PIC  X(30).
42.00 
            05     varvalout           PIC  X(1000).
43.00 
       * Variables for QGetEnv procedure
44.00 
            05     envVarNam           PIC  X(100).
45.00 
            05     envVarVal           PIC  X(32767).
46.00 
       *=================================================================
47.00 
       *                M A I N  -  L I N E
48.00 
       *=================================================================
49.00 
        PROCEDURE DIVISION.
50.00 
        A-start-pgm.
51.00 
       * Load the external HTML
52.00 
            perform LoadHtml               thru z-LoadHtml.
53.00 
       * Retrieve all environment variables and display them
54.00 
            move 'AUTH_TYPE'         to envVarNam.
55.00 
             perform DspEnvVar thru z-DspEnvVar.
56.00 
            move 'CGI_ASCII_CCSID'   to envVarNam.
57.00 
             perform DspEnvVar thru z-DspEnvVar.
58.00 
            move 'CGI_MODE'          to envVarNam.
59.00 
             perform DspEnvVar thru z-DspEnvVar.
60.00 
            move 'CGI_EBCDIC_CCSID'  to envVarNam.
61.00 
             perform DspEnvVar thru z-DspEnvVar.
62.00 
            move 'CONTENT_LENGTH'    to envVarNam.
63.00 
             perform DspEnvVar thru z-DspEnvVar.
64.00 
            move 'CONTENT_TYPE'      to envVarNam.
65.00 
             perform DspEnvVar thru z-DspEnvVar.
66.00 
            move 'GATEWAY_INTERFACE' to envVarNam.
67.00 
             perform DspEnvVar thru z-DspEnvVar.
68.00 
            move 'HTTP_ACCEPT'       to envVarNam.
69.00 
             perform DspEnvVar thru z-DspEnvVar.
70.00 
            move 'HTTP_COOKIE'       to envVarNam.
71.00 
             perform DspEnvVar thru z-DspEnvVar.
72.00 
            move 'HTTP_REFERER'      to envVarNam.
73.00 
             perform DspEnvVar thru z-DspEnvVar.
74.00 
            move 'HTTP_USER_AGENT'   to envVarNam.
75.00 
             perform DspEnvVar thru z-DspEnvVar.
76.00 
            move 'IBM_CCSID_VALUE'   to envVarNam.
77.00 
             perform DspEnvVar thru z-DspEnvVar.
78.00 
            move 'PATH_INFO'         to envVarNam.
79.00 
             perform DspEnvVar thru z-DspEnvVar.
80.00 
            move 'PATH_TRANSLATED'   to envVarNam.
81.00 
             perform DspEnvVar thru z-DspEnvVar.
82.00 
            move 'QUERY_STRING'      to envVarNam.
83.00 
             perform DspEnvVar thru z-DspEnvVar.
84.00 
            move 'REMOTE_ADDR'       to envVarNam.
85.00 
             perform DspEnvVar thru z-DspEnvVar.
86.00 
            move 'REMOTE_HOST'       to envVarNam.
87.00 
             perform DspEnvVar thru z-DspEnvVar.
88.00 
            move 'REMOTE_IDENT'      to envVarNam.
89.00 
             perform DspEnvVar thru z-DspEnvVar.
90.00 
            move 'REQUEST_METHOD'    to envVarNam.
91.00 
             perform DspEnvVar thru z-DspEnvVar.
92.00 
            move 'REMOTE_USER'       to envVarNam.
93.00 
             perform DspEnvVar thru z-DspEnvVar.
94.00 
            move 'SCRIPT_NAME'       to envVarNam.
95.00 
             perform DspEnvVar thru z-DspEnvVar.
96.00 
            move 'SERVER_NAME'       to envVarNam.
97.00 
             perform DspEnvVar thru z-DspEnvVar.
98.00 
            move 'SERVER_PORT'       to envVarNam.
99.00 
             perform DspEnvVar thru z-DspEnvVar.
100.00 
            move 'SERVER_PROTOCOL'   to envVarNam.
101.00 
             perform DspEnvVar thru z-DspEnvVar.
102.00 
            move 'SERVER_SOFTWARE'   to envVarNam.
103.00 
             perform DspEnvVar thru z-DspEnvVar.
104.00 
       * Write section "all" and send the HTML buffer
105.00 
            move 'all *fini' to HtmlSects
106.00 
            call 'QWRTSECTION' using HtmlSects.
107.00 
       *----------------------------------
108.00 
        B-end-pgm.
109.00 
            exit program and continue run unit.
110.00 
       *=================================================================
111.00 
        LoadHtml.
112.00 
       * Load the external HTML
113.00 
            call 'QGETHTML' using fn lib mbr.
114.00 
       *----------------------------------
115.00 
        z-LoadHtml.
116.00 
            EXIT.
117.00 
       *=================================================================
118.00 
       *Retrieve an display an environment variable
119.00 
        DspEnvVar.
120.00 
             call 'QGETENV' using envVarNam
121.00 
                            returning into envVarVal.
122.00 
             move envVarNam to varnameout.
123.00 
             if envVarVal = ' '
124.00 
                move 'Not available' to envVarVal
125.00 
             end-if.
126.00 
             move envVarVal to varvalout.
127.00 
             call 'QUPDHTMLVAR' using varnameout varvalout.
128.00 
       *----------------------------------
129.00 
        z-DspEnvVar.
130.00 
            EXIT.
131.00 
 ********* END OF PGM : ENVVAR ****************************************
0.043 sec.s