www.grootersnet.nl

WASD Gotcha's


We found just one ;)

One thing to keep in mind when putting your files (CGI-scripts, most particular) on an ODS-5 Disk: WASD will explicitly do a $ SET PROCESS/PARSE_STYPE=EXTENDED to allow all features to be used. This is a requirement if you use Unix-based code (PHP, Perl and Java) but may cause some unexpected problems, as we found out in running a native program reading the rest of the commandline for the parameters using LIB$GET_FOREIGN, and expecting them to be in uppercase:  if the parameters are specified in lowercase, LIB$GET_FOREIGN will pass the as-is: in lowercase!

$ mcr $exe:prgrm -a -b data -c

WIthin prgrm, VMS routine LIB$GET_FOREIGN is used to get the remainder of the commandline, and it will check for the occurrence of any of the charactes-combinations -A, -B an d -C in that string.

If parse-style is set to Extended, LIB$GET_FOREIGN will return the remainder as:

" -a -b data -c"

and the requested combinations will NOT be found, since "-A" , "-B" and "-C" do not occur here.

If parse-style is set to TRADITIONAL, LIB$GET_FOREIGN will return the remainder as

" -A -B DATA -C"

 and all requested combinations will be found.

Solution: specify the parameters in UPPERCASE, or do a $ SET PROCESS/PARSE_STYLE=TRADITIONAL in the DCL script before executing the VMS image:

$ set process/parse_style=traditional
$ mcr $exe:prgrm -a -b data -c

(This is NOT an issue of WASD because the application has the same trouble in normal use as well.. It's an undocumented (?) feature of VMS)

WASD General


Back to HowTo

Back to OpenVMS

Back home


(c) 2003- 2006 W. Grooters    Last updated 16-11-2006