! ! **************************************************************** ! ! Copyright (c) 1992, Carnegie Mellon University ! ! All Rights Reserved ! ! Permission is hereby granted to use, copy, modify, and ! distribute this software provided that the above copyright ! notice appears in all copies and that any distribution be for ! noncommercial purposes. ! ! Carnegie Mellon University disclaims all warranties with regard ! to this software. In no event shall Carnegie Mellon University ! be liable for any special, indirect, or consequential damages ! or any damages whatsoever resulting from loss of use, data, or ! profits arising out of or in connection with the use or ! performance of this software. ! ! **************************************************************** ! MODULE IPNCP_parse !++ ! IPNCP_Parse.CLD ! ! Copyright (C) 1989 Carnegie Mellon University ! ! Description: ! ! DCL-type interface to the IPNCP. ! ! Written By: ! ! 06-Sep-1989 Bruce Miller CMU Network Development ! ! Modifications: ! ! 23-Oct-1990 Bruce R. Miller CMU NetDev ! Added NAMRES PRUNE. ! ! 06-Dec-1989 Bruce R. Miller CMU NetDev ! Added NetStat and NetLog and NetExit. ! ! 05-Dec-1989 Bruce R. Miller CMU NetDev ! Added Ping. ! !-- DEFINE VERB FORCEX !++ ! Description: ! ! Forces exit of a given process. ! ! Syntax: ! ! IPNCP> FORCEX [pid] [/rcode=x] !-- ROUTINE IPNCP_ForceX PARAMETER P1,LABEL=pid,VALUE(REQUIRED) QUALIFIER UDP,LABEL=RCode,VALUE(REQUIRED) DEFINE VERB Exit SYNONYM Quit !++ ! Description: ! ! Leave the IPNCP utility. ! ! Syntax: ! ! IPNCP> EXIT !-- ROUTINE Exit_IPNCP NOPARAMETERS DEFINE VERB Help !++ ! Description: ! ! Obtain help by looking up info in IPNCP help library. ! ! Syntax: ! ! IPNCP> HELP [Help_Line] !-- ROUTINE IPNCP_Help PARAMETER P1, LABEL = Help_Line, VALUE (TYPE = $Rest_of_Line) DEFINE VERB HOSTNM !++ ! Description: ! ! Lookup a domain name by sending a request to the name resolver. ! ! Syntax: ! ! IPNCP> HOSTNM Host_Name !-- ROUTINE IPNCP_HostNm PARAMETER P1,LABEL=HOST_NAME,PROMPT="Host",VALUE(REQUIRED,LIST) DEFINE VERB INITIALIZE !++ ! Description: ! ! Initialize some part of the IPNCP ! ! Syntax: ! ! IPNCP> Init [Config] !-- PARAMETER P1, LABEL = Option, Prompt="What", VALUE (REQUIRED, TYPE = Init_Options) DEFINE TYPE Init_Options KEYWORD Config SYNTAX = Init_Config DEFINE SYNTAX Init_Config !++ ! Description: ! ! Create configuration global section & file. !-- PARAMETER P1, Label=Option, VALUE(Required) ROUTINE IPNCP_Init_Config DEFINE VERB KILL !++ ! Description: ! ! terminate a TCP connection ! ! Syntax: ! ! IPNCP> KILL cid !-- ROUTINE IPNCP_Kill PARAMETER P1,LABEL=CONN_ID,PROMPT="Conn. ID",VALUE(LIST) QUALIFIER UDP,LABEL=UDP_ID,VALUE(REQUIRED,LIST) QUALIFIER ICMP,LABEL=ICMP_ID,VALUE(REQUIRED,LIST) DEFINE VERB NAMRES !++ ! Description: ! ! Send a control message to the NamRes process MBX. ! ! Syntax: ! ! IPNCP> NAMRES [Log, Exit, Init, Start, Stop, Dump, Prune] !-- PARAMETER P1, LABEL = Option, Prompt="What", VALUE (REQUIRED, TYPE = NamRes_Options) DEFINE TYPE NamRes_Options KEYWORD Log SYNTAX = NamRes_Log KEYWORD Exit SYNTAX = NamRes_Exit KEYWORD Init SYNTAX = NamRes_Init KEYWORD Start SYNTAX = NamRes_Start KEYWORD Stop SYNTAX = NamRes_Stop KEYWORD Dump SYNTAX = NamRes_Dump KEYWORD Prune SYNTAX = NamRes_Prune DEFINE SYNTAX NamRes_Log !++ ! Description: ! ! Set NamRes logging level. !-- PARAMETER P1, Label=Option, VALUE(Required) PARAMETER P2, Label=Level, PROMPT="Logging level", VALUE(REQUIRED, TYPE=$NUMBER) ROUTINE Do_NamRes_Log DEFINE SYNTAX NamRes_Exit !++ ! Description: ! ! Ask NamRes to kill itself. !-- PARAMETER P1, Label=Option, VALUE(Required) PARAMETER P2, Label=Code, PROMPT="Exit code", VALUE(TYPE=$NUMBER) ROUTINE Do_NamRes_Exit DEFINE SYNTAX NamRes_Init !++ ! Description: ! ! Ask NamRes to initialize itself. !-- PARAMETER P1, Label=Option, VALUE(Required) ROUTINE Do_NamRes_Init DEFINE SYNTAX NamRes_Stop !++ ! Description: ! ! Tell NamRes that the IPACP has died. !-- PARAMETER P1, Label=Option, VALUE(Required) ROUTINE Do_NamRes_Stop DEFINE SYNTAX NamRes_Start !++ ! Description: ! ! Tell NamRes that the IPACP has started. !-- PARAMETER P1, Label=Option, VALUE(Required) ROUTINE Do_NamRes_Start DEFINE SYNTAX NamRes_Dump !++ ! Description: ! ! Tell NamRes that the IPACP has started. !-- PARAMETER P1, Label=Option, VALUE(Required) PARAMETER P2, Label=Type, PROMPT="Dump type", VALUE(TYPE=$NUMBER) ROUTINE Do_NamRes_Dump DEFINE SYNTAX NamRes_Prune !++ ! Description: ! ! Tell NamRes to purge a sub-domain from the cache. !-- PARAMETER P1, Label=Option, VALUE(Required) PARAMETER P2, Label=Domain, PROMPT="Domain",VALUE(Required) ROUTINE Do_NamRes_Prune DEFINE VERB NetExit SYNONYM DieScum !++ ! Description: ! ! Kill the IPACP process. ! ! Syntax: ! ! IPNCP> NETEXIT !-- ROUTINE IPNCP_NetExit NOPARAMETERS DEFINE VERB NETLOG !++ ! Description: ! ! Selectively enable various logging facilities. ! ! Syntax: ! ! IPNCP> NETLOG [/ACTIVITY] [State-List] [/DEBUG=mask] !-- ROUTINE IPNCP_NetLog QUALIFIER Activity, SYNTAX = ACTIVITY_LOGGING PARAMETER P1, LABEL=STATE, VALUE (LIST, TYPE=Netlog_Type) QUALIFIER DEBUG, VALUE(REQUIRED, TYPE=$NUMBER) QUALIFIER ALL DEFINE TYPE Netlog_Type KEYWORD PHYSICAL KEYWORD ARP KEYWORD IP KEYWORD TCP KEYWORD TCB_DUMP KEYWORD USER KEYWORD TCB_STATE KEYWORD TCB_CHECK KEYWORD ERROR KEYWORD ICMP KEYWORD UDP DEFINE SYNTAX ACTIVITY_LOGGING ROUTINE IPNCP_NetLog_Activity PARAMETER P1, LABEL=STATE, VALUE (LIST, TYPE=Netlog_ACT_Type) QUALIFIER DEBUG, VALUE(REQUIRED, TYPE=$NUMBER) QUALIFIER ALL DEFINE TYPE Netlog_ACT_Type KEYWORD DEMONS KEYWORD EVENTS KEYWORD SECURITY DEFINE VERB NETSTAT !++ ! Description: ! ! A command definition file for the netstat utility. ! ! Syntax: ! ! IPNCP> NETSTAT [Connection-ID] [Qualifiers] !-- ROUTINE IPNCP_NetStat PARAMETER P1,LABEL=CONN_ID QUALIFIER STATISTICS QUALIFIER MEMORY QUALIFIER ARP QUALIFIER DEVICE QUALIFIER UDP,LABEL=UDP_ID,VALUE(REQUIRED) QUALIFIER ICMP,LABEL=ICMP_ID,VALUE(REQUIRED) QUALIFIER ERROR,LABEL=ERROR,VALUE(REQUIRED) DEFINE VERB NOOP !++ ! Description: ! ! Do nothing. ! ! Syntax: ! ! IPNCP> NOOP !-- ROUTINE Do_NOOP NOPARAMETERS DEFINE VERB Ping !++ ! Description: ! ! Test connectivity to an internet host by sending ICMP echo requests. ! ! Syntax: ! ! IPNCP> PING !-- ROUTINE IPNCP_Ping PARAMETER P1, LABEL = HostName, VALUE (REQUIRED) PARAMETER P2, LABEL=DataLength PARAMETER P3, LABEL=N QUALIFIER VERBOSE QUALIFIER BAR DEFINE VERB RDate !++ ! Description: ! ! Set the system time using info from another Internet host ! ! Syntax: ! ! IPNCP> RDate !-- ROUTINE IPNCP_RDate PARAMETER P1, LABEL = HostName, VALUE (REQUIRED) DEFINE VERB RRFETCH ROUTINE IPNCP_RRFetch QUALIFIER RAW QUALIFIER ADDR QUALIFIER NS QUALIFIER MD QUALIFIER MF QUALIFIER CNAME QUALIFIER SOA QUALIFIER MB QUALIFIER MG QUALIFIER MR QUALIFIER NULL QUALIFIER WKS QUALIFIER PTR QUALIFIER HINFO QUALIFIER MINFO QUALIFIER MX PARAMETER P1,LABEL=DOM_NAME,PROMPT="Domain name",VALUE(REQUIRED,LIST) DEFINE VERB SHOW !++ ! Description: ! ! Display information about the IPACP ! ! Syntax: ! ! IPNCP> SHOW [Config] !-- PARAMETER P1, LABEL = Option, Prompt="What", VALUE (REQUIRED, TYPE = Show_Options) DEFINE TYPE Show_Options KEYWORD Config SYNTAX = Show_Config DEFINE SYNTAX Show_Config !++ ! Description: ! ! Display configuration information !-- PARAMETER P1, Label=Option, VALUE(Required) ROUTINE IPNCP_Show_Config DEFINE VERB SNMP !++ ! Description: ! ! Send an SNMP message to the IPACP ! ! Syntax: ! ! IPNCP> SNMP [GET, GETNEXT, STORE] !-- PARAMETER P1, LABEL = Action, Prompt="action", VALUE (REQUIRED, TYPE = SNMP_Options) DEFINE TYPE SNMP_Options KEYWORD Get SYNTAX = SNMP_Get KEYWORD GetNext SYNTAX = SNMP_GetNext KEYWORD Store SYNTAX = SNMP_Store DEFINE SYNTAX SNMP_Get !++ ! Description: ! ! Retrieve an SNMP variable from the IPACP. !-- PARAMETER P1, Label=Action, VALUE(Required) PARAMETER P2, Label=variable, PROMPT="variable name", VALUE(REQUIRED) ROUTINE IPNCP_SNMP_Get DEFINE SYNTAX SNMP_GetNext !++ ! Description: ! ! Retrieve the next SNMP variable from the IPACP. !-- PARAMETER P1, Label=Action, VALUE(Required) PARAMETER P2, Label=variable, PROMPT="variable name", VALUE(REQUIRED) ROUTINE IPNCP_SNMP_GetNext DEFINE SYNTAX SNMP_Store !++ ! Description: ! ! Store a value in an SNMP variable in the IPACP. !-- PARAMETER P1, Label=Action, VALUE(Required) PARAMETER P2, Label=variable, PROMPT="variable name", VALUE(REQUIRED) PARAMETER P3, Label=value, PROMPT="value", VALUE(REQUIRED) ROUTINE IPNCP_SNMP_Store DEFINE VERB Spawn !++ ! Description: ! ! Spawn a CLI process. ! ! Syntax: ! ! IPNCP> SPAWN !-- ROUTINE IPNCP_Spawn PARAMETER P1, LABEL = Command_Line, VALUE (TYPE = $Rest_of_Line) DEFINE VERB Startup !++ ! Description: ! ! Create a running NamRes process. ! ! Syntax: ! ! IPNCP> STARTUP !-- ROUTINE IPNCP_Startup QUALIFIER IPACP QUALIFIER NAMRES NOPARAMETERS DEFINE VERB Shutdown !++ ! Description: ! ! Stop a running IPACP or NamRes process. ! ! Syntax: ! ! IPNCP> SHUTDOWN [/IPACP][/NAMRES] !-- ROUTINE IPNCP_ShutDown QUALIFIER IPACP QUALIFIER NAMRES NOPARAMETERS DEFINE VERB TraceRoute !++ ! Description: ! ! Examine connectivity to an internet host. ! ! Syntax: ! ! IPNCP> TRACEROUTE [/MaxTTL=n] !-- ROUTINE IPNCP_TraceRoute PARAMETER P1, LABEL = HostName, VALUE (REQUIRED) QUALIFIER Debug QUALIFIER MaxTTL,VALUE(REQUIRED) QUALIFIER Numeric QUALIFIER Port,VALUE(REQUIRED) QUALIFIER nProbe,VALUE(REQUIRED) QUALIFIER DntRt QUALIFIER Src,VALUE(REQUIRED) QUALIFIER TOS,VALUE(REQUIRED) QUALIFIER Verbose QUALIFIER Wait,VALUE(REQUIRED) DEFINE VERB UNIXSTAT !++ ! Description: ! ! Works just like the Unix NETSTAT program. ! ! Syntax: ! ! IPNCP> UNIXSTAT !-- ROUTINE IPNCP_UnixStat NOPARAMETERS DEFINE VERB Version !++ ! Description: ! ! Display information about this IPNCP version. ! ! Syntax: ! ! IPNCP> VERSION !-- ROUTINE Do_Version NOPARAMETERS DEFINE VERB Hello !++ ! Description: ! ! I dunno... ! ! Syntax: ! ! IPNCP> HELLO !-- ROUTINE Do_Hello PARAMETER P1, LABEL = Who DEFINE VERB XYZZY !++ ! Description: ! ! ??? ! ! Syntax: ! ! IPNCP> XYZZY !-- ROUTINE Do_XYZZY NOPARAMETERS