SecureUser
VERBatim - V86
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
VERBatim - V86
VERBatim - V88
QTIPS - Securing Menus
Simple Security
Playing with Scan Codes
What's New (and un(der)documented!) In 2.12
Reader's Clinic - Screen Width
Screen Grabber
Reader's Clinic - Slow Multivalued Screen Display
Utility Diskette # 4
Reader's Clinic - Prompting for Passwords
VERBatim - V64
QTIPS - Accessing Password Protected SYSPROG
QTIPS - DOS File Names
DOS Interfacing (Part II)
VERBatim - V116
@ATTACK - @Pri.File
@ATTACK - @Rollout.File
File Variables
How Indexes Are Updated
Index Record Layouts
QTIPS - File Variable of File In SELECT Statement
QTIPS - Amending non-Attached Files
LINEAR HASH FILE STRUCTURES - Part 1
Index Flush
QTIPS - File Handle Structure
QTIPS - DOSTime
VERBatim - V11
@ATTACK - @Backgrnd.Time
@ATTACK - @Index.Time
QTIPS - Time-outs in Windows
Flashing Background
Background Processing
Creating Your Own Background Processes
Background Processing
Vroom - Window Processing
VROOM - Window Processing II
Redefining Keys
Background Processing
Reader's Clinic - Prompting for Passwords
Capture
Creating Your Own Background Processes
@ATTACK - @Edit.Keys
@ATTACK - @Index.Time
@ATTACK - @PlayBack
@ATTACK - @Priority.Int
How Indexes Are Updated
A RevTechie Replies - And Miscellaneous Jottings - Mike Pope - Revelation Technologies (UK) Ltd
QTIPS - Use of Mouse
QTIPS - Interrupt Proof Error Messages
Uncommon Knowledge - WC_Soft_Keys%
A RevTI Techie Replies - Mike Pope - Revelation Technologies (UK) Ltd
Version 3 Technical Highlights - Input.Char
Version 3 Technical Highlights - @Prog.Char
Version 3 Technical Highlights - Highlight
Redefining Keys
Background Processing
Capture
Creating Your Own Background Processes
@ATTACK - @Edit.Keys
@ATTACK - @Index.Time
@ATTACK - @PlayBack
@ATTACK - @Priority.Int
@ATTACK - @Prog.Char
How Indexes Are Updated
A RevTechie Replies - And Miscellaneous Jottings - Mike Pope - Revelation Technologies (UK) Ltd
QTIPS - Use of Mouse
QTIPS - Interrupt Proof Error Messages
Uncommon Knowledge - WC_Soft_Keys%
Version 3 Technical Highlights - Input.Char
Version 3 Technical Highlights - @Prog.Char
Version 3 Technical Highlights - Add_Buttons
Version 3 Technical Highlights - Highlight
SecureUser
VERBatim - V25
@ATTACK - @Files.System
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
REVMEDIA Revisted
RTP Series - RTP1
VERBatim - V20
File Variables
Bugs and PCs - Indexing 01 vs 1
VERBatim - V77
Index Sub Revisited
Indexing on Xlates
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
Simple Security
Batch.Indexing
QTIPS - Batch.Indexing Close Down
What's New (and un(der)documented!) In 2.12
Background Processing
Creating Your Own Background Processes
@ATTACK - @Index.Time
How Indexes Are Updated
Reader's Clinic - Fixing %Windows% Using Depend.Update
QTIPS - Updating Indexes
How Indexes Are Updated
REVMEDIA Revisted
QTIPS - Using @Upper.Case and @Lower.Case with Foreign Languages
@ATTACK - @Lower.Case
@ATTACK - @Upper.Case
Sorting out Collation Sequences by Mike Pope
@ATTACK - @Default.Stops
@ATTACK - @Tab.Stops
QTIPS - Default Stop Lists
VERBatim - V17
VERBatim - V6
VERBatim - V125
Utility Diskette # 3 - Part I
Version 3 Technical Highlights - Copying Rows Programmatically
Version 3 TCL Subroutines - Copying Rows
Reader's Clinic - Naming Routines
SecureUser
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
QTIPS - What's DAT?
Reader's Clinic
RTP Series - RTP27
QTIPS - Printing Large Variables from the Debugger
VERBatim - V87
VERBatim - V26
Networked %SK%
Network Contention
Directory Exists on Novell
QTIPS - String Space Format Errors
QTIPS - Postscript Driver Problem
@ATTACK - @Modal
RTP Series - RTP42
RTP Series - RTP51
Reader's Clinic - AREV Runtime
@ATTACK - @PDisk.On
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
AREV Comes to Czechoslovakia Les Palenik, Cosmotron Systems

RevMedia FKB

DocumentV1I4A26
TitleBackground Processing
KeywordsBACKGROUND
PROCESSING
INPUT.CHAR
INDEX.CONTROL
TextIn the recent PC User "Database Challenge" one of the things that impressed
the judges was the comprehensive security that we were able to demonstrate
After the keyboard had been left unattended for a user DEFINED length of
time the screen cleared and the user was prompted for a password
Unsuccessful password attempts were logged to an AUDIT file and too many
attempts (user defined) logged the user out If no password was entered for
a user DEFINED length of time the user was logged out and an access
violation logged to the AUDIT log

This was implemented (perhaps "kludged" would be more accurate) by
intercepting the CALLS to the background index processing and replacing our
own routine there To understand this it would probably be useful to
reconsider the behaviour of INPUT CHAR

INPUT CHAR is the standard system input routine When it is called it
loops waiting for a keystroke until either a key is pressed (when it
processes it and/or returns it (see REVMEDIA Vol 1 Issue 2)) or the time
determined as the time to wait until indexing in the environemt parameters
has elapsed the routine INDEX CONTROL is called This then starts updating
any waiting index transactions When it has completed it waits for the index
wait time and then again starts to update index transactions (unless a key
is pressed in which case index processing stops and INPUT CHAR resumes)

Thus to have our own routine dynamically called AFTER a period of inactivity
at the keyboard all that we have to do is copy $INDEX CONTROL to
$INDEX CONTROL OLD in VERBS and out our own $INDEX CONTROL in VERBS Once
our program has completed its tasks it could then (if we wished it to) call
INDEX CONTROL OLD

Note that as we are putting out own $INDEX CONTROL in VERBS we do not need
to Catalog it as the system will look to VERBS before checking VOC pointers
If you feel safer leaving your $INDEX CONTROL in BP (as then you won't
forget to copy it over AFTER amendments) don't forget to Catalog it!

There are however two major PROBLEMS WITH this method The first is that
subsequent RevTech upgrades may overwrite our $INDEX CONTROL The second is
that AFTER we have called $INDEX CONTROL OLD control is not returned to our
program/INPUT CHAR until a key is pressed Thus if this were being left
running overnight our $INDEX CONTROL would only be called once before
$INDEX CONTROL OLD took over for the night On a network this could be best
circumvented by having one copy of VERBS for those workstations needing to
background update INDEXES and another for workstations needing to call out
routine

Both PROBLEMS would be sorted out by one enhancement to the AREV software
What is needed is a place to insert user CATALYST CALLS in INPUT CHAR and
INDEX CONTROL Once these were implemented we could have our own independent
background processing tasks

Well I'm glad to be able to impart some good news RevTech WILL be
implementing such a hook Because of the resource being committed to Release
2 0 this will not be in Release 2 0 but it may see its way into Release 2 1
or 2 2 As for timescales well second guessing software releases is
like weather forecasting so I'll leave that to the experts however I have
noticed that there was more frog spawn in my pond than usual for the time of
the year so


(Volume 1 Issue 4 Pages 10 11)
[revmedia/copyrigh.htm]

Page last modified: 08/02/03