mirror of
https://github.com/PDP-10/stacken.git
synced 2026-02-13 19:34:12 +00:00
81 lines
2.7 KiB
Plaintext
81 lines
2.7 KiB
Plaintext
TITLE ACCCHK - Sample program to do access control via ACTDAE
|
|
|
|
;COPYRIGHT (C) 1980,1981 BY DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
|
|
;
|
|
;
|
|
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
|
|
;ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
|
|
;INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
|
|
;COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
|
|
;OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
|
|
;TRANSFERRED.
|
|
;
|
|
;THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
|
|
;AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
|
|
;CORPORATION.
|
|
;
|
|
;DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
|
;SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
|
|
|
|
|
|
SEARCH UUOSYM,MACTEN,ACTSYM ;GET SOME SYMBOLS
|
|
SALL
|
|
|
|
ACCVER==1 ;VERSION NUMBER
|
|
ACCEDT==2 ;EDIT NUMBER
|
|
ACCWHO==0 ;WHO LAST EDIT
|
|
ACCMIN==0 ;MINOR VERSION NUMBER
|
|
|
|
LOC 137
|
|
VRSN. (ACC) ;INSTALL THE VERSION NUMBER
|
|
RELOC
|
|
|
|
;This sample program shows how to have ACTDAE verify the PPN, Password, and
|
|
; Account string for a particular user. This can be used
|
|
; by a program that needs to check access but does not want to learn
|
|
; how to read ACCT.SYS (e.g. A file transfer spooler). A program
|
|
; wishing to ask ACTDAE for this function must be privileged.
|
|
|
|
;Since I am not about to hard code my PPN and Password into this program, you
|
|
; will have to patch/modify it to see it work.
|
|
|
|
ACCCHK: RESET ;START FRESH
|
|
MOVE 1,[BLKLEN,,ARGBLK] ;POINT TO QUEUE. ARGUMENTS
|
|
QUEUE. 1, ;ASK ACTDAE
|
|
JRST [OUTSTR [ASCIZ/?/] ;SHOW ERROR CHARACTER
|
|
OUTSTR RESPON ;AND ACTDAES ERROR MESSAGE
|
|
JRST XIT] ;AND QUIT
|
|
OUTSTR [ASCIZ/Access will be allowed./]
|
|
LDB 1,[POINT 7,RESPON,6] ;SEE IF ACTDAE HAS AN ACCOUNT STRING FOR US
|
|
JUMPE 1,XIT ;NOPE
|
|
OUTSTR [ASCIZ/ (Returned account string = "/]
|
|
OUTSTR RESPON ;SHOW ACCOUNT STRING WE ARE SUPPOSED TO USE
|
|
OUTSTR [ASCIZ/")./] ;FINISH OUTPUT
|
|
XIT: MONRT. ;ALL DONE
|
|
JRST .-1 ;NO CONTINUE
|
|
|
|
ARGBLK: QF.RSP!.QUMAE ;WANT RESPONSE,,TALK TO ACTDAE
|
|
0 ;RESERVED
|
|
20,,RESPON ;LENGTH,,ADDR OF RESPONSE BLOCK
|
|
QA.IMM!1B17!.QBAFN ;ACCOUNTING SUB-FUNCTION HERE
|
|
UGACC$ ;FUNCTION = ACCESS CONTROL CHECK
|
|
|
|
QA.IMM!1B17!.UGTYP ;TYPE OF CHECK REQUESTED
|
|
UG.VER ;NORMAL PPN, ACCT STRING, AND PASSWORD
|
|
|
|
10,,.UGACT ;HERE COMES AN ACCOUNT STRING
|
|
ACTSTR ;FIND IT OVER THERE
|
|
|
|
QA.IMM!1B17!.UGPPN ;PPN TO CHECK
|
|
PPN: 0 ;PUT IT HERE
|
|
|
|
QA.IMM!1B17!.UGPSW ;PASSWORD THE USER TYPED
|
|
PSW: 0 ;PUT IT HERE
|
|
|
|
BLKLEN==.-ARGBLK ;LENGTH OF THE ARGUMENT BLOCK
|
|
|
|
ACTSTR: BLOCK 10 ;SPACE FOR THE ACCOUNT STRING
|
|
RESPON: BLOCK 20 ;THE RESPONSE BLOCK
|
|
|
|
END ACCCHK
|