/* Copyright (c) 1993 Xerox Corporation. All rights reserved. */ /* $Id$ $Date$ * */ /* Chauser, October 28, 1993 3:39 pm PDT */ #ifndef __PCR_DbgNubProtocol_h # define __PCR_DbgNubProtocol_h 1 #include #include /* * well known port */ #define PCR_DbgNubProtocol_LISTENER_PORT 4815 #define PCR_DbgNubProtocol_VERSION 0 #define PCR_DbgNubProtocol_MkVersion(proto,procs) ( ((proto)<<16) | (procs) ) /* * return codes */ #define PCR_DbgNubProtocol_Res_okay PCR_ERes_okay #define PCR_DbgNubProtocol_Res_noProc PCR_ERes_FromRes(1) #define PCR_DbgNubProtocol_Res_badArgs PCR_ERes_FromRes(2) /* the remaining codes require destroying the stream */ #define PCR_DbgNubProtocol_Res_MUST_CLOSE_CONNECTION PCR_ERes_FromRes(128) #define PCR_DbgNubProtocol_Res_failure PCR_ERes_FromRes(128) #define PCR_DbgNubProtocol_Res_failure PCR_ERes_FromRes(129) #define PCR_DbgNubProtocol_Res_protocol PCR_ERes_FromRes(130) #define PCR_DbgNubProtocol_Res_space PCR_ERes_FromRes(131) /* * types (of tagged values passed over the wire) */ typedef enum { PCR_DbgNubProtocol_Tag_null = 0, PCR_DbgNubProtocol_Tag_procID = 1, PCR_DbgNubProtocol_Tag_retCode = 2, PCR_DbgNubProtocol_Tag_card32 = 3, PCR_DbgNubProtocol_Tag_int32 = 4, PCR_DbgNubProtocol_Tag_string = 5, PCR_DbgNubProtocol_Tag_block8 = 6, PCR_DbgNubProtocol_Tag_block16 = 7, PCR_DbgNubProtocol_Tag_block32 = 8, PCR_DbgNubProtocol_Tag_last = 0x7fff } PCR_DbgNubProtocol_Tag; /* * representation on the wire * * call is args followed by procID * reply is results followed by retCode */ #if defined(PCR_Arch_STD_SIZES) typedef short net_16; typedef long net_32; #else # error NYI #endif typedef struct { net_16 dnpw_tag; net_16 dnpw_len; } PCR_DbgNubProtocol_Wrapper; #endif /* __PCR_DbgNubProtocol_h */