From:	CRDGW2::CRDGW2::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX" 27-JUL-1990 14:44:07.42
To:	MRGATE::"ARISIA::EVERHART"
CC:	
Subj:	SHOW/REMOTE 2

Received:  by crdgw1.ge.com (5.57/GE 1.70)
	 id AA08653; Fri, 27 Jul 90 14:07:37 EDT
Received: From UCBVAX.BERKELEY.EDU by CRVAX.SRI.COM with TCP; Fri, 27 JUL 90 09:40:55 PDT
Received: by ucbvax.Berkeley.EDU (5.63/1.42)
	id AA07247; Fri, 27 Jul 90 09:23:21 -0700
Received: from USENET by ucbvax.Berkeley.EDU with netnews
	for info-vax@kl.sri.com (info-vax@kl.sri.com)
	(contact usenet@ucbvax.Berkeley.EDU if you have questions)
Date: 27 Jul 90 16:07:31 GMT
From: umich!vela!tarcea@CS.YALE.EDU  (The OUTLAWS)
Organization: Oakland University, Rochester MI
Subject: SHOW/REMOTE 2
Message-Id: <2255@vela.acs.oakland.edu>
Sender: info-vax-request@kl.sri.com
To: info-vax@kl.sri.com


-+-+-+-+-+-+-+-+ START OF PART 2 -+-+-+-+-+-+-+-+
X`009qualifier alarm,`009nonnegatable
X`009qualifier audit,`009nonnegatable
X`009qualifier object_type,`009nonnegatable,value(type=acl_objects)
X`009qualifier archive,`009nonnegatable
X`009qualifier server,`009nonnegatable
X
Xdefine syntax show_broad
X    `009parameter p1,label=option,value(required)
X    `009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X
Xdefine syntax show_cpu
X`009image smputil
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=cpu_list,value(list,type=$number)
X`009qualifier all
X`009qualifier active
X`009qualifier full
X`009qualifier brief
X`009qualifier summary
X`009disallow any2(summary,brief,full)
X`009disallow any2(cpu_list,active,all)
X`009disallow summary and (cpu_list or active or all)
X
Xdefine syntax show_daytime
X`009cliroutine showtime
X`009parameter p1,label=option,value(required)
X`009noqualifiers
X
Xdefine syntax show_default
X`009cliroutine showdef
X`009parameter p1,label=option,value(required)
X`009noqualifiers
X
Xdefine syntax show_all_keys
X`009parameter p1,label=option,value(required)
X
Xdefine syntax show_all_states
X`009parameter p1,label=option,value(required)
X
Xdefine syntax show_all_dhcf
X`009parameter p1,label=option,value(required)
X
Xdefine syntax show_dhcf_key
X`009image dhcfkey
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Key name",value(required)
X`009qualifier table, syntax=show_all_dhcf, nonnegatable,`032
X`009`009  value(required)
X`009qualifier all, syntax=show_all_dhcf, nonnegatable
X
Xdefine syntax show_all_bts
X`009parameter p1,label=option,value(required)
X
Xdefine syntax show_bts_key
X`009image btskey
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Key name",value(required)
X`009qualifier table, syntax=show_all_bts, nonnegatable,`032
X`009`009  value(required)
X`009qualifier all, syntax=show_all_bts, nonnegatable
X`009disallow (all and table)
X
Xdefine syntax show_key
X`009prefix cli$k_shky_
X`009cliroutine showkey
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Key name",value(required)
X`009qualifier all,syntax=show_all_keys
X`009qualifier state,value(required,list)
X`009qualifier brief
X`009qualifier directory,syntax=show_all_states
X`009qualifier full
X`009qualifier log
X`009disallow directory and (brief or state or all or full)
X`009qualifier bts,syntax=show_bts_key,nonnegatable
X`009qualifier dhcf,syntax=show_dhcf_key,nonnegatable
X
Xdefine syntax show_logical
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=logname,prompt="Logical name",value(list,type=$inlog)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier system
X`009qualifier group
X`009qualifier process
X`009qualifier job
X`009qualifier all
X`009qualifier table,value(list,required)
X`009qualifier descendants
X`009qualifier structure
X`009qualifier access_mode,value(required,type=acmode)
X`009qualifier full
X`009disallow structure and
X`009`009(system or group or job or process or table or descendants)
X
Xdefine syntax show_license
X`009parameter p1,label=option,value(required)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier access_mode,value(required,type=acmode)
X
Xdefine syntax show_protection
X`009cliroutine showprot
X`009parameter p1,label=option,value(required)
X`009noqualifiers
X
Xdefine syntax show_queue
X`009image queman
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Queue",value(default="*")
X`009qualifier all_jobs
X`009qualifier batch
X`009qualifier brief
X`009qualifier by_job_status,    value(list,type=job_status)
X`009qualifier characteristics
X`009qualifier device,`009value(list,type=devices)
X`009qualifier files
X`009qualifier forms
X`009qualifier full
X`009qualifier generic
X`009qualifier summary
X`009qualifier output,`009default,value(default="SYS$OUTPUT",type=$file)
X`009disallow any2 (full, brief)
X
Xdefine syntax show_entry
X`009image queman
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Entry",value(list,default="*",type=$number)
X`009qualifier batch
X`009qualifier brief
X`009qualifier by_job_status,    value(list,type=job_status)
X`009qualifier device,`009value(list,type=devices)
X`009qualifier files
X`009qualifier full
X`009qualifier generic
X`009qualifier user,`009`009value(required)
X`009qualifier output,`009default,value(default="SYS$OUTPUT",type=$file)
X`009disallow any2 (full, brief)
X
Xdefine syntax show_all_symbols
X`009parameter p1,label=option,value(required)
X
Xdefine syntax show_symbol
X`009cliroutine showsymbl
X`009prefix cli$k_shsy_
X`009cliflags(nostatus)
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Symbol",value(required,type=$insym)
X`009qualifier global,`009placement=positional
X`009qualifier local,`009placement=positional
X`009qualifier all,`009`009placement=positional,syntax=show_all_symbols
X`009qualifier log
X`009
Xdefine syntax show_translation
X`009cliroutine showtran
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Log_name",value(required,type=$inlog)
X`009qualifier table,value(required)
X
Xdefine syntax show_served
X        parameter p1,label=option,value(required)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier all,`009
X`009qualifier count,
X`009qualifier host,`009
X`009qualifier resource,
X`009qualifier served,`009default,nonnegatable`009! 'served' is here`032
X`009`009`009`009!because the code for show_device and show_served
X`009`009`009`009!is different.  When the show_device code is
X`009`009`009`009!entered the syntax being used is the show_served
X`009`009`009`009!syntax but all of the qualifiers are different
X`009`009`009`009!so it won't work.  The solution is to add the
X`009`009`009`009!qualifier 'served' and have the show-device
X`009`009`009`009!check for it first and to branch to the`032
X`009`009`009`009!show_syntax code where this syntax will work.
X`009`009`009`009!At this point 'served'is always present so it
X`009`009`009`009!is 'default' and it is 'nonnegatable' to someone
X`009`009`009`009!can't mess everything up by saying 'noserved'.
X
Xdefine syntax show_device
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=device,prompt="Device",value(type=$device)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier allocated,
X`009qualifier brief
X`009qualifier full
X`009qualifier mounted
X    `009qualifier files
X    `009qualifier system
X`009qualifier windows
X`009qualifier served,`009nonnegatable,syntax=show_served
X`009disallow served and (allocated or brief or full or mounted or files or
X`009`009system or windows)
X
Xdefine syntax show_status
X`009cliroutine showstat
X`009cliflags(nostatus)
X`009parameter p1,label=option,value(required)
X`009noqualifiers
X
Xdefine syntax show_process
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=process,prompt="Process",value(type=$process)
X`009qualifier output,`009`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier quotas`009`009nonnegatable
X`009qualifier accounting`009`009nonnegatable
X`009qualifier privileges`009`009nonnegatable
X`009qualifier memory`009`009nonnegatable
X`009qualifier subprocesses`009`009nonnegatable
X`009qualifier identification`009value(required),nonnegatable
X`009qualifier continuous`009`009nonnegatable
X`009qualifier all`009`009`009nonnegatable
X`009disallow continuous and output
X
Xdefine syntax show_display
X`009image decw$setshodis
X`009parameter p1,label=option,value(required)
X`009parameter p2,prompt="Device",value(type=$device)
X`009qualifier symbols`009! not documented
X
Xdefine syntax show_system
X`009parameter p1,label=option,value(required)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier process,`009default,nonnegatable
X`009qualifier cluster
X`009qualifier node`009`009nonnegatable,value(list)
X`009qualifier batch`009`009nonnegatable
X`009qualifier subprocess`009nonnegatable
X`009qualifier network`009nonnegatable
X`009qualifier interactive`009nonnegatable
X        qualifier full          nonnegatable
X`009disallow  cluster and node
X
Xdefine syntax show_terminal
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=device,prompt="Device",value(type=$device)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier permanent`009nonnegatable
X`009qualifier x29,`009`009syntax=show_term_x29
X
Xdefine`009syntax`009show_term_x29
X`009image`009psishowx29
X`009qualifier full
X`009qualifier numeric`009nonnegatable
X
Xdefine syntax show_printer
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=device,prompt="Device",value(required,type=$device)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X
Xdefine syntax show_magtape
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=device,prompt="Device",value(required,type=$device)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X
Xdefine syntax show_quota
X`009cliroutine showquota
X`009prefix cli$k_shqo_
X`009parameter p1,label=option,value(required)
X`009qualifier disk,`009`009default,value(type=$device)
X`009qualifier user,`009`009value(required,type=$uic)
X
Xdefine syntax show_memory
X`009parameter p1,label=option,value(required)
X`009qualifier output,`009`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier physical_memory`009nonnegatable
X`009qualifier slots`009`009`009nonnegatable
X`009qualifier pool`009`009`009nonnegatable
X`009qualifier files`009`009`009nonnegatable
X`009qualifier full`009`009`009nonnegatable
X`009qualifier all`009`009`009nonnegatable
X
Xdefine syntax show_error
X`009parameter p1,label=option,value(required)
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier brief`009`009nonnegatable
X`009qualifier full`009`009nonnegatable
X
Xdefine syntax show_user
X`009parameter p1,label=option,value(required)
X`009parameter p2,label=username,prompt="Username",value
X`009qualifier output,`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier cluster`009default
X        qualifier full          nonnegatable
X`009qualifier node`009`009nonnegatable,value(list)
X`009qualifier batch`009`009nonnegatable
X`009qualifier subprocess`009nonnegatable
X`009qualifier network`009nonnegatable
X`009qualifier interactive`009nonnegatable
X`009disallow  cluster and node
X
Xdefine syntax no_parameter
X`009parameter p1,label=option,value(required)
X`009noqualifiers
X
Xdefine type cluster_reports
X`009keyword cluster
X`009keyword local_ports
X`009keyword cycle
X
Xdefine syntax show_cluster
X`009image shwclstr
X`009parameter p1,label=option,value(required)
X`009qualifier beginning`009value(required,type=$datetime),nonnegatable
X`009qualifier continuous`009negatable
X`009qualifier ending`009value(required,type=$datetime),nonnegatable
X`009qualifier interval`009value(required,type=$number),nonnegatable
X`009qualifier output`009default,value(type=$file,default="SYS$OUTPUT")
X`009qualifier report`009value(required,type=cluster_reports),
X`009`009`009`009nonnegatable
X
Xdefine type CIA_TYPE
X
X    keyword`009ALL`009`009nonnegatable
X
X    keyword`009SUSPECT`009`009nonnegatable
X    keyword`009INTRUDER`009nonnegatable
X
Xdefine syntax SHOW_INTRUSION
X
X    image`009CIA
X
X    qualifier`009TYPE`009value(list, type=CIA_TYPE, default=ALL)
X    qualifier`009OUTPUT`009default, value(type=$FILE, default="SYS$OUTPUT")
X
Xdefine type show_options
X
X`009keyword INTRUSIONS`009syntax=SHOW_INTRUSION
X`009keyword acl,`009`009syntax=show_acl
X    `009keyword broadcast,`009syntax=show_broad
X`009keyword cpu,`009`009syntax=show_cpu
X`009keyword daytime,`009syntax=show_daytime
X`009keyword time,`009`009syntax=show_daytime
X`009keyword default,`009syntax=show_default
X`009keyword display,`009syntax=show_display
X`009keyword logical,`009syntax=show_logical
X`009keyword license,`009syntax=show_license
X`009keyword protection,`009syntax=show_protection
X`009keyword queue,`009`009syntax=show_queue
X`009keyword entry,`009`009syntax=show_entry
X`009keyword symbol,`009`009syntax=show_symbol
X`009keyword translation,`009syntax=show_translation
X`009keyword working_set,`009syntax=show_broad
X`009keyword devices,`009syntax=show_device
X`009keyword status,`009`009syntax=show_status
X`009keyword process,`009syntax=show_process
X`009keyword system,`009`009syntax=show_system
X`009keyword terminal,`009syntax=show_terminal
X`009keyword printer,`009syntax=show_printer
X`009keyword network,`009syntax=show_broad
X`009keyword rms_default,`009syntax=show_broad
X`009keyword magtape,`009syntax=show_magtape
X`009keyword quota,`009`009syntax=show_quota
X`009keyword`009memory,`009`009syntax=show_memory
X`009keyword users,`009`009syntax=show_user
X`009keyword`009error,`009`009syntax=show_error
X`009keyword accounting,`009syntax=show_broad
X`009keyword cluster,`009syntax=show_cluster
X`009keyword key,`009`009syntax=show_key,cliflags(mcrignore)
X`009keyword audit,`009`009syntax=show_audit
X
Xdefine verb show
X
X!
X! added the qualifier remote, this forces show to use my show_remote
X! syntax defintion rather than going to the tables of keywords
X!
X
X      qualifier remote,syntax=show_remote,value(required),placement=position
Val
X      parameter p1,label=option, value(type=show_options)
X
X
X
$ CALL UNPACK SHOW.CLD;1 846117489
$ create/nolog 'f'
X`091
XINHERIT(
X'SYS$LIBRARY:STARLET',   `009`009`123* needed for most everything... *`125
X'SYS$LIBRARY:PASCAL$LIB_ROUTINES'`009`123* LIB$ routines`009`009 *`125
X)`093
Xprogram showrem(input,output);
X
X%include 'ou$pascal:system.inc'
X%include 'userdisk:`091support.tarcea.userdb`093cli$.inc'
X
X
Xvar
X  filename      `123* file to open *`125
X          : string:= '"show$server qwerty123"::"128="' ;
X
X  netlink       `123* network link *`125
X          : text ;
X
X  node,         `123* which node *`125
X  command,      `123* show command to execute *`125
X  buffer        `123* output buffer from net *`125
X          : string ;
X
X  status        `123* status of cli call *`125
X          : unsigned ; `032
X
X
X
Xbegin
X  node:= CliGetValue_String('REMOTE') ;
X  command:= CliGetValue_String('OPTION') ;
X  filename:= node+filename ;
+-+-+-+-+-+-+-+-  END  OF PART 2 +-+-+-+-+-+-+-+-

