d .TITLE GETLOGDIR .IDENT /V01.01 (01-84)/ ,; OBTENTION DU DIRECTORY D'ENTREE EN SESSION D'UN UTILISATEUR ; ENTREE : DESCRIPTEUR DU NOM DE L'UTILISATEUR ; SORTIE : DESCRIPTEUR DU DIRECTORY X; LONGUEUR DU DIRECTORY  $UAFDEF  .PSECT $LOCAL,PIC,USR,CON,REL,LCL,NOSHR,NOEXE,RD,WRT,LONG FABUAF: $FAB FNA=UAF,FNS=21,FAC=,SHR= RABUAF: $RAB FAB=FABUAF,KRF=0,KBF=KEYBUF,KSZ=UAF$S_USERNAME,- L RAC=,UBF=BUFUAF,USZ=UAF$K_LENGTH UAF: .ASCII /SYS$SYSTEM:SYSUAF.DAT/ KEYBUF: .BLKB UAF$S_USERNAME ;BUFFER CONTENANT LA CLE xBUFUAF: .BLKB UAF$K_LENGTH ;ENREGISTREMENT  .PSECT $CODE,PIC,USR,CON,REL,LCL,SHR,EXE,RD,NOWRT,LONG @ .ENTRY GETLOGDIR,^M  $OPEN FAB=FABUAF ;OUVERTURE DE SYSUAF.DAT  BLBS R0,10$ l MOVL FABUAF+FAB$L_STV,R1 ;CODE D'ERREUR  RET 410$: $CONNECT RAB=RABUAF  BLBS R0,20$  MOVL RABUAF+RAB$L_STV,R1 ;CODE D'ERREUR ` 15$: PUSHR #^M $CLOSE FAB=FABUAF ( POPR #^M RET ; LECTURE DE L'ENREGISTREMENT RELATIF A L'UTILISATEUR T 20$: MOVL 4(AP),R2 ;DESCRIPTEUR DU NOM DE L'UTILISATEUR MOVC3 #UAF$S_USERNAME,@4(R2),KEYBUF  $GET RAB=RABUAF BLBS R0,30$ MOVL RABUAF+RAB$L_STV,R1 ;CODE D'ERREUR H BRW 15$ 30$: MOVL 8(AP),R2 ;DESCRIPTEUR DU DIRECTORY  MOVZBW BUFUAF+UAF$T_DEFDIR,R3 ;LONGUEUR DU DIRECTORY t CMPW (R2),R3  BGEQU 40$ < MOVL #SS$_BUFFEROVF,R0  BRW 15$ 40$: MOVW R3,@12(AP) ;STOCKAGE DE LA LONGUEUR h MOVC3 R3,BUFUAF+UAF$T_DEFDIR+1,@4(R2)  $CLOSE FAB=FABUAF ;FERMETURE DU FICHIER SYSUAF.DAT 0 RET  .END