Mercury Insurance is a long-time HP 3000 shop still running a server in production. Last week Reggie Monroe reached out for a refresher on administration of HP 3000 User Defined Commands (UDCs). These are the HP3000's equivalent of scripting in Unix environments. UDCs are a better version of Command Files, according to Jon Diercks and his MPE/iX System Administration Handbook. UDCs are catalogued, Diercks says, so they can be loaded for individual user accounts.
There's a superior PowerPoint slide deck online at the 3K Associates website that covers how to create and use UDCs. But the Diercks book (no longer in print, but available online) is more concise on the use of UDCs. It's also only available as an $80 book today on the used market; put yours in a safe place. Monroe's question asked about "a command to list all users, and the logon UDC associated with them, if one is set."
The initial answer was the command HELP SHOWCATALOG,ALL. This brings an administrator to
But Alan Yeo pointed out that the MPE/iX command only locates system-level UDCs.
You don't actually get what you think you asked for, so whilst :showcatalog ;user=@.@ sounds very hopeful, in fact it only shows the system level UDCs not account ones. As far as I'm aware the only place you can find them all is in the BULDJOB2 file in PUB.SYS. You do have a BULDJOB2 file don't you? And it's up to date?
And here's where Vesoft's utility does a job the 3000's OS cannot. VEAUDIT LISTUDC @.@ finds UDCs of all kinds.
VEsoft’s Vladimir Volokh told me he had been asked to find out if any users on a system had the VEsoft utility GOD in one of their UDCs and if it had the lockword embedded in the UDC. He gave me a series of two commands that did the trick and they had some added value to boot. Once I saw the commands, I was impressed with the simple elegance, but like a good programmer, I had to deconstruct it, break it down and reassemble the whole thing. If you’d like to play along, you need: MPEX, VEAUDIT (both available from, who else, VEsoft) and a healthy programmer’s curiosity (you’re going to have to provide that yourself).
The details of the exercise show "GOD.PUB.VESOFT’ [is found using VEAUDIT] and we have accomplished our mission. But wait. What are those CIERR907 files? Those are files in the list that don’t exist! But they are UDCs that have been set! Looks like you can do some housecleaning and those UDCs can be un-set. How about that — you got some value added, you killed two birds with one stone, (insert your favorite cliche here). Time to play system manager again."
When you add a third party tool to your administrator's box, you can make a purge of such files foolproof. MPE/iX cannot select to show a complete set files by attributes such as program capability. Or for that matter, by last accessed time, or file size, or file security. It's a long list of things that MPE makes an administrator do on their own. Missing something might be the path to looking foolish.
VEAudit and MPEX will root out UDCs and do a foolproof purge, including file names. VEAudit will list all of the UDCs on a server, regardless of user -- not just the ones associated with the user who's logged in and looking for UDCs. The list VEAudit creates can be inverted so the filename is the first item on each line. Then MPEX will go to work to do a PURGE. Not MPE's, but a user-defined purge that looks for attributes, then warns you about which ones you want to delete, or would rather not.