NetBSD/usr.sbin/mopd/common/mopdef.h

194 lines
8.5 KiB
C

/* $NetBSD: mopdef.h,v 1.4 2009/10/20 00:51:13 snj Exp $ */
/*
* Copyright (c) 1993-95 Mats O Jansson. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $NetBSD: mopdef.h,v 1.4 2009/10/20 00:51:13 snj Exp $
*
*/
#ifndef _MOPDEF_H_
#define _MOPDEF_H_
#define MOP_K_PROTO_DL 0x6001 /* MOP Load/Dump Protocol */
#define MOP_K_PROTO_RC 0x6002 /* MOP Remote Console Protocol */
#define MOP_K_PROTO_LP 0x9000 /* MOP Loopback Protocol */
#define MOP_K_PROTO_802_DL { 0x08, 0x00, 0x2b, 0x60, 0x01 }
#define MOP_K_PROTO_802_RC { 0x08, 0x00, 0x2b, 0x60, 0x02 }
#define MOP_K_PROTO_802_LP { 0x08, 0x00, 0x2b, 0x90, 0x00 }
#define MOP_K_PROTO_802_DSAP 0xaa
#define MOP_K_PROTO_802_SSAP 0xaa
#define MOP_K_PROTO_802_CNTL 0x03
#define TRANS_ETHER 1 /* Packet in Ethernet format */
#define TRANS_8023 2 /* Packet in 802.3 format */
#define TRANS_AND 0x1000 /* Both Ethernet and 802.3 */
/* The following constants are defined in module MOPDEF.SDL in MOM */
#define MOP_K_CODE_MIN 0
#define MOP_K_CODE_MLT 0 /* Memory Load with transfer address */
#define MOP_K_CODE_DCM 1 /* Dump Complete */
#define MOP_K_CODE_MLD 2 /* Memory Load */
#define MOP_K_CODE_ASV 3 /* Assistance volunteer (NI only */
#define MOP_K_CODE_RMD 4 /* Request memory dump */
#define MOP_K_CODE_RID 5 /* Request ID */
#define MOP_K_CODE_BOT 6 /* Boot */
#define MOP_K_CODE_SID 7 /* System ID */
#define MOP_K_CODE_RPR 8 /* Request program */
#define MOP_K_CODE_RQC 9 /* Request Counters */
#define MOP_K_CODE_RML 10 /* Request memory load */
#define MOP_K_CODE_CNT 11 /* Counters */
#define MOP_K_CODE_RDS 12 /* Request Dump Service */
#define MOP_K_CODE_MMR 12 /* MOP Mode Running */
#define MOP_K_CODE_RVC 13 /* Reserve Console */
#define MOP_K_CODE_MDD 14 /* Memory dump data */
#define MOP_K_CODE_RLC 15 /* Release Console */
#define MOP_K_CODE_CCP 17 /* Console Command and Poll */
#define MOP_K_CODE_CRA 19 /* Console Response and Acknnowledge */
#define MOP_K_CODE_PLT 20 /* Parameter load with transfer address*/
#define MOP_K_CODE_ALD 24 /* Active loop data */
#define MOP_K_CODE_PLD 26 /* Passive looped data */
#define MOP_K_CODE_MAX 26
#define MOP_K_PGTY_MIN 0
#define MOP_K_PGTY_SECLDR 0 /* Secondary Loader */
#define MOP_K_PGTY_TERLDR 1 /* Tertiary Loader */
#define MOP_K_PGTY_OPRSYS 2 /* Operating System */
#define MOP_K_PGTY_MGNTFL 3 /* Management File */
#define MOP_K_PGTY_MAX 3
#define MOP_K_BPTY_MIN 0
#define MOP_K_BPTY_SYS 0 /* System Processor */
#define MOP_K_BPTY_COM 1 /* Communication Processor */
#define MOP_K_BPTY_MAX 1
#define MOP_K_RML_ERROR_MIN 0
#define MOP_K_RML_ERROR_NONE 0 /* None */
#define MOP_K_RML_ERROR_NO_LOAD 1 /* Image data not properly loaded */
#define MOP_K_RML_ERROR_MAX 1
#define MOP_K_PLTP_MIN 0
#define MOP_K_PLTP_END 0 /* End Mark */
#define MOP_K_PLTP_TSN 1 /* Target System Name */
#define MOP_K_PLTP_TSA 2 /* Target System Address */
#define MOP_K_PLTP_HSN 3 /* Host System Name */
#define MOP_K_PLTP_HSA 4 /* Host System Address */
#define MOP_K_PLTP_HST 5 /* Host System Time */
#define MOP_K_PLTP_MAX 5
#define MOP_K_BOT_CNTL_MIN 0
#define MOP_K_BOT_CNTL_SERVER 0 /* Boot-Server */
#define MOP_K_BOT_CNTL_DEVICE 1 /* Boot-Device */
#define MOP_K_BOT_CNTL_MAX 1
#define MOP_K_INFO_VER 1 /* Maintenance Version */
#define MOP_K_INFO_MFCT 2 /* Maintenance Functions */
#define MOP_K_INFO_CNU 3 /* Console User */
#define MOP_K_INFO_RTM 4 /* Reservation Timer */
#define MOP_K_INFO_CSZ 5 /* Console Command Size */
#define MOP_K_INFO_RSZ 6 /* Console Response Size */
#define MOP_K_INFO_HWA 7 /* Hardware Address */
#define MOP_K_INFO_TIME 8 /* System Time */
#define MOP_K_INFO_SOFD 100 /* Communication Device */
#define MOP_K_INFO_SFID 200 /* Software ID */
#define MOP_K_INFO_PRTY 300 /* System Processor */
#define MOP_K_INFO_DLTY 400 /* Data Link Type */
#define MOP_K_INFO_DLBSZ 401 /* Data Link Buffer Size */
#define MOP_K_DLTY_MIN 1
#define MOP_K_DLTY_NI 1 /* Ethernet */
#define MOP_K_DLTY_DDCMP 2 /* DDCMP */
#define MOP_K_DLTY_LAPB 3 /* LAPB (frame level of X.25) */
#define MOP_K_DLTY_MAX 3
#define MOP_K_PRTY_MIN 0
#define MOP_K_PRTY_11 1 /* PDP-11 (UNIBUS) */
#define MOP_K_PRTY_CMSV 2 /* Communication Server */
#define MOP_K_PRTY_PRO 3 /* Professional */
#define MOP_K_PRTY_SCO 4 /* Scorpio */
#define MOP_K_PRTY_AMB 5 /* Amber */
#define MOP_K_PRTY_BRI 6 /* XLII Bridge */
#define MOP_K_PRTY_MAX 6
#define MOP_K_SFID_FORM_MIN -2
#define MOP_K_SFID_FORM_MAINT -2 /* Maintenance System */
#define MOP_K_SFID_FORM_OPRSYS -1 /* Standard Operating System */
#define MOP_K_SFID_FORM_NONE 0 /* None */
#define MOP_K_SFID_FORM_MAX 0
#define MOP_K_SFID_CUST 'CP' /* Customer product */
#define MOP_K_SFID_DEC 'DP' /* DEC product */
#define MOP_K_SFID_DELIM_ID '#' /* Delimiter identifier */
#define MOP_K_DLBSZ_DEFAULT 262 /* Buffersize */
#define MOP_K_NILOOP_REPLY 1 /* Response */
#define MOP_K_NILOOP_FORWARD 2 /* Forward Data */
#define MOP_DL_MULTICAST { 0xab, 0x00, 0x00, 0x01, 0x00, 0x00 }
#define MOP_RC_MULTICAST { 0xab, 0x00, 0x00, 0x02, 0x00, 0x00 }
#define MOP_LP_MULTICAST { 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00 }
#define MOP_K_RPR_FORMAT_V3 1 /* Format Version of RPR */
#define MOP_K_RPR_FORMAT 4 /* Format Version of RPR */
#define IHD_C_MINCODE -1 /* Low bound of ALIAS value */
#define IHD_C_NATIVE -1 /* Native mode image */
#define IHD_C_RSX 0 /* RSX image produced by TKB */
#define IHD_C_BPA 1 /* BASIC plus analog */
#define IHD_C_ALIAS 2 /* Last 126 bytes contains ASCIC of image to activate */
#define IHD_C_CLI 3 /* Image is CLI, run LOGINOUT */
#define IHD_C_PMAX 4 /* PMAX system image */
#define IHD_C_ALPHA 5 /* ALPHA system image */
#define IHD_C_MAXCODE 5 /* High bound of ALIAS value */
#define IHD_W_SIZE 0
#define IHD_W_ACTIVOFF 2
#define IHD_B_HDRBLKCNT 16
#define IHD_W_ALIAS 510
#define ISD_W_PAGCNT 2
#define ISD_V_VPN 4
#define ISD_M_VPN 0x1fffff
#define IHA_L_TFRADR1 0
#define EISD_L_SECSIZE 12
#define EIHD_L_ISDOFF 12
#define EIHD_L_HDRBLKCNT 76
#define L_BSA 0x08 /* RSX base address */
#define L_BLDZ 0x0e /* RSX image size (* 64) */
#define L_BXFR 0xe8 /* RSX transfer address */
#define L_BBLK 0xf0 /* RSX header block count */
#ifndef MOPDEF_SUPRESS_EXTERN
extern char dl_mcst[];
extern char rc_mcst[];
extern char dl_802_proto[];
extern char rc_802_proto[];
extern char lp_802_proto[];
#endif /* MOPDEF_SUPRESS_EXTERN */
#endif /* _MOPDEF_H_ */