Cessna PC Utilities (V00509)
PC_CHECKPASS
Dale D. Lutes
Cessna Aircraft Company
Wichita, Kansas
1.0 DESCRIPTION
As of version 3 of the DEC PathWorks product (formerly
PCSA), there is no way for a PC user to know when his pass-
word is about to expire. The release notes recommend:
"...that the system administrator set all password
expirations to the same date, thus all passwords on
the system will expire simultaneously, and PC users
can be notified in advance."
This program is an attempt to automate the expiration noti-
fication process for system managers and eliminate the need
to expire all passwords at the same time.
2.0 INSTALLATION
Object and executable files created under VMS v5.4 are
provided so that the program can be used without
re-compiling or re-linking. If you choose to rebuild the
program, however, the file BUILD.COM contains all of the
commands for compiling and linking.
3.0 USAGE
PC_CHECKPASS is meant to be run as part of a daily batch
procedure. The file PC_CHECKPASS.COM can be submitted
without modification if PC_CHECKPASS.EXE is placed in
SYS$MANAGER. This procedure will re-submit itself to run
nightly at midnight.
The program scans the authorization file, so either BYPASS
or SYSPRV privilege is required.
4.0 HOW IT WORKS
The program uses SYS$FIND_HOLDER to identify PC users (hold-
ing the identifier PCFS$USER). For each of those users, a
call to SYS$GETUAI returns the date of the last password
change and the password lifetime.
If the password CAN expire and is not pre-expired, the
number of days left before expiration is calculated. If
there are 10 or fewer days left, a message is constructed
and sent using the MAIL$ utility routines. A sample mail
message can be found in SAMPLE_MESSAGE.TXT.
PC_CHECKPASS Page 2
5.0 NOTES
The Date/Time calculations are performed using the
LIB$ADD_TIMES and LIB$SUB_TIMES routines. Quadword time
comparisons, however are handled by the function
MTH_QUAD_CMP, which has been distributed on DECUS SIGtapes
as part of the excellent FERMILIB subroutine package.
LIB$SUB_TIMES could have been used, but would have been a
little more cumbersome to code with.
Click on FTP to download from the FTP archives.
![[FTP]](http://www2.encompassus.org/hidedecus/graphics/i_ftp.gif)