74 lines
2.1 KiB
C
74 lines
2.1 KiB
C
#ifndef _NCP_ENDPOINT_H_
|
|
#define _NCP_ENDPOINT_H_
|
|
|
|
/*
|
|
* Common NCP endpoint and provider vocabulary.
|
|
*
|
|
* This header is intentionally declarative first. It gives audits, future
|
|
* endpoint tables, and later dispatcher cleanup patches one shared set of
|
|
* names without changing the current switch/return-value behaviour.
|
|
*/
|
|
|
|
typedef enum ncp_provider_e {
|
|
NCP_PROVIDER_UNKNOWN = 0,
|
|
NCP_PROVIDER_NWCONN,
|
|
NCP_PROVIDER_NWBIND,
|
|
NCP_PROVIDER_BINDERY,
|
|
NCP_PROVIDER_QUEUE,
|
|
NCP_PROVIDER_NWFS,
|
|
NCP_PROVIDER_NAMESPACE,
|
|
NCP_PROVIDER_SEMAPHORE,
|
|
NCP_PROVIDER_MESSAGE,
|
|
NCP_PROVIDER_SERVERMGMT,
|
|
NCP_PROVIDER_TRANSPORT,
|
|
NCP_PROVIDER_DIRECTORY,
|
|
NCP_PROVIDER_NWNDS,
|
|
NCP_PROVIDER_NCP_EXTENSION,
|
|
NCP_PROVIDER_AFP,
|
|
NCP_PROVIDER_ACCOUNTING,
|
|
NCP_PROVIDER_AUTH,
|
|
NCP_PROVIDER_LEGACY_STUB
|
|
} NcpProvider;
|
|
|
|
/*
|
|
* Current nwconn dispatcher compatibility values.
|
|
*
|
|
* Only the relevant nwconn dispatch path gives -1/-2 the handoff meaning
|
|
* described here. Other functions may still return -1 as a normal local error.
|
|
*/
|
|
typedef enum ncp_dispatch_result_e {
|
|
NCP_DISPATCH_DONE = 0,
|
|
NCP_DISPATCH_FORWARD_NWBIND = -1,
|
|
NCP_DISPATCH_FORWARD_NWBIND_POST = -2,
|
|
NCP_DISPATCH_NOT_IMPLEMENTED = 1,
|
|
NCP_DISPATCH_BAD_REQUEST = 2,
|
|
NCP_DISPATCH_INTERNAL_ERROR = 3
|
|
} NcpDispatchResult;
|
|
|
|
typedef enum ncp_endpoint_flag_e {
|
|
NCP_ENDPOINT_LOCAL = 1U << 0,
|
|
NCP_ENDPOINT_FORWARDED = 1U << 1,
|
|
NCP_ENDPOINT_NEEDS_POSTPROCESS = 1U << 2,
|
|
NCP_ENDPOINT_PROVIDER_BUILDS_REPLY = 1U << 3,
|
|
NCP_ENDPOINT_NETWARE3 = 1U << 4,
|
|
NCP_ENDPOINT_NETWARE4_GUARDED = 1U << 5,
|
|
NCP_ENDPOINT_REFERENCE_ONLY = 1U << 6,
|
|
NCP_ENDPOINT_LEGACY_STUB = 1U << 7
|
|
} NcpEndpointFlag;
|
|
|
|
/*
|
|
* Future normalized provider handoff reply kind. These are internal MARS
|
|
* results, not client-visible NCP completion codes. The provider always
|
|
* returns a formal internal handoff reply object; NO_CLIENT_REPLY means only
|
|
* that nwconn must not send a client-visible NCP reply.
|
|
*/
|
|
typedef enum nw_handoff_reply_kind_e {
|
|
NW_HANDOFF_REPLY = 0,
|
|
NW_HANDOFF_NO_CLIENT_REPLY,
|
|
NW_HANDOFF_DEFERRED,
|
|
NW_HANDOFF_FORWARD,
|
|
NW_HANDOFF_ERROR
|
|
} NwHandoffReplyKind;
|
|
|
|
#endif
|