999 18th Street, Denver, CO 80202.
Log in Contact Us Now! +1 888 472 7732

OpenVMS Undocumented Features


This is the most complete collection of undocumented features we can find for OpenVMS. Some of these have been around since the time when it was called VMS while others are more current and have been added to OpenVMS V8.n. These features:

  • Are NOT documented (if they were, they wouldn't belong here)
  • Are NOT supported by PARSEC Group or HP
  • Are NOT guaranteed to work
  • May NOT exist in all versions of OpenVMS; past, present and future
  • Are subject to change, removal, enhancement or being documented at the whim of OpenVMS engineering
  • May be fun to know the next time you play OpenVMS trivial pursuit
  • May help you get your job done easier and faster
  • May help you impress your boss with your knowledge of the obscure

Password Checking Utility

A utility exists with OpenVMS to check a password as being too easy to guess from the command line. SYS$UPDATE:VMS$CHKPWD is provided with a password. If the password is considered to easy to guess, then a message is displayed that it is too weak. If it is considered secure enough, then no message is displayed and a success status is returned. This does not check against the password dictionary, only against a short list of predefined words.

$ mcr sys$update:vms$chkpwd howdy2you
$ mcr sys$update:vms$chkpwd test
%SYSTEM-E-PWDWEAK, password is too easy to guess; please choose another string

TCP/IP bug analysis

On OpenVMS VAX and OpenVMS Alpha, V7.3-2 and earlier, TCP/IP Services can analyze its own bugs.

$ analyze /system
 
OpenVMS (TM) VAX System analyzer
SDA> tcpip show bug
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]SYSDEF.STB;1
%TCPIP-I-LINKDATE, TNDRIVER linked on 15-SEP-2003 14:56:39.69
%TCPIP-I-LINKDATE, TCPIP$BGDR linked on 7-NOV-2003 16:26:45.06
%TCPIP-I-LINKDATE, TCPIP$PROXY_SERVICES linked on 19-MAY-2003 13:29:18.83
%TCPIP-I-LINKDATE, TCPIP$INTERNET_SERVICES linked on 7-NOV-2003 16:27:09.79
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$NET_GLOBALS.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$INTERNET_SERVICES.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$BGDRIVER.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$INETACP.STB;1
%TCPIP-I-VERSION, TCP/IP Services for OpenVMS Version 5.3
%TCPIP-I-LASTSTART, Driver last started 7-MAR-2007 12:45:55.29
-TCPIP-I-STARTCOUNT, Driver was started 1 time
-TCPIP-I-PREVSTART, Previously started at 7-MAR-2007 12:45:55.22
%TCPIP-I-TRACEINFO, Trace information is not available
%TCPIP-E-NOPWIP, Pathworks-over-IP (PWIP) driver is not present
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$TN_GLOBALS.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$TNDRIVER.STB;1
%TCPIP-E-NONFSSVCS, NFS Services execlet is not present
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$PROXY_GLOBALS.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$PROXY_SERVICES.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]SYSDEF.STB;1
%TCPIP-W-IFIONLYKNEW, If I could do that, Robert, you'd be out of a job
SDA> exit

TCP/IP Crash Analysis

On OpenVMS VAX and OpenVMS Alpha, V7.3-2 and earlier, TCP/IP Services can determine the cause of a crash.

$ analyze /system
 
OpenVMS (TM) VAX System analyzer
SDA> tcpip show crash
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]SYSDEF.STB;1
%TCPIP-I-LINKDATE, TNDRIVER linked on 15-SEP-2003 14:56:39.69
%TCPIP-I-LINKDATE, TCPIP$BGDR linked on 7-NOV-2003 16:26:45.06
%TCPIP-I-LINKDATE, TCPIP$PROXY_SERVICES linked on 19-MAY-2003 13:29:18.83
%TCPIP-I-LINKDATE, TCPIP$INTERNET_SERVICES linked on 7-NOV-2003 16:27:09.79
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$NET_GLOBALS.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$INTERNET_SERVICES.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$BGDRIVER.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$INETACP.STB;1
%TCPIP-I-VERSION, TCP/IP Services for OpenVMS Version 5.3
%TCPIP-I-LASTSTART, Driver last started 7-MAR-2007 12:45:55.29
-TCPIP-I-STARTCOUNT, Driver was started 1 time
-TCPIP-I-PREVSTART, Previously started at 7-MAR-2007 12:45:55.22
%TCPIP-I-TRACEINFO, Trace information is not available
%TCPIP-E-NOPWIP, Pathworks-over-IP (PWIP) driver is not present
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$TN_GLOBALS.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$TNDRIVER.STB;1
%TCPIP-E-NONFSSVCS, NFS Services execlet is not present
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$PROXY_GLOBALS.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]TCPIP$PROXY_SERVICES.STB;1
%TCPIP-I-READSYM, reading symbol table SYS$COMMON:[SYSEXE]SYSDEF.STB;1
%TCPIP-I-THINKING, Thinking ...
%TCPIP-I-THINKING, Thinking ...
%TCPIP-I-THINKING, Thinking ...
%TCPIP-S-EUREKA, Solution: User error
SDA> exit

Unexpected Status Values

The following status values may seem a bit unusual.

Did they charge extra for the eels in my hovercraft?

$ exit %xb70
%SYSTEM-W-FISH, my hovercraft is full of eels

What does the KATIE facility do?

$ exit %x3f30074
%KATIE-F-DEVNOTMBX, device is not a mailbox

It appears there are some avid video gamers in the OpenVMS development group. See wikipedia for more information on the pharse.

$ exit %x34b4
%SYSTEM-F-GAMEOVER, all your base are belong to us

 

Using !%D and !AD in the F$FAO lexical function

The lexical function F$FAO does not document the ability to use the !%D directive to format a specific date and time value. It is documented to only use the current time by specifying a value of 0 as the argument. It is also not documented that the !AD directive may be used. It is possible to use these two directives to format a specific time.

In this example:

  • A file is opened
  • The first record read
  • A time value extracted from the record
  • That value is then formatted using F$FAO

$ open/read inf sys$system:sysgen.exe
$ read inf record
$ close inf
$ binval = f$extract(%xc0,8,record)
$ date = f$fao("!%D",f$cvui(32,32,f$fao("!AD",8,binval)))
$ show symbol date
  DATE = "29-JUN-2006 18:19:02.84"


First  Previous  Page 13 of 15  Next  Last

Please enjoy these features at your own risk. If you are aware of other features in OpenVMS which are currently undocumented, you may use our inquiry form to inform us. We may then add it to our list.