Compare commits

...

3 Commits

5 changed files with 577 additions and 0 deletions

148
CICS/RCSIGNON.cob Normal file
View File

@ -0,0 +1,148 @@
IDENTIFICATION DIVISION.
PROGRAM-ID. RCSIGNON.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-RESP PIC S9(8) COMP.
01 WS-RESP2 PIC S9(8) COMP.
01 WS-USER PIC X(56) VALUE SPACES.
01 WS-PASS PIC X(50).
01 WS-USERID PIC X(8) VALUE SPACES.
*To generate the xml and copybook of the logon screen
* rcbms -GenBasedSymbolicMap -Language=cobol SIGNON.bms
COPY SIGNON.
* COPY DFHBMSCA.
* COPY DFHAID.
COPY DFHRESP.
LINKAGE SECTION.
01 DFHCOMMAREA.
05 LK-DATA PIC X(1).
PROCEDURE DIVISION.
DISPLAY '=== Hello!'.
IF EIBCALEN = 0
EXEC CICS
GETMAIN SET(ADDRESS OF DFHCOMMAREA)
FLENGTH(LENGTH OF DFHCOMMAREA)
END-EXEC
DISPLAY '=== Sending Map'
MOVE 0 TO LK-DATA
PERFORM SEND-MAP
END-IF.
IF LK-DATA = 0
DISPLAY '=== Receiving Map'
MOVE 1 TO LK-DATA
PERFORM REC-MAP
END-IF.
IF LK-DATA = 1
DISPLAY '=== New user logged on'
MOVE 2 TO LK-DATA
PERFORM SHOW-ID
END-IF.
DISPLAY "=== You should never get here! (" LK-DATA ")".
GOBACK.
SEND-MAP.
EXEC CICS
SEND MAP('LOGONM') MAPSET('SIGNON')
ERASE
RESP(WS-RESP)
RESP2(WS-RESP2)
END-EXEC
IF WS-RESP NOT = DFHRESP(NORMAL)
*Should be replaced with better error-handling
DISPLAY '=== SEND FAILED'
GOBACK
END-IF
EXEC CICS
RETURN TRANSID('logo')
COMMAREA(DFHCOMMAREA)
LENGTH(LENGTH OF DFHCOMMAREA)
END-EXEC.
REC-MAP.
EXEC CICS
RECEIVE MAP('LOGONM') MAPSET('SIGNON')
RESP(WS-RESP)
RESP2(WS-RESP2)
END-EXEC
IF WS-RESP NOT = DFHRESP(NORMAL)
*Should be replaced with better error-handling
DISPLAY '=== RECEIVE FAILED'
EXEC CICS RETURN END-EXEC
END-IF
MOVE USERNO TO WS-USER
MOVE PASSWO TO WS-PASS
* Remove from possible mem dumps
MOVE SPACES TO PASSWO
DISPLAY '=== Signon'
EXEC CICS SIGNON
* USERID('LETMEIN0')
USERID(' ')
OIDCARD(WS-USER)
PHRASE(WS-PASS)
PHRASELEN(50)
RESP(WS-RESP)
RESP2(WS-RESP2)
END-EXEC
* Remove from possible mem dumps.
MOVE SPACES TO WS-PASS
IF WS-RESP = DFHRESP(NORMAL)
DISPLAY "=== Signon success!"
ELSE
*Should be replaced with better error-handling
DISPLAY "=== Signon failed!"
MOVE ZERO TO LK-DATA
MOVE 'Login unsuccessful, please try again.'
TO INFMSI
EXEC CICS
SEND MAP('LOGONM') MAPSET('SIGNON')
ERASE
RESP(WS-RESP)
RESP2(WS-RESP2)
END-EXEC
EXEC CICS
RETURN TRANSID('logo')
COMMAREA(DFHCOMMAREA)
LENGTH(LENGTH OF DFHCOMMAREA)
END-EXEC
END-IF
DISPLAY "=== Switching user"
EXEC CICS
SEND MAP('SUXESS') MAPSET('SIGNON')
ERASE
RESP(WS-RESP)
RESP2(WS-RESP2)
END-EXEC
EXEC CICS
RETURN TRANSID('DTS')
* COMMAREA(DFHCOMMAREA)
* LENGTH(LENGTH OF DFHCOMMAREA)
END-EXEC.
SHOW-ID.
EXEC CICS ASSIGN USERID(WS-USERID) END-EXEC
DISPLAY '=== CICS USERID:' WS-USERID
EXEC CICS LINK PROGRAM('DTSCDRV') END-EXEC
GOBACK.

View File

@ -17,6 +17,8 @@
PROCEDURE DIVISION.
EXEC CICS RETURN END-EXEC.
MOVE EIBTRMID TO EIBTRMID
MOVE EIBTRNID TO EIBTRNID

36
Copybook/SIGNON.cpy Normal file
View File

@ -0,0 +1,36 @@
01 LOGONMI .
02 FILLER PIC X(12).
02 USERNL PIC S9(4) COMP-5.
02 USERNF PIC X(1).
02 FILLER REDEFINES USERNF.
04 USERNA PIC X.
02 USERNI PIC X(50).
02 PASSWL PIC S9(4) COMP-5.
02 PASSWF PIC X(1).
02 FILLER REDEFINES PASSWF.
04 PASSWA PIC X.
02 PASSWI PIC X(50).
02 INFMSL PIC S9(4) COMP-5.
02 INFMSF PIC X(1).
02 FILLER REDEFINES INFMSF.
04 INFMSA PIC X.
02 INFMSI PIC X(40).
01 LOGONMO REDEFINES LOGONMI.
02 FILLER PIC X(12).
02 FILLER PIC X(3).
02 USERNO PIC X(50).
02 FILLER PIC X(3).
02 PASSWO PIC X(50).
02 FILLER PIC X(3).
02 INFMSO PIC X(40).
01 SUXESSI .
02 FILLER PIC X(12).
02 BLANKL PIC S9(4) COMP-5.
02 BLANKF PIC X(1).
02 FILLER REDEFINES BLANKF.
04 BLANKA PIC X.
02 BLANKI PIC X(30).
01 SUXESSO REDEFINES SUXESSI.
02 FILLER PIC X(12).
02 FILLER PIC X(3).
02 BLANKO PIC X(30).

62
Maps/SIGNON.bms Normal file
View File

@ -0,0 +1,62 @@
SIGNON DFHMSD TYPE=&SYSPARM,MODE=INOUT,TERM=ALL, X
LANG=COBOL,TIOAPFX=YES,STORAGE=AUTO,CTRL=FREEKB
LOGONM DFHMDI SIZE=(024,080), X
LINE=1, X
COLUMN=1
DFHMDF POS=(1,28),LENGTH=40,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='Signon to DUTAS'
DFHMDF POS=(3,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='WARNING! BY ACCESSING AND USING THIS GOVERNMENX
T COMPUTER SYSTEM, YOU ARE'
DFHMDF POS=(4,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='CONSENTING TO SYSTEM MONITORING FOR LAW ENFORCEX
MENT AND OTHER PURPOSES.'
DFHMDF POS=(5,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='UNAUTHORIZED USE OF, OR ACCESS TO, THIS COMPUTEX
R SYSTEM MAY SUBJECT YOU TO'
DFHMDF POS=(6,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='CRIMINAL PROSECUTION.'
DFHMDF POS=(8,1),LENGTH=70,ATTRB=ASKIP,COLOR=GREEN, X
INITIAL='Type your DCGov email address and password, theX
n press ENTER:'
DFHMDF POS=(10,12),LENGTH=15,ATTRB=ASKIP,COLOR=GREEN, X
INITIAL='Userid . . . .:'
USERN DFHMDF POS=(10,28),LENGTH=50,ATTRB=(UNPROT,IC),COLOR=TURQUOISE,X
INITIAL=' '
DFHMDF POS=(10,79),ATTRB=ASKIP
DFHMDF POS=(11,12),LENGTH=15,ATTRB=ASKIP,COLOR=GREEN, X
INITIAL='Password . . .:'
PASSW DFHMDF POS=(11,28),LENGTH=50,ATTRB=(UNPROT,DRK), X
INITIAL=' '
DFHMDF POS=(11,79),ATTRB=ASKIP
INFMS DFHMDF POS=(15,20),LENGTH=40,COLOR=RED,INITIAL=' '
DFHMDF POS=(15,60),ATTRB=ASKIP
DFHMDF POS=(24,1),LENGTH=70,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='F3=Exit'
SUXESS DFHMDI SIZE=(024,080), X
LINE=1, X
COLUMN=1
DFHMDF POS=(1,28),LENGTH=40,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='Signon to DUTAS'
DFHMDF POS=(3,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='WARNING! BY ACCESSING AND USING THIS GOVERNMENX
T COMPUTER SYSTEM, YOU ARE'
DFHMDF POS=(4,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='CONSENTING TO SYSTEM MONITORING FOR LAW ENFORCEX
MENT AND OTHER PURPOSES.'
DFHMDF POS=(5,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='UNAUTHORIZED USE OF, OR ACCESS TO, THIS COMPUTEX
R SYSTEM MAY SUBJECT YOU TO'
DFHMDF POS=(6,1),LENGTH=75,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='CRIMINAL PROSECUTION.'
DFHMDF POS=(8,10),LENGTH=60,ATTRB=ASKIP,COLOR=BLUE, X
INITIAL='Logon Success! Please press ENTER:'
BLANK DFHMDF POS=(10,32),LENGTH=30,ATTRB=(UNPROT,IC,DRK), X
INITIAL=' '
DFHMDF POS=(10,64),ATTRB=ASKIP
DFHMDF POS=(24,1),LENGTH=70,ATTRB=ASKIP,COLOR=NEUTRAL, X
INITIAL='F3=Exit'
DFHMSD TYPE=FINAL
END

329
Maps/SIGNON.xml Normal file
View File

@ -0,0 +1,329 @@
<BMSMapset
Name="SIGNON"
Type="&amp;SYSPARM"
Tioapfx="YES"
Lang="COBOL"
Mode="INOUT"
Storage="AUTO"
Term="ALL"
>
<BMSCtrl
FreeKb="TRUE"
/>
<BMSMap
Name="LOGONM"
Heigth="24"
Width="80"
>
<MapLineColumn
Kind="Number"
Number="1"
/>
<MapLineColumn
Kind="Number"
Number="1"
/>
<Fields>
<BMSField
Length="40"
Initial="Signon to DUTAS"
Color="NEUTRAL"
Line="1"
Col="28"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="WARNING! BY ACCESSING AND USING THIS GOVERNMENT COMPUTER SYSTEM, YOU ARE"
Color="NEUTRAL"
Line="3"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="CONSENTING TO SYSTEM MONITORING FOR LAW ENFORCEMENT AND OTHER PURPOSES."
Color="NEUTRAL"
Line="4"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="UNAUTHORIZED USE OF, OR ACCESS TO, THIS COMPUTER SYSTEM MAY SUBJECT YOU TO"
Color="NEUTRAL"
Line="5"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="CRIMINAL PROSECUTION."
Color="NEUTRAL"
Line="6"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="70"
Initial="Type your DCGov email address and password, then press ENTER:"
Color="GREEN"
Line="8"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="15"
Initial="Userid . . . .:"
Color="GREEN"
Line="10"
Col="12"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Name="USERN"
Length="50"
Initial=" "
Color="TURQUOISE"
Line="10"
Col="28"
ByteLength="53"
>
<BMSFieldAttributes
Protection="UNPROT"
Intensity="NORM"
IC="TRUE"
/>
</BMSField>
<BMSField
Line="10"
Col="79"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="15"
Initial="Password . . .:"
Color="GREEN"
Line="11"
Col="12"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Name="PASSW"
Length="50"
Initial=" "
Line="11"
Col="28"
ByteLength="53"
>
<BMSFieldAttributes
Protection="UNPROT"
Intensity="DRK"
/>
</BMSField>
<BMSField
Line="11"
Col="79"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Name="INFMS"
Length="40"
Initial=" "
Color="RED"
Line="15"
Col="20"
ByteLength="43"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Line="15"
Col="60"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="70"
Initial="F3=Exit"
Color="NEUTRAL"
Line="24"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
</Fields>
</BMSMap>
<BMSMap
Name="SUXESS"
Heigth="24"
Width="80"
>
<MapLineColumn
Kind="Number"
Number="1"
/>
<MapLineColumn
Kind="Number"
Number="1"
/>
<Fields>
<BMSField
Length="40"
Initial="Signon to DUTAS"
Color="NEUTRAL"
Line="1"
Col="28"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="WARNING! BY ACCESSING AND USING THIS GOVERNMENT COMPUTER SYSTEM, YOU ARE"
Color="NEUTRAL"
Line="3"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="CONSENTING TO SYSTEM MONITORING FOR LAW ENFORCEMENT AND OTHER PURPOSES."
Color="NEUTRAL"
Line="4"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="UNAUTHORIZED USE OF, OR ACCESS TO, THIS COMPUTER SYSTEM MAY SUBJECT YOU TO"
Color="NEUTRAL"
Line="5"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="75"
Initial="CRIMINAL PROSECUTION."
Color="NEUTRAL"
Line="6"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="60"
Initial="Logon Success! Please press ENTER:"
Color="BLUE"
Line="8"
Col="10"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Name="BLANK"
Length="30"
Initial=" "
Line="10"
Col="32"
ByteLength="33"
>
<BMSFieldAttributes
Protection="UNPROT"
Intensity="DRK"
IC="TRUE"
/>
</BMSField>
<BMSField
Line="10"
Col="64"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
<BMSField
Length="70"
Initial="F3=Exit"
Color="NEUTRAL"
Line="24"
Col="1"
>
<BMSFieldAttributes
Protection="ASKIP"
Intensity="NORM"
/>
</BMSField>
</Fields>
</BMSMap>
</BMSMapset>