IBM alternatives aim at new customer
Developers can help test beta patches

Tricks with command files

I'm working on a command file on my HP 3000. Is there any way to have it copy part of itself into a separate (temporary) file?

HP's Jeff Vance replies:

MPE does not support the Unix concept of ‘here’ files, where input data for the command can reside in the same file as the command, except in the case of jobs. But even in a job, you may not include inline data for a script or UDC invoked by that job.

The SPOOKHELP script on Jazz may be of some use. This single script contains the help text for all of the SPOOK commands plus the code to search for and display that text once HELP xyzzy is entered.

How can we execute a command after a user enters the :bye command in MPE?

Olav Kappert replies:

It is possible to execute many commands after the bye has been entered.  Simply create a UDC (maybe a cmd file) called bye.

The contents of the UDC for the command bye is up to you.  This would be useful if you want to do statistics before the session terminates.

John Pittman adds:

Don’t let them do a bye. We don’t allow any users access to OP system prompt at all. They get a logon no break UDC that runs a menu, and when they end the menu, they get logged off.

Inside that UDC at exit time, we build a string giving user, connection point (LDEV or IP of their PC) connect time, CPU date etc and append it to a log file. Then we know when anybody last used the system, how many users are using different connections, when different user names are using the same connection point, and so on.

I am now beginning the process of restoring our production system to another 918LX. I got the following errors when logging onto a non-SYS account.

SECURITY VIOLATION  (FSERR 93)                  
Couldn't open UDC file "UDCSYS03.UDC.SYS". (CIERR 1923)
No system-level UDCs have been initialized. (CIWARN 1929)
No UDC directory was built or exists. (CIWARN 2060)

The specified file "UDCSYS03.UDC.SYS" exists and has the following  characteristics for the concerned user:

:listf udcsys03.udc.sys,4
FILE: UDCSYS03.UDC.SYS            

               WRITE : AC
              APPEND : AC
                LOCK : ANY
             EXECUTE : ANY

GROUP --------  READ : ANY
               WRITE : AL, GU
              APPEND : AL, GU
                LOCK : ANY
             EXECUTE : ANY
                SAVE : AL, GU

FILE ---------  READ : ANY                FCODE: 0
               WRITE : ANY              **SECURITY IS ON
              APPEND : ANY                NO ACDS
                LOCK : ANY                   
             EXECUTE : ANY                   


What else do I have to do to enable system level UDCs?

OpenMPE's Donna Garverick replies:

As manager.sys:
  (should show no system UDC set)
:setcatalog udcsys03.udc;system

Former OpenMPE director Ron Horner adds:

It sounds like the file COMMAND.PUB.SYS might have some issues. To test, perform a SHOWCATALOG and see what gets displayed.