IDENTIFICATION DIVISION. PROGRAM-ID. SYSUAF. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. 01 item-list-getuai. 02 pwd_date_list. 03 date_len PIC S9(4) comp value 8. 03 PIC S9(4) comp VALUE external uai$_pwd_date. 03 pointer value reference pwd_date. 03 pointer value reference ret-addr. 02 terminator PIC S9(9) COMP VALUE 0. 01 item-list-getjpi. 02 jpi_username_list. 03 name_len PIC S9(4) comp value 12. 03 PIC S9(4) comp VALUE external jpi$_username. 03 pointer value reference jpi_username. 03 pointer value reference ret-addr. 02 terminator PIC S9(9) COMP VALUE 0. 01 return_value PIC S9(9) COMP. 01 EOF PIC X. 01 dummy PIC X. 01 correct PIC X VALUE "N". 01 first_time PIC X VALUE "Y". 01 passchanged PIC X VALUE "N". 01 command_str PIC X(32). 01 jpi_username PIC X(12). 01 pwd_date PIC S9(18) COMP. 01 pwd_date_hold PIC S9(18) COMP. 01 ret-addr PIC S9(4) COMP. PROCEDURE DIVISION. UAF-MAIN. Perform get-data through get-data-exit. Move pwd_date to pwd_date_hold. Perform pass-check. stop run. pass-check. display " " at line number 9 erase screen. move "set password" to command_str. call "lib$spawn" using by descriptor command_str. Perform get-data through get-data-exit. if pwd_date = pwd_date_hold then DISPLAY " Your VMS Password Did Not Get Changed Correctly. " at line number 14 at column 15 DISPLAY " PLEASE TRY AGAIN " at line number 15 at column 31 else DISPLAY " Your VMS Password Has Been Changed " at line number 8 at column 21 erase screen DISPLAY " Remember To Change Your ALL-IN-1 Password " at line number 9 at column 18 end-if. display " " at line number 20. pass-check-exit. exit. GET-DATA. * * get the process user name of the user running this program * call "sys$getjpiw" using by value 0, by value 0, by value 0, by reference item-list-getjpi, by value 0, by value 0, by value 0, giving return_value. if return_value is failure call "lib$stop" using by value return_value. * * get the password change date * call "sys$getuai" using by value 0, by value 0, by descriptor jpi_username, by reference item-list-getuai, by value 0, by value 0 , by value 0 , giving return_value. if return_value is failure call "lib$stop" using by value return_value. get-data-exit. exit.