Click here for The Support Group's Sponsor Message

HiddenValue

HiddenValue details commands and programs in MPE that can improve productivity on HP 3000 systems. Get a free NewsWire "HP 3000 Always Online" cap -- submit an MPE tip to Hidden Value. E-mail your tips to rseybold@zilker.net, or fax them to 512.331.3807.

We tried to change a user's capabilities but it did not seem to work. We ended up purging and then re-creating the user. What could have happened?

HP's Pete Crosby replies:
In adjusting the user's capabilities, you might not have logged the user off and then signed him back on after the change. A user's capabilities are not dynamic. They are read once at logon, kept in the stack, and never updated during a session.

How can I disable or enable autoreply for LDEV 7 under MPE/iX 5.0?

Hans Fohrman replies:
To enable autoreply, go into the IO section of SYSGEN and issue the command "md 7 mode=autoreply". You will have to do a shutdown and RESTART for the change to take affect. (Richard Gambrell noted that this change can be made on line if you are on MPE/iX 5.5.)

How can I associate one of my users with a printer?

Larry Austin and John Rizzieri reply:
For one or two users, run the program ASCOTBL and interactively create the table. If you have many users to associate with printer devices, use an indirect file to feed input to the ASCOTBL program. For example, if the file ASOTFILE looks like

p_dev = user1.account
p_dev = user2.account
..
etc

then, :ASCOTBL < ASOTFILE

or, :FILE INPUT=ASOTFILE
:RUN ASOCTBL.PUB.SYS

This will distribute operator commands for specific devices to standard MPE/iX users. Once a user is included in the association table, he gains access to the corresponding device class by the use of the ASSOCIATE command. That user then has exclusive access to the operator commands that control the device until the association is terminated by logging off or issuing the DISASSOCIATE command.

I'm trying to find out if Allbase will support BLOBs (Binary Large OBjects). We want to be able to store digitized images (JPEG or GIF format) in a relational table for use in an ID card system.

HP's K N Kumar replies:
The LONG VARBINARY data type can be used for storing BLOBs. There are no special operations defined for this data type, but otherwise, this should meet your BLOB requirements.

Is it possible to configure an HP 3000 under MPE/iX 5.0 to make an anonymous FTP connection under Netscape Navigator or Microsoft Internet Explorer?

Jeff Kell replies:
Not at present. FTP on the HP 3000 requires a "user.account" to start. There is no chroot() function in MPE like there is on the HP 9000 to home the anonymous user into a limited directory. If you gain access to the HP 3000 by FTP, you get access to the entire file system (depending on how account/group/user/file security is set). Other solutions such as web servers restrict access by manipulating file paths on the fly and FTP is not designed to do this.

Can the console cable (the cable from the back of the console to the back of the 3000) be extended by using a straight- through 25 pin cable?

Lee Gunter replies:
We did that on our 996 over two years ago and have had no problems that I'm aware of. However, I checked first with our local CE, and he warned me that HP doesn't support extending the console connection. So, your mileage may vary.

The ALLOWME program on the 1996 CSL does not work on MPE/iX 5.5. Is there a substitute or workaround ?

Try using REFEREE.PUB.TECHXL to CHANGE ALLOWME VUF=C.55.

How do I create /dev/null on my MPE/iX 5.5 system?

Mark Bixby replies:
The way to create /dev/null for MPE POSIX is

:hello manager.sys
:sh -L
chmod 755 /dev
mknod /dev/null c 3 2
chmod 666 /dev/null

These are the same mknod command parameters that you would use under HPUX 10.10.

I need an easy way to find out if the setting for compression is enabled on a DDS tape drive. I looked at DEVCTRL.MPEXL.TELESUP, but it has no 'SHOW' option.

Stan Sieler replies:
SYSDIAG's SCSIDDS tool will show you. That is, if you have the password. [Editor's note: Certain tools within SYSDIAG were password protected starting with MPE/iX 5.0. In theory this is to protect us from ourselves. You should be able obtain a password from HP, though it will take some effort.]

When I FCOPY a file to tape that has an odd record width it seems to want to make it even. I have a client that has to have the file in this width and I am having trouble. How can I fix this?

Gilles Schipper replies:
You need to use the "deblock" option, eg:
:FILE INPUT;DEV=DISC;REC=-1230,1,U,ASCII
(assume 123 bytes per record, 10 records per block)
:FILE OUTPUT;DEV=TAPE;REC= 123,60,F,ASCII
:FCOPY FROM=*INPUT;TO=*OUTPUT;DEBLOCK=-123

Whenever copying files with odd-byte record lengths, you need to use the "deblock" option of FCOPY, otherwise the output file will offshift by one character in every subsequent record.

What can I use to scan a set of files for a string?

HP's Lars Appel replies:
You might also give one of the POSIX Shell tools a try: GREP.

:GREP.HPBIN.SYS "-i mystring /MYACCT/MYGRP/MYFILE"

This will search MYFILE.MYGRP.MYACCT for "mystring" while ignoring the case (due to the -i option). Since the Posix Shell is responsible for wildcard expansion, the above example will only accept one (or more) exact names.

From the Shell you might use:

shell/ix> grep -i "mystring" /MYACCT/MYGRP/*

From the CI it might work doing:

:XEQ SH.HPBIN.SYS "-L -c grep -i mystring /MYACCT/MYGRP/*"

Of course, you can omit the /MYACCT/MYGRP in the above examples if you are searching inside your current directory, that is HPCWD or $PWD respectively.

We need to create a tape with one file on it for an IBM shop, but are having no success. How can we create a compatible tape?

Neil Harvey replies:
Here is a snippet from a job that regularly writes tapes on an HP 3000 for an IBM system. One thing to watch for is the status of your scratch tape. If it was used originally for one of these FCOPY's, then everything is OK. If it is an unlabelled normal HP-type tape, then everything is OK. If it carries a different IBM label, it is best you scratch it by storing something small onto it; otherwise, you will spend the rest of the day at the console fighting with the :RECALL, and :REPLY commands.

!FILE T;DEV=TAPE;REC=-300,76,F,ASCII;DEN=6250;LABEL=PM86SA,IBM
!FCOPY FROM=fname;TO=*T;NOUSERLABELS;EBCDICOUT

What is TFTP?

Mark Bixby replies:
TFTP stands for Trivial File Transfer Protocol -- basically FTP without user/password authentication. It is used by HP JetDirect and other devices that need to download configurations or firmware from a network server at boot time. MPE/iX 5.5 supports TFTP via INETD.

We are trying to give certain users the ability to alter spoolfiles using the SPOOLF command. However, when they list spoolfiles for their login account, no spoolfiles are qualified. The default is looking for current user logon and account.
SPOOLF @;SELEQ=[OWNER=@.!HPACCOUNT];SHOW

When you use selection equations, the files that qualify depend upon your capabilities and whether or not you issue the command from the console. The selection is made from all output spool files if you are the console user or if you have SM or OP capability. If you are an AM user, the selection is made from all output spool files in your logon account. If you are not the console user nor have SM, OP, or AM capability, the selection is made from the output spool files in your user.account.

I have used the DEVCTRL utility to enable auto tape eject. However, the setting does not seem to survive a RESTART. Am I doing something wrong?

Lee Gunter replies:
You are correct in that DEVCTRL must be rerun after a system start. You could incorporate the command into a SYSSTART file, or, as we do, make it a part of a UDC to start system functions instead of a SYSSTART file. SYSGEN doesn't preserve these states: autoeject and compression.

What access rights are necessary to access UDC files?

Jeff Vance replies:
As of release 5.0, a user needs to have LOCK access plus either READ or EXECUTE access to be able to open a UDC file at logon or SETCATALOG time.

How can I can print out specific pages from an existing spool file?

HP's Larry Byler replies:
You can't print out specific pages from a spool file using MPE/iX (third-party products may support this). If it's a fairly simple spool file and you know where the page boundaries are, you can extract the desired pages into a new spool file and print that one.

SPIFF is a tool you can use to do this and has been available since Release 5.0 of MPE/iX. Use the COPY and/or APPEND commands. If there is environment file information at the beginning of your spool file, then you have to extract that or duplicate it in the new spool file as well.

I have a program that opens the STDLIST and attempts to write out more than 133 characters. This program works fine when run in a session, but when it's run in a job, the FWRITE fails with error 43, "Write exceeds record size". I have tried to get it to work via NOBUF, MULTIREC access to the STDLIST output file, but this doesn't work either. What's the deal with this 133-character limit?

John Burke replies:
You can try modifying the job stream as follows:

FILE XX=$STDLIST;REC=-256
RUN theprog;STDLIST=*XX

However, after I verified the behavior described in the original question (on MPE/iX 5.5), I discovered that none of the suggestions solved the problem. The only workaround I could find was to alter the job as follows:

FILE XX;DEV=LP;REC=-256
RUN theprog;STDLIST=*XX

This works fine. The downside is that it creates an additional spool file that is separate from $STDLIST.


Original material copyright 1997, The 3000 NewsWire. All rights reserved.