Operating System - OpenVMS
1752801 Members
5273 Online
108789 Solutions
New Discussion юеВ

Re: Reset reboot device remotely

 
SOLVED
Go to solution
Antoniov.
Honored Contributor

Re: Reset reboot device remotely

Richard,
just for precision, David attachment it unix format (LF without CR). These files can't be read be windows editors like notepad but you can always read them using wordpad.

Antonio Vigliotti
Antonio Maria Vigliotti
Jan van den Ende
Honored Contributor

Re: Reset reboot device remotely

Richard,

since you are at a militairy site:

the $setenv functionalities are ALPHA functionalities. As such, they will function under VMS. But, although they ARE supported under Tru64, they are UNsupported under VMS :-(

(Maybe Engeneering can be goaded into qualifying them? "Military" would be just the right argument to create a business case.)

You have to decide whether they can be used at your site, but now it can be an informed decision.

hth,

Proost.

Have one on me.

jpe
Don't rust yours pelled jacker to fine doll missed aches.
Richard W Hunt
Valued Contributor

Re: Reset reboot device remotely

Thanks, folks. Got some research to do and I'll have to look for some documentation. My language choices at this site are Ada and BASIC. That's going to make life interesting for a while.
Sr. Systems Janitor
Richard W Hunt
Valued Contributor

Re: Reset reboot device remotely

Follow-up:

I found, after much research on the web and some poking around in various STARLET libraries and LIB.MLB, that there is not only a $GETENV system service call, but there is an undocumented $SETENV system service call. The params for $SETENV seem to be the same as the ones for $GETENV, but it is difficult to be absolutely sure.

I will note in passing for users of Ada that the STARLET_.ADC reference to this routine is flat WRONG. This is how you call it in Ada.

sample begins:

-- data structures

type ILQE is record -- quad-item-list entry
ITEM_CODE : UNSIGNED_LONGWORD ; -- longword integer
BUF_LEN : UNSIGNED_LONGWORD ; -- longword integer
BUF_ADDRESS : UNSIGNED_QUADWORD ; -- funky address
RET_ADDRESS : UNSIGNED_QUADWORD ; -- another funky address
end record ;

type ILQ is array ( integer range <> ) of ILQE ;
-- partly unconstrained array

-- *** WARNING: WE ARE OVERLOADING A DEFINITION FROM STARLET ***

procedure SYS_GETENV( RSTAT : out UNSIGNED_LONGWORD ; ITMBUF : in ILQ ) ;
pragma INTERFACE( EXTERNAL, SYS_GETENV ) ;
pragma IMPORT_VALUED_PROCEDURE(
INTERNAL => SYS_GETENV,
EXTERNAL => "SYS$GETENV",
PARAMETER_TYPES => ( UNSIGNED_LONGWORD, ILQ ),
MECHANISM => (VALUE, REFERENCE ) ) ;


then you just load up the item code and buffer pointers. Of course, Ada wants to give you 32-bit addresses, but as they are all on the program stack, the high-order bit is clear and you can just load 0 in the high longword of the Ada quadword structures.

The same concept seems to be correct for the SETENV call except I'm still having a bit of a bother with that one.
Sr. Systems Janitor
Robert_Boyd
Respected Contributor

Re: Reset reboot device remotely

For some DCL code that will display a few of the items from GETENV check out:

http://dcl.openvms.org/stories.php?story=05/04/04/7482362

Robert
Master you were right about 1 thing -- the negotiations were SHORT!
Robert_Boyd
Respected Contributor

Re: Reset reboot device remotely

David Sneddon,

Where did you find the hwrpb include module?

I tried compiling this program on a couple of V7.3-2 systems and that module doesn't seem to be in the standard set.

Thanks,

Robert
Master you were right about 1 thing -- the negotiations were SHORT!