
~*****************************************************
~**                                                 **
~**            ^   H L - S E R V E R     ~          **
~**                                                 **
~*****************************************************

¢Release 2.00 ∙ September 7, 1992

¢IPX ∙ NetBios


¢^HL-Server  - Technical Information
¢^══════════════════════════════════

^-~HL-Server  runs  on any computer on  the  network
~  (but not on a dedicated file server). This machi-
~  ne can run as usual without any limitations. Just
~  the network protocol driver  (e.g., IPX.COM)  has
~  to be loaded.

^-~HL-Server  is  a terminate-and-stay-resident pro-
~  gram  less  than 70 KB  in size,  and can provide
~  access to up to three different Hardlocks for the
~  network. HL-Server may be  loaded high into  UMBs
~  (DOS 5.0, QEMM,...), saving your DOS base memory.

^-~The maximum number of  HL-Servers  per network is
~  250

^-~The physical position of a HL-Server not relevant
~  for your application.

^-~In this release, the access to an HL-Server using
~  IPX is limited to one segment of a network, i.e.,
~  the HL-Server cannot be  called across bridges or
~  routers.  This restiction does not apply to  Net-
~  Bios.

^-~HL-Server directly  accesses the network protocol
~  layer  (IPX,  NetBios, ...) .  This  solution  is
~  faster and much  safer than the  insecure  shared
~  file solution.

^-~You can install any number of  licences  for your
~  customers between one and the  licence number you
~  have got from FAST.   To do so,   simply  burn  a
~  signature like "Logins:0032" into the EEPROM area
~  of your Hardlock.

^-~Using HL-Crypt, you can specify the licence as an
~  HL-Crypt parameter (e.g., "-usr:8")

^-~You can check  the number of  current logins when
~  using  manual  implementation  to  decide whether
~  another copy of your software may be started.

^-~Installation is performed  either by using a com-
~  fortable menu or the command line (Batch).
~  Example command line :
°         "HLSERVER /module=29809 /install"
~  starts  HL-Server  and makes  the  Hardlock  with
~  the module address  29809  available for the net-
~  work.

^-~Applications using the "Remote Hardlock"  will be
~  registered in  login tables. The login tables can
~  be  maintained  from  any station  on the network
~  (Remote Console).

^-~There are three ways to  clear the resources of a
~  hanging machine:

~   ^-~  definable timeout (may be disabled).  After
~        the  timeout is  expired,  the  login entry
~        will be deleted.

~   ^-~  logging out  the machine  with the  utility
~        HLOGOUT (maybe in autoexec), and

~   ^-~  manual  logging  out  a  station  using the
~        Remote  Console  from  any  machine  on the
~        network (may be password protected)

^-~Minimal changes to your Hardlock implementation:
~
~   ^-~  HL-Crypt 5: just  specify whether  you want
~        to ask for a local or a remote Hardlock, or
~        both (if you specify both, the  application
~        will  first  search  for  a local Hardlock,
~        then for a remote one)

~   ^-~  Manual  Implementation :  Insert a  "Login"
~        call at  the  beginning  of the  program, a
~        "Logout" call at  the end.  All other Hard-
~        lock calls remain  unchanged.  You can keep
~        these calls if your program runs locally.

^-~Debugging support: HL-Server may display a status
~  line with login information, network packets etc.
~  the Remote Console  may be  used for  supervising
~  login tables,  Hardlocks and for testing  an  HL-
~  Server.

^-~A demo mode for the Demo-Hardlock (#2000), module
~  address 29809, with 10 Logins is available.

-

¢^Starting HL-Server Demo:
¢^════════════════════════

^1.~Plug the Demo Hardlock (Module Address 29809)
~   into any LPT port

^2.~Type:°HLSERVER -i -m:29809
~   HL-Server is now running.  The Demo Hardlock can
~   be used network-wide.

^3.~Type °HLSERVER~ to  invoke  the menu  surface to
~   look at the login tables and perform tests.

-

¢^Examples for starting HL-Server:
¢^────────────────────────────────

   HLSERVER /i /m:29809
~    loads HL-Server for Hardlock MA 29809

   HLSERVER /install /moduleadr=29809
~    same as above

   HLSERVER /i /d /m:2547 /m:1704
~    loads HL-Server for Hardlocks MA 2547,
~    MA 1704, and displays status line

   HLSERVER /u
~    terminates and unloads HL-Server

   HLSERVER
~    invokes HL-Server menu mode

-

¢^Useful hints:
¢^─────────────

~ - Disable the /D option (display status line) when
~   running  Windows 3.xx.  Windows  Screen might be
~   corrupted.

~ - The login count for an  application  Hardlock is
~   specified by the HL-Server Hardlock. You can re-
~   strict it by the application Hardlock. To do so,
~   a signature like "Logins:xxxx"(where xxxx is the
~   login count, 4 digits decimal, zero-padded, e.g.
~   0032) must be  written  anywhere  into the Hard-
~   Lock's  EEPROM area.  See  APPLIxxxx.EEP  for an
~   example.

~ - The  EYE request counter increments not only for
~   real EYE requests,  but also for  administration
~   requests ( login, logout, etc. ),  because these
~   requests check whether a Hardlock is present.

~ - You can specify the switches in one-letter form,
~   or in  the  full  length,  since only the  first
~   letter is evaluated.  In batch files,  it is re-
~   commended  to use the names in  full  length for
~   better readability.  You can  use either a slash
~   "/" or a dash "-" as prefix.

~ - If you are using  QTSR, SideKick or similar uti-
~   lities, be sure  to load  HLServer first.  Also,
~   you must of course  load  the  network  protocol
~   drivers before loading HL-Server.

-

¢^Errorlevels
¢^───────────

^HLSERVER~ and its  utilities  return the  following
~Errorlevel  codes,  which can be  tested from batch
~files (remember: must be tested from high to low !)

    ^  0 ~  -   no error
    ^  1 ~  -   errors caused by bad parameters
    ^  4 ~  -   function not supported
    ^  5 ~  -   network timeout occured
    ^  6 ~  -   not logged in
    ^  7 ~  -   Hardlock not found
    ^  8 ~  -   network error
    ^  9 ~  -   access not possible
    ^ 10 ~  -   memory (de)allocation failed
    ^ 11 ~  -   client/server version mismatch

-

¢^Environment Settings
¢^────────────────────

~Some  HL-Server  settings  may be  done in the  DOS
~environment. Use the line

¢ Set HLSERVER=[option[,option[,...]]]

~Multiple  settings can be  entered at this  line by
~separating them with spaces or commas.

~ ┌──────────┬───────────────────────────────────┐
~ │^ Option ~│^Function                         ~│
~ ├──────────┼───────────────────────────────────┤
~ │^ MONO   ~│^force monochrome mode for menus  ~│
~ │^ COLOR  ~│^force color mode for menus       ~│
~ │^ NOMOUSE~│^do not use the mouse             ~│
~ └──────────┴───────────────────────────────────┘

~Example:° SET HLSERVER=MONO,NOMOUSE

-

¢^Files on evaluation disk:
¢^─────────────────────────

  HLSERVER.EXE     ~ HL-Server executable
                   ~ (try°HLSERVER ?~for help)
  HLSERVER.OVL     ~ HL-Server menu procedures
  HLSERVER.HLP     ~ This online-help file

  HLOGIN.EXE       ~ Manual login to specific HL
  HLOGOUT.EXE      ~ Manual logout from specific HL
  HHT.EXE          ~ Scans locally for HL-Server
                     Hardlocks and displays licence

  EDITEEP.EXE      ~ Hardlock Memory File Editor
  *.EEP            ~ Sample Hardlock Memory Files

-

¢^Context sensitive help items
¢^────────────────────────────

[100]
¢^Status: About


~This screen shows copyright and version information
~about HL-Server.

~The Network symbol shows the  installation state of
~HL-Server:  If there are connections,  HL-Server is
~loaded, otherwise it's not.

-
[101]
¢^Status: Main

~The^Main Status Screen~ shows the status of a resi-
~dent HL-Server and its associated Hardlocks.

~You can inspect the (up to three) HL-Server
~DoubleFace cards:
^     Module  ~the Hardlocks module address
^     Port    ~the Hardlocks port address at this
              ~HL-Server. Applications do not need
              ~to know this address
^     Used    ~the number of login slots of the
              ~Hardlock which are currently used
^     Peak    ~the maximum number of login slots
              ~used since the HL-Server was started
^     Max     ~the maximum number of login slots
              ~available for this Hardlock

-
[103]
¢^Status: Tasks

~The ^Task List~ shows the  state of  the  HL-Server
~multitasking system.  Usually,  you will see a Main
~task (i.e., the program loader), one  or more  net-
~work drivers,  a Hardlock driver, a listen task for
~receiving messages, and the multitasking supervisor
~task.

~The column ^"Calls"~ lists the  number of  calls to
~the the specific task,  so you can check if HL-Ser-
~ver is doing some work. The^"Address"~ and ^"Stack"
~columns might be  useful for a supporter  to locate
~problems.

-
[120]
¢^Status: Network

~The^Network Status Screen~shows a list of installed
~network drivers. When selecting one of them, a list
~with driver-dependent information is displayed.

-
[140]
¢^Setup: Install

~This function installs the HL-Server on your machi-
~ne.  The options you  specified in ^Setup/Options~,
^Setup/Change Timeout~and the Hardlock selections in
^Hardlock/Select~ are used to build the command line
~for this installation.  This  command  line is dis-
~played, so you can write it down to include it into
~your AUTOEXEC.BAT later.

~Optionally,  you can specify a name for the HL-Ser-
~ver.  This name may be used to  identify a specific
~HL-Server in the^Remote/Select~ menu.

~The menu  surface is  terminated with installation,
~but you may restart it again after installation.

-
[141]
¢^Setup: Deinstall

~This function deinstalls  the resident HL-Server on
~your machine, if any.

^Please  be careful if any  machines  on the network
^are using HL-Server at this time ! If there are any
^logins at this time, you will be asked if you real-
^ly want to deinstall HL-Server.

-
[153]
¢^Setup: Options

^Display Status Line:~  HL-Server  displays a Status
~  line at the top of the screen, showing the served
~  module addresses,  the current and  maximum login
~  counts, the number of  received and  sent network
~  packets,  and the current time. °Be  sure to turn
~ °off the status line of (HLSERVER /D) before star-
~ °ting Windows !

^Verbose Debug Display:~  This option is implemented
~  for technical support  purposes only.  You do not
~  need to activate it  until our  technical support
~  tells you to do so.  A special password is requi-
~  red.

^Password for Remote Login Deletion:~  When install-
~  ing HL-Server, you can specify a password to pro-
~  tect login table  entrys from  manual deletion by
~  remote stations.  If a password is specified, you
~  must enter this  password before you  are enabled
~  to use the remote login deletion feature.Deletion
~  of login table entries in the "Local" menu is not
~  affected.

^Network Protocols:~Select the network protocol dri-
~  vers to  be  used by HL-Server.  On startup,  all
~  available  drivers are  checked and  marked to be
~  loaded.  You  cannot  mark  a driver  that is not
~  available on  your  station.  If HL-Server is al-
~  ready resident,  you  cannot  change the  drivers
~  used by  the  resident  HL-Server,  but  you  can
~  change the driver used by the ^Remote~menu.

-
[102]
¢^Setup: Change Timeout

~Using the timeout,  you can specify a time of inac-
~tivity,  after  which  a logged station's entry may
~be overwritten by a new login request.  So,  if any
~station  hangs due to an error,  the login entry is
~returned to the system  and may be used by  another
~client.

~If the  hanging  station is  restarted  and logs in
~again  while the timeout is not expired, it automa-
~tically reuses its login slot.

~A timeout value of °0~ disables this feature. Valid
~values range from 10 to 9999 minutes.


-
[130]
¢^System: Memory Map

~The ^System Memory Map~ shows the resident programs
~loaded on this machine,  their sizes and addresses.

~This function is available only for DOS Version 4.0
~and above.

-
[111]
¢^System: Lock Console

~Using this function,  you can  specify a  password,
~then the  keyboard  is  disabled  and the screen is
~blanked to avoid burn-ins. A moving "snake" is dis-
~played to  show the  machine is running.  To unlock
~the machine, the password must be re-entered.

-
[150]
¢^Local: Select

~Enter up to three  Hardlock module  addresses to be
~served by HL-Server or to inspect. Module addresses
~specified  here  are  passed  to HL-Server when in-
~stalling it with^Setup/Install~.

~Optionally,  you may  specify a login limitation at
~this menu. This can be used to assign an  HL-Server
~licence to several application Hardlocks.

-
[125]
¢^Local: EyeTest

~The ^Local E-Y-E Test~  performs a  local test on a
~Hardlock  specified under ^Local/Select~.  The port
~address is determined, a test encryption is perfor-
~med,  and the  contents of the EEPROM  (if any)  is
~displayed.


~The module address,  the encryption string, and the
~contents of the  RAM  area  can be edited by moving
~the  highlighted selection bar  to  the appropriate
~entry using the the arrow keys and pressing°ENTER.


~This function  can be used to  compare local access
~to a Hardlock to remote access.


-
[151]
¢^Local: Logins

~The login tables for a  HL-Server  running  on this
~machine are displayed.  You may select an entry and
~delete it by pressing the [DEL] key.

-
[152]
¢^Local: Stress

~The^Local Stress Test~ performs random access tests
~on up to three  local  Hardlocks.  The counters for
~each operation are incremented for success (yellow)
~or fail (red),  and a  summary  with a total packet
~counter and a speed meter are displayed.

~Please note that, due to the administation overhead
~of the menu surface, the speed can only be taken as
~a relative value. Using a test program without out-
~put, you should achieve much higher speed.

-
[200]
¢^Remote: Select

~When  invoked for  the first  time,  this  function
~scans the whole  network for remote Hardlocks using
~all network protocols  marked in the ^Setup/Options
~menu, and displays a scrollable list with the found
~module addresses. Optional HL-Server names, network
~address of the HL-Server stations and the protocols
~which can be  used to  access a specific  HL-Server
~from this station are shown.

~Select one of these  entries to  perform the  ^Eye-
^test~or the^Stress Test~.

-
[203]
¢^Remote: EyeTest

~The ^Remote E-Y-E Test~ performs a  local test on a
~remote Hardlock specified under ^Remote/Select~.  A
~test  encryption is performed,  and the contents of
~the EEPROM (if any) is displayed.

~This function can be used to compare  remote access
~to a Hardlock to  local access.  The results should
~be the same.
~
~If the login table for the selected Hardlock is al-
~ready full,  this Hardlock cannot be accessed and a
~message window appears.

-
[202]
¢^Remote: Logins

~The  login tables for a  remote  Hardlock  are dis-
~played.  You may select  an entry and  delete it by
~pressing the [DEL] key.

-
[204]
¢^Remote: Stress

~The  ^Remote Stress Test~  performs  random  access
~tests for up to ten remote Hardlocks.  The counters
~for  each  operation  are  incremented for  success
~(yellow) or fail (red),  and a summary with a total
~packet counter and a speed meter are displayed.

~If a Hardlock's login table is full, no testing can
~be performed. A message is displayed instead.

~Please note that, due to the administation overhead
~of the menu surface, the speed can only be taken as
~a relative value. Using a test program without out-
~put, you should achieve much higher speed.

-
[201]
¢^Remote: ReScan

^ReScan~ performs  a  network scan for all known HL-
~Servers,  using all network protocols marked in the
^Setup/Options~menu.

~When entering the^Remote~menu for the first time, a
~HL-Server  scan is done  automatically.  Since this
~scan takes some time,  it is not repeated each time
~you access this menu again. So, if you want to know
~if  HL-Servers  were added or removed from the net-
~work in the meantime, you must perform a^ReScan.~

-
[250]
¢^Exit

~The^Exit~function simply terminates the menu system
~and returns to DOS.  You can also press the^ESC~key
~twice or the^Alt-X~key to exit.

-
^end of text

