/* 
 * $Id: qcs_qrpc.h,v 1.2 91/05/03 03:03:41 qjb Exp $
 * $Source: /afs/athena.mit.edu/astaff/project/qcs/src/RCS/qcs_qrpc.h,v $
 * $Author: qjb $
 *
 * This header file contains the qrpc things qcs needs 
 */

#ifndef __QCS_QRPC_H__
#define __QCS_QRPC_H__

#if !defined(lint) && !defined(SABER) || defined(RCS_HDRS)
static char *rcsid_qcs_qrpc_h = "$Id: qcs_qrpc.h,v 1.2 91/05/03 03:03:41 qjb Exp $";
#endif /* !lint && !SABER || RCS_HDRS */


#define QCS_MINV 1
#define QCS_MAXV 1

/*
 * The number of opcodes defined here must not exceed 
 * QCS_FIRST_OP as defined in qcs.h.  That value is the first opcode
 * available for client/server use.
 */

#define QCS_OP_CMD 0
#define QCS_OP_NOTIFY 1
#define QCS_OP_ERROR 2
#define QCS_OP_FLUSH 3
#define QCS_OP_QUIT 4
#define QCS_OP_MESSAGE 5
#define QCS_OP_MKCOMM 6
#define QCS_OP_RES7 7
#define QCS_OP_RES8 8
#define QCS_OP_RES9 9
#define QCS_OP_RES10 10
#define QCS_OP_RES11 11
#define QCS_OP_RES12 12
#define QCS_OP_RES13 13
#define QCS_OP_RES14 14
#define QCS_OP_RES15 15
#define QCS_OP_RES16 16
#define QCS_OP_RES17 17
#define QCS_OP_RES18 18
#define QCS_OP_RES19 19
#define QCS_OP_RES20 20
#define QCS_OP_RES21 21
#define QCS_OP_RES22 22
#define QCS_OP_RES23 23
#define QCS_OP_RES24 24
#define QCS_OP_RES25 25
#define QCS_OP_RES26 26
#define QCS_OP_RES27 27
#define QCS_OP_RES28 28
#define QCS_OP_RES29 29
#define QCS_OP_RES30 30
#define QCS_OP_RES31 31

static qrpc_valid_opcode qcsi_opcodes[] = {
    { QCS_OP_CMD, "Send command or report command completion (qcs)" },
    { QCS_OP_NOTIFY, "Notify client (qcs)" },
    { QCS_OP_ERROR, "Send error to client (qcs)" },
    { QCS_OP_FLUSH, "Flush idle client (qcs)" },
    { QCS_OP_QUIT, "Acknowledge quit (qcs)" },
    { QCS_OP_MESSAGE, "Send message to client (qcs)" },
    { QCS_OP_MKCOMM, "Create communication chanel (qcs)" },
    { QCS_OP_RES7, "Reserved qcs opcode 7" },
    { QCS_OP_RES8, "Reserved qcs opcode 8" },
    { QCS_OP_RES9, "Reserved qcs opcode 9" },
    { QCS_OP_RES10, "Reserved qcs opcode 10" },
    { QCS_OP_RES11, "Reserved qcs opcode 11" },
    { QCS_OP_RES12, "Reserved qcs opcode 12" },
    { QCS_OP_RES13, "Reserved qcs opcode 13" },
    { QCS_OP_RES14, "Reserved qcs opcode 14" },
    { QCS_OP_RES15, "Reserved qcs opcode 15" },
    { QCS_OP_RES16, "Reserved qcs opcode 16" },
    { QCS_OP_RES17, "Reserved qcs opcode 17" },
    { QCS_OP_RES18, "Reserved qcs opcode 18" },
    { QCS_OP_RES19, "Reserved qcs opcode 19" },
    { QCS_OP_RES20, "Reserved qcs opcode 20" },
    { QCS_OP_RES21, "Reserved qcs opcode 21" },
    { QCS_OP_RES22, "Reserved qcs opcode 22" },
    { QCS_OP_RES23, "Reserved qcs opcode 23" },
    { QCS_OP_RES24, "Reserved qcs opcode 24" },
    { QCS_OP_RES25, "Reserved qcs opcode 25" },
    { QCS_OP_RES26, "Reserved qcs opcode 26" },
    { QCS_OP_RES27, "Reserved qcs opcode 27" },
    { QCS_OP_RES28, "Reserved qcs opcode 28" },
    { QCS_OP_RES29, "Reserved qcs opcode 29" },
    { QCS_OP_RES30, "Reserved qcs opcode 30" },
    { QCS_OP_RES31, "Reserved qcs opcode 31" },
    { 0, 0}
};

#define QCS_APP_OPCODE_OFFSET 32

#endif /* __QCS_QRPC_H__ */
