subroutine fix_user(*) c c NU PRIME TIME FACILITY V 2.0 c Northeastern University Academic Computer Services c 360 Huntington Avenue c Boston, Mass 02115 c c David Bernardo, Author c c This routine allows the operator to change the status of user, c either to change the wait time or to change the login status. c character time*23,username*12,ans*1,pad*2,check*1 integer*2 login_status,wait_time,time_len,pt_slice,cluster_num integer*4 time_buff(2),ret_code,sys$asctim real*8 logout_time byte user_key(14) equivalence (user_key(1),username) equivalence (user_key(13),cluster_num) data pad/' '/ c c Open the user data base file and get desired record. c 180 call open_file_write(1,*999) 185 print 190 190 format(1x,'Username: ',$) read(5,195,err=185,end=227)username if(username.eq.' ')goto 185 195 format(a12) 196 print 197 197 format(1x,'Cluster number to be enable for login: ',$) read(5,198,err=196,end=227)check,cluster_num 198 format(a1,t1,i3) if(check.eq.' ')goto 196 call upcase(username) read(1,key=user_key,keyid=0,err=230)username,cluster_num,login_status, 1 logout_time,wait_time,pt_slice if(login_status.eq.-1)print*, 1 'PTC-FIXUSER User login is disable, no change made.' if(login_status.eq.0)print*, 1 'PTC-FIXUSER User is immune to prime time, no change made.' if(login_status.eq.1)print*, 1 'PTC-FIXUSER User login already enabled, no change made.' if(login_status.eq.2)then call single(time_buff,logout_time) ret_code=sys$asctim(time_len,time,time_buff,) 201 print 202,time,login_status,wait_time,pt_slice 202 format(1x,'Last logout time/time stamp: ',a23,/, 1 1x,'Login status (-1=no login,0=immune,1=login,2=wait): ', 1 i3,/,1x,'Wait time in minutes (0=default): ',i3,/, 2 1x,'Prime time slice in minutes (0=default): ',i3,/) print 203 203 format(1x,'Is this the username to be fixed? ',$) read(5,145,err=201,end=227)ans 145 format(a1) if(ans.eq.'Y'.or.ans.eq.'y')then login_status=1 rewrite(1)username,cluster_num,login_status,logout_time, 1 wait_time,pt_slice print *,'PTC-FIXUSER User login enabled.' endif endif if(login_status.ge.3)print*, 1 'PTC-FIXUSER User currently logged in, no change made.' 227 close(unit=1) return 1 230 print*, 'PTC-FIXUSER No such username.' close(unit=1) 999 return 1 end