; system call libraries $SSDEF ; Status returns $JPIDEF ; Job/Process Information $LNMDEF ; logical name information $PRVDEF GLOBAL ; privilege definitions .PSECT GET_RWDATA,WRT,NOEXE,NOSHR,LONG jpi_items: .word 12 ; size of user name buffer .word jpi$_username ; get the user name where_name: .long 0 ; where to put the user name .address username_l ; ... and the length of same .long 0 ; end of list username_l: .blkl 1 ; log_desc: .ascid /SYS$NODE/ ; logical name to translate tab_desc: .ascid /LNM$SYSTEM_TABLE/ ; logical name table to search trn_items: .word 255 ; length of item .word lnm$_string ; what we want equivaddr: .long 0 ; where the data goes equivlen: .long 0 ; where the length of the data .long 0 ; end of list .PSECT GET_CODE,EXE,NOWRT .entry get_username,^m movl 4(AP),where_name ; get descriptor block addl #4,where_name ; get buffer pointer movl @where_name,where_name ; and address of buffer $getjpi_s - ; get process name to use itmlst=jpi_items ret .entry get_node_name,^m movl 4(AP),equivlen ; get descriptor block movl equivlen,equivaddr ; length and address addl #4,equivaddr ; get buffer pointer movl @equivaddr,equivaddr ; and address of buffer $trnlnm_s - ; get the logical name lognam = log_desc, - tabnam = tab_desc, - itmlst = trn_items ret .END