summaryrefslogtreecommitdiffstats
path: root/public/sdk/rpc16
diff options
context:
space:
mode:
authorAdam <you@example.com>2020-05-17 05:51:50 +0200
committerAdam <you@example.com>2020-05-17 05:51:50 +0200
commite611b132f9b8abe35b362e5870b74bce94a1e58e (patch)
treea5781d2ec0e085eeca33cf350cf878f2efea6fe5 /public/sdk/rpc16
downloadNT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip
Diffstat (limited to '')
-rw-r--r--public/sdk/rpc16/ct/errdb.h2193
-rw-r--r--public/sdk/rpc16/ct/errors.hxx548
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c1.map222
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c1.rpcbin0 -> 3399 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c3.map335
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c3.rpcbin0 -> 10559 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c4.map284
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c4.rpcbin0 -> 6428 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c5.map216
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c5.rpcbin0 -> 5965 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c6.map330
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16c6.rpcbin0 -> 9365 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16dg3.map351
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16dg3.rpcbin0 -> 11171 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16dg6.map329
-rw-r--r--public/sdk/rpc16/dos/dll/rpc16dg6.rpcbin0 -> 9183 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpcns.map305
-rw-r--r--public/sdk/rpc16/dos/dll/rpcns.rpcbin0 -> 9780 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpcnslm.map364
-rw-r--r--public/sdk/rpc16/dos/dll/rpcnslm.rpcbin0 -> 23527 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/rpcnsmgm.map387
-rw-r--r--public/sdk/rpc16/dos/dll/rpcnsmgm.rpcbin0 -> 20524 bytes
-rw-r--r--public/sdk/rpc16/dos/dll/security.map353
-rw-r--r--public/sdk/rpc16/dos/dll/security.rpcbin0 -> 16000 bytes
-rw-r--r--public/sdk/rpc16/dos/inc/midles.h218
-rw-r--r--public/sdk/rpc16/dos/inc/rpc.h64
-rw-r--r--public/sdk/rpc16/dos/inc/rpcdce.h1618
-rw-r--r--public/sdk/rpc16/dos/inc/rpcdcep.h415
-rw-r--r--public/sdk/rpc16/dos/inc/rpcerr.h188
-rw-r--r--public/sdk/rpc16/dos/inc/rpcndr.h2630
-rw-r--r--public/sdk/rpc16/dos/inc/rpcnsi.h509
-rw-r--r--public/sdk/rpc16/dos/inc/rpcnsip.h72
-rw-r--r--public/sdk/rpc16/dos/inc/rpcx86.h74
-rw-r--r--public/sdk/rpc16/mac/inc/midles.h218
-rw-r--r--public/sdk/rpc16/mac/inc/rpc.h71
-rw-r--r--public/sdk/rpc16/mac/inc/rpcdce.h1618
-rw-r--r--public/sdk/rpc16/mac/inc/rpcdcep.h415
-rw-r--r--public/sdk/rpc16/mac/inc/rpcerr.h188
-rw-r--r--public/sdk/rpc16/mac/inc/rpcmac.h121
-rw-r--r--public/sdk/rpc16/mac/inc/rpcndr.h2630
-rw-r--r--public/sdk/rpc16/mac/inc/rpcnsi.h509
-rw-r--r--public/sdk/rpc16/mac/inc/rpcnsip.h72
-rw-r--r--public/sdk/rpc16/mppc/inc/midles.h218
-rw-r--r--public/sdk/rpc16/mppc/inc/rpc.h71
-rw-r--r--public/sdk/rpc16/mppc/inc/rpcdce.h1618
-rw-r--r--public/sdk/rpc16/mppc/inc/rpcdcep.h415
-rw-r--r--public/sdk/rpc16/mppc/inc/rpcerr.h188
-rw-r--r--public/sdk/rpc16/mppc/inc/rpcmac.h121
-rw-r--r--public/sdk/rpc16/mppc/inc/rpcndr.h2630
-rw-r--r--public/sdk/rpc16/mppc/inc/rpcnsi.h509
-rw-r--r--public/sdk/rpc16/mppc/inc/rpcnsip.h72
-rw-r--r--public/sdk/rpc16/sdk/dnetapi.dl_bin0 -> 525 bytes
-rw-r--r--public/sdk/rpc16/sdk/drpc.h_bin0 -> 636 bytes
-rw-r--r--public/sdk/rpc16/sdk/drpc.li_bin0 -> 173479 bytes
-rw-r--r--public/sdk/rpc16/sdk/drpcndr.li_bin0 -> 549 bytes
-rw-r--r--public/sdk/rpc16/sdk/midles.h_bin0 -> 1889 bytes
-rw-r--r--public/sdk/rpc16/sdk/mrpc.h_bin0 -> 740 bytes
-rw-r--r--public/sdk/rpc16/sdk/mrpc.li_bin0 -> 145206 bytes
-rw-r--r--public/sdk/rpc16/sdk/mscuistf.dl_bin0 -> 18719 bytes
-rw-r--r--public/sdk/rpc16/sdk/msdetect.inc661
-rw-r--r--public/sdk/rpc16/sdk/readme.txt54
-rw-r--r--public/sdk/rpc16/sdk/rpcdce.h_bin0 -> 8741 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcdcep.h_bin0 -> 3250 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcerr.h_bin0 -> 2454 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcmac.h_bin0 -> 987 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcndr.h_bin0 -> 19307 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcnsi.h_bin0 -> 2977 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcnsip.h_bin0 -> 688 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcsdk.in_bin0 -> 928 bytes
-rw-r--r--public/sdk/rpc16/sdk/rpcsdk.mst786
-rw-r--r--public/sdk/rpc16/sdk/rpcx86.h_bin0 -> 670 bytes
-rw-r--r--public/sdk/rpc16/sdk/setup.lst20
-rw-r--r--public/sdk/rpc16/sdk/setupapi.inc1803
-rw-r--r--public/sdk/rpc16/sdk/setuprun.lst21
-rw-r--r--public/sdk/rpc16/sdk/uuidgen.ex_bin0 -> 103184 bytes
-rw-r--r--public/sdk/rpc16/sdk/wrpc.h_bin0 -> 715 bytes
-rw-r--r--public/sdk/rpc16/sdk/wrpc.li_bin0 -> 14376 bytes
-rw-r--r--public/sdk/rpc16/sdk/wrpcndr.li_bin0 -> 555 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c1.map92
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c1.symbin0 -> 468 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c3.map443
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c3.symbin0 -> 2260 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c4.map415
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c4.symbin0 -> 2196 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c5.map129
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c5.symbin0 -> 900 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c6.map314
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c6.symbin0 -> 3316 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c8.map176
-rw-r--r--public/sdk/rpc16/win/dll/rpc16c8.symbin0 -> 916 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16dg3.map156
-rw-r--r--public/sdk/rpc16/win/dll/rpc16dg3.symbin0 -> 820 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpc16dg6.map319
-rw-r--r--public/sdk/rpc16/win/dll/rpc16dg6.symbin0 -> 3492 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpcns1.map437
-rw-r--r--public/sdk/rpc16/win/dll/rpcns1.symbin0 -> 3764 bytes
-rw-r--r--public/sdk/rpc16/win/dll/rpcrt1.map2840
-rw-r--r--public/sdk/rpc16/win/dll/rpcrt1.symbin0 -> 36676 bytes
-rw-r--r--public/sdk/rpc16/win/dll/security.map536
-rw-r--r--public/sdk/rpc16/win/dll/security.symbin0 -> 3476 bytes
-rw-r--r--public/sdk/rpc16/win/inc/midles.h218
-rw-r--r--public/sdk/rpc16/win/inc/rpc.h69
-rw-r--r--public/sdk/rpc16/win/inc/rpcdce.h1618
-rw-r--r--public/sdk/rpc16/win/inc/rpcdcep.h415
-rw-r--r--public/sdk/rpc16/win/inc/rpcerr.h188
-rw-r--r--public/sdk/rpc16/win/inc/rpcndr.h2630
-rw-r--r--public/sdk/rpc16/win/inc/rpcnsi.h509
-rw-r--r--public/sdk/rpc16/win/inc/rpcnsip.h72
-rw-r--r--public/sdk/rpc16/win/inc/rpcx86.h74
-rw-r--r--public/sdk/rpc16/win/lib/winmain.def16
-rw-r--r--public/sdk/rpc16/win/lib/winmain.resbin0 -> 83 bytes
111 files changed, 38700 insertions, 0 deletions
diff --git a/public/sdk/rpc16/ct/errdb.h b/public/sdk/rpc16/ct/errdb.h
new file mode 100644
index 000000000..986b6d931
--- /dev/null
+++ b/public/sdk/rpc16/ct/errdb.h
@@ -0,0 +1,2193 @@
+/****************************************************************************
+ ZZZ - error in all cases
+ AZZ - no error when : app_config
+ AZM - no error when : app_config + ms_ext
+ ACZ - no error when : app_config + c_ext
+ ACM - no error when : app_config + c_ext + ms_ext
+ ZCZ - no error when : c_ext
+ ZCM - no error when : c_ext + ms_ext
+ ZZM - no error when : ms_ext
+
+ Therefore: The following are the configurations
+
+ -ms_ext on: ZZM | ZCM | ACM | AZM
+ ----------
+ -c_ext on: ZCM | ZCZ | ACM | ACZ
+ ----------
+
+ -ms_ext or -c_ext on: ZZM | ZCM | ACM | AZM | ZCZ | ACZ
+ --------------------
+
+ -app_config on : AZZ | AZM | ACZ | ACM
+ ----------------
+ ****************************************************************************/
+
+#define ERR_ALWAYS ( ZZZ )
+#define MS_EXT_SET ( ZZM | ZCM | ACM | AZM )
+#define C_EXT_SET ( ZCM | ZCZ | ACM | ACZ )
+#define MS_OR_C_EXT_SET ( MS_EXT_SET | C_EXT_SET )
+#define APP_CONFIG_SET ( AZZ | AZM | ACZ | ACM )
+
+
+
+const ERRDB ErrorDataBase[] = {
+
+ {
+CHECK_ERR( NO_INPUT_FILE)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"missing source-file name"
+}
+
+,{
+CHECK_ERR( INPUT_OPEN)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"cannot open input file"
+}
+
+,{
+CHECK_ERR( INPUT_READ)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"error while reading input file"
+}
+
+,{
+CHECK_ERR( PREPROCESSOR_ERROR)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"error returned by the C preprocessor"
+}
+
+,{
+CHECK_ERR( PREPROCESSOR_EXEC)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"cannot execute C preprocessor"
+}
+
+,{
+CHECK_ERR( NO_PREPROCESSOR)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"cannot find C preprocessor"
+}
+
+,{
+CHECK_ERR( PREPROCESSOR_INVALID )
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"invalid C preprocessor executable"
+}
+
+,{
+CHECK_ERR( SWITCH_REDEFINED)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, 1 )
+,"switch specified more than once on command line :"
+}
+
+,{
+CHECK_ERR( UNKNOWN_SWITCH)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, NOWARN )
+,"unknown switch"
+}
+
+,{
+CHECK_ERR( UNKNOWN_ARGUMENT)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, 1 )
+,"unknown argument ignored"
+}
+
+,{
+CHECK_ERR( UNIMPLEMENTED_SWITCH)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, 1 )
+,"switch not implemented"
+}
+
+,{
+CHECK_ERR( MISSING_ARG)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"argument(s) missing for switch"
+}
+
+,{
+CHECK_ERR( ILLEGAL_ARGUMENT)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"argument illegal for switch /"
+}
+
+,{
+CHECK_ERR( BAD_SWITCH_SYNTAX)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"illegal syntax for switch"
+}
+
+,{
+CHECK_ERR( NO_CPP_OVERRIDES)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, 1 )
+,"/no_cpp overrides /cpp_cmd and /cpp_opt"
+}
+
+,{
+CHECK_ERR( NO_WARN_OVERRIDES)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, 1 )
+,"/W0 or /no_warn overrides warning-level switch"
+}
+
+,{
+CHECK_ERR( INTERMEDIATE_FILE_CREATE)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"cannot create intermediate file"
+}
+
+,{
+CHECK_ERR( SERVER_AUX_FILE_NOT_SPECIFIED)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"must specify /server(aux/all) with cswtch"
+}
+
+,{
+CHECK_ERR( OUT_OF_SYSTEM_FILE_HANDLES)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"out of system file handles"
+}
+
+,{
+CHECK_ERR( BOTH_CSWTCH_SSWTCH)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"cannot specify both /cswtch and /sswtch"
+}
+
+,{
+CHECK_ERR( CANNOT_OPEN_RESP_FILE)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"cannot open response file"
+}
+
+,{
+CHECK_ERR( ILLEGAL_CHAR_IN_RESP_FILE)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"illegal character(s) found in response file"
+}
+
+,{
+CHECK_ERR( MISMATCHED_PREFIX_PAIR)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"mismatch in argument pair for switch"
+}
+
+,{
+CHECK_ERR( NESTED_RESP_FILE)
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"nested invocation of response files is illegal"
+}
+
+
+,{
+CHECK_ERR( ABSTRACT_DECL )
+ MAKE_E_MASK( C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"must specify /c_ext for abstract declarators"
+}
+
+,{
+CHECK_ERR( ACTUAL_DECLARATION )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"instantiation of data is illegal; you must use \"extern\" or \"static\""
+}
+
+,{
+CHECK_ERR( C_STACK_OVERFLOW)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"compiler stack overflow"
+}
+
+,{
+CHECK_ERR( DUPLICATE_DEFINITION)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"redefinition"
+}
+
+,{
+CHECK_ERR( NO_HANDLE_DEFINED_FOR_PROC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 2 )
+,"[auto_handle] binding will be used"
+}
+
+,{
+CHECK_ERR( OUT_OF_MEMORY)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"out of memory"
+}
+
+,{
+CHECK_ERR( RECURSIVE_DEF)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"recursive definition"
+}
+
+,{
+CHECK_ERR( REDUNDANT_IMPORT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 2 )
+,"import ignored; file already imported :"
+}
+
+,{
+CHECK_ERR( SPARSE_ENUM )
+ MAKE_E_MASK( MS_OR_C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"sparse enums require /c_ext or /ms_ext"
+}
+
+,{
+CHECK_ERR( UNDEFINED_SYMBOL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"undefined symbol"
+}
+
+,{
+CHECK_ERR( UNDEFINED_TYPE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"type used in ACF file not defined in IDL file"
+}
+
+,{
+CHECK_ERR( UNRESOLVED_TYPE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"unresolved type declaration"
+}
+
+,{
+CHECK_ERR( WCHAR_CONSTANT_NOT_OSF )
+ MAKE_E_MASK( MS_OR_C_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"use of wide-character constants requires /ms_ext or /c_ext"
+}
+
+,{
+CHECK_ERR( WCHAR_STRING_NOT_OSF )
+ MAKE_E_MASK( MS_OR_C_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"use of wide character strings requires /ms_ext or /c_ext"
+}
+
+,{
+CHECK_ERR( WCHAR_T_ILLEGAL)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"inconsistent redefinition of type wchar_t"
+}
+
+,{
+CHECK_ERR( TYPELIB_NOT_LOADED )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"importlib not found"
+}
+
+,{
+CHECK_ERR( TWO_LIBRARIES )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"two library blocks"
+}
+
+,{
+CHECK_ERR( NO_IDISPATCH )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"the dispinterface statement requires a definition for IDispatch"
+}
+
+,{
+CHECK_ERR( ERR_TYPELIB )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"error accessing type library"
+}
+
+,{
+CHECK_ERR( ERR_TYPEINFO )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"error accessing type info"
+}
+
+,{
+CHECK_ERR( ERR_TYPELIB_GENERATION )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"error generating type library"
+}
+
+,{
+CHECK_ERR( DUPLICATE_IID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"duplicate id"
+}
+
+,{
+CHECK_ERR( BAD_ENTRY_VALUE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal or missing value for entry attribute"
+}
+
+,{
+CHECK_ERR( ASSUMING_CHAR)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 5 )
+,"error recovery assumes"
+}
+
+,{
+CHECK_ERR( DISCARDING_CHAR)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 5 )
+,"error recovery discards"
+}
+
+,{
+CHECK_ERR( BENIGN_SYNTAX_ERROR)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"syntax error"
+}
+
+,{
+CHECK_ERR( SYNTAX_ERROR)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"cannot recover from earlier syntax errors; aborting compilation"
+}
+
+,{
+CHECK_ERR( UNKNOWN_PRAGMA_OPTION)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"unknown pragma option"
+}
+
+,{
+CHECK_ERR( UNIMPLEMENTED_FEATURE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"feature not implemented"
+}
+
+,{
+CHECK_ERR( UNIMPLEMENTED_TYPE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"type not implemented"
+}
+
+,{
+CHECK_ERR( EXPR_DEREF_ON_NON_POINTER)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"non-pointer used in a dereference operation"
+}
+
+,{
+CHECK_ERR( EXPR_DIV_BY_ZERO)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"expression has a divide by zero"
+}
+
+,{
+CHECK_ERR( EXPR_INCOMPATIBLE_TYPES)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"expression uses incompatible types"
+}
+
+,{
+CHECK_ERR( EXPR_INDEXING_NON_ARRAY )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"non-array expression uses index operator"
+}
+
+,{
+CHECK_ERR( EXPR_LHS_NON_COMPOSITE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"left-hand side of expression does not evaluate to struct/union/enum"
+}
+
+,{
+CHECK_ERR( EXPR_NOT_CONSTANT)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"constant expression expected"
+}
+
+,{
+CHECK_ERR( EXPR_NOT_EVALUATABLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"expression cannot be evaluated at compile time"
+}
+
+,{
+CHECK_ERR( EXPR_NOT_IMPLEMENTED )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"expression not implemented"
+}
+
+,{
+CHECK_ERR( NO_PTR_DEFAULT_ON_INTERFACE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"no [pointer_default] attribute specified, assuming [unique] for all unattributed pointers"
+}
+
+,{
+CHECK_ERR( DERIVES_FROM_PTR_TO_CONF )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[out] only parameter cannot be a pointer to an open structure"
+}
+
+,{
+CHECK_ERR( DERIVES_FROM_UNSIZED_STRING )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[out] only parameter cannot be an unsized string"
+}
+
+,{
+CHECK_ERR( NON_PTR_OUT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[out] parameter is not a pointer"
+}
+
+,{
+CHECK_ERR( OPEN_STRUCT_AS_PARAM)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"open structure cannot be a parameter"
+}
+
+,{
+CHECK_ERR( OUT_CONTEXT_GENERIC_HANDLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[out] context handle/generic handle must be specified as a pointer to that handle type"
+}
+
+,{
+CHECK_ERR( CTXT_HDL_TRANSMIT_AS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"context handle must not derive from a type that has the [transmit_as] attribute"
+}
+
+,{
+CHECK_ERR( PARAM_IS_ELIPSIS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"cannot specify a variable number of arguments to a remote procedure"
+}
+
+,{
+CHECK_ERR( VOID_PARAM_WITH_NAME)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"named parameter cannot be \"void\""
+}
+
+,{
+CHECK_ERR( HANDLE_NOT_FIRST )
+ MAKE_E_MASK( MS_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"only the first parameter can be a binding handle; you must specify the /ms_ext switch"
+}
+
+,{
+CHECK_ERR( PROC_PARAM_COMM_STATUS)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"cannot use [comm_status] on both a parameter and a return type"
+}
+
+,{
+CHECK_ERR( LOCAL_ATTR_ON_PROC)
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"[local] attribute on a procedure requires /ms_ext"
+}
+
+,{
+CHECK_ERR( ILLEGAL_USE_OF_PROPERTY_ATTRIBUTE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"property attributes may only be used with procedures"
+}
+
+,{
+CHECK_ERR( MULTIPLE_PROPERTY_ATTRIBUTES )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"a procedure may not have more than one property attribute"
+}
+
+,{
+CHECK_ERR( CONFORMANT_ARRAY_NOT_LAST)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"field deriving from a conformant array must be the last member of the structure"
+}
+
+,{
+CHECK_ERR( DUPLICATE_CASE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"duplicate [case] label"
+}
+
+,{
+CHECK_ERR( NO_UNION_DEFAULT)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"no [default] case specified for discriminated union"
+}
+
+,{
+CHECK_ERR( ATTRIBUTE_ID_UNRESOLVED)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"attribute expression cannot be resolved"
+}
+
+,{
+CHECK_ERR( ATTR_MUST_BE_INT)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"attribute expression must be of integral, non-hyper type"
+}
+
+,{
+CHECK_ERR( BYTE_COUNT_INVALID)
+ MAKE_E_MASK( MS_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"[byte_count] requires /ms_ext"
+}
+,{
+CHECK_ERR( BYTE_COUNT_NOT_OUT_PTR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[byte_count] can be applied only to out parameters of pointer type"
+}
+
+,{
+CHECK_ERR( BYTE_COUNT_ON_CONF )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[byte_count] cannot be specified on a pointer to a conformant array or structure"
+}
+
+,{
+CHECK_ERR( BYTE_COUNT_PARAM_NOT_IN )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter specifying the byte count is not [in]"
+}
+
+,{
+CHECK_ERR( BYTE_COUNT_PARAM_NOT_INTEGRAL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter specifying the byte count is not an integral type"
+}
+
+,{
+CHECK_ERR( BYTE_COUNT_WITH_SIZE_ATTR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"[byte_count] cannot be specified on a parameter with size attributes"
+}
+
+,{
+CHECK_ERR( CASE_EXPR_NOT_CONST)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[case] expression is not constant"
+}
+
+,{
+CHECK_ERR( CASE_EXPR_NOT_INT)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[case] expression is not of integral type"
+}
+
+,{
+CHECK_ERR( CONTEXT_HANDLE_VOID_PTR )
+ MAKE_E_MASK( MS_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"specifying [context_handle] on a type other than void * requires /ms_ext"
+}
+
+,{
+CHECK_ERR( ERROR_STATUS_T_REPEATED)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"cannot specify more than one parameter with each of comm_status/fault_status"
+}
+
+,{
+CHECK_ERR( E_STAT_T_MUST_BE_PTR_TO_E )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"comm_status/fault_status parameter must be an [out] only pointer parameter"
+}
+
+,{
+CHECK_ERR( ENDPOINT_SYNTAX)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"endpoint syntax error"
+}
+
+,{
+CHECK_ERR( INAPPLICABLE_ATTRIBUTE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"inapplicable attribute"
+}
+
+,{
+CHECK_ERR( ALLOCATE_INVALID)
+ MAKE_E_MASK( MS_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"[allocate] requires /ms_ext"
+}
+
+,{
+CHECK_ERR( INVALID_ALLOCATE_MODE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"invalid [allocate] mode"
+}
+
+,{
+CHECK_ERR( INVALID_SIZE_ATTR_ON_STRING)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"length attributes cannot be applied with string attribute"
+}
+
+,{
+CHECK_ERR( LAST_AND_LENGTH)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[last_is] and [length_is] cannot be specified at the same time"
+}
+
+,{
+CHECK_ERR( MAX_AND_SIZE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[max_is] and [size_is] cannot be specified at the same time"
+}
+
+,{
+CHECK_ERR( NO_SWITCH_IS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"no [switch_is] attribute specified at use of union"
+}
+
+,{
+CHECK_ERR( NO_UUID_SPECIFIED)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"no [uuid] specified"
+}
+
+,{
+CHECK_ERR( UUID_LOCAL_BOTH_SPECIFIED)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 2 )
+,"[uuid] ignored on [local] interface"
+}
+
+,{
+CHECK_ERR( SIZE_LENGTH_TYPE_MISMATCH )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"type mismatch between length and size attribute expressions"
+}
+
+,{
+CHECK_ERR( STRING_NOT_ON_BYTE_CHAR)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[string] attribute must be specified \"byte\" \"char\" or \"wchar_t\" array or pointer"
+}
+
+,{
+CHECK_ERR( SWITCH_TYPE_MISMATCH )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"mismatch between the type of the [switch_is] expression and the switch type of the union"
+}
+
+,{
+CHECK_ERR( TRANSMIT_AS_CTXT_HANDLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[transmit_as] must not be applied to a type that derives from a context handle"
+}
+
+,{
+CHECK_ERR( TRANSMIT_AS_NON_RPCABLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[transmit_as] must specify a transmissible type"
+}
+
+,{
+CHECK_ERR( TRANSMIT_AS_POINTER )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"transmitted type must not be a pointer or derive from a pointer"
+}
+
+,{
+CHECK_ERR( TRANSMIT_TYPE_CONF )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"presented type must not derive from a conformant/varying array, its pointer equivalent or a conformant/varying structure"
+}
+
+,{
+CHECK_ERR( UUID_FORMAT)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[uuid] format is incorrect"
+}
+
+,{
+CHECK_ERR( UUID_NOT_HEX)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"uuid is not a hex number"
+}
+
+,{
+CHECK_ERR( OPTIONAL_PARAMS_MUST_BE_LAST)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"optional parameters must come at the end of the parameter list"
+}
+
+,{
+CHECK_ERR( DLLNAME_REQUIRED )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[dllname] required when [entry] is used:"
+}
+
+,{
+CHECK_ERR( INVALID_USE_OF_BINDABLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[bindable] is invalid without [propget], [propput], or [propputref]"
+}
+
+,{
+CHECK_ERR( ACF_INTERFACE_MISMATCH)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"interface name specified in the ACF file does not match that specified in the IDL file"
+}
+
+,{
+CHECK_ERR( CONFLICTING_ATTR)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"duplicated attribute"
+}
+
+,{
+CHECK_ERR( INVALID_COMM_STATUS_PARAM )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter with [comm_status] or [fault_status] attribute must be a pointer to type error_status_t"
+}
+
+,{
+CHECK_ERR( LOCAL_PROC_IN_ACF)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"a [local] procedure cannot be specified in ACF file"
+}
+
+,{
+CHECK_ERR( TYPE_HAS_NO_HANDLE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"specified type is not defined as a handle"
+}
+
+,{
+CHECK_ERR( UNDEFINED_PROC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"procedure undefined"
+}
+
+,{
+CHECK_ERR( UNDEF_PARAM_IN_IDL)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"this parameter does not exist in the IDL file"
+}
+
+,{
+CHECK_ERR( ARRAY_BOUNDS_CONSTRUCT_BAD )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"this array bounds construct is not supported"
+}
+
+,{
+CHECK_ERR( ILLEGAL_ARRAY_BOUNDS)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"array bound specification is illegal"
+}
+
+,{
+CHECK_ERR( ILLEGAL_CONFORMANT_ARRAY)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"pointer to a conformant array or an array that contains a conformant array is not supported"
+}
+
+,{
+CHECK_ERR( UNSIZED_ARRAY)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"pointee / array does not derive any size"
+}
+
+,{
+CHECK_ERR( NOT_FIXED_ARRAY)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"only fixed arrays and SAFEARRAYs are legal in a type library"
+}
+
+,{
+CHECK_ERR( SAFEARRAY_USE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"SAFEARRAYs are only legal inside a library block"
+}
+
+,{
+CHECK_ERR( CHAR_CONST_NOT_TERMINATED )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"badly formed character constant"
+}
+
+,{
+CHECK_ERR( EOF_IN_COMMENT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"end of file found in comment"
+}
+
+,{
+CHECK_ERR( EOF_IN_STRING )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"end of file found in string"
+}
+
+,{
+CHECK_ERR( ID_TRUNCATED )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 4 )
+,"identifier length exceeds 31 characters"
+}
+
+,{
+CHECK_ERR( NEWLINE_IN_STRING )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"end of line found in string"
+}
+
+,{
+CHECK_ERR( STRING_TOO_LONG )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"string constant exceeds limit of 255 characters"
+}
+
+,{
+CHECK_ERR( IDENTIFIER_TOO_LONG )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"identifier exceeds limit of 255 characters and has been truncated"
+}
+
+,{
+CHECK_ERR( CONSTANT_TOO_BIG )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"constant too big"
+}
+
+,{
+CHECK_ERR( ERROR_OPENING_FILE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"error in opening file"
+}
+
+,{
+CHECK_ERR( ERR_BIND )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"error binding to function"
+}
+
+,{
+CHECK_ERR( ERR_INIT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"error initializing OLE"
+}
+
+,{
+CHECK_ERR( ERR_LOAD )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"error loading library"
+}
+
+,{
+CHECK_ERR( UNIQUE_FULL_PTR_OUT_ONLY )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[out] only parameter must not derive from a top-level [unique] or [ptr] pointer/array"
+}
+
+,{
+CHECK_ERR( BAD_ATTR_NON_RPC_UNION )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"attribute is not applicable to this non-rpcable union"
+}
+
+,{
+CHECK_ERR( SIZE_SPECIFIER_CANT_BE_OUT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"expression used for a size attribute must not derive from an [out] only parameter"
+}
+
+,{
+CHECK_ERR( LENGTH_SPECIFIER_CANT_BE_OUT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"expression used for a length attribute for an [in] parameter cannot derive from an [out] only parameter"
+}
+
+,{
+CHECK_ERR( BAD_CON_INT )
+ MAKE_E_MASK( C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"use of \"int\" needs /c_ext"
+}
+
+,{
+CHECK_ERR( BAD_CON_FIELD_VOID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"struct/union field must not be \"void\""
+}
+
+,{
+CHECK_ERR( BAD_CON_ARRAY_VOID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"array element must not be \"void\""
+}
+
+,{
+CHECK_ERR( BAD_CON_MSC_CDECL )
+ MAKE_E_MASK( C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"use of type qualifiers and/or modifiers needs /c_ext"
+}
+
+,{
+CHECK_ERR( BAD_CON_FIELD_FUNC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"struct/union field must not derive from a function"
+}
+
+,{
+CHECK_ERR( BAD_CON_ARRAY_FUNC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"array element must not be a function"
+}
+
+,{
+CHECK_ERR( BAD_CON_PARAM_FUNC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter must not be a function"
+}
+
+,{
+CHECK_ERR( BAD_CON_BIT_FIELDS )
+ MAKE_E_MASK( C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"struct/union with bit fields needs /c_ext"
+}
+
+,{
+CHECK_ERR( BAD_CON_BIT_FIELD_NON_ANSI)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 4 )
+,"bit field specification on a type other that \"int\" is a non-ANSI-compatible extension"
+}
+
+,{
+CHECK_ERR( BAD_CON_BIT_FIELD_NOT_INTEGRAL)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"bit field specification can be applied only to simple, integral types"
+}
+
+,{
+CHECK_ERR( BAD_CON_CTXT_HDL_FIELD )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"struct/union field must not derive from handle_t or a context_handle"
+}
+
+,{
+CHECK_ERR( BAD_CON_CTXT_HDL_ARRAY )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"array element must not derive from handle_t or a context-handle"
+}
+
+,{
+CHECK_ERR( BAD_CON_NON_RPC_UNION )
+ MAKE_E_MASK( C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"this specification of union needs /c_ext"
+}
+
+,{
+CHECK_ERR( NON_RPC_PARAM_INT )
+ MAKE_E_MASK( MS_OR_C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter deriving from an \"int\" must have size specifier \"small\", \"short\", or \"long\" with the \"int\""
+}
+
+,{
+CHECK_ERR( NON_RPC_PARAM_VOID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"type of the parameter cannot derive from void or void *"
+}
+
+,{
+CHECK_ERR( NON_RPC_PARAM_BIT_FIELDS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter deriving from a struct/union containing bit fields is not supported"
+}
+
+,{
+CHECK_ERR( NON_RPC_PARAM_CDECL )
+ MAKE_E_MASK( C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"use of a parameter deriving from a type containing type-modifiers/type-qualifiers needs /c_ext"
+}
+
+,{
+CHECK_ERR( NON_RPC_PARAM_FUNC_PTR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter must not derive from a pointer to a function"
+}
+
+,{
+CHECK_ERR( NON_RPC_UNION )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter must not derive from a non-rpcable union"
+}
+
+,{
+CHECK_ERR( NON_RPC_RTYPE_INT )
+ MAKE_E_MASK( MS_OR_C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"return type derives from an \"int\". You must use size specifiers with the \"int\""
+}
+
+,{
+CHECK_ERR( NON_RPC_RTYPE_VOID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"return type must not derive from a void pointer"
+}
+
+,{
+CHECK_ERR( NON_RPC_RTYPE_BIT_FIELDS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"return type must not derive from a struct/union containing bit-fields"
+}
+
+,{
+CHECK_ERR( NON_RPC_RTYPE_UNION )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"return type must not derive from a non-rpcable union"
+}
+
+,{
+CHECK_ERR( NON_RPC_RTYPE_FUNC_PTR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"return type must not derive from a pointer to a function"
+}
+
+,{
+CHECK_ERR( COMPOUND_INITS_NOT_SUPPORTED )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"compound initializers are not supported"
+}
+
+,{
+CHECK_ERR( ACF_IN_IDL_NEEDS_APP_CONFIG )
+ MAKE_E_MASK( APP_CONFIG_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"ACF attributes in the IDL file need the /app_config switch"
+}
+
+,{
+CHECK_ERR( SINGLE_LINE_COMMENT )
+ MAKE_E_MASK( MS_OR_C_EXT_SET , C_MSG, CLASS_WARN, 1 )
+,"single line comment needs /ms_ext or /c_ext"
+}
+
+,{
+CHECK_ERR( VERSION_FORMAT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[version] format is incorrect"
+}
+
+,{
+CHECK_ERR( SIGNED_ILLEGAL )
+ MAKE_E_MASK( MS_OR_C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"\"signed\" needs /ms_ext or /c_ext"
+}
+
+,{
+CHECK_ERR( ASSIGNMENT_TYPE_MISMATCH )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"mismatch in assignment type"
+}
+
+,{
+CHECK_ERR( ILLEGAL_OSF_MODE_DECL )
+ MAKE_E_MASK( MS_OR_C_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"declaration must be of the form: const <type><declarator> = <initializing expression> "
+}
+
+,{
+CHECK_ERR( OSF_DECL_NEEDS_CONST )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"declaration must have \"const\""
+}
+
+,{
+CHECK_ERR( COMP_DEF_IN_PARAM_LIST )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"struct/union/enum must not be defined in a parameter type specification"
+}
+
+,{
+CHECK_ERR( ALLOCATE_NOT_ON_PTR_TYPE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[allocate] attribute must be applied only on non-void pointer types"
+}
+
+,{
+CHECK_ERR( ARRAY_OF_UNIONS_ILLEGAL )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"array or equivalent pointer construct cannot derive from a non-encapsulated union"
+}
+
+,{
+CHECK_ERR( BAD_CON_E_STAT_T_FIELD )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field must not derive from an error_status_t type"
+}
+
+,{
+CHECK_ERR( CASE_LABELS_MISSING_IN_UNION )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"union has at least one arm without a case label"
+}
+
+,{
+CHECK_ERR( BAD_CON_PARAM_RT_IGNORE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"parameter or return type must not derive from a type that has [ignore] applied to it"
+}
+
+,{
+CHECK_ERR( MORE_THAN_ONE_PTR_ATTR )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"pointer already has a pointer-attribute applied to it"
+}
+
+,{
+CHECK_ERR( RECURSION_THRU_REF )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field/parameter must not derive from a structure that is recursive through a ref pointer"
+}
+
+,{
+CHECK_ERR( BAD_CON_FIELD_VOID_PTR )
+ MAKE_E_MASK( C_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"use of field deriving from a void pointer needs /c_ext"
+}
+
+,{
+CHECK_ERR( INVALID_OSF_ATTRIBUTE )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"use of this attribute needs /ms_ext"
+}
+
+,{
+CHECK_ERR( INVALID_NEWTLB_ATTRIBUTE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"this attribute only allowed with new format type libraries"
+}
+
+,{
+CHECK_ERR( WCHAR_T_INVALID_OSF )
+ MAKE_E_MASK( MS_OR_C_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"use of wchar_t needs /ms_ext or /c_ext"
+}
+
+,{
+CHECK_ERR( BAD_CON_UNNAMED_FIELD )
+ MAKE_E_MASK( MS_OR_C_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"unnamed fields need /ms_ext or /c_ext"
+}
+
+,{
+CHECK_ERR( BAD_CON_UNNAMED_FIELD_NO_STRUCT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"unnamed fields can derive only from struct/union types"
+}
+
+,{
+CHECK_ERR( BAD_CON_UNION_FIELD_CONF )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field of a union cannot derive from a conformant/varying array or its pointer equivalent"
+}
+
+,{
+CHECK_ERR( PTR_WITH_NO_DEFAULT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"no [pointer_default] attribute specified, assuming [ptr] for all unattributed pointers in interface"
+}
+
+,{
+CHECK_ERR( RHS_OF_ASSIGN_NOT_CONST )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"initializing expression must resolve to a constant expression"
+}
+
+,{
+CHECK_ERR( SWITCH_IS_TYPE_IS_WRONG )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"attribute expression must be of type integer, char, boolean or enum"
+}
+
+,{
+CHECK_ERR( ILLEGAL_CONSTANT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"illegal constant"
+}
+
+,{
+CHECK_ERR( IGNORE_UNIMPLEMENTED_ATTRIBUTE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"attribute not implemented; ignored"
+}
+
+,{
+CHECK_ERR( BAD_CON_REF_RT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"return type must not derive from a [ref] pointer"
+}
+
+,{
+CHECK_ERR( ATTRIBUTE_ID_MUST_BE_VAR )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"attribute expression must be a variable name or a pointer dereference expression in this mode. You must specify the /ms_ext switch"
+}
+
+,{
+CHECK_ERR( RECURSIVE_UNION )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter must not derive from a recursive non-encapsulated union"
+}
+
+,{
+CHECK_ERR( BINDING_HANDLE_IS_OUT_ONLY )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"binding-handle parameter cannot be [out] only"
+}
+
+,{
+CHECK_ERR( PTR_TO_HDL_UNIQUE_OR_FULL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"pointer to a handle cannot be [unique] or [ptr]"
+}
+
+,{
+CHECK_ERR( HANDLE_T_NO_TRANSMIT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter that is not a binding handle must not derive from handle_t"
+}
+
+,{
+CHECK_ERR( UNEXPECTED_END_OF_FILE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"unexpected end of file found"
+}
+
+,{
+CHECK_ERR( HANDLE_T_XMIT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"type deriving from handle_t must not have [transmit_as] applied to it"
+}
+
+,{
+CHECK_ERR( CTXT_HDL_GENERIC_HDL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[context_handle] must not be applied to a type that has [handle] applied to it"
+}
+
+,{
+CHECK_ERR( GENERIC_HDL_VOID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[handle] must not be specified on a type deriving from void or void *"
+}
+
+,{
+CHECK_ERR( NO_EXPLICIT_IN_OUT_ON_PARAM )
+ MAKE_E_MASK( MS_OR_C_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter must have either [in], [out] or [in,out] in this mode. You must specify /ms_ext or /c_ext"
+}
+
+,{
+CHECK_ERR( TRANSMIT_AS_VOID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[transmit_as] must not be specified on \"void\""
+}
+
+,{
+CHECK_ERR( VOID_NON_FIRST_PARAM )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"\"void\" must be specified on the first and only parameter specification"
+}
+
+,{
+CHECK_ERR( SWITCH_IS_ON_NON_UNION )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[switch_is] must be specified only on a type deriving from a non-encapsulated union"
+}
+
+,{
+CHECK_ERR( STRINGABLE_STRUCT_NOT_SUPPORTED )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"stringable structures are not implemented in this version"
+}
+
+,{
+CHECK_ERR( SWITCH_TYPE_TYPE_BAD )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"switch type can only be integral, char, boolean or enum"
+}
+
+,{
+CHECK_ERR( GENERIC_HDL_HANDLE_T )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[handle] must not be specified on a type deriving from handle_t"
+}
+
+,{
+CHECK_ERR( HANDLE_T_CANNOT_BE_OUT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"parameter deriving from handle_t must not be an [out] parameter"
+}
+
+,{
+CHECK_ERR( SIZE_LENGTH_SW_UNIQUE_OR_FULL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 2 )
+,"attribute expression derives from [unique] or [ptr] pointer dereference"
+}
+
+,{
+CHECK_ERR( CPP_QUOTE_NOT_OSF )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"\"cpp_quote\" requires /ms_ext"
+}
+
+,{
+CHECK_ERR( QUOTED_UUID_NOT_OSF )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"quoted uuid requires /ms_ext"
+}
+
+,{
+CHECK_ERR( RETURN_OF_UNIONS_ILLEGAL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"return type cannot derive from a non-encapsulated union"
+}
+
+,{
+CHECK_ERR( RETURN_OF_CONF_STRUCT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"return type cannot derive from a conformant structure"
+}
+
+,{
+CHECK_ERR( XMIT_AS_GENERIC_HANDLE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[transmit_as] must not be applied to a type deriving from a generic handle"
+}
+
+,{
+CHECK_ERR( GENERIC_HANDLE_XMIT_AS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[handle] must not be applied to a type that has [transmit_as] applied to it"
+}
+
+,{
+CHECK_ERR( INVALID_CONST_TYPE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"type specified for the const declaration is invalid"
+}
+
+,{
+CHECK_ERR( INVALID_SIZEOF_OPERAND )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"operand to the sizeof operator is not supported"
+}
+
+,{
+CHECK_ERR( NAME_ALREADY_USED )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"this name already used as a const identifier name"
+}
+
+,{
+CHECK_ERR( ERROR_STATUS_T_ILLEGAL )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"inconsistent redefinition of type error_status_t"
+}
+
+,{
+CHECK_ERR( CASE_VALUE_OUT_OF_RANGE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"[case] value out of range of switch type"
+}
+
+,{
+CHECK_ERR( WCHAR_T_NEEDS_MS_EXT_TO_RPC )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"parameter deriving from wchar_t needs /ms_ext"
+}
+
+,{
+CHECK_ERR( INTERFACE_ONLY_CALLBACKS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"this interface has only callbacks"
+}
+
+,{
+CHECK_ERR( REDUNDANT_ATTRIBUTE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"redundantly specified attribute; ignored"
+}
+
+,{
+CHECK_ERR( CTXT_HANDLE_USED_AS_IMPLICIT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"context handle type used for an implicit handle"
+}
+
+,{
+CHECK_ERR( CONFLICTING_ALLOCATE_OPTIONS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"conflicting options specified for [allocate]"
+}
+
+,{
+CHECK_ERR( ERROR_WRITING_FILE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"error while writing to file"
+}
+
+,{
+CHECK_ERR( NO_SWITCH_TYPE_AT_DEF )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"no switch type found at definition of union, using the [switch_is] type"
+}
+
+,{
+CHECK_ERR( ERRORS_PASS1_NO_PASS2 )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"semantic check incomplete due to previous errors"
+}
+
+,{
+CHECK_ERR( HANDLES_WITH_CALLBACK )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"handle parameter or return type is not supported on a [callback] procedure"
+}
+
+,{
+CHECK_ERR( PTR_NOT_FULLY_IMPLEMENTED )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"[ptr] does not support aliasing in this version"
+}
+
+,{
+CHECK_ERR( PARAM_ALREADY_CTXT_HDL )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"parameter already defined as a context handle"
+}
+
+,{
+CHECK_ERR( CTXT_HDL_HANDLE_T )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[context_handle] must not derive from handle_t"
+}
+
+,{
+CHECK_ERR( ARRAY_SIZE_EXCEEDS_64K )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"array size exceeds 65536 bytes"
+}
+
+,{
+CHECK_ERR( STRUCT_SIZE_EXCEEDS_64K )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"struct size exceeds 65536 bytes"
+}
+
+,{
+CHECK_ERR( NE_UNION_FIELD_NE_UNION )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field of a non-encapsulated union cannot be another non-encapsulated union"
+}
+
+,{
+CHECK_ERR( PTR_ATTRS_ON_EMBEDDED_ARRAY )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"pointer attribute(s) applied on an embedded array; ignored"
+}
+
+,{
+CHECK_ERR( ALLOCATE_ON_TRANSMIT_AS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[allocate] is illegal on a type that has [transmit_as] applied to it"
+}
+
+,{
+CHECK_ERR( SWITCH_TYPE_REQD_THIS_IMP_MODE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[switch_type] must be specified in this import mode"
+}
+
+,{
+CHECK_ERR( IMPLICIT_HDL_ASSUMED_GENERIC )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"[implicit_handle] type undefined; assuming generic handle"
+}
+
+,{
+CHECK_ERR( E_STAT_T_ARRAY_ELEMENT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"array element must not derive from error_status_t"
+}
+
+,{
+CHECK_ERR( ALLOCATE_ON_HANDLE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[allocate] illegal on a type deriving from a primitive/generic/context handle"
+}
+
+,{
+CHECK_ERR( TRANSMIT_AS_ON_E_STAT_T )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"transmitted or presented type must not derive from error_status_t"
+}
+
+,{
+CHECK_ERR( IGNORE_ON_DISCRIMINANT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"discriminant of a union must not derive from a field with [ignore] applied to it"
+}
+
+,{
+CHECK_ERR( NOCODE_WITH_SERVER_STUBS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 4 )
+,"[nocode] ignored for server side since \"/server none\" not specified"
+}
+
+,{
+CHECK_ERR( NO_REMOTE_PROCS_NO_STUBS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"no remote procedures specified in non-[local] interface; no client/server stubs will be generated"
+}
+
+,{
+CHECK_ERR( TWO_DEFAULT_CASES )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"too many default cases specified for encapsulated union"
+}
+
+,{
+CHECK_ERR( TWO_DEFAULT_INTERFACES )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"too many default interfaces specified for coclass"
+}
+
+,{
+CHECK_ERR( DEFAULTVTABLE_REQUIRES_SOURCE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"items with [defaultvtable] must also have [source]"
+}
+
+,{
+CHECK_ERR( UNION_NO_FIELDS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"union specification with no fields is illegal"
+}
+
+,{
+CHECK_ERR( VALUE_OUT_OF_RANGE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"value out of range"
+}
+
+,{
+CHECK_ERR( CTXT_HDL_NON_PTR )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[context_handle] must be applied on a pointer type"
+}
+
+,{
+CHECK_ERR( NON_RPC_RTYPE_HANDLE_T )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"return type must not derive from handle_t"
+}
+
+,{
+CHECK_ERR( GEN_HDL_CTXT_HDL )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[handle] must not be applied to a type deriving from a context handle"
+}
+
+,{
+CHECK_ERR( NON_RPC_FIELD_INT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field deriving from an \"int\" must have size specifier \"small\", \"short\", or \"long\" with the \"int\""
+}
+
+,{
+CHECK_ERR( NON_RPC_FIELD_PTR_TO_VOID )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field must not derive from a void or void *"
+}
+
+,{
+CHECK_ERR( NON_RPC_FIELD_BIT_FIELDS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field must not derive from a struct containing bit-fields"
+}
+
+,{
+CHECK_ERR( NON_RPC_FIELD_NON_RPC_UNION )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field must not derive from a non-rpcable union"
+}
+
+,{
+CHECK_ERR( NON_RPC_FIELD_FUNC_PTR )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"field must not derive from a pointer to a function"
+}
+
+,{
+CHECK_ERR( PROC_PARAM_FAULT_STATUS)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"cannot use [fault_status] on both a parameter and a return type"
+}
+
+,{
+CHECK_ERR( NON_OI_BIG_RETURN )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"return type too complicated for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( NON_OI_BIG_GEN_HDL )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"generic handle type too large for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( ALLOCATE_IN_OUT_PTR )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 4 )
+,"[allocate(all_nodes)] on an [in,out] parameter may orphan the original memory"
+}
+
+,{
+CHECK_ERR( REF_PTR_IN_UNION)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"cannot have a [ref] pointer as a union arm"
+}
+
+,{
+CHECK_ERR( NON_OI_CTXT_HDL )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"return of context handles not supported for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( NON_OI_ERR_STATS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"use of [comm_status] or [fault_status] not supported for /Oi, using /Os"
+}
+
+,{
+CHECK_ERR( NON_OI_UNK_REP_AS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"use of an unknown type for [represent_as] or [user_marshal] not supported for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( NON_OI_XXX_AS_ON_RETURN )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"array types with [transmit_as] or [represent_as] not supported on return type for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( NON_OI_XXX_AS_BY_VALUE )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"array types with [transmit_as] or [represent_as] not supported pass-by-value for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( CALLBACK_NOT_OSF )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"[callback] requires /ms_ext"
+}
+
+,{
+CHECK_ERR( CIRCULAR_INTERFACE_DEPENDENCY )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"circular interface dependency"
+}
+
+,{
+CHECK_ERR( NOT_VALID_AS_BASE_INTF )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"only IUnknown may be used as the root interface"
+}
+
+,{
+CHECK_ERR( IID_IS_NON_POINTER )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[IID_IS] may only be applied to pointers to interfaces"
+}
+
+,{
+CHECK_ERR( INTF_NON_POINTER )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"interfaces may only be used in pointer-to-interface constructs"
+}
+
+,{
+CHECK_ERR( PTR_INTF_NO_GUID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"interface pointers must have a UUID/IID"
+}
+
+,{
+CHECK_ERR( OUTSIDE_OF_INTERFACE )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"definitions and declarations outside of interface body requires /ms_ext"
+}
+
+,{
+CHECK_ERR( MULTIPLE_INTF_NON_OSF )
+ MAKE_E_MASK( MS_EXT_SET , C_MSG, CLASS_ERROR, NOWARN )
+,"multiple interfaces in one file requires /ms_ext"
+}
+
+,{
+CHECK_ERR( CONFLICTING_INTF_HANDLES )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"only one of [implicit_handle], [auto_handle], or [explicit_handle] allowed"
+}
+
+,{
+CHECK_ERR( IMPLICIT_HANDLE_NON_HANDLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[implicit_handle] references a type which is not a handle"
+}
+
+,{
+CHECK_ERR( OBJECT_PROC_MUST_BE_WIN32 )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[object] procs may only be used with \"/env win32\" or \"/env powermac\""
+}
+
+,{
+CHECK_ERR( NON_OI_16BIT_CALLBACK )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"[callback] with -env dos/win16 not supported for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( NON_OI_TOPLEVEL_FLOAT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"float/double not supported as top-level parameter for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( CTXT_HDL_MUST_BE_DIRECT_RETURN )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"pointers to context handles may not be used as return values"
+}
+
+,{
+CHECK_ERR( OBJECT_PROC_NON_HRESULT_RETURN )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"procedures in an object interface must return an HRESULT"
+}
+
+,{
+CHECK_ERR( DUPLICATE_UUID )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"duplicate UUID. Same as"
+}
+
+,{
+CHECK_ERR( ILLEGAL_INTERFACE_DERIVATION )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"[object] interfaces must derive from another [object] interface such as IUnknown"
+}
+
+,{
+CHECK_ERR( ILLEGAL_BASE_INTERFACE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"interfaces must derive from another interface"
+}
+
+,{
+CHECK_ERR( IID_IS_EXPR_NON_POINTER )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[IID_IS] expression must be a pointer to IID structure"
+}
+
+,{
+CHECK_ERR( CALL_AS_NON_LOCAL_PROC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[call_as] type must be a [local] procedure"
+}
+
+,{
+CHECK_ERR( CALL_AS_UNSPEC_IN_OBJECT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"undefined [call_as] must not be used in an object interface"
+}
+
+,{
+CHECK_ERR( ENCODE_AUTO_HANDLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[auto_handle] may not be used with [encode] or [decode]"
+}
+
+,{
+CHECK_ERR( RPC_PROC_IN_ENCODE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"normal procs are not allowed in an interface with [encode] or [decode]"
+}
+
+,{
+CHECK_ERR( ENCODE_CONF_OR_VAR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"top-level conformance or variance not allowed with [encode] or [decode]"
+}
+
+,{
+CHECK_ERR( CONST_ON_OUT_PARAM )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"[out] parameters may not have \"const\""
+}
+
+,{
+CHECK_ERR( CONST_ON_RETVAL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"return values may not have \"const\""
+}
+
+,{
+CHECK_ERR( INVALID_USE_OF_RETVAL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"invalid use of \"retval\" attribute"
+}
+
+,{
+CHECK_ERR( MULTIPLE_CALLING_CONVENTIONS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"multiple calling conventions illegal"
+}
+
+,{
+CHECK_ERR( INAPPROPRIATE_ON_OBJECT_PROC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"attribute illegal on [object] procedure"
+}
+
+,{
+CHECK_ERR( NON_INTF_PTR_PTR_OUT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"[out] interface pointers must use double indirection"
+}
+
+,{
+CHECK_ERR( CALL_AS_USED_MULTIPLE_TIMES )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"procedure used twice as the caller in [call_as]"
+}
+
+,{
+CHECK_ERR( OBJECT_CALL_AS_LOCAL )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"[call_as] target must have [local] in an object interface"
+}
+
+,{
+CHECK_ERR( CODE_NOCODE_CONFLICT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"[code] and [nocode] may not be used together"
+}
+
+,{
+CHECK_ERR( MAYBE_NO_OUT_RETVALS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[maybe] or [async] procedures may not have a return value or [out] params"
+}
+
+,{
+CHECK_ERR( FUNC_NON_POINTER )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"pointer to function must be used"
+}
+
+,{
+CHECK_ERR( FUNC_NON_RPC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"functions may not be passed in an RPC operation"
+}
+
+,{
+CHECK_ERR( NON_OI_RETVAL_64BIT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"hyper/double not supported as return value for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( MISMATCHED_PRAGMA_POP )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"#pragma pack( pop ) without matching #pragma pack( push )"
+}
+
+,{
+CHECK_ERR( WRONG_TYPE_IN_STRING_STRUCT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"stringable structure fields must be byte/char/wchar_t"
+}
+
+,{
+CHECK_ERR( NON_OI_NOTIFY )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"[notify] not supported for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( HANDLES_WITH_OBJECT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"handle parameter or return type is not supported on a procedure in an [object] interface"
+}
+
+,{
+CHECK_ERR( NON_ANSI_MULTI_CONF_ARRAY )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 1 )
+,"ANSI C only allows the leftmost array bound to be unspecified"
+}
+
+,{
+CHECK_ERR( NON_OI_NOTIFY )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"by-value union parameters not supported for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( OBJECT_WITH_VERSION )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"[version] attribute is ignored on an [object] interface"
+}
+
+,{
+CHECK_ERR( SIZING_ON_FIXED_ARRAYS )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[size_is] or [max_is] attribute is invalid on a fixed array"
+}
+
+,{
+CHECK_ERR( PICKLING_INVALID_IN_OBJECT )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_ERROR, NOWARN )
+,"[encode] or [decode] are invalid in an [object] interface"
+}
+
+,{
+CHECK_ERR( TYPE_PICKLING_INVALID_IN_OSF )
+ MAKE_E_MASK( MS_EXT_SET, C_MSG, CLASS_ERROR, NOWARN )
+,"[encode] or [decode] on a type requires /ms_ext"
+}
+
+,{
+CHECK_ERR( INT_NOT_SUPPORTED_ON_INT16 )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"\"int\" not supported on /env win16 or /env dos"
+}
+
+,{
+CHECK_ERR( BSTRING_NOT_ON_PLAIN_PTR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"[bstring] may only be applied to a pointer to \"char\" or \"wchar_t\""
+}
+
+,{
+CHECK_ERR( INVALID_ON_OBJECT_PROC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"attribute invalid on a proc in an [object] interface :"
+}
+
+,{
+CHECK_ERR( INVALID_ON_OBJECT_INTF )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"attribute invalid on an [object] interface :"
+}
+
+,{
+CHECK_ERR( STACK_TOO_BIG )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 2 )
+,"too many parameters or stack too big for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( NO_ATTRS_ON_ACF_TYPEDEF )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 2 )
+,"no attributes on ACF file typedef, so no effect"
+}
+
+,{
+CHECK_ERR( NON_OI_WRONG_CALL_CONV )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"calling conventions other than __stdcall or __cdecl not supported for /Oi modes, using /Os"
+}
+
+,{
+CHECK_ERR( TOO_MANY_DELEGATED_PROCS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"More than 64 delegated methods not supported"
+}
+
+,{
+CHECK_ERR( NO_MAC_AUTO_HANDLES )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"auto handles not supported with -env mac or -env powermac"
+}
+
+,{
+CHECK_ERR( ILLEGAL_IN_MKTYPLIB_MODE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"statements outside library block are illegal in mktyplib compatability mode"
+}
+
+,{
+CHECK_ERR( ILLEGAL_USE_OF_MKTYPLIB_SYNTAX)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal syntax unless using mktyplib compatibility mode"
+}
+
+,{
+CHECK_ERR( ILLEGAL_SU_DEFINITION)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal definition, must use typedef in mktyplib compatibility mode"
+}
+
+,{
+CHECK_ERR( INTF_EXPLICIT_PTR_ATTR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"explicit pointer attribute [ptr] [ref] ignored for interface pointers"
+}
+
+,{
+CHECK_ERR( NO_OI_ON_MPPC )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"Oi modes not implemented for PowerMac, switching to Os"
+}
+
+,{
+CHECK_ERR( ILLEGAL_EXPRESSION_TYPE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal expression type used in attribute"
+}
+
+,{
+CHECK_ERR( ILLEGAL_PIPE_TYPE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal type used in pipe"
+}
+
+,{
+CHECK_ERR( REQUIRES_OI2 )
+ MAKE_E_MASK( ERR_ALWAYS , C_MSG, CLASS_WARN, 2 )
+,"procedure uses pipes, using /Oicf"
+}
+
+,{
+CHECK_ERR( CONFLICTING_OPTIMIZATION_REQUIREMENTS )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"procedure's parameters are too complex to include pipes - simplify other parameters or don't use pipes"
+}
+
+,{
+CHECK_ERR( ILLEGAL_PIPE_EMBEDDING )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"pipe cannot be a members of a struct or a union, nor an array element"
+}
+
+,{
+CHECK_ERR( ILLEGAL_PIPE_CONTEXT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"invalid pipe usage"
+}
+
+,{
+CHECK_ERR( CMD_REQUIRES_I2 )
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"feature requires the advanced interpreted optimization option, use -Oicf :"
+}
+
+,{
+CHECK_ERR( REQUIRES_I2 )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 3 )
+,"feature requires the advanced interpreted optimization option, use -Oicf :"
+}
+
+#if defined(TARGET_RKK)
+,{
+CHECK_ERR( CMD_REQUIRES_NT40 )
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"feature invalid for the specified target system, use -target NT40 :"
+}
+
+,{
+CHECK_ERR( CMD_REQUIRES_NT351 )
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"feature invalid for the specified target system, use -target NT351 :"
+}
+
+,{
+CHECK_ERR( REQUIRES_NT40 )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"feature invalid for the specified target system, use -target NT40"
+}
+
+,{
+CHECK_ERR( REQUIRES_NT351 )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"feature invalid for the specified target system, use -target NT351"
+}
+#endif // TARGET_RKK
+
+,{
+CHECK_ERR( CMD_OI1_PHASED_OUT )
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, 1 )
+,"the optimization option is being phased out, use -Oic :"
+}
+
+,{
+CHECK_ERR( CMD_OI2_OBSOLETE )
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_WARN, 1 )
+,"the optimization option is being phased out, use -Oicf :"
+}
+
+,{
+CHECK_ERR( OI1_PHASED_OUT )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"the optimization option is being phased out, use -ic"
+}
+
+,{
+CHECK_ERR( OI2_OBSOLETE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_WARN, 1 )
+,"the optimization option is being phased out, use -icf"
+}
+
+,{
+CHECK_ERR( ILLEGAL_ARG_VALUE)
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal argument value"
+}
+
+,{
+CHECK_ERR( CONSTANT_TYPE_MISMATCH )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal expression type in constant"
+}
+
+,{
+CHECK_ERR( ENUM_TYPE_MISMATCH )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"illegal expression type in enum"
+}
+
+,{
+CHECK_ERR( UNSATISFIED_FORWARD )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"unsatisfied forward declaration"
+}
+
+,{
+CHECK_ERR( CONTRADICTORY_SWITCHES )
+ MAKE_E_MASK( ERR_ALWAYS, D_MSG, CLASS_ERROR, NOWARN )
+,"switches are contradictory "
+}
+
+,{
+CHECK_ERR( NO_SWITCH_IS_HOOKOLE )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+,"MIDL cannot generate HOOKOLE information for the non-rpcable union"
+}
+
+,{
+CHECK_ERR( NO_CASE_EXPR )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+ ,"no case expression found for union"
+}
+
+,{
+CHECK_ERR( USER_MARSHAL_IN_OI )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+ ,"[user_marshal] and [wire_marshal] not supported with -Oi and -Oic flags, use -Os or -Oicf"
+}
+
+,{
+CHECK_ERR( PIPES_WITH_PICKLING )
+ MAKE_E_MASK( ERR_ALWAYS, C_MSG, CLASS_ERROR, NOWARN )
+ ,"pipes can't be used with data serialization, i.e. [encode] and/or [decode]"
+}
+
+}; /* end of array of structs initialization */
+
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/ct/errors.hxx b/public/sdk/rpc16/ct/errors.hxx
new file mode 100644
index 000000000..33049a1c3
--- /dev/null
+++ b/public/sdk/rpc16/ct/errors.hxx
@@ -0,0 +1,548 @@
+/*****************************************************************************/
+/** Microsoft LAN Manager **/
+/** Copyright(c) Microsoft Corp., 1987-1990 **/
+/*****************************************************************************/
+/*****************************************************************************
+File : errors.hxx
+Title : error include file
+Description : This file contains the definitions of errors generated
+ By the MIDL compiler.
+History :
+
+ VibhasC 23-Jul-1990 Created
+ NateO 20-Sep-1990 Safeguards against double inclusion
+
+*****************************************************************************/
+/****************************************************************************
+ *** D errors range :
+ *** 1000-1999
+ *** C errors range :
+ *** 2000-9999
+ ****************************************************************************/
+
+#ifndef __ERRORS_HXX__
+#define __ERRORS_HXX__
+
+// define the data structures needed for the error handler
+
+typedef struct _e_mask
+ {
+ unsigned char ucSwitchConfig;
+ unsigned char ucWarningLevel;
+ unsigned char ucErrorClass;
+ char cMessageType;
+ } E_MASK;
+
+// definition of mode switch configuration combinations
+
+#define ZZZ (0)
+#define ZZM (1 << 1)
+#define ZCZ (1 << 2)
+#define ZCM (1 << 3)
+#define AZZ (1 << 4)
+#define AZM (1 << 5)
+#define ACZ (1 << 6)
+#define ACM (1 << 7)
+
+// message type
+
+#define C_MSG ('C')
+#define D_MSG ('D')
+#define A_MSG ('A')
+
+// error class
+
+#define CLASS_ERROR (0)
+#define CLASS_WARN (1)
+#define CLASS_ADVICE (2)
+
+// extraction macros
+#define GET_ECLASS(x) ((x).ucErrorClass)
+#define GET_WL(x) ((x).ucWarningLevel)
+#define GET_SC(x) ((x).ucSwitchConfig)
+#define GET_MT(x) ((x).cMessageType)
+
+#define MAKE_E_MASK( sc, mt, ec, wl ) \
+ { sc, wl, ec, mt }
+
+#define D_ERROR_BASE 1000
+#define C_ERROR_BASE 2000
+#define A_ERROR_BASE 3000
+#define I_ERROR_BASE 9000
+
+enum _status_t
+ {
+ STATUS_OK
+ ,D_ERR_START = D_ERROR_BASE
+ ,NO_INPUT_FILE = D_ERR_START // no input file specified
+ ,INPUT_OPEN // error in opening file
+ ,INPUT_READ // error in positioning file
+ ,PREPROCESSOR_ERROR // error in preprocessing
+ ,PREPROCESSOR_EXEC // cant exec preprocessor
+ ,NO_PREPROCESSOR
+ ,PREPROCESSOR_INVALID
+ ,SWITCH_REDEFINED // redef of switch
+ ,UNKNOWN_SWITCH
+ ,UNKNOWN_ARGUMENT
+ ,UNIMPLEMENTED_SWITCH
+ ,MISSING_ARG
+ ,ILLEGAL_ARGUMENT
+ ,BAD_SWITCH_SYNTAX
+ ,NO_CPP_OVERRIDES
+ ,NO_WARN_OVERRIDES
+ ,INTERMEDIATE_FILE_CREATE
+ ,SERVER_AUX_FILE_NOT_SPECIFIED
+ ,OUT_OF_SYSTEM_FILE_HANDLES
+ ,BOTH_CSWTCH_SSWTCH
+ ,CANNOT_OPEN_RESP_FILE
+ ,ILLEGAL_CHAR_IN_RESP_FILE
+ ,MISMATCHED_PREFIX_PAIR
+ ,NESTED_RESP_FILE
+ ,D_ERR_MAX
+
+ ,C_ERR_START = C_ERROR_BASE
+
+ // general errors. The ones which are hard to pin down into any category.
+
+ ,ABSTRACT_DECL = C_ERR_START
+ ,ACTUAL_DECLARATION
+ ,C_STACK_OVERFLOW
+ ,DUPLICATE_DEFINITION
+ ,NO_HANDLE_DEFINED_FOR_PROC
+ ,OUT_OF_MEMORY
+ ,RECURSIVE_DEF
+ ,REDUNDANT_IMPORT
+ ,SPARSE_ENUM
+ ,UNDEFINED_SYMBOL
+ ,UNDEFINED_TYPE
+ ,UNRESOLVED_TYPE
+ ,WCHAR_CONSTANT_NOT_OSF
+ ,WCHAR_STRING_NOT_OSF
+ ,WCHAR_T_ILLEGAL
+ ,TYPELIB_NOT_LOADED
+ ,TWO_LIBRARIES
+ ,NO_IDISPATCH
+ ,ERR_TYPELIB
+ ,ERR_TYPEINFO
+ ,ERR_TYPELIB_GENERATION
+ ,DUPLICATE_IID
+ ,BAD_ENTRY_VALUE
+
+ // syntax related errors
+
+ ,ASSUMING_CHAR
+ ,DISCARDING_CHAR
+ ,BENIGN_SYNTAX_ERROR
+ ,SYNTAX_ERROR
+
+ // pragma related errors
+
+ ,UNKNOWN_PRAGMA_OPTION
+
+ // unimplemented messages
+
+ ,UNIMPLEMENTED_FEATURE
+ ,UNIMPLEMENTED_TYPE
+
+ // expression errors
+
+ ,EXPR_DEREF_ON_NON_POINTER
+ ,EXPR_DIV_BY_ZERO
+ ,EXPR_INCOMPATIBLE_TYPES
+ ,EXPR_INDEXING_NON_ARRAY
+ ,EXPR_LHS_NON_COMPOSITE
+ ,EXPR_NOT_CONSTANT
+ ,EXPR_NOT_EVALUATABLE
+ ,EXPR_NOT_IMPLEMENTED
+
+ // interface errors
+
+ ,NO_PTR_DEFAULT_ON_INTERFACE
+
+ // parameter related errors
+
+ ,DERIVES_FROM_PTR_TO_CONF
+ ,DERIVES_FROM_UNSIZED_STRING
+ ,NON_PTR_OUT
+ ,OPEN_STRUCT_AS_PARAM
+ ,OUT_CONTEXT_GENERIC_HANDLE
+ ,CTXT_HDL_TRANSMIT_AS
+ ,PARAM_IS_ELIPSIS
+ ,VOID_PARAM_WITH_NAME
+
+ // procedure related semantic errors
+
+ ,HANDLE_NOT_FIRST
+ ,PROC_PARAM_COMM_STATUS
+ ,LOCAL_ATTR_ON_PROC
+ ,ILLEGAL_USE_OF_PROPERTY_ATTRIBUTE
+ ,MULTIPLE_PROPERTY_ATTRIBUTES
+
+ // structure semantic errors
+
+ ,CONFORMANT_ARRAY_NOT_LAST
+
+ // union semantic errors
+
+ ,DUPLICATE_CASE
+ ,NO_UNION_DEFAULT
+
+ // attribute semantic errors
+
+ ,ATTRIBUTE_ID_UNRESOLVED
+ ,ATTR_MUST_BE_INT
+ ,BYTE_COUNT_INVALID
+ ,BYTE_COUNT_NOT_OUT_PTR
+ ,BYTE_COUNT_ON_CONF
+ ,BYTE_COUNT_PARAM_NOT_IN
+ ,BYTE_COUNT_PARAM_NOT_INTEGRAL
+ ,BYTE_COUNT_WITH_SIZE_ATTR
+ ,CASE_EXPR_NOT_CONST
+ ,CASE_EXPR_NOT_INT
+ ,CONTEXT_HANDLE_VOID_PTR
+ ,ERROR_STATUS_T_REPEATED
+ ,E_STAT_T_MUST_BE_PTR_TO_E
+ ,ENDPOINT_SYNTAX
+ ,INAPPLICABLE_ATTRIBUTE
+ ,ALLOCATE_INVALID
+ ,INVALID_ALLOCATE_MODE
+ ,INVALID_SIZE_ATTR_ON_STRING
+ ,LAST_AND_LENGTH
+ ,MAX_AND_SIZE
+ ,NO_SWITCH_IS
+ ,NO_UUID_SPECIFIED
+ ,UUID_LOCAL_BOTH_SPECIFIED
+ ,SIZE_LENGTH_TYPE_MISMATCH
+ ,STRING_NOT_ON_BYTE_CHAR
+ ,SWITCH_TYPE_MISMATCH
+ ,TRANSMIT_AS_CTXT_HANDLE
+ ,TRANSMIT_AS_NON_RPCABLE
+ ,TRANSMIT_AS_POINTER
+ ,TRANSMIT_TYPE_CONF
+ ,UUID_FORMAT
+ ,UUID_NOT_HEX
+ ,OPTIONAL_PARAMS_MUST_BE_LAST
+ ,DLLNAME_REQUIRED
+ ,INVALID_USE_OF_BINDABLE
+
+ // acf semantic errors
+
+ ,ACF_INTERFACE_MISMATCH
+ ,CONFLICTING_ATTR
+ ,INVALID_COMM_STATUS_PARAM
+ ,LOCAL_PROC_IN_ACF
+ ,TYPE_HAS_NO_HANDLE
+ ,UNDEFINED_PROC
+ ,UNDEF_PARAM_IN_IDL
+
+ // array and pointer semantic errors
+
+ ,ARRAY_BOUNDS_CONSTRUCT_BAD
+ ,ILLEGAL_ARRAY_BOUNDS
+ ,ILLEGAL_CONFORMANT_ARRAY
+ ,UNSIZED_ARRAY
+ ,NOT_FIXED_ARRAY
+ ,SAFEARRAY_USE
+
+ // lex errors
+
+ ,CHAR_CONST_NOT_TERMINATED
+ ,EOF_IN_COMMENT
+ ,EOF_IN_STRING
+ ,ID_TRUNCATED
+ ,NEWLINE_IN_STRING
+ ,STRING_TOO_LONG
+ ,IDENTIFIER_TOO_LONG
+ ,CONSTANT_TOO_BIG
+
+ // backend related errors
+
+ ,ERROR_OPENING_FILE
+ ,ERR_BIND // couldn't bind to a function
+ ,ERR_INIT // couldn't initialize OLE
+ ,ERR_LOAD // couldn't load a library
+
+ // more errors
+
+ ,UNIQUE_FULL_PTR_OUT_ONLY
+ ,BAD_ATTR_NON_RPC_UNION
+ ,SIZE_SPECIFIER_CANT_BE_OUT
+ ,LENGTH_SPECIFIER_CANT_BE_OUT
+
+ // errors placed here because of the compiler mode switch changes.
+
+ ,BAD_CON_INT
+ ,BAD_CON_FIELD_VOID
+ ,BAD_CON_ARRAY_VOID
+ ,BAD_CON_MSC_CDECL
+ ,BAD_CON_FIELD_FUNC
+ ,BAD_CON_ARRAY_FUNC
+ ,BAD_CON_PARAM_FUNC
+ ,BAD_CON_BIT_FIELDS
+ ,BAD_CON_BIT_FIELD_NON_ANSI
+ ,BAD_CON_BIT_FIELD_NOT_INTEGRAL
+ ,BAD_CON_CTXT_HDL_FIELD
+ ,BAD_CON_CTXT_HDL_ARRAY
+ ,BAD_CON_NON_RPC_UNION
+
+ ,NON_RPC_PARAM_INT
+ ,NON_RPC_PARAM_VOID
+ ,NON_RPC_PARAM_BIT_FIELDS
+ ,NON_RPC_PARAM_CDECL
+ ,NON_RPC_PARAM_FUNC_PTR
+ ,NON_RPC_UNION
+ ,NON_RPC_RTYPE_INT
+ ,NON_RPC_RTYPE_VOID
+ ,NON_RPC_RTYPE_BIT_FIELDS
+ ,NON_RPC_RTYPE_UNION
+ ,NON_RPC_RTYPE_FUNC_PTR
+
+ ,COMPOUND_INITS_NOT_SUPPORTED
+ ,ACF_IN_IDL_NEEDS_APP_CONFIG
+ ,SINGLE_LINE_COMMENT
+ ,VERSION_FORMAT
+ ,SIGNED_ILLEGAL
+ ,ASSIGNMENT_TYPE_MISMATCH
+ ,ILLEGAL_OSF_MODE_DECL
+ ,OSF_DECL_NEEDS_CONST
+ ,COMP_DEF_IN_PARAM_LIST
+ ,ALLOCATE_NOT_ON_PTR_TYPE
+ ,ARRAY_OF_UNIONS_ILLEGAL
+ ,BAD_CON_E_STAT_T_FIELD
+ ,CASE_LABELS_MISSING_IN_UNION
+ ,BAD_CON_PARAM_RT_IGNORE
+ ,MORE_THAN_ONE_PTR_ATTR
+ ,RECURSION_THRU_REF
+ ,BAD_CON_FIELD_VOID_PTR
+ ,INVALID_OSF_ATTRIBUTE
+ ,INVALID_NEWTLB_ATTRIBUTE
+ ,WCHAR_T_INVALID_OSF
+ ,BAD_CON_UNNAMED_FIELD
+ ,BAD_CON_UNNAMED_FIELD_NO_STRUCT
+ ,BAD_CON_UNION_FIELD_CONF
+ ,PTR_WITH_NO_DEFAULT
+ ,RHS_OF_ASSIGN_NOT_CONST
+ ,SWITCH_IS_TYPE_IS_WRONG
+ ,ILLEGAL_CONSTANT
+ ,IGNORE_UNIMPLEMENTED_ATTRIBUTE
+ ,BAD_CON_REF_RT
+ ,ATTRIBUTE_ID_MUST_BE_VAR
+ ,RECURSIVE_UNION
+ ,BINDING_HANDLE_IS_OUT_ONLY
+ ,PTR_TO_HDL_UNIQUE_OR_FULL
+ ,HANDLE_T_NO_TRANSMIT
+ ,UNEXPECTED_END_OF_FILE
+ ,HANDLE_T_XMIT
+ ,CTXT_HDL_GENERIC_HDL
+ ,GENERIC_HDL_VOID
+ ,NO_EXPLICIT_IN_OUT_ON_PARAM
+ ,TRANSMIT_AS_VOID
+ ,VOID_NON_FIRST_PARAM
+ ,SWITCH_IS_ON_NON_UNION
+ ,STRINGABLE_STRUCT_NOT_SUPPORTED
+ ,SWITCH_TYPE_TYPE_BAD
+ ,GENERIC_HDL_HANDLE_T
+ ,HANDLE_T_CANNOT_BE_OUT
+ ,SIZE_LENGTH_SW_UNIQUE_OR_FULL
+ ,CPP_QUOTE_NOT_OSF
+ ,QUOTED_UUID_NOT_OSF
+ ,RETURN_OF_UNIONS_ILLEGAL
+ ,RETURN_OF_CONF_STRUCT
+ ,XMIT_AS_GENERIC_HANDLE
+ ,GENERIC_HANDLE_XMIT_AS
+ ,INVALID_CONST_TYPE
+ ,INVALID_SIZEOF_OPERAND
+ ,NAME_ALREADY_USED
+ ,ERROR_STATUS_T_ILLEGAL
+ ,CASE_VALUE_OUT_OF_RANGE
+ ,WCHAR_T_NEEDS_MS_EXT_TO_RPC
+ ,INTERFACE_ONLY_CALLBACKS
+ ,REDUNDANT_ATTRIBUTE
+ ,CTXT_HANDLE_USED_AS_IMPLICIT
+ ,CONFLICTING_ALLOCATE_OPTIONS
+ ,ERROR_WRITING_FILE
+ ,NO_SWITCH_TYPE_AT_DEF
+ ,ERRORS_PASS1_NO_PASS2
+ ,HANDLES_WITH_CALLBACK
+ ,PTR_NOT_FULLY_IMPLEMENTED
+ ,PARAM_ALREADY_CTXT_HDL
+ ,CTXT_HDL_HANDLE_T
+ ,ARRAY_SIZE_EXCEEDS_64K
+ ,STRUCT_SIZE_EXCEEDS_64K
+ ,NE_UNION_FIELD_NE_UNION
+ ,PTR_ATTRS_ON_EMBEDDED_ARRAY
+ ,ALLOCATE_ON_TRANSMIT_AS
+ ,SWITCH_TYPE_REQD_THIS_IMP_MODE
+ ,IMPLICIT_HDL_ASSUMED_GENERIC
+ ,E_STAT_T_ARRAY_ELEMENT
+ ,ALLOCATE_ON_HANDLE
+ ,TRANSMIT_AS_ON_E_STAT_T
+ ,IGNORE_ON_DISCRIMINANT
+ ,NOCODE_WITH_SERVER_STUBS
+ ,NO_REMOTE_PROCS_NO_STUBS
+ ,TWO_DEFAULT_CASES
+ ,TWO_DEFAULT_INTERFACES
+ ,DEFAULTVTABLE_REQUIRES_SOURCE
+ ,UNION_NO_FIELDS
+ ,VALUE_OUT_OF_RANGE
+ ,CTXT_HDL_NON_PTR
+ ,NON_RPC_RTYPE_HANDLE_T
+ ,GEN_HDL_CTXT_HDL
+ ,NON_RPC_FIELD_INT
+ ,NON_RPC_FIELD_PTR_TO_VOID
+ ,NON_RPC_FIELD_BIT_FIELDS
+ ,NON_RPC_FIELD_NON_RPC_UNION
+ ,NON_RPC_FIELD_FUNC_PTR
+ ,PROC_PARAM_FAULT_STATUS
+ ,NON_OI_BIG_RETURN
+ ,NON_OI_BIG_GEN_HDL
+ ,ALLOCATE_IN_OUT_PTR
+ ,REF_PTR_IN_UNION
+ ,NON_OI_CTXT_HDL
+ ,NON_OI_ERR_STATS
+ ,NON_OI_UNK_REP_AS
+ ,NON_OI_XXX_AS_ON_RETURN
+ ,NON_OI_XXX_AS_BY_VALUE
+ ,CALLBACK_NOT_OSF
+ ,CIRCULAR_INTERFACE_DEPENDENCY
+ ,NOT_VALID_AS_BASE_INTF
+ ,IID_IS_NON_POINTER
+ ,INTF_NON_POINTER
+ ,PTR_INTF_NO_GUID
+ ,OUTSIDE_OF_INTERFACE
+ ,MULTIPLE_INTF_NON_OSF
+ ,CONFLICTING_INTF_HANDLES
+ ,IMPLICIT_HANDLE_NON_HANDLE
+ ,OBJECT_PROC_MUST_BE_WIN32
+ ,NON_OI_16BIT_CALLBACK
+ ,NON_OI_TOPLEVEL_FLOAT
+ ,CTXT_HDL_MUST_BE_DIRECT_RETURN
+ ,OBJECT_PROC_NON_HRESULT_RETURN
+ ,DUPLICATE_UUID
+ ,ILLEGAL_INTERFACE_DERIVATION
+ ,ILLEGAL_BASE_INTERFACE
+ ,IID_IS_EXPR_NON_POINTER
+ ,CALL_AS_NON_LOCAL_PROC
+ ,CALL_AS_UNSPEC_IN_OBJECT
+ ,ENCODE_AUTO_HANDLE
+ ,RPC_PROC_IN_ENCODE
+ ,ENCODE_CONF_OR_VAR
+ ,CONST_ON_OUT_PARAM
+ ,CONST_ON_RETVAL
+ ,INVALID_USE_OF_RETVAL
+ ,MULTIPLE_CALLING_CONVENTIONS
+ ,INAPPROPRIATE_ON_OBJECT_PROC
+ ,NON_INTF_PTR_PTR_OUT
+ ,CALL_AS_USED_MULTIPLE_TIMES
+ ,OBJECT_CALL_AS_LOCAL
+ ,CODE_NOCODE_CONFLICT
+ ,MAYBE_NO_OUT_RETVALS
+ ,FUNC_NON_POINTER
+ ,FUNC_NON_RPC
+ ,NON_OI_RETVAL_64BIT
+ ,MISMATCHED_PRAGMA_POP
+ ,WRONG_TYPE_IN_STRING_STRUCT
+ ,NON_OI_NOTIFY
+ ,HANDLES_WITH_OBJECT
+ ,NON_ANSI_MULTI_CONF_ARRAY
+ ,NON_OI_UNION_PARM
+ ,OBJECT_WITH_VERSION
+ ,SIZING_ON_FIXED_ARRAYS
+ ,PICKLING_INVALID_IN_OBJECT
+ ,TYPE_PICKLING_INVALID_IN_OSF
+ ,INT_NOT_SUPPORTED_ON_INT16
+ ,BSTRING_NOT_ON_PLAIN_PTR
+ ,INVALID_ON_OBJECT_PROC
+ ,INVALID_ON_OBJECT_INTF
+ ,STACK_TOO_BIG
+ ,NO_ATTRS_ON_ACF_TYPEDEF
+ ,NON_OI_WRONG_CALL_CONV
+ ,TOO_MANY_DELEGATED_PROCS
+ ,NO_MAC_AUTO_HANDLES
+ ,ILLEGAL_IN_MKTYPLIB_MODE
+ ,ILLEGAL_USE_OF_MKTYPLIB_SYNTAX
+ ,ILLEGAL_SU_DEFINITION
+ ,INTF_EXPLICIT_PTR_ATTR
+ ,NO_OI_ON_MPPC
+ ,ILLEGAL_EXPRESSION_TYPE
+ ,ILLEGAL_PIPE_TYPE
+ ,REQUIRES_OI2
+ ,CONFLICTING_OPTIMIZATION_REQUIREMENTS
+ ,ILLEGAL_PIPE_EMBEDDING
+ ,ILLEGAL_PIPE_CONTEXT
+ ,CMD_REQUIRES_I2
+ ,REQUIRES_I2
+#if defined(TARGET_RKK)
+ ,CMD_REQUIRES_NT40
+ ,CMD_REQUIRES_NT351
+ ,REQUIRES_NT40
+ ,REQUIRES_NT351
+#endif
+ ,CMD_OI1_PHASED_OUT
+ ,CMD_OI2_OBSOLETE
+ ,OI1_PHASED_OUT
+ ,OI2_OBSOLETE
+ ,ILLEGAL_ARG_VALUE
+ ,CONSTANT_TYPE_MISMATCH
+ ,ENUM_TYPE_MISMATCH
+ ,UNSATISFIED_FORWARD
+ ,CONTRADICTORY_SWITCHES
+ ,NO_SWITCH_IS_HOOKOLE
+ ,NO_CASE_EXPR
+ ,USER_MARSHAL_IN_OI
+ ,PIPES_WITH_PICKLING
+ ,C_ERR_MAX
+
+ // advice messages
+ ,A_ERR_START = A_ERROR_BASE
+
+ ,A_ERR_MAX
+
+ // internal errors
+ ,I_ERR_START = I_ERROR_BASE
+
+ ,I_ERR_NO_PEER = I_ERR_START // no more peers(siblings)
+ ,I_ERR_NO_MEMBER // no more members(children)
+ ,I_ERR_SYMTABLE_UNDERFLOW // symbol table underflow
+ ,I_ERR_NULL_OUT_PARAM
+ ,I_ERR_SYMBOL_NOT_FOUND
+ ,I_ERR_NO_NEXT_SCOPE
+ ,I_ERR_NO_PREV_SCOPE
+ ,I_ERR_INVALID_NODE_TYPE
+ };
+
+typedef enum _status_t STATUS_T;
+
+#define NOWARN (0)
+#define WARN_LEVEL_MAX (4)
+
+
+#ifdef RPCDEBUG
+#define CHECK_ERR(n) n,
+#else // RPCDEBUG
+#define CHECK_ERR(n)
+#endif // RPCDEBUG
+
+
+extern void RpcError(char *, short, STATUS_T , char *);
+extern void ParseError( STATUS_T , char *);
+
+// semi-digested error information
+class ErrorInfo
+ {
+public:
+ struct errdb * pErrorRecord;
+ STATUS_T ErrVal;
+
+ ErrorInfo( STATUS_T ErrVal );
+
+ int IsRelevant();
+
+ void ReportError( char * pszFileName, short Line, char * suffix );
+
+ };
+
+
+#endif // __ERRORS_HXX__
+
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/dos/dll/rpc16c1.map b/public/sdk/rpc16/dos/dll/rpc16c1.map
new file mode 100644
index 000000000..442bbbf31
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c1.map
@@ -0,0 +1,222 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H NPLTCLNT_TEXT CODE
+ 00000H 001BDH 001BEH EXPORTLT_TEXT CODE
+ 001BEH 001BEH 00000H DOSUTIL_TEXT CODE
+ 001BEH 00475H 002B8H _TEXT CODE
+ 00480H 00AD8H 00659H COMDAT_SEG1 CODE
+ 00ADAH 00B2DH 00054H _DATA DATA
+ 00B2EH 00B46H 00019H STRINGSEGMENT DATA
+ 00B48H 00B48H 00000H XIFB DATA
+ 00B48H 00B48H 00000H XIF DATA
+ 00B48H 00B48H 00000H XIFE DATA
+ 00B48H 00B48H 00000H CONST CONST
+ 00B48H 00B48H 00000H _BSS BSS
+
+ Origin Group
+ 00AD:0 DGROUP
+
+ Address Publics by Name
+
+ 0048:05BC ??_C@_08DNBJ@ncacn_np?$AA@
+ 0048:01B4 ASSEMBLEREAD
+ 0048:0134 CLIENTCLOSE
+ 0048:0000 CLIENTOPEN
+ 0048:02D2 CLIENTREAD
+ 0048:034E CLIENTTOWERCONSTRUCT
+ 0048:04C0 CLIENTTOWEREXPLODE
+ 0048:0150 CLIENTWRITE
+ 0000:0000 Unr CLIENTWRITEREAD
+ 001B:015E DOSCALLNMPIPE
+ 001B:004A DOSCONNECTNMPIPE
+ 001B:0034 DOSDISCONNECTNMPIPE
+ 001B:001E DOSMAKENMPIPE
+ 001B:011D DOSPEEKNMPIPE
+ 001B:00D5 DOSQNMPHANDSTATE
+ 001B:00F7 DOSQNMPIPEINFO
+ 001B:018D DOSRAWREADNMPIPE
+ 001B:01BE DOSRAWWRITENMPIPE
+ 001B:01E8 DOSREADASYNCNMPIPE
+ 001B:0207 DOSREADASYNCNMPIPE2
+ 001B:0060 DOSSETNMPHANDSTATE
+ 001B:00A2 DOSTRANSACTNMPIPE
+ 001B:0080 DOSWAITNMPIPE
+ 001B:021B DOSWRITEASYNCNMPIPE
+ 001B:023A DOSWRITEASYNCNMPIPE2
+ 0000:019A EXPORTTIME
+ 0000:009F I_DOSATEXIT
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:017C NDRCONVERT
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00EC RPCBINDINGFREE
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:011C RPCREGOPENKEY
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:012E RPCREGSETVALUE
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00F2 RPCSTRINGFREE
+ 0048:05AC TRANSPORTLOAD
+ 0000:0063 _CallExport
+ 0000:0000 _DOSDLLInit
+ 00AD:0078 _edata
+ 00AD:0078 _end
+ 00AD:003A _errno
+ 0000:0046 _ExportInit
+ 0000:00A4 _GETENV
+ 0000:0081 _GetExportTableVersion
+ 0000:00B3 _GETPROCADDRR
+ 0000:00A9 _LOADMODR
+ 001B:0268 _memcpy
+ 001B:024E _strlen
+ 00AD:0046 _theTable
+ 00AD:000A _TransInfo
+ 0000:00AE _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 0048:0642 __dos_close
+ 0048:0620 __dos_open
+ 0048:05C6 __dos_read
+ 0048:05FA __dos_write
+ 00AD:0078 __edata
+ 00AD:0078 __end
+ 00AD:0044 __rpc_hostDS
+
+ Address Publics by Value
+
+ 0000:0000 Unr CLIENTWRITEREAD
+ 0000:0000 Abs __ADBUSED
+ 0000:0000 _DOSDLLInit
+ 0000:0000 Abs __ACRTUSED
+ 0000:000C Abs __AHSHIFT
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F I_DOSATEXIT
+ 0000:00A4 _GETENV
+ 0000:00A9 _LOADMODR
+ 0000:00AE _UNLOADMODR
+ 0000:00B3 _GETPROCADDRR
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00EC RPCBINDINGFREE
+ 0000:00F2 RPCSTRINGFREE
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:011C RPCREGOPENKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:012E RPCREGSETVALUE
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:017C NDRCONVERT
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:019A EXPORTTIME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 001B:001E DOSMAKENMPIPE
+ 001B:0034 DOSDISCONNECTNMPIPE
+ 001B:004A DOSCONNECTNMPIPE
+ 001B:0060 DOSSETNMPHANDSTATE
+ 001B:0080 DOSWAITNMPIPE
+ 001B:00A2 DOSTRANSACTNMPIPE
+ 001B:00D5 DOSQNMPHANDSTATE
+ 001B:00F7 DOSQNMPIPEINFO
+ 001B:011D DOSPEEKNMPIPE
+ 001B:015E DOSCALLNMPIPE
+ 001B:018D DOSRAWREADNMPIPE
+ 001B:01BE DOSRAWWRITENMPIPE
+ 001B:01E8 DOSREADASYNCNMPIPE
+ 001B:0207 DOSREADASYNCNMPIPE2
+ 001B:021B DOSWRITEASYNCNMPIPE
+ 001B:023A DOSWRITEASYNCNMPIPE2
+ 001B:024E _strlen
+ 001B:0268 _memcpy
+ 0048:0000 CLIENTOPEN
+ 0048:0134 CLIENTCLOSE
+ 0048:0150 CLIENTWRITE
+ 0048:01B4 ASSEMBLEREAD
+ 0048:02D2 CLIENTREAD
+ 0048:034E CLIENTTOWERCONSTRUCT
+ 0048:04C0 CLIENTTOWEREXPLODE
+ 0048:05AC TRANSPORTLOAD
+ 0048:05BC ??_C@_08DNBJ@ncacn_np?$AA@
+ 0048:05C6 __dos_read
+ 0048:05FA __dos_write
+ 0048:0620 __dos_open
+ 0048:0642 __dos_close
+ 00AD:000A _TransInfo
+ 00AD:003A _errno
+ 00AD:0044 __rpc_hostDS
+ 00AD:0046 _theTable
+ 00AD:0078 __end
+ 00AD:0078 _end
+ 00AD:0078 _edata
+ 00AD:0078 __edata
+ 0000:1000 Abs __AHINCR
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpc16c1.rpc b/public/sdk/rpc16/dos/dll/rpc16c1.rpc
new file mode 100644
index 000000000..70ea68f12
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c1.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpc16c3.map b/public/sdk/rpc16/dos/dll/rpc16c3.map
new file mode 100644
index 000000000..fbfce4c07
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c3.map
@@ -0,0 +1,335 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H TCLTCLNT_TEXT CODE
+ 00000H 001BDH 001BEH EXPORTLT_TEXT CODE
+ 001C0H 0184CH 0168DH _TEXT CODE
+ 0184EH 01911H 000C4H INT_TEXT CODE
+ 01920H 01E06H 004E7H COMDAT_SEG1 CODE
+ 01E08H 02725H 0091EH _DATA DATA
+ 02726H 0273EH 00019H STRINGSEGMENT DATA
+ 02740H 02740H 00000H XIFB DATA
+ 02740H 02740H 00000H XIF DATA
+ 02740H 02740H 00000H XIFE DATA
+ 02740H 02740H 00000H CONST CONST
+ 02740H 028CBH 0018CH _BSS BSS
+ 028D0H 028DBH 0000CH c_common BSS
+
+ Origin Group
+ 01E0:0 DGROUP
+
+ Address Publics by Name
+
+ 0192:04D6 ??_C@_03EOPG@135?$AA@
+ 0192:04CC ??_C@_09FBHK@localhost?$AA@
+ 0192:04C0 ??_C@_0M@OCLK@?40123456789?$AA@
+ 0192:04DA ??_C@_0N@JDIH@ncacn_ip_tcp?$AA@
+ 0192:0118 CLIENTCLOSE
+ 0192:0000 CLIENTOPEN
+ 0192:017E CLIENTREAD
+ 0192:0294 CLIENTTOWERCONSTRUCT
+ 0192:0396 CLIENTTOWEREXPLODE
+ 0192:013A CLIENTWRITE
+ 0000:019A EXPORTTIME
+ 0000:009F I_DOSATEXIT
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:017C NDRCONVERT
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0184:0010 oldint24
+ 0184:0014 oldint2f
+ 0184:000E our_psp
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00EC RPCBINDINGFREE
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:011C RPCREGOPENKEY
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:012E RPCREGSETVALUE
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00F2 RPCSTRINGFREE
+ 0192:0484 TRANSPORTLOAD
+ 001C:14FA _atoi
+ 0000:0063 _CallExport
+ 0000:0000 _DOSDLLInit
+ 01E0:0100 _driver_entry
+ 01E0:0940 _edata
+ 01E0:0ADC _end
+ 001C:0884 _endhostent
+ 01E0:0038 _errno
+ 0000:0046 _ExportInit
+ 0000:00A4 _GETENV
+ 0000:0081 _GetExportTableVersion
+ 001C:0C34 _gethostbyaddr
+ 001C:0A7C _gethostbyname
+ 001C:09D4 _gethostent
+ 0000:00B3 _GETPROCADDRR
+ 001C:0010 _htonl
+ 001C:001F _htons
+ 001C:03BC _inet_addr
+ 001C:0616 _inet_lnaof
+ 001C:06AC _inet_makeaddr
+ 001C:065E _inet_netof
+ 001C:04EE _inet_network
+ 001C:07A4 _inet_ntoa
+ 0000:00A9 _LOADMODR
+ 001C:1279 _locater_bind
+ 001C:126B _locater_close
+ 001C:1254 _locater_open
+ 001C:130F _locater_send
+ 001C:12DD _locater_unbind
+ 001C:15CC _memcpy
+ 001C:0010 _ntohl
+ 001C:001F _ntohs
+ 01E0:0AD4 _segregs
+ 001C:0828 _sethostent
+ 0184:0063 _set_int_handlers
+ 001C:1570 _strcspn
+ 001C:14E0 _strlen
+ 01E0:0044 _theTable
+ 01E0:0008 _TransInfo
+ 0000:00AE _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 001C:14FE __catox
+ 001C:0D70 __close_socket
+ 001C:162A __cltoasub
+ 001C:0DC8 __connect
+ 001C:1637 __cxtoa
+ 01E0:0940 __edata
+ 01E0:0ADC __end
+ 01E0:0AD0 __FakeErrno
+ 001C:14BC __fillbuf
+ 01E0:0AD2 __global_base
+ 001C:1554 __itoa
+ 001C:14A9 __lowio_so_fclose
+ 001C:1480 __lowio_so_fopen
+ 001C:1493 __lowio_so_rewind
+ 001C:0E32 __recv
+ 01E0:0042 __rpc_hostDS
+ 001C:0EB4 __send
+ 001C:0F36 __socket
+ 001C:0078 __so_atoui
+ 001C:10B0 __so_check_binary_compatibility
+ 001C:0718 __so_convert_char_to_ascii
+ 001C:0FE6 __so_drvropen
+ 001C:1446 __so_fclose
+ 001C:1366 __so_fgetc
+ 001C:13C4 __so_fgets
+ 001C:141A __so_fopen
+ 001C:036C __so_get_base
+ 001C:1341 __so_get_code_seg
+ 001C:020A __so_get_netfiles_path
+ 001C:10AC __so_get_sock_pid
+ 001C:11B4 __so_get_status
+ 001C:1344 __so_get_timer_cnt
+ 001C:019E __so_get_token
+ 001C:0028 __so_isdigit
+ 001C:0044 __so_isxdigit
+ 001C:0250 __so_mem_compare
+ 001C:11F8 __so_mult32
+ 001C:08A8 __so_parse_hosts_entry
+ 001C:0F9A __so_process_exit
+ 001C:1158 __so_resolve_IP_addr_to_name
+ 001C:10FE __so_resolve_name_to_IP_addr
+ 001C:1468 __so_rewind
+ 001C:10EC __so_send_the_ioctl_request
+ 001C:034C __so_skip_white_space
+ 001C:011E __so_strcat
+ 001C:0152 __so_strchr
+ 001C:00F6 __so_strcpy
+ 001C:02A2 __so_string_compare
+ 001C:017E __so_strlen
+ 001C:02E0 __so_valid_char
+
+ Address Publics by Value
+
+ 0000:0000 _DOSDLLInit
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:000C Abs __AHSHIFT
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F I_DOSATEXIT
+ 0000:00A4 _GETENV
+ 0000:00A9 _LOADMODR
+ 0000:00AE _UNLOADMODR
+ 0000:00B3 _GETPROCADDRR
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00EC RPCBINDINGFREE
+ 0000:00F2 RPCSTRINGFREE
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:011C RPCREGOPENKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:012E RPCREGSETVALUE
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:017C NDRCONVERT
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:019A EXPORTTIME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 001C:0010 _ntohl
+ 001C:0010 _htonl
+ 001C:001F _htons
+ 001C:001F _ntohs
+ 001C:0028 __so_isdigit
+ 001C:0044 __so_isxdigit
+ 001C:0078 __so_atoui
+ 001C:00F6 __so_strcpy
+ 001C:011E __so_strcat
+ 001C:0152 __so_strchr
+ 001C:017E __so_strlen
+ 001C:019E __so_get_token
+ 001C:020A __so_get_netfiles_path
+ 001C:0250 __so_mem_compare
+ 001C:02A2 __so_string_compare
+ 001C:02E0 __so_valid_char
+ 001C:034C __so_skip_white_space
+ 001C:036C __so_get_base
+ 001C:03BC _inet_addr
+ 001C:04EE _inet_network
+ 001C:0616 _inet_lnaof
+ 001C:065E _inet_netof
+ 001C:06AC _inet_makeaddr
+ 001C:0718 __so_convert_char_to_ascii
+ 001C:07A4 _inet_ntoa
+ 001C:0828 _sethostent
+ 001C:0884 _endhostent
+ 001C:08A8 __so_parse_hosts_entry
+ 001C:09D4 _gethostent
+ 001C:0A7C _gethostbyname
+ 001C:0C34 _gethostbyaddr
+ 001C:0D70 __close_socket
+ 001C:0DC8 __connect
+ 001C:0E32 __recv
+ 0000:1000 Abs __AHINCR
+ 001C:0EB4 __send
+ 001C:0F36 __socket
+ 001C:0F9A __so_process_exit
+ 001C:0FE6 __so_drvropen
+ 001C:10AC __so_get_sock_pid
+ 001C:10B0 __so_check_binary_compatibility
+ 001C:10EC __so_send_the_ioctl_request
+ 001C:10FE __so_resolve_name_to_IP_addr
+ 001C:1158 __so_resolve_IP_addr_to_name
+ 001C:11B4 __so_get_status
+ 001C:11F8 __so_mult32
+ 001C:1254 _locater_open
+ 001C:126B _locater_close
+ 001C:1279 _locater_bind
+ 001C:12DD _locater_unbind
+ 001C:130F _locater_send
+ 001C:1341 __so_get_code_seg
+ 001C:1344 __so_get_timer_cnt
+ 001C:1366 __so_fgetc
+ 001C:13C4 __so_fgets
+ 001C:141A __so_fopen
+ 001C:1446 __so_fclose
+ 001C:1468 __so_rewind
+ 001C:1480 __lowio_so_fopen
+ 001C:1493 __lowio_so_rewind
+ 001C:14A9 __lowio_so_fclose
+ 001C:14BC __fillbuf
+ 001C:14E0 _strlen
+ 001C:14FA _atoi
+ 001C:14FE __catox
+ 001C:1554 __itoa
+ 001C:1570 _strcspn
+ 001C:15CC _memcpy
+ 001C:162A __cltoasub
+ 001C:1637 __cxtoa
+ 0184:000E our_psp
+ 0184:0010 oldint24
+ 0184:0014 oldint2f
+ 0184:0063 _set_int_handlers
+ 0192:0000 CLIENTOPEN
+ 0192:0118 CLIENTCLOSE
+ 0192:013A CLIENTWRITE
+ 0192:017E CLIENTREAD
+ 0192:0294 CLIENTTOWERCONSTRUCT
+ 0192:0396 CLIENTTOWEREXPLODE
+ 0192:0484 TRANSPORTLOAD
+ 0192:04C0 ??_C@_0M@OCLK@?40123456789?$AA@
+ 0192:04CC ??_C@_09FBHK@localhost?$AA@
+ 0192:04D6 ??_C@_03EOPG@135?$AA@
+ 0192:04DA ??_C@_0N@JDIH@ncacn_ip_tcp?$AA@
+ 01E0:0008 _TransInfo
+ 01E0:0038 _errno
+ 01E0:0042 __rpc_hostDS
+ 01E0:0044 _theTable
+ 01E0:0100 _driver_entry
+ 01E0:0940 _edata
+ 01E0:0940 __edata
+ 01E0:0AD0 __FakeErrno
+ 01E0:0AD2 __global_base
+ 01E0:0AD4 _segregs
+ 01E0:0ADC _end
+ 01E0:0ADC __end
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpc16c3.rpc b/public/sdk/rpc16/dos/dll/rpc16c3.rpc
new file mode 100644
index 000000000..b57cf28e1
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c3.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpc16c4.map b/public/sdk/rpc16/dos/dll/rpc16c4.map
new file mode 100644
index 000000000..92aec0434
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c4.map
@@ -0,0 +1,284 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H DNLTCLNT_TEXT CODE
+ 00000H 001BDH 001BEH EXPORTLT_TEXT CODE
+ 001BEH 002ABH 000EEH DNETADDR_TEXT CODE
+ 002ACH 003ADH 00102H DNETPATH_TEXT CODE
+ 003AEH 0040FH 00062H GNODEBAD_TEXT CODE
+ 00410H 0048DH 0007EH GNODEBNM_TEXT CODE
+ 0048EH 005BFH 00132H GNODEENT_TEXT CODE
+ 005C0H 005F3H 00034H HCLOSE_TEXT CODE
+ 005F4H 00691H 0009EH HOPEN_TEXT CODE
+ 00692H 006F5H 00064H HREAD_TEXT CODE
+ 006F6H 0078DH 00098H HSEEK_TEXT CODE
+ 0078EH 007EDH 00060H PRGCLS_TEXT CODE
+ 007EEH 00841H 00054H PRGCON_TEXT CODE
+ 00842H 00953H 00112H PRGRCV_TEXT CODE
+ 00954H 00A3FH 000ECH PRGSEL_TEXT CODE
+ 00A40H 00B3BH 000FCH PRGSND_TEXT CODE
+ 00B3CH 00B95H 0005AH PRGSOC_TEXT CODE
+ 00B96H 00BB3H 0001EH PTRCONV_TEXT CODE
+ 00BB4H 00D60H 001ADH _DNET_TEXT CODE
+ 00D62H 00F59H 001F8H _TEXT CODE
+ 00F60H 0146AH 0050BH COMDAT_SEG1 CODE
+ 0146CH 016F9H 0028EH _DATA DATA
+ 016FAH 01712H 00019H STRINGSEGMENT DATA
+ 01714H 01714H 00000H XIFB DATA
+ 01714H 01714H 00000H XIF DATA
+ 01714H 01714H 00000H XIFE DATA
+ 01714H 0171BH 00008H CONST CONST
+ 0171CH 017B3H 00098H _BSS BSS
+
+ Origin Group
+ 0146:0 DGROUP
+
+ Address Publics by Name
+
+ 00F6:04F8 ??_C@_03HJFF@?$CD69?$AA@
+ 00F6:04EC ??_C@_0M@OCLK@?40123456789?$AA@
+ 00F6:04FC ??_C@_0P@MCIL@ncacn_dnet_nsp?$AA@
+ 00F6:011C CLIENTCLOSE
+ 00F6:0000 CLIENTOPEN
+ 00F6:0178 CLIENTREAD
+ 00F6:02B4 CLIENTTOWERCONSTRUCT
+ 00F6:03CE CLIENTTOWEREXPLODE
+ 00F6:0138 CLIENTWRITE
+ 0000:019A EXPORTTIME
+ 0000:009F I_DOSATEXIT
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:017C NDRCONVERT
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00EC RPCBINDINGFREE
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:011C RPCREGOPENKEY
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:012E RPCREGSETVALUE
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00F2 RPCSTRINGFREE
+ 00F6:04DC TRANSPORTLOAD
+ 00D6:00E6 _atoi
+ 00BB:0004 _bcmp
+ 00BB:002D _bcopy
+ 00BB:0052 _bzero
+ 0000:0063 _CallExport
+ 007E:000E _connect
+ 00BB:0074 _decnet
+ 001B:000E _dnet_addr
+ 0146:0134 _dnet_copyright
+ 002A:000C _dnet_path
+ 0146:0176 _dnet_version
+ 0146:0132 _dnp_status
+ 0000:0000 _DOSDLLInit
+ 0146:02BC _edata
+ 0146:0354 _end
+ 0048:005C _endnodeent
+ 0146:003C _errno
+ 0000:0046 _ExportInit
+ 0000:00A4 _GETENV
+ 0000:0081 _GetExportTableVersion
+ 003A:000E _getnodebyaddr
+ 0041:0000 _getnodebyname
+ 0048:00FC _getnodedb
+ 0048:007E _getnodeent
+ 0000:00B3 _GETPROCADDRR
+ 002A:00F0 _get_current_volume
+ 005C:0000 _hclose
+ 005F:0004 _hopen
+ 0069:0002 _hread
+ 006F:0006 _hseek
+ 00BB:00EF _install_check
+ 0000:00A9 _LOADMODR
+ 00B9:0006 _lohi
+ 00B9:0012 _lsw
+ 00D6:019C _memcpy
+ 00BB:0116 _msdos
+ 00B9:001A _msw
+ 0084:0002 _recv
+ 0078:000E _sclose
+ 0095:0004 _select
+ 00A4:0000 _send
+ 0048:000E _setnodeent
+ 00B3:000C _socket
+ 0084:0062 _sread
+ 00D6:0012 _strcat
+ 00D6:00A2 _strcmp
+ 00D6:0066 _strcpy
+ 00D6:0140 _strcspn
+ 00D6:00CC _strlen
+ 00A4:0054 _swrite
+ 0146:0048 _theTable
+ 0146:000C _TransInfo
+ 0000:00AE _UNLOADMODR
+ 0084:00A0 _xrecv
+ 00A4:0092 _xsend
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 00D6:00EA __catox
+ 0146:0198 __ctype
+ 0146:0198 __ctype_
+ 0146:02BC __edata
+ 0146:0354 __end
+ 0146:0046 __rpc_hostDS
+
+ Address Publics by Value
+
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:0000 _DOSDLLInit
+ 0000:000C Abs __AHSHIFT
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F I_DOSATEXIT
+ 0000:00A4 _GETENV
+ 0000:00A9 _LOADMODR
+ 0000:00AE _UNLOADMODR
+ 0000:00B3 _GETPROCADDRR
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00EC RPCBINDINGFREE
+ 0000:00F2 RPCSTRINGFREE
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:011C RPCREGOPENKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:012E RPCREGSETVALUE
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:017C NDRCONVERT
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:019A EXPORTTIME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 001B:000E _dnet_addr
+ 002A:000C _dnet_path
+ 002A:00F0 _get_current_volume
+ 003A:000E _getnodebyaddr
+ 0041:0000 _getnodebyname
+ 0048:000E _setnodeent
+ 0048:005C _endnodeent
+ 0048:007E _getnodeent
+ 0048:00FC _getnodedb
+ 005C:0000 _hclose
+ 005F:0004 _hopen
+ 0069:0002 _hread
+ 006F:0006 _hseek
+ 0078:000E _sclose
+ 007E:000E _connect
+ 0084:0002 _recv
+ 0084:0062 _sread
+ 0084:00A0 _xrecv
+ 0095:0004 _select
+ 00A4:0000 _send
+ 00A4:0054 _swrite
+ 00A4:0092 _xsend
+ 00B3:000C _socket
+ 00B9:0006 _lohi
+ 00B9:0012 _lsw
+ 00B9:001A _msw
+ 00BB:0004 _bcmp
+ 00BB:002D _bcopy
+ 00BB:0052 _bzero
+ 00BB:0074 _decnet
+ 00BB:00EF _install_check
+ 00BB:0116 _msdos
+ 00D6:0012 _strcat
+ 00D6:0066 _strcpy
+ 00D6:00A2 _strcmp
+ 00D6:00CC _strlen
+ 00D6:00E6 _atoi
+ 00D6:00EA __catox
+ 00D6:0140 _strcspn
+ 00D6:019C _memcpy
+ 00F6:0000 CLIENTOPEN
+ 0000:1000 Abs __AHINCR
+ 00F6:011C CLIENTCLOSE
+ 00F6:0138 CLIENTWRITE
+ 00F6:0178 CLIENTREAD
+ 00F6:02B4 CLIENTTOWERCONSTRUCT
+ 00F6:03CE CLIENTTOWEREXPLODE
+ 00F6:04DC TRANSPORTLOAD
+ 00F6:04EC ??_C@_0M@OCLK@?40123456789?$AA@
+ 00F6:04F8 ??_C@_03HJFF@?$CD69?$AA@
+ 00F6:04FC ??_C@_0P@MCIL@ncacn_dnet_nsp?$AA@
+ 0146:000C _TransInfo
+ 0146:003C _errno
+ 0146:0046 __rpc_hostDS
+ 0146:0048 _theTable
+ 0146:0132 _dnp_status
+ 0146:0134 _dnet_copyright
+ 0146:0176 _dnet_version
+ 0146:0198 __ctype
+ 0146:0198 __ctype_
+ 0146:02BC _edata
+ 0146:02BC __edata
+ 0146:0354 _end
+ 0146:0354 __end
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpc16c4.rpc b/public/sdk/rpc16/dos/dll/rpc16c4.rpc
new file mode 100644
index 000000000..de21026e1
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c4.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpc16c5.map b/public/sdk/rpc16/dos/dll/rpc16c5.map
new file mode 100644
index 000000000..e0e4775af
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c5.map
@@ -0,0 +1,216 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H NBLTCLNT_TEXT CODE
+ 00000H 001BDH 001BEH EXPORTLT_TEXT CODE
+ 001BEH 0030CH 0014FH _TEXT CODE
+ 00310H 01486H 01177H COMDAT_SEG1 CODE
+ 01488H 01533H 000ACH _DATA DATA
+ 01534H 0154CH 00019H STRINGSEGMENT DATA
+ 0154EH 0154EH 00000H XIFB DATA
+ 0154EH 0154EH 00000H XIF DATA
+ 0154EH 0154EH 00000H XIFE DATA
+ 0154EH 0154EH 00000H CONST CONST
+ 0154EH 0154EH 00000H _BSS BSS
+ 01550H 0157FH 00030H c_common BSS
+
+ Origin Group
+ 0148:0 DGROUP
+
+ Address Publics by Name
+
+ 0031:1158 ??_C@_0BP@PJIB@Software?2Microsoft?2Rpc?2NetBios?$AA@
+ 0031:1122 ??_C@_0M@PAMB@ncacn_nb_nb?$AA@
+ 0031:112E ??_C@_0N@DJPI@ncacn_nb_tcp?$AA@
+ 0031:114A ??_C@_0N@JHIF@ncacn_nb_ipx?$AA@
+ 0031:113C ??_C@_0N@OHPK@ncacn_nb_xns?$AA@
+ 0031:057C CLOSE
+ 0031:10F4 EXECNCB
+ 0000:019A EXPORTTIME
+ 0031:0F20 INITNBMUTEX
+ 0000:009F I_DOSATEXIT
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0031:106E MAPERRORCODE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:017C NDRCONVERT
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0031:0302 OPEN
+ 0031:081A RECEIVE
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00EC RPCBINDINGFREE
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:011C RPCREGOPENKEY
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:012E RPCREGSETVALUE
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00F2 RPCSTRINGFREE
+ 0031:0710 SEND
+ 0031:098C SENDRECEIVE
+ 0031:0BF8 TOWERCONSTRUCT
+ 0031:0DE6 TOWEREXPLODE
+ 0031:00A0 TRANSPORTLOAD
+ 0000:0063 _CallExport
+ 0031:0000 _CleanUpNetBios
+ 0000:0000 _DOSDLLInit
+ 0148:00CE _edata
+ 0148:0100 _end
+ 0148:0090 _errno
+ 0000:0046 _ExportInit
+ 0000:00A4 _GETENV
+ 0000:0081 _GetExportTableVersion
+ 0000:00B3 _GETPROCADDRR
+ 0000:00A9 _LOADMODR
+ 0148:007E _MachineName
+ 0148:008E _MachineNameLengthUnpadded
+ 0031:0F28 _MapProtocol
+ 001B:009E _memcpy
+ 001B:00FC _memset
+ 0148:0008 _NetBiosErrors
+ 0148:00D0 _ProtoToLana
+ 0031:10B6 _SetupNetBios
+ 001B:005A _strcmp
+ 001B:001E _strcpy
+ 001B:0084 _strlen
+ 0148:009C _theTable
+ 0148:004E _TransInfo
+ 0000:00AE _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 0148:00CE __edata
+ 0148:0100 __end
+ 001B:0144 __fstrlen
+ 0148:009A __rpc_hostDS
+
+ Address Publics by Value
+
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 _DOSDLLInit
+ 0000:0000 Abs __ADBUSED
+ 0000:000C Abs __AHSHIFT
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F I_DOSATEXIT
+ 0000:00A4 _GETENV
+ 0000:00A9 _LOADMODR
+ 0000:00AE _UNLOADMODR
+ 0000:00B3 _GETPROCADDRR
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00EC RPCBINDINGFREE
+ 0000:00F2 RPCSTRINGFREE
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:011C RPCREGOPENKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:012E RPCREGSETVALUE
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:017C NDRCONVERT
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:019A EXPORTTIME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 001B:001E _strcpy
+ 001B:005A _strcmp
+ 001B:0084 _strlen
+ 001B:009E _memcpy
+ 001B:00FC _memset
+ 001B:0144 __fstrlen
+ 0031:0000 _CleanUpNetBios
+ 0031:00A0 TRANSPORTLOAD
+ 0031:0302 OPEN
+ 0031:057C CLOSE
+ 0031:0710 SEND
+ 0031:081A RECEIVE
+ 0031:098C SENDRECEIVE
+ 0031:0BF8 TOWERCONSTRUCT
+ 0000:1000 Abs __AHINCR
+ 0031:0DE6 TOWEREXPLODE
+ 0031:0F20 INITNBMUTEX
+ 0031:0F28 _MapProtocol
+ 0031:106E MAPERRORCODE
+ 0031:10B6 _SetupNetBios
+ 0031:10F4 EXECNCB
+ 0031:1122 ??_C@_0M@PAMB@ncacn_nb_nb?$AA@
+ 0031:112E ??_C@_0N@DJPI@ncacn_nb_tcp?$AA@
+ 0031:113C ??_C@_0N@OHPK@ncacn_nb_xns?$AA@
+ 0031:114A ??_C@_0N@JHIF@ncacn_nb_ipx?$AA@
+ 0031:1158 ??_C@_0BP@PJIB@Software?2Microsoft?2Rpc?2NetBios?$AA@
+ 0148:0008 _NetBiosErrors
+ 0148:004E _TransInfo
+ 0148:007E _MachineName
+ 0148:008E _MachineNameLengthUnpadded
+ 0148:0090 _errno
+ 0148:009A __rpc_hostDS
+ 0148:009C _theTable
+ 0148:00CE _edata
+ 0148:00CE __edata
+ 0148:00D0 _ProtoToLana
+ 0148:0100 __end
+ 0148:0100 _end
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpc16c5.rpc b/public/sdk/rpc16/dos/dll/rpc16c5.rpc
new file mode 100644
index 000000000..6fd32a149
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c5.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpc16c6.map b/public/sdk/rpc16/dos/dll/rpc16c6.map
new file mode 100644
index 000000000..7112247b1
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c6.map
@@ -0,0 +1,330 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H SPXCLNT_TEXT CODE
+ 00000H 001BDH 001BEH EXPORTLT_TEXT CODE
+ 001BEH 001BEH 00000H GETHOST_TEXT CODE
+ 001BEH 001BEH 00000H NOVELL_TEXT CODE
+ 001BEH 0051DH 00360H _TEXT CODE
+ 00520H 02020H 01B01H COMDAT_SEG1 CODE
+ 02022H 0207BH 0005AH _DATA DATA
+ 0207CH 02094H 00019H STRINGSEGMENT DATA
+ 02096H 02096H 00000H XIFB DATA
+ 02096H 02096H 00000H XIF DATA
+ 02096H 02096H 00000H XIFE DATA
+ 02096H 02096H 00000H CONST CONST
+ 02096H 02096H 00000H _BSS BSS
+ 020A0H 02205H 00166H c_common BSS
+
+ Origin Group
+ 0202:0 DGROUP
+
+ Address Publics by Name
+
+ 0052:0A60 ??_C@_05LKBG@34280?$AA@
+ 0052:0A66 ??_C@_09LLEG@ncacn_spx?$AA@
+ 0052:0A54 ??_C@_0L@JIBM@0123456789?$AA@
+ 0052:117C ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 0052:11CE ASMIPXCANCELEVENT
+ 0052:11EA ASMIPXCLOSESOCKET
+ 0000:0000 Unr ASMIPXDISCONNECTFROMTARGET
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 0052:1206 ASMIPXGETINTERVALMARKER
+ 0052:135A ASMIPXGETLOCALTARGET
+ 0052:1344 ASMIPXGETMAXPACKETSIZE
+ 0052:1188 ASMIPXINITIALIZE
+ 0052:121C ASMIPXLISTENFORPACKET
+ 0052:1238 ASMIPXOPENSOCKET
+ 0052:1260 ASMIPXRELINQUISHCONTROL
+ 0052:1276 ASMIPXSENDPACKET
+ 0000:0000 Unr ASMSPXABORTCONNECTION
+ 0052:12C4 ASMSPXESTABLISHCONNECTION
+ 0052:1292 ASMSPXINITIALIZE
+ 0052:12EC ASMSPXLISTENFORSEQUENCEDPACKET
+ 0052:1308 ASMSPXSENDSEQUENCEDPACKET
+ 0052:1326 ASMSPXTERMINATECONNECTION
+ 0052:0258 CLIENTCLOSE
+ 0052:00E6 CLIENTOPEN
+ 0052:0558 CLIENTRECV
+ 0052:02E2 CLIENTSEND
+ 0052:06E2 CLIENTTOWERCONSTRUCT
+ 0052:07B4 CLIENTTOWEREXPLODE
+ 0000:019A EXPORTTIME
+ 0000:009F I_DOSATEXIT
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:017C NDRCONVERT
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00EC RPCBINDINGFREE
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:011C RPCREGOPENKEY
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:012E RPCREGSETVALUE
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00F2 RPCSTRINGFREE
+ 0052:0902 TRANSPORTLOAD
+ 0202:005A _ActiveFileServer
+ 0052:0B0C _AddServerToCache
+ 001B:0038 _atoi
+ 0052:0000 _ByteSwapShort
+ 0052:0C28 _CachedServerContacted
+ 0052:0C68 _CachedServerNotContacted
+ 0000:0063 _CallExport
+ 0052:0A70 _chtob
+ 0202:015C _chunk
+ 0052:0890 _ClientCleanup
+ 0052:167A _ConnectToAnyFileServer
+ 0202:0146 _conn_failed_cnt
+ 0202:0086 _conn_lookup
+ 0052:199E _DisconnectFromServer
+ 0000:0000 _DOSDLLInit
+ 0052:0AF4 _DosGetTickCount
+ 0202:0076 _edata
+ 0202:01E6 _end
+ 0202:014A _enteripx
+ 0202:0032 _errno
+ 0000:0046 _ExportInit
+ 0202:0058 _FileServerCount
+ 0052:1400 _FindFileServers
+ 0052:0BE8 _FindServerInCache
+ 0000:00A4 _GETENV
+ 0000:0081 _GetExportTableVersion
+ 0000:00B3 _GETPROCADDRR
+ 0052:1012 _IpxGetHostByName
+ 0000:00A9 _LOADMODR
+ 0202:0164 _max_num_send
+ 001B:00EE _memcpy
+ 001B:014C _memset
+ 0052:1784 _NcpTransaction
+ 0202:0144 _nfy_failure_cnt
+ 0202:0162 _packet_size
+ 0202:0124 _PreferredServer
+ 0202:0056 _PreferredServerFound
+ 0052:19F0 _ReadPropertyValue
+ 0202:0084 _receive_code
+ 0202:0160 _receive_data
+ 0202:0080 _receive_failed_cnt
+ 0202:0082 _receive_fragmentCount
+ 0202:00E6 _receive_fragmentSize
+ 0202:0152 _receive_head
+ 0202:0143 _receive_seq
+ 0202:0148 _receive_spx_length
+ 0202:015A _receive_state
+ 0202:014E _receive_tail
+ 0052:0CC8 _SearchBindery
+ 0052:0DA4 _SearchWithSap
+ 0202:0156 _send_data
+ 0202:0157 _send_seq
+ 0202:0166 _ServerCache
+ 0202:00E8 _Servers
+ 0052:13B4 _SetupEcb
+ 0202:0158 _socket
+ 001B:001E _strlen
+ 001B:0092 _strspn
+ 0202:003E _theTable
+ 0202:0002 _TransInfo
+ 0000:00AE _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 001B:003C __catox
+ 0202:0076 __edata
+ 0202:01E6 __end
+ 001B:0194 __fmemcmp
+ 001B:01F0 __fmemcpy
+ 001B:02CE __fmemset
+ 001B:0268 __fstrcmp
+ 001B:0292 __fstrcpy
+ 001B:024E __fstrlen
+ 001B:0316 __fstrnicmp
+ 0202:003C __rpc_hostDS
+
+ Address Publics by Value
+
+ 0000:0000 Abs __ADBUSED
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 0000:0000 Unr ASMSPXABORTCONNECTION
+ 0000:0000 _DOSDLLInit
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Unr ASMIPXDISCONNECTFROMTARGET
+ 0000:000C Abs __AHSHIFT
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F I_DOSATEXIT
+ 0000:00A4 _GETENV
+ 0000:00A9 _LOADMODR
+ 0000:00AE _UNLOADMODR
+ 0000:00B3 _GETPROCADDRR
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00EC RPCBINDINGFREE
+ 0000:00F2 RPCSTRINGFREE
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:011C RPCREGOPENKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:012E RPCREGSETVALUE
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:017C NDRCONVERT
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:019A EXPORTTIME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 001B:001E _strlen
+ 001B:0038 _atoi
+ 001B:003C __catox
+ 001B:0092 _strspn
+ 001B:00EE _memcpy
+ 001B:014C _memset
+ 001B:0194 __fmemcmp
+ 001B:01F0 __fmemcpy
+ 001B:024E __fstrlen
+ 001B:0268 __fstrcmp
+ 001B:0292 __fstrcpy
+ 001B:02CE __fmemset
+ 001B:0316 __fstrnicmp
+ 0052:0000 _ByteSwapShort
+ 0052:00E6 CLIENTOPEN
+ 0052:0258 CLIENTCLOSE
+ 0052:02E2 CLIENTSEND
+ 0052:0558 CLIENTRECV
+ 0052:06E2 CLIENTTOWERCONSTRUCT
+ 0052:07B4 CLIENTTOWEREXPLODE
+ 0052:0890 _ClientCleanup
+ 0052:0902 TRANSPORTLOAD
+ 0052:0A54 ??_C@_0L@JIBM@0123456789?$AA@
+ 0052:0A60 ??_C@_05LKBG@34280?$AA@
+ 0052:0A66 ??_C@_09LLEG@ncacn_spx?$AA@
+ 0052:0A70 _chtob
+ 0000:1000 Abs __AHINCR
+ 0052:0AF4 _DosGetTickCount
+ 0052:0B0C _AddServerToCache
+ 0052:0BE8 _FindServerInCache
+ 0052:0C28 _CachedServerContacted
+ 0052:0C68 _CachedServerNotContacted
+ 0052:0CC8 _SearchBindery
+ 0052:0DA4 _SearchWithSap
+ 0052:1012 _IpxGetHostByName
+ 0052:117C ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 0052:1188 ASMIPXINITIALIZE
+ 0052:11CE ASMIPXCANCELEVENT
+ 0052:11EA ASMIPXCLOSESOCKET
+ 0052:1206 ASMIPXGETINTERVALMARKER
+ 0052:121C ASMIPXLISTENFORPACKET
+ 0052:1238 ASMIPXOPENSOCKET
+ 0052:1260 ASMIPXRELINQUISHCONTROL
+ 0052:1276 ASMIPXSENDPACKET
+ 0052:1292 ASMSPXINITIALIZE
+ 0052:12C4 ASMSPXESTABLISHCONNECTION
+ 0052:12EC ASMSPXLISTENFORSEQUENCEDPACKET
+ 0052:1308 ASMSPXSENDSEQUENCEDPACKET
+ 0052:1326 ASMSPXTERMINATECONNECTION
+ 0052:1344 ASMIPXGETMAXPACKETSIZE
+ 0052:135A ASMIPXGETLOCALTARGET
+ 0052:13B4 _SetupEcb
+ 0052:1400 _FindFileServers
+ 0052:167A _ConnectToAnyFileServer
+ 0052:1784 _NcpTransaction
+ 0052:199E _DisconnectFromServer
+ 0052:19F0 _ReadPropertyValue
+ 0202:0002 _TransInfo
+ 0202:0032 _errno
+ 0202:003C __rpc_hostDS
+ 0202:003E _theTable
+ 0202:0056 _PreferredServerFound
+ 0202:0058 _FileServerCount
+ 0202:005A _ActiveFileServer
+ 0202:0076 __edata
+ 0202:0076 _edata
+ 0202:0080 _receive_failed_cnt
+ 0202:0082 _receive_fragmentCount
+ 0202:0084 _receive_code
+ 0202:0086 _conn_lookup
+ 0202:00E6 _receive_fragmentSize
+ 0202:00E8 _Servers
+ 0202:0124 _PreferredServer
+ 0202:0143 _receive_seq
+ 0202:0144 _nfy_failure_cnt
+ 0202:0146 _conn_failed_cnt
+ 0202:0148 _receive_spx_length
+ 0202:014A _enteripx
+ 0202:014E _receive_tail
+ 0202:0152 _receive_head
+ 0202:0156 _send_data
+ 0202:0157 _send_seq
+ 0202:0158 _socket
+ 0202:015A _receive_state
+ 0202:015C _chunk
+ 0202:0160 _receive_data
+ 0202:0162 _packet_size
+ 0202:0164 _max_num_send
+ 0202:0166 _ServerCache
+ 0202:01E6 _end
+ 0202:01E6 __end
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpc16c6.rpc b/public/sdk/rpc16/dos/dll/rpc16c6.rpc
new file mode 100644
index 000000000..6991f4b32
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16c6.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpc16dg3.map b/public/sdk/rpc16/dos/dll/rpc16dg3.map
new file mode 100644
index 000000000..1d331a245
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16dg3.map
@@ -0,0 +1,351 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H DGUDPC_TEXT CODE
+ 00000H 001BDH 001BEH EXPORTLT_TEXT CODE
+ 001C0H 018D2H 01713H _TEXT CODE
+ 018D4H 01997H 000C4H INT_TEXT CODE
+ 019A0H 02046H 006A7H COMDAT_SEG1 CODE
+ 02048H 02989H 00942H _DATA DATA
+ 0298AH 029A2H 00019H STRINGSEGMENT DATA
+ 029A4H 029A4H 00000H XIFB DATA
+ 029A4H 029A4H 00000H XIF DATA
+ 029A4H 029A4H 00000H XIFE DATA
+ 029A4H 029A4H 00000H CONST CONST
+ 029A4H 02B2FH 0018CH _BSS BSS
+ 02B30H 02B39H 0000AH c_common BSS
+
+ Origin Group
+ 0204:0 DGROUP
+
+ Address Publics by Name
+
+ 019A:0696 ??_C@_03EOPG@135?$AA@
+ 019A:069A ??_C@_0N@OGGG@ncadg_ip_udp?$AA@
+ 019A:0000 ASSIGNLOCALENDPOINT
+ 019A:0610 BEGINCALL
+ 019A:03BA CLIENTTOWERCONSTRUCT
+ 019A:04BC CLIENTTOWEREXPLODE
+ 019A:021A DEREGISTERSERVERADDRESS
+ 019A:061C ENDCALL
+ 0000:019A EXPORTTIME
+ 019A:00D0 FREELOCALENDPOINT
+ 019A:05F8 INQBUFFERLENGTH
+ 0000:009F I_DOSATEXIT
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:017C NDRCONVERT
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 018D:0006 oldint24
+ 018D:000A oldint2f
+ 018D:0004 our_psp
+ 019A:05AA QUERYCLIENTENDPOINT
+ 019A:02E4 RECEIVEPACKET
+ 019A:00F2 REGISTERSERVERADDRESS
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00EC RPCBINDINGFREE
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:011C RPCREGOPENKEY
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:012E RPCREGSETVALUE
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00F2 RPCSTRINGFREE
+ 019A:0226 SENDTOSERVER
+ 019A:05DC SETBUFFERLENGTH
+ 019A:0626 TRANSPORTLOAD
+ 001C:158A _atoi
+ 0000:0063 _CallExport
+ 0000:0000 _DOSDLLInit
+ 0204:0124 _driver_entry
+ 0204:0964 _edata
+ 0204:0AFA _end
+ 001C:0884 _endhostent
+ 0204:005C _errno
+ 0000:0046 _ExportInit
+ 0000:00A4 _GETENV
+ 0000:0081 _GetExportTableVersion
+ 001C:0C34 _gethostbyaddr
+ 001C:0A7C _gethostbyname
+ 001C:09D4 _gethostent
+ 0000:00B3 _GETPROCADDRR
+ 001C:0010 _htonl
+ 001C:001F _htons
+ 001C:03BC _inet_addr
+ 001C:0616 _inet_lnaof
+ 001C:06AC _inet_makeaddr
+ 001C:065E _inet_netof
+ 001C:04EE _inet_network
+ 001C:07A4 _inet_ntoa
+ 0204:0008 _LargestPacketSize
+ 0000:00A9 _LOADMODR
+ 001C:1309 _locater_bind
+ 001C:12FB _locater_close
+ 001C:12E4 _locater_open
+ 001C:139F _locater_send
+ 001C:136D _locater_unbind
+ 019A:0662 _MapStatus
+ 001C:160A _memcpy
+ 001C:1668 _memset
+ 001C:0010 _ntohl
+ 001C:001F _ntohs
+ 0204:0AF2 _segregs
+ 001C:0828 _sethostent
+ 018D:0059 _set_int_handlers
+ 001C:1570 _strlen
+ 0204:0068 _theTable
+ 0204:000C _TransInfo
+ 0000:00AE _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 001C:0D70 __bind
+ 001C:158E __catox
+ 001C:0DDA __close_socket
+ 001C:16B0 __cltoasub
+ 001C:16BD __cxtoa
+ 0204:0964 __edata
+ 0204:0AFA __end
+ 001C:154C __fillbuf
+ 0204:0AF0 __global_base
+ 001C:15E4 __itoa
+ 001C:1539 __lowio_so_fclose
+ 001C:1510 __lowio_so_fopen
+ 001C:1523 __lowio_so_rewind
+ 001C:0E32 __recvfrom
+ 0204:0066 __rpc_hostDS
+ 001C:0EBE __select
+ 001C:0F46 __sendto
+ 001C:0FCC __socket
+ 001C:0078 __so_atoui
+ 001C:1146 __so_check_binary_compatibility
+ 001C:0718 __so_convert_char_to_ascii
+ 001C:107C __so_drvropen
+ 001C:14D6 __so_fclose
+ 001C:13F6 __so_fgetc
+ 001C:1454 __so_fgets
+ 001C:14AA __so_fopen
+ 001C:036C __so_get_base
+ 001C:13D1 __so_get_code_seg
+ 001C:020A __so_get_netfiles_path
+ 001C:1142 __so_get_sock_pid
+ 001C:124A __so_get_status
+ 001C:13D4 __so_get_timer_cnt
+ 001C:019E __so_get_token
+ 001C:0028 __so_isdigit
+ 001C:0044 __so_isxdigit
+ 001C:0250 __so_mem_compare
+ 001C:128E __so_mult32
+ 001C:08A8 __so_parse_hosts_entry
+ 001C:1030 __so_process_exit
+ 001C:11EE __so_resolve_IP_addr_to_name
+ 001C:1194 __so_resolve_name_to_IP_addr
+ 001C:14F8 __so_rewind
+ 001C:1182 __so_send_the_ioctl_request
+ 001C:034C __so_skip_white_space
+ 001C:011E __so_strcat
+ 001C:0152 __so_strchr
+ 001C:00F6 __so_strcpy
+ 001C:02A2 __so_string_compare
+ 001C:017E __so_strlen
+ 001C:02E0 __so_valid_char
+ 001C:1600 __ultoa
+
+ Address Publics by Value
+
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 _DOSDLLInit
+ 0000:0000 Abs __ADBUSED
+ 0000:000C Abs __AHSHIFT
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F I_DOSATEXIT
+ 0000:00A4 _GETENV
+ 0000:00A9 _LOADMODR
+ 0000:00AE _UNLOADMODR
+ 0000:00B3 _GETPROCADDRR
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00EC RPCBINDINGFREE
+ 0000:00F2 RPCSTRINGFREE
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:011C RPCREGOPENKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:012E RPCREGSETVALUE
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:017C NDRCONVERT
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:019A EXPORTTIME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 001C:0010 _htonl
+ 001C:0010 _ntohl
+ 001C:001F _ntohs
+ 001C:001F _htons
+ 001C:0028 __so_isdigit
+ 001C:0044 __so_isxdigit
+ 001C:0078 __so_atoui
+ 001C:00F6 __so_strcpy
+ 001C:011E __so_strcat
+ 001C:0152 __so_strchr
+ 001C:017E __so_strlen
+ 001C:019E __so_get_token
+ 001C:020A __so_get_netfiles_path
+ 001C:0250 __so_mem_compare
+ 001C:02A2 __so_string_compare
+ 001C:02E0 __so_valid_char
+ 001C:034C __so_skip_white_space
+ 001C:036C __so_get_base
+ 001C:03BC _inet_addr
+ 001C:04EE _inet_network
+ 001C:0616 _inet_lnaof
+ 001C:065E _inet_netof
+ 001C:06AC _inet_makeaddr
+ 001C:0718 __so_convert_char_to_ascii
+ 001C:07A4 _inet_ntoa
+ 001C:0828 _sethostent
+ 001C:0884 _endhostent
+ 001C:08A8 __so_parse_hosts_entry
+ 001C:09D4 _gethostent
+ 001C:0A7C _gethostbyname
+ 001C:0C34 _gethostbyaddr
+ 001C:0D70 __bind
+ 001C:0DDA __close_socket
+ 001C:0E32 __recvfrom
+ 0000:1000 Abs __AHINCR
+ 001C:0EBE __select
+ 001C:0F46 __sendto
+ 001C:0FCC __socket
+ 001C:1030 __so_process_exit
+ 001C:107C __so_drvropen
+ 001C:1142 __so_get_sock_pid
+ 001C:1146 __so_check_binary_compatibility
+ 001C:1182 __so_send_the_ioctl_request
+ 001C:1194 __so_resolve_name_to_IP_addr
+ 001C:11EE __so_resolve_IP_addr_to_name
+ 001C:124A __so_get_status
+ 001C:128E __so_mult32
+ 001C:12E4 _locater_open
+ 001C:12FB _locater_close
+ 001C:1309 _locater_bind
+ 001C:136D _locater_unbind
+ 001C:139F _locater_send
+ 001C:13D1 __so_get_code_seg
+ 001C:13D4 __so_get_timer_cnt
+ 001C:13F6 __so_fgetc
+ 001C:1454 __so_fgets
+ 001C:14AA __so_fopen
+ 001C:14D6 __so_fclose
+ 001C:14F8 __so_rewind
+ 001C:1510 __lowio_so_fopen
+ 001C:1523 __lowio_so_rewind
+ 001C:1539 __lowio_so_fclose
+ 001C:154C __fillbuf
+ 001C:1570 _strlen
+ 001C:158A _atoi
+ 001C:158E __catox
+ 001C:15E4 __itoa
+ 001C:1600 __ultoa
+ 001C:160A _memcpy
+ 001C:1668 _memset
+ 001C:16B0 __cltoasub
+ 001C:16BD __cxtoa
+ 018D:0004 our_psp
+ 018D:0006 oldint24
+ 018D:000A oldint2f
+ 018D:0059 _set_int_handlers
+ 019A:0000 ASSIGNLOCALENDPOINT
+ 019A:00D0 FREELOCALENDPOINT
+ 019A:00F2 REGISTERSERVERADDRESS
+ 019A:021A DEREGISTERSERVERADDRESS
+ 019A:0226 SENDTOSERVER
+ 019A:02E4 RECEIVEPACKET
+ 019A:03BA CLIENTTOWERCONSTRUCT
+ 019A:04BC CLIENTTOWEREXPLODE
+ 019A:05AA QUERYCLIENTENDPOINT
+ 019A:05DC SETBUFFERLENGTH
+ 019A:05F8 INQBUFFERLENGTH
+ 019A:0610 BEGINCALL
+ 019A:061C ENDCALL
+ 019A:0626 TRANSPORTLOAD
+ 019A:0662 _MapStatus
+ 019A:0696 ??_C@_03EOPG@135?$AA@
+ 019A:069A ??_C@_0N@OGGG@ncadg_ip_udp?$AA@
+ 0204:0008 _LargestPacketSize
+ 0204:000C _TransInfo
+ 0204:005C _errno
+ 0204:0066 __rpc_hostDS
+ 0204:0068 _theTable
+ 0204:0124 _driver_entry
+ 0204:0964 _edata
+ 0204:0964 __edata
+ 0204:0AF0 __global_base
+ 0204:0AF2 _segregs
+ 0204:0AFA __end
+ 0204:0AFA _end
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpc16dg3.rpc b/public/sdk/rpc16/dos/dll/rpc16dg3.rpc
new file mode 100644
index 000000000..ddae8e0b5
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16dg3.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpc16dg6.map b/public/sdk/rpc16/dos/dll/rpc16dg6.map
new file mode 100644
index 000000000..5d7636f0d
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16dg6.map
@@ -0,0 +1,329 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H IPXCLNT_TEXT CODE
+ 00000H 00023H 00024H RPC16DG6_FIXED CODE
+ 00024H 001E1H 001BEH EXPORTLT_TEXT CODE
+ 001E2H 001E2H 00000H GETHOST_TEXT CODE
+ 001E2H 001E2H 00000H NOVELL_TEXT CODE
+ 001E2H 005A7H 003C6H _TEXT CODE
+ 005B0H 01F46H 01997H COMDAT_SEG1 CODE
+ 01F48H 01FC5H 0007EH _DATA DATA
+ 01FC6H 01FDEH 00019H STRINGSEGMENT DATA
+ 01FE0H 01FE0H 00000H XIFB DATA
+ 01FE0H 01FE0H 00000H XIF DATA
+ 01FE0H 01FE0H 00000H XIFE DATA
+ 01FE0H 01FE0H 00000H CONST CONST
+ 01FE0H 01FE0H 00000H _BSS BSS
+ 01FE0H 020D3H 000F4H c_common BSS
+
+ Origin Group
+ 01F4:0 DGROUP
+
+ Address Publics by Name
+
+ 005B:0A2C ??_C@_05LKBG@34280?$AA@
+ 005B:0A32 ??_C@_09OHNL@ncadg_ipx?$AA@
+ 005B:10A8 ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 005B:10FA ASMIPXCANCELEVENT
+ 005B:1116 ASMIPXCLOSESOCKET
+ 005B:11D4 ASMIPXDISCONNECTFROMTARGET
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 005B:1132 ASMIPXGETINTERVALMARKER
+ 005B:11F0 ASMIPXGETLOCALTARGET
+ 005B:11BE ASMIPXGETMAXPACKETSIZE
+ 005B:10B4 ASMIPXINITIALIZE
+ 005B:1148 ASMIPXLISTENFORPACKET
+ 005B:1164 ASMIPXOPENSOCKET
+ 005B:118C ASMIPXRELINQUISHCONTROL
+ 005B:11A2 ASMIPXSENDPACKET
+ 0000:0000 Unr ASMSPXABORTCONNECTION
+ 0000:0000 Unr ASMSPXESTABLISHCONNECTION
+ 0000:0000 Unr ASMSPXINITIALIZE
+ 0000:0000 Unr ASMSPXLISTENFORSEQUENCEDPACKET
+ 0000:0000 Unr ASMSPXSENDSEQUENCEDPACKET
+ 0000:0000 Unr ASMSPXTERMINATECONNECTION
+ 005B:016E ASSIGNLOCALENDPOINT
+ 005B:00BC BEGINCALL
+ 005B:07DA CLIENTTOWERCONSTRUCT
+ 005B:08C8 CLIENTTOWEREXPLODE
+ 005B:03A2 DEREGISTERSERVERADDRESS
+ 005B:0100 ENDCALL
+ 0002:019E EXPORTTIME
+ 005B:02D0 FREELOCALENDPOINT
+ 0002:00A3 I_DOSATEXIT
+ 0002:01B0 I_NSGETMEMORYALLOCATOR
+ 0002:00FC I_RPCALLOCATE
+ 0002:0102 I_RPCFREE
+ 0002:0108 I_RPCFREEBUFFER
+ 0002:010E I_RPCGETBUFFER
+ 0002:011A I_RPCNSBINDINGSETENTRYNAME
+ 0002:01A4 I_RPCREGISTEREDBUFFERALLOCATE
+ 0002:01AA I_RPCREGISTEREDBUFFERFREE
+ 0002:0114 I_RPCSENDRECEIVE
+ 0002:0156 I_RPCTRANSCLIENTMAXFRAG
+ 0002:00BC I_RPCTRANSCLIENTREALLOCBUFFER
+ 0002:013E NDRCCONTEXTBINDING
+ 0002:0144 NDRCCONTEXTMARSHALL
+ 0002:014A NDRCCONTEXTUNMARSHALL
+ 0002:0162 NDRCLIENTCONTEXTMARSHALL
+ 0002:0192 NDRCLIENTCONTEXTUNMARSHALL
+ 0002:0186 NDRCLIENTINITIALIZE
+ 0002:018C NDRCLIENTINITIALIZENEW
+ 0002:0180 NDRCONVERT
+ 0002:016E NDRFREEBUFFER
+ 0002:0174 NDRGETBUFFER
+ 0002:017A NDRPOINTERBUFFERSIZE
+ 0002:0168 NDRPOINTERMARSHALL
+ 0002:015C NDRPOINTERUNMARSHALL
+ 0002:0198 NDRSENDRECEIVE
+ 0002:01BC NDRSIMPLESTRUCTBUFFERSIZE
+ 0002:01B6 NDRSIMPLESTRUCTMARSHALL
+ 005B:09A4 QUERYCLIENTENDPOINT
+ 005B:04BA RECEIVEPACKET
+ 005B:0334 REGISTERSERVERADDRESS
+ 0002:00D0 RPCBINDINGCOPY
+ 0002:00F0 RPCBINDINGFREE
+ 0002:00E4 RPCBINDINGFROMSTRINGBINDING
+ 0002:00DF RPCBINDINGTOSTRINGBINDING
+ 0002:00EA RPCBINDINGVECTORFREE
+ 0002:00C1 RPCGETEXCEPTIONHANDLER
+ 0002:00CB RPCLEAVEEXCEPTION
+ 0002:012C RPCREGCLOSEKEY
+ 0002:0126 RPCREGCREATEKEY
+ 0002:0120 RPCREGOPENKEY
+ 0002:0138 RPCREGQUERYVALUE
+ 0002:0132 RPCREGSETVALUE
+ 0002:00C6 RPCSETEXCEPTIONHANDLER
+ 0002:0150 RPCSSDESTROYCLIENTCONTEXT
+ 0002:00D5 RPCSTRINGBINDINGCOMPOSE
+ 0002:00DA RPCSTRINGBINDINGPARSE
+ 0002:00F6 RPCSTRINGFREE
+ 005B:03BE SENDTOSERVER
+ 005B:09CE TRANSPORTLOAD
+ 005B:07D0 TRANSPORTUNLOAD
+ 01F4:0084 _ActiveFileServer
+ 005B:0AD8 _AddServerToCache
+ 001E:002C _atoi
+ 005B:0000 _ByteSwapShort
+ 0000:0000 Unr _CachedServerContacted
+ 0000:0000 Unr _CachedServerNotContacted
+ 0002:0067 _CallExport
+ 005B:0A3C _chtob
+ 005B:0092 _ClientCleanup
+ 005B:1510 _ConnectToAnyFileServer
+ 01F4:000A _consecutive_timeout_count
+ 005B:1834 _DisconnectFromServer
+ 0002:0004 _DOSDLLInit
+ 005B:0AC0 _DosGetTickCount
+ 01F4:00A0 _edata
+ 01F4:0194 _end
+ 01F4:00FE _enteripx
+ 01F4:0104 _ep_list
+ 01F4:005C _errno
+ 0002:004A _ExportInit
+ 01F4:0082 _FileServerCount
+ 005B:1296 _FindFileServers
+ 005B:0BB4 _FindServerInCache
+ 0002:00A8 _GETENV
+ 0002:0085 _GetExportTableVersion
+ 0002:00B7 _GETPROCADDRR
+ 005B:0F3E _IpxGetHostByName
+ 0002:00AD _LOADMODR
+ 01F4:0112 _max_num_send
+ 001E:0090 _memcpy
+ 001E:00EE _memset
+ 005B:161A _NcpTransaction
+ 01F4:00A0 _num_endpoints
+ 01F4:0102 _packet_size
+ 0000:0000 _post_ecb
+ 01F4:00DE _PreferredServer
+ 01F4:0080 _PreferredServerFound
+ 005B:1886 _ReadPropertyValue
+ 005B:0BF4 _SearchBindery
+ 005B:0CD0 _SearchWithSap
+ 01F4:0008 _Sequence
+ 01F4:0114 _ServerCache
+ 01F4:00A2 _Servers
+ 005B:124A _SetupEcb
+ 001E:0012 _strlen
+ 01F4:0068 _theTable
+ 01F4:000C _TransInfo
+ 0002:00B2 _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 001E:019A __aFFalmul
+ 001E:019A __aFFaulmul
+ 001E:01BC __aFlmul
+ 001E:01BC __aFulmul
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 001E:0030 __catox
+ 001E:0136 __cltoasub
+ 001E:0143 __cxtoa
+ 01F4:00A0 __edata
+ 01F4:0194 __end
+ 001E:01EE __fmemcmp
+ 001E:024A __fmemcpy
+ 001E:0328 __fmemset
+ 001E:02C2 __fstrcmp
+ 001E:02EC __fstrcpy
+ 001E:02A8 __fstrlen
+ 001E:0370 __fstrnicmp
+ 01F4:0066 __rpc_hostDS
+ 001E:0086 __ultoa
+
+ Address Publics by Value
+
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Unr ASMSPXTERMINATECONNECTION
+ 0000:0000 Unr ASMSPXESTABLISHCONNECTION
+ 0000:0000 Unr ASMSPXLISTENFORSEQUENCEDPACKET
+ 0000:0000 Unr ASMSPXINITIALIZE
+ 0000:0000 Abs __ADBUSED
+ 0000:0000 _post_ecb
+ 0000:0000 Unr ASMSPXSENDSEQUENCEDPACKET
+ 0000:0000 Unr _CachedServerNotContacted
+ 0000:0000 Unr ASMSPXABORTCONNECTION
+ 0000:0000 Unr _CachedServerContacted
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 0000:000C Abs __AHSHIFT
+ 0002:0004 _DOSDLLInit
+ 0002:004A _ExportInit
+ 0002:0067 _CallExport
+ 0002:0085 _GetExportTableVersion
+ 0002:00A3 I_DOSATEXIT
+ 0002:00A8 _GETENV
+ 0002:00AD _LOADMODR
+ 0002:00B2 _UNLOADMODR
+ 0002:00B7 _GETPROCADDRR
+ 0002:00BC I_RPCTRANSCLIENTREALLOCBUFFER
+ 0002:00C1 RPCGETEXCEPTIONHANDLER
+ 0002:00C6 RPCSETEXCEPTIONHANDLER
+ 0002:00CB RPCLEAVEEXCEPTION
+ 0002:00D0 RPCBINDINGCOPY
+ 0002:00D5 RPCSTRINGBINDINGCOMPOSE
+ 0002:00DA RPCSTRINGBINDINGPARSE
+ 0002:00DF RPCBINDINGTOSTRINGBINDING
+ 0002:00E4 RPCBINDINGFROMSTRINGBINDING
+ 0002:00EA RPCBINDINGVECTORFREE
+ 0002:00F0 RPCBINDINGFREE
+ 0002:00F6 RPCSTRINGFREE
+ 0002:00FC I_RPCALLOCATE
+ 0002:0102 I_RPCFREE
+ 0002:0108 I_RPCFREEBUFFER
+ 0002:010E I_RPCGETBUFFER
+ 0002:0114 I_RPCSENDRECEIVE
+ 0002:011A I_RPCNSBINDINGSETENTRYNAME
+ 0002:0120 RPCREGOPENKEY
+ 0002:0126 RPCREGCREATEKEY
+ 0002:012C RPCREGCLOSEKEY
+ 0002:0132 RPCREGSETVALUE
+ 0002:0138 RPCREGQUERYVALUE
+ 0002:013E NDRCCONTEXTBINDING
+ 0002:0144 NDRCCONTEXTMARSHALL
+ 0002:014A NDRCCONTEXTUNMARSHALL
+ 0002:0150 RPCSSDESTROYCLIENTCONTEXT
+ 0002:0156 I_RPCTRANSCLIENTMAXFRAG
+ 0002:015C NDRPOINTERUNMARSHALL
+ 0002:0162 NDRCLIENTCONTEXTMARSHALL
+ 0002:0168 NDRPOINTERMARSHALL
+ 0002:016E NDRFREEBUFFER
+ 0002:0174 NDRGETBUFFER
+ 0002:017A NDRPOINTERBUFFERSIZE
+ 0002:0180 NDRCONVERT
+ 0002:0186 NDRCLIENTINITIALIZE
+ 0002:018C NDRCLIENTINITIALIZENEW
+ 0002:0192 NDRCLIENTCONTEXTUNMARSHALL
+ 0002:0198 NDRSENDRECEIVE
+ 0002:019E EXPORTTIME
+ 0002:01A4 I_RPCREGISTEREDBUFFERALLOCATE
+ 0002:01AA I_RPCREGISTEREDBUFFERFREE
+ 0002:01B0 I_NSGETMEMORYALLOCATOR
+ 0002:01B6 NDRSIMPLESTRUCTMARSHALL
+ 0002:01BC NDRSIMPLESTRUCTBUFFERSIZE
+ 001E:0012 _strlen
+ 001E:002C _atoi
+ 001E:0030 __catox
+ 001E:0086 __ultoa
+ 001E:0090 _memcpy
+ 001E:00EE _memset
+ 001E:0136 __cltoasub
+ 001E:0143 __cxtoa
+ 001E:019A __aFFaulmul
+ 001E:019A __aFFalmul
+ 001E:01BC __aFlmul
+ 001E:01BC __aFulmul
+ 001E:01EE __fmemcmp
+ 001E:024A __fmemcpy
+ 001E:02A8 __fstrlen
+ 001E:02C2 __fstrcmp
+ 001E:02EC __fstrcpy
+ 001E:0328 __fmemset
+ 001E:0370 __fstrnicmp
+ 005B:0000 _ByteSwapShort
+ 005B:0092 _ClientCleanup
+ 005B:00BC BEGINCALL
+ 005B:0100 ENDCALL
+ 005B:016E ASSIGNLOCALENDPOINT
+ 005B:02D0 FREELOCALENDPOINT
+ 005B:0334 REGISTERSERVERADDRESS
+ 005B:03A2 DEREGISTERSERVERADDRESS
+ 005B:03BE SENDTOSERVER
+ 005B:04BA RECEIVEPACKET
+ 005B:07D0 TRANSPORTUNLOAD
+ 005B:07DA CLIENTTOWERCONSTRUCT
+ 005B:08C8 CLIENTTOWEREXPLODE
+ 005B:09A4 QUERYCLIENTENDPOINT
+ 005B:09CE TRANSPORTLOAD
+ 005B:0A2C ??_C@_05LKBG@34280?$AA@
+ 005B:0A32 ??_C@_09OHNL@ncadg_ipx?$AA@
+ 005B:0A3C _chtob
+ 0000:1000 Abs __AHINCR
+ 005B:0AC0 _DosGetTickCount
+ 005B:0AD8 _AddServerToCache
+ 005B:0BB4 _FindServerInCache
+ 005B:0BF4 _SearchBindery
+ 005B:0CD0 _SearchWithSap
+ 005B:0F3E _IpxGetHostByName
+ 005B:10A8 ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 005B:10B4 ASMIPXINITIALIZE
+ 005B:10FA ASMIPXCANCELEVENT
+ 005B:1116 ASMIPXCLOSESOCKET
+ 005B:1132 ASMIPXGETINTERVALMARKER
+ 005B:1148 ASMIPXLISTENFORPACKET
+ 005B:1164 ASMIPXOPENSOCKET
+ 005B:118C ASMIPXRELINQUISHCONTROL
+ 005B:11A2 ASMIPXSENDPACKET
+ 005B:11BE ASMIPXGETMAXPACKETSIZE
+ 005B:11D4 ASMIPXDISCONNECTFROMTARGET
+ 005B:11F0 ASMIPXGETLOCALTARGET
+ 005B:124A _SetupEcb
+ 005B:1296 _FindFileServers
+ 005B:1510 _ConnectToAnyFileServer
+ 005B:161A _NcpTransaction
+ 005B:1834 _DisconnectFromServer
+ 005B:1886 _ReadPropertyValue
+ 01F4:0008 _Sequence
+ 01F4:000A _consecutive_timeout_count
+ 01F4:000C _TransInfo
+ 01F4:005C _errno
+ 01F4:0066 __rpc_hostDS
+ 01F4:0068 _theTable
+ 01F4:0080 _PreferredServerFound
+ 01F4:0082 _FileServerCount
+ 01F4:0084 _ActiveFileServer
+ 01F4:00A0 __edata
+ 01F4:00A0 _num_endpoints
+ 01F4:00A0 _edata
+ 01F4:00A2 _Servers
+ 01F4:00DE _PreferredServer
+ 01F4:00FE _enteripx
+ 01F4:0102 _packet_size
+ 01F4:0104 _ep_list
+ 01F4:0112 _max_num_send
+ 01F4:0114 _ServerCache
+ 01F4:0194 __end
+ 01F4:0194 _end
+
+Program entry point at 0002:0004
diff --git a/public/sdk/rpc16/dos/dll/rpc16dg6.rpc b/public/sdk/rpc16/dos/dll/rpc16dg6.rpc
new file mode 100644
index 000000000..6ef28b915
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpc16dg6.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpcns.map b/public/sdk/rpc16/dos/dll/rpcns.map
new file mode 100644
index 000000000..a1e662ef5
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpcns.map
@@ -0,0 +1,305 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H NSICLNT_TEXT CODE
+ 00000H 00000H 00000H NSICLT_C_TEXT CODE
+ 00000H 00000H 00000H CBIND_TEXT CODE
+ 00000H 001BDH 001BEH EXPORTNS_TEXT CODE
+ 001BEH 00244H 00087H EXCEPT86_TEXT CODE
+ 00246H 00246H 00000H UTIL_TEXT CODE
+ 00246H 00298H 00053H MEM_TEXT CODE
+ 0029AH 0037EH 000E5H LMDLL_TEXT CODE
+ 00380H 0054DH 001CEH _TEXT CODE
+ 00550H 01C5AH 0170BH COMDAT_SEG1 CODE
+ 01C5CH 01F37H 002DCH _DATA DATA
+ 01F38H 02014H 000DDH STRINGSEGMENT DATA
+ 02016H 02016H 00000H XIFB DATA
+ 02016H 02016H 00000H XIF DATA
+ 02016H 02016H 00000H XIFE DATA
+ 02016H 02031H 0001CH TABLESEGMENT DATA
+ 02032H 02033H 00002H CONST CONST
+ 02034H 02067H 00034H _BSS BSS
+ 02070H 02070H 00000H c_common BSS
+
+ Origin Group
+ 01C5:0 DGROUP
+
+ Address Publics by Name
+
+ 0055:1500 ??0WIDE_STRING@@REC@PEE@Z
+ 0055:15E4 ??2@ZAPEXI@Z
+ 0055:15F2 ??3@ZAXPEX@Z
+ 0055:08F8 ??_C@_07DFNK@ncalrpc?$AA@
+ 0055:0900 ??_C@_08DNBJ@ncacn_np?$AA@
+ 0055:14BA ??_C@_08GAHO@Endpoint?$AA@
+ 0055:14A0 ??_C@_08OBCM@Protocol?$AA@
+ 0055:146A ??_C@_0BB@EHCE@?2mailslot?2Resp_c?$AA@
+ 0055:1456 ??_C@_0BE@JFMA@?2?2?$CK?2mailslot?2Resp_s?$AA@
+ 0055:147C ??_C@_0CD@LHG@Software?2Microsoft?2Rpc?2NameServi@
+ 0055:16FE ??_C@_0N@NHGH@DefaultEntry?$AA@
+ 0055:16F0 ??_C@_0O@JCMN@DefaultSyntax?$AA@
+ 0055:14C4 ??_C@_0O@MCEM@?2pipe?2locator?$AA@
+ 0055:14AA ??_C@_0P@NOEJ@NetworkAddress?$AA@
+ 01C5:01A4 ?LocalMS@@3PEDE
+ 01C5:01A0 ?MailslotName@@3PEDE
+ 01C5:03F6 ?NsiStringBinding@@3PEEE
+ 0055:06CE ?RandomNumber@@ZAHXZ
+ 0055:0388 ?RpcNsBindingImportBeginW@@ZCGKPEGPEXPEU_GUID@@PEPEX@Z
+ 0055:0000 ?RpcNsBindingLookupBeginW@@ZCGKPEGPEXPEU_GUID@@KPEPEX@Z
+ 0029:0034 DOSDELETEMAILSLOT
+ 0029:001F DOSMAKEMAILSLOT
+ 0029:0026 DOSREADMAILSLOT
+ 0029:002D DOSWRITEMAILSLOT
+ 0000:019A EXPORTTIME
+ 0000:009F I_DOSATEXIT
+ 0055:1316 I_GETDEFAULTENTRYSYNTAX
+ 0055:124A I_NSCLIENTBINDDONE
+ 0055:0EC2 I_NSCLIENTBINDSEARCH
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0024:0022 MIDL_USER_ALLOCATE
+ 0024:003B MIDL_USER_FREE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:017C NDRCONVERT
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0029:000A NETGETDCNAME
+ 0029:0011 NETSERVERENUM2
+ 0029:0018 NETWKSTAGETINFO
+ 0024:0006 NSALLOCATORSETUP
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00EC RPCBINDINGFREE
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0055:087E RPCNSBINDINGIMPORTBEGINA
+ 0055:04AC RPCNSBINDINGIMPORTDONE
+ 0055:0412 RPCNSBINDINGIMPORTNEXT
+ 0055:07FE RPCNSBINDINGLOOKUPBEGINA
+ 0055:030A RPCNSBINDINGLOOKUPDONE
+ 0055:0124 RPCNSBINDINGLOOKUPNEXT
+ 0055:0702 RPCNSBINDINGSELECT
+ 0055:0518 RPCNSMGMTHANDLESETEXPAGE
+ 001B:004D RPCRAISEEXCEPTION
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:011C RPCREGOPENKEY
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:012E RPCREGSETVALUE
+ 001B:000E RPCSETEXCEPTION
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00F2 RPCSTRINGFREE
+ 0038:0090 _atoi
+ 0055:1326 _BroadcastAQuery
+ 0000:0063 _CallExport
+ 0055:1602 _CallExportInit
+ 0055:1604 _CopyString
+ 01C5:03F0 _DefaultName
+ 01C5:019C _DefaultSyntax
+ 0000:0000 _DOSDLLInit
+ 01C5:03E4 _edata
+ 01C5:0420 _end
+ 01C5:01A8 _errno
+ 0000:0046 _ExportInit
+ 01C5:03F4 _fSyntaxDefaultsLoaded
+ 0055:1646 _GetDefaultEntrys
+ 0000:00A4 _GETENV
+ 0000:0081 _GetExportTableVersion
+ 0000:00B3 _GETPROCADDRR
+ 0000:00A9 _LOADMODR
+ 0055:14D2 _MapException
+ 0038:00EA _memset
+ 01C5:03EC _NsiClntBinding
+ 01C5:0058 _NsiC_ClientIfHandle
+ 01C5:020C _NsiToRpcStatus
+ 0055:090A _nsi_binding_lookup_begin
+ 0055:0ACA _nsi_binding_lookup_done
+ 0055:0BB4 _nsi_binding_lookup_next
+ 0055:0CEC _nsi_mgmt_handle_set_exp_age
+ 0055:0DDA _RegGetString
+ 0029:003B _RpcNsLmDiscard
+ 0038:004C _strcmp
+ 0038:0010 _strcpy
+ 0038:0076 _strlen
+ 01C5:01B4 _theTable
+ 0055:159C _UnicodeToAscii
+ 0000:00AE _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0038:0132 __aFlmul
+ 0038:0132 __aFulmul
+ 0038:0164 __aFulrem
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 0038:0094 __catox
+ 01C5:03E4 __edata
+ 01C5:0420 __end
+ 01C5:023C __NsAllocatorInitialized
+ 01C5:01B2 __rpc_hostDS
+
+ Address Publics by Value
+
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 _DOSDLLInit
+ 0000:0000 Abs __ADBUSED
+ 0000:000C Abs __AHSHIFT
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F I_DOSATEXIT
+ 0000:00A4 _GETENV
+ 0000:00A9 _LOADMODR
+ 0000:00AE _UNLOADMODR
+ 0000:00B3 _GETPROCADDRR
+ 0000:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0000:00BD RPCGETEXCEPTIONHANDLER
+ 0000:00C2 RPCSETEXCEPTIONHANDLER
+ 0000:00C7 RPCLEAVEEXCEPTION
+ 0000:00CC RPCBINDINGCOPY
+ 0000:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0000:00D6 RPCSTRINGBINDINGPARSE
+ 0000:00DB RPCBINDINGTOSTRINGBINDING
+ 0000:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0000:00E6 RPCBINDINGVECTORFREE
+ 0000:00EC RPCBINDINGFREE
+ 0000:00F2 RPCSTRINGFREE
+ 0000:00F8 I_RPCALLOCATE
+ 0000:00FE I_RPCFREE
+ 0000:0104 I_RPCFREEBUFFER
+ 0000:010A I_RPCGETBUFFER
+ 0000:0110 I_RPCSENDRECEIVE
+ 0000:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0000:011C RPCREGOPENKEY
+ 0000:0122 RPCREGCREATEKEY
+ 0000:0128 RPCREGCLOSEKEY
+ 0000:012E RPCREGSETVALUE
+ 0000:0134 RPCREGQUERYVALUE
+ 0000:013A NDRCCONTEXTBINDING
+ 0000:0140 NDRCCONTEXTMARSHALL
+ 0000:0146 NDRCCONTEXTUNMARSHALL
+ 0000:014C RPCSSDESTROYCLIENTCONTEXT
+ 0000:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0000:0158 NDRPOINTERUNMARSHALL
+ 0000:015E NDRCLIENTCONTEXTMARSHALL
+ 0000:0164 NDRPOINTERMARSHALL
+ 0000:016A NDRFREEBUFFER
+ 0000:0170 NDRGETBUFFER
+ 0000:0176 NDRPOINTERBUFFERSIZE
+ 0000:017C NDRCONVERT
+ 0000:0182 NDRCLIENTINITIALIZE
+ 0000:0188 NDRCLIENTINITIALIZENEW
+ 0000:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0000:0194 NDRSENDRECEIVE
+ 0000:019A EXPORTTIME
+ 0000:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0000:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0000:01AC I_NSGETMEMORYALLOCATOR
+ 0000:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0000:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 001B:000E RPCSETEXCEPTION
+ 001B:004D RPCRAISEEXCEPTION
+ 0024:0006 NSALLOCATORSETUP
+ 0024:0022 MIDL_USER_ALLOCATE
+ 0024:003B MIDL_USER_FREE
+ 0029:000A NETGETDCNAME
+ 0029:0011 NETSERVERENUM2
+ 0029:0018 NETWKSTAGETINFO
+ 0029:001F DOSMAKEMAILSLOT
+ 0029:0026 DOSREADMAILSLOT
+ 0029:002D DOSWRITEMAILSLOT
+ 0029:0034 DOSDELETEMAILSLOT
+ 0029:003B _RpcNsLmDiscard
+ 0038:0010 _strcpy
+ 0038:004C _strcmp
+ 0038:0076 _strlen
+ 0038:0090 _atoi
+ 0038:0094 __catox
+ 0038:00EA _memset
+ 0038:0132 __aFulmul
+ 0038:0132 __aFlmul
+ 0038:0164 __aFulrem
+ 0055:0000 ?RpcNsBindingLookupBeginW@@ZCGKPEGPEXPEU_GUID@@KPEPEX@Z
+ 0055:0124 RPCNSBINDINGLOOKUPNEXT
+ 0055:030A RPCNSBINDINGLOOKUPDONE
+ 0055:0388 ?RpcNsBindingImportBeginW@@ZCGKPEGPEXPEU_GUID@@PEPEX@Z
+ 0055:0412 RPCNSBINDINGIMPORTNEXT
+ 0055:04AC RPCNSBINDINGIMPORTDONE
+ 0055:0518 RPCNSMGMTHANDLESETEXPAGE
+ 0055:06CE ?RandomNumber@@ZAHXZ
+ 0055:0702 RPCNSBINDINGSELECT
+ 0055:07FE RPCNSBINDINGLOOKUPBEGINA
+ 0055:087E RPCNSBINDINGIMPORTBEGINA
+ 0055:08F8 ??_C@_07DFNK@ncalrpc?$AA@
+ 0055:0900 ??_C@_08DNBJ@ncacn_np?$AA@
+ 0055:090A _nsi_binding_lookup_begin
+ 0000:1000 Abs __AHINCR
+ 0055:0ACA _nsi_binding_lookup_done
+ 0055:0BB4 _nsi_binding_lookup_next
+ 0055:0CEC _nsi_mgmt_handle_set_exp_age
+ 0055:0DDA _RegGetString
+ 0055:0EC2 I_NSCLIENTBINDSEARCH
+ 0055:124A I_NSCLIENTBINDDONE
+ 0055:1316 I_GETDEFAULTENTRYSYNTAX
+ 0055:1326 _BroadcastAQuery
+ 0055:1456 ??_C@_0BE@JFMA@?2?2?$CK?2mailslot?2Resp_s?$AA@
+ 0055:146A ??_C@_0BB@EHCE@?2mailslot?2Resp_c?$AA@
+ 0055:147C ??_C@_0CD@LHG@Software?2Microsoft?2Rpc?2NameServi@
+ 0055:14A0 ??_C@_08OBCM@Protocol?$AA@
+ 0055:14AA ??_C@_0P@NOEJ@NetworkAddress?$AA@
+ 0055:14BA ??_C@_08GAHO@Endpoint?$AA@
+ 0055:14C4 ??_C@_0O@MCEM@?2pipe?2locator?$AA@
+ 0055:14D2 _MapException
+ 0055:1500 ??0WIDE_STRING@@REC@PEE@Z
+ 0055:159C _UnicodeToAscii
+ 0055:15E4 ??2@ZAPEXI@Z
+ 0055:15F2 ??3@ZAXPEX@Z
+ 0055:1602 _CallExportInit
+ 0055:1604 _CopyString
+ 0055:1646 _GetDefaultEntrys
+ 0055:16F0 ??_C@_0O@JCMN@DefaultSyntax?$AA@
+ 0055:16FE ??_C@_0N@NHGH@DefaultEntry?$AA@
+ 01C5:0058 _NsiC_ClientIfHandle
+ 01C5:019C _DefaultSyntax
+ 01C5:01A0 ?MailslotName@@3PEDE
+ 01C5:01A4 ?LocalMS@@3PEDE
+ 01C5:01A8 _errno
+ 01C5:01B2 __rpc_hostDS
+ 01C5:01B4 _theTable
+ 01C5:020C _NsiToRpcStatus
+ 01C5:023C __NsAllocatorInitialized
+ 01C5:03E4 _edata
+ 01C5:03E4 __edata
+ 01C5:03EC _NsiClntBinding
+ 01C5:03F0 _DefaultName
+ 01C5:03F4 _fSyntaxDefaultsLoaded
+ 01C5:03F6 ?NsiStringBinding@@3PEEE
+ 01C5:0420 _end
+ 01C5:0420 __end
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpcns.rpc b/public/sdk/rpc16/dos/dll/rpcns.rpc
new file mode 100644
index 000000000..45a62f031
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpcns.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpcnslm.map b/public/sdk/rpc16/dos/dll/rpcnslm.map
new file mode 100644
index 000000000..90e56f943
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpcnslm.map
@@ -0,0 +1,364 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 000ADH 000AEH EXPORTLM_TEXT CODE
+ 000AEH 01B4BH 01A9EH CANON_TEXT CODE
+ 01B4CH 02408H 008BDH _TEXT CODE
+ 0240AH 024D5H 000CCH NETLIB CODE
+ 024D6H 02B0DH 00638H SECURITY_TEXT CODE
+ 02B0EH 02B0EH 00000H SSI_TEXT CODE
+ 02B0EH 02B9BH 0008EH SERVER_TEXT CODE
+ 02B9CH 02B9CH 00000H SRVSTRNG_TEXT CODE
+ 02B9CH 02D9DH 00202H WKSTA_TEXT CODE
+ 02D9EH 02D9EH 00000H DLLMGMT_TEXT CODE
+ 02D9EH 031D9H 0043CH MAILSLOT_TEXT CODE
+ 031DAH 033A3H 001CAH RPC_TEXT CODE
+ 033B0H 033B1H 00002H REMOTE_TEXT CODE
+ 033B2H 034B7H 00106H UTIL_TEXT CODE
+ 034B8H 034DAH 00023H ASMLIB_TEXT CODE
+ 034DCH 034DCH 00000H APIMESS_TEXT CODE
+ 034DCH 034DCH 00000H DEFALLOC_TEXT CODE
+ 034DCH 034DCH 00000H DEFFREE_TEXT CODE
+ 034DCH 03539H 0005EH DEFMEMRT_TEXT CODE
+ 0353AH 0353AH 00000H NULLSTR_TEXT CODE
+ 03540H 047D7H 01298H APITABLD5_DATA FAR_DATA
+ 047D8H 04EFFH 00728H _DATA DATA
+ 04F00H 04F79H 0007AH STRINGSEGMENT DATA
+ 04F7AH 04F7AH 00000H XIFB DATA
+ 04F7AH 04F81H 00008H XIF DATA
+ 04F82H 04F82H 00000H XIFE DATA
+ 04F82H 051E6H 00265H CONST CONST
+ 051E8H 051E8H 00000H _BSS BSS
+
+ Origin Group
+ 047D:0 DGROUP
+
+ Address Publics by Name
+
+ 01B4:0516 Canonicalize
+ 033B:0000 DEADTABLEENTRY
+ 02D9:0132 DOSDELETEMAILSLOT
+ 01B4:0656 DOSICANONICALIZE
+ 02D9:018E DOSMAKEMAILSLOT
+ 02D9:02E4 DOSREADMAILSLOT
+ 02D9:036E DOSWRITEMAILSLOT
+ 033B:0002 I_NETGETCDNAMES
+ 000A:14E6 I_NETNAMECOMPARE
+ 000A:000E I_NETPATHCANONICALIZE
+ 000A:0932 I_NETPATHTYPE
+ 01B4:0599 l0_PathSep
+ 01B4:05A4 l1_SkipBack
+ 01B4:064C l2_ScanPathChar
+ 01B4:0697 l3_PathChrCmp
+ 01B4:06F0 l4_NameTrans
+ 01B4:0715 l5_NORMSCAN
+ 01B4:0762 l6_GetLet
+ 01B4:079B l7_SPCHK
+ 01B4:07A2 l8_PackName
+ 033B:008E MYDOSALLOCSEG
+ 033B:00C8 MYDOSFREESEG
+ 033B:00E6 MYDOSREALLOCSEG
+ 024D:0006 NETGETDCNAME
+ 031D:00FE NETIISREMOTE
+ 031D:000A NETIREMOTEAPI
+ 02B9:000C NETSERVERENUM2
+ 02B0:000E NETSERVERGETINFO
+ 02B9:00F2 NETWKSTAGETINFO
+ 01B4:059B PathSepGotCh
+ 000A:0116 R_I_NETPATHCANONICALIZE
+ 024D:009A WGETDCNAME
+ 000A:158A WI_NETNAMECOMPARE
+ 000A:0144 WI_NETPATHCANONICALIZE
+ 000A:09D4 WI_NETPATHTYPE
+ 02B9:01AA WWKSTAGETINFO
+ 047D:0698 _AdminProcess
+ 047D:06AC _AdminProcessCount
+ 047D:06AE _AdminProcessSem
+ 047D:0724 _ALLOCATOR
+ 0354:0000 _APItable
+ 02D9:000E _build_mailslot_name
+ 047D:067A _Caller_Info
+ 0000:0063 _CallExport
+ 047D:00DC _cbMaxPathCompLen
+ 047D:00DA _cbMaxPathLen
+ 047D:066A _cname
+ 047D:068E _Data_Sem
+ 01B4:0826 _DoInt
+ 01B4:0829 _DoIntR
+ 01B4:082C _DoIntx
+ 047D:06B4 _DomainSem
+ 0000:0000 _DOSDLLInit
+ 047D:0A18 _edata
+ 047D:06F8 _Encrypt_Sem
+ 047D:0A18 _end
+ 047D:0008 _errno
+ 0000:0046 _ExportInit
+ 0000:00A4 _FREE
+ 047D:072C _FREEMEM
+ 0000:00A9 _GETENV
+ 034B:0008 _getenv_addr
+ 0000:0081 _GetExportTableVersion
+ 000A:1670 _GetToken
+ 024D:058E _get_temp_ms
+ 01B4:01EA _ininlsf
+ 047D:06C8 _LogonDCName
+ 047D:06E8 _LogonDomain
+ 0000:009F _MALLOC
+ 01B4:001C _memsetf
+ 047D:06FC _MslotName
+ 047D:0882 _num_server_info
+ 047D:06B2 _PinballInstalled
+ 047D:06B8 _PrimaryDCName
+ 047D:06D8 _PrimaryDomain
+ 047D:0692 _RC_Sem
+ 034B:001C _rdr_open
+ 047D:0696 _Reader_Count
+ 047D:0728 _REALLOCATOR
+ 01B4:03A4 _strcatf
+ 01B4:004E _strchrf
+ 01B4:0340 _strcmpf
+ 01B4:036C _strcpyf
+ 01B4:018E _strcspnf
+ 01B4:0296 _stricmpf
+ 01B4:0326 _strlenf
+ 01B4:00DA _strncpyf
+ 01B4:007C _strnicmpf
+ 01B4:0104 _strrchrf
+ 01B4:0132 _strspnf
+ 0240:000A _strtailf
+ 01B4:02EC _struprf
+ 047D:0014 _theTable
+ 047D:088E _txt_REM_connection_info_0
+ 047D:0890 _txt_REM_connection_info_1
+ 047D:07EE _txt_REM_dc_name
+ 047D:07BA _txt_REM_I_NetListCanonicalizeP
+ 047D:07C4 _txt_REM_I_NetNameCanonicalizeP
+ 047D:07D2 _txt_REM_I_NetNameCompare_P
+ 047D:07D7 _txt_REM_I_NetNameValidate_P
+ 047D:07CA _txt_REM_I_NetPathCanonicalizeP
+ 047D:07DB _txt_REM_I_NetPathCompare_P
+ 047D:07E0 _txt_REM_I_NetPathType_P
+ 047D:0898 _txt_REM_NetConnectionEnum_P
+ 047D:07E4 _txt_REM_NetGetDCName_P
+ 047D:07E8 _txt_REM_NetLogonEnum_P
+ 047D:07F2 _txt_REM_NetServerAdminCommand_
+ 047D:07F2 _txt_REM_NetServerAdminCom_P
+ 047D:089F _txt_REM_NetServerDiskEnum_P
+ 047D:07FB _txt_REM_NetServerEnum2_P
+ 047D:0803 _txt_REM_NetServerEnum_P
+ 047D:0884 _txt_REM_NetServerGetInfo_P
+ 047D:0889 _txt_REM_NetServerSetInfo_P
+ 047D:08A8 _txt_REM_NetWkstaGetInfo_P
+ 047D:0903 _txt_REM_NetWkstaSetInfo_P
+ 047D:098C _txt_REM_NetWkstaSetUID_P
+ 047D:0981 _txt_REM_NetWkstaUserLogoff_P
+ 047D:0976 _txt_REM_NetWkstaUserLogon_P
+ 047D:0A16 _txt_REM_nulstr
+ 047D:07F9 _txt_REM_server_admin_command
+ 047D:08A5 _txt_REM_server_diskenum
+ 047D:0809 _txt_REM_server_info_0
+ 047D:080D _txt_REM_server_info_1
+ 047D:0815 _txt_REM_server_info_2
+ 047D:0846 _txt_REM_server_info_3
+ 047D:087A _txt_REM_server_info_table
+ 047D:0972 _txt_REM_user_logoff_info_1
+ 047D:094F _txt_REM_user_logon_info_0
+ 047D:0954 _txt_REM_user_logon_info_1
+ 047D:0969 _txt_REM_user_logon_info_2
+ 047D:08AD _txt_REM_wksta_info_0
+ 047D:0908 _txt_REM_wksta_info_0_setinf
+ 047D:08CF _txt_REM_wksta_info_1
+ 047D:08F4 _txt_REM_wksta_info_10
+ 047D:092A _txt_REM_wksta_info_1_setinf
+ 047D:08FC _txt_REM_WWkstaGetInfo_P
+ 047D:0654 _uname
+ 047D:068A _Writer_Sem
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:9876 Abs __anlsused
+ 047D:021A __CollateTable
+ 01B4:0442 __DOSCASEMAP
+ 01B4:03EC __DOSGETCOLLATE
+ 047D:09CB __DosMVDMErrorMsg
+ 01B4:07D8 __DosVersionCheck
+ 0000:0001 Abs __DosVersionCheckInit
+ 047D:0994 __DosVersionCheckMsg
+ 047D:0A18 __edata
+ 047D:0A18 __end
+ 047D:0A15 __InMVDMBox
+ 047D:0012 __rpc_hostDS
+ 047D:041A __ToLowerCaseTable
+ 047D:031A __ToUpperCaseTable
+ 034D:000C ___default_allocator
+ 034D:0040 ___default_available
+ 034D:0058 ___default_freemem
+ 034D:0028 ___default_reallocator
+ 01B4:08AB ___segread
+ 047D:051A ____ctype
+ 047D:051A ____ctype_
+
+ Address Publics by Value
+
+ 0000:0000 _DOSDLLInit
+ 0000:0000 Abs __ADBUSED
+ 0000:0000 Abs __ACRTUSED
+ 0000:0001 Abs __DosVersionCheckInit
+ 0000:0046 _ExportInit
+ 0000:0063 _CallExport
+ 0000:0081 _GetExportTableVersion
+ 0000:009F _MALLOC
+ 0000:00A4 _FREE
+ 0000:00A9 _GETENV
+ 000A:000E I_NETPATHCANONICALIZE
+ 000A:0116 R_I_NETPATHCANONICALIZE
+ 000A:0144 WI_NETPATHCANONICALIZE
+ 000A:0932 I_NETPATHTYPE
+ 000A:09D4 WI_NETPATHTYPE
+ 000A:14E6 I_NETNAMECOMPARE
+ 000A:158A WI_NETNAMECOMPARE
+ 000A:1670 _GetToken
+ 01B4:001C _memsetf
+ 01B4:004E _strchrf
+ 01B4:007C _strnicmpf
+ 01B4:00DA _strncpyf
+ 01B4:0104 _strrchrf
+ 01B4:0132 _strspnf
+ 01B4:018E _strcspnf
+ 01B4:01EA _ininlsf
+ 01B4:0296 _stricmpf
+ 01B4:02EC _struprf
+ 01B4:0326 _strlenf
+ 01B4:0340 _strcmpf
+ 01B4:036C _strcpyf
+ 01B4:03A4 _strcatf
+ 01B4:03EC __DOSGETCOLLATE
+ 01B4:0442 __DOSCASEMAP
+ 01B4:0516 Canonicalize
+ 01B4:0599 l0_PathSep
+ 01B4:059B PathSepGotCh
+ 01B4:05A4 l1_SkipBack
+ 01B4:064C l2_ScanPathChar
+ 01B4:0656 DOSICANONICALIZE
+ 01B4:0697 l3_PathChrCmp
+ 01B4:06F0 l4_NameTrans
+ 01B4:0715 l5_NORMSCAN
+ 01B4:0762 l6_GetLet
+ 01B4:079B l7_SPCHK
+ 01B4:07A2 l8_PackName
+ 01B4:07D8 __DosVersionCheck
+ 01B4:0826 _DoInt
+ 01B4:0829 _DoIntR
+ 01B4:082C _DoIntx
+ 01B4:08AB ___segread
+ 0240:000A _strtailf
+ 024D:0006 NETGETDCNAME
+ 024D:009A WGETDCNAME
+ 024D:058E _get_temp_ms
+ 02B0:000E NETSERVERGETINFO
+ 02B9:000C NETSERVERENUM2
+ 02B9:00F2 NETWKSTAGETINFO
+ 02B9:01AA WWKSTAGETINFO
+ 02D9:000E _build_mailslot_name
+ 02D9:0132 DOSDELETEMAILSLOT
+ 02D9:018E DOSMAKEMAILSLOT
+ 02D9:02E4 DOSREADMAILSLOT
+ 02D9:036E DOSWRITEMAILSLOT
+ 031D:000A NETIREMOTEAPI
+ 031D:00FE NETIISREMOTE
+ 033B:0000 DEADTABLEENTRY
+ 033B:0002 I_NETGETCDNAMES
+ 033B:008E MYDOSALLOCSEG
+ 033B:00C8 MYDOSFREESEG
+ 033B:00E6 MYDOSREALLOCSEG
+ 034B:0008 _getenv_addr
+ 034B:001C _rdr_open
+ 034D:000C ___default_allocator
+ 034D:0028 ___default_reallocator
+ 034D:0040 ___default_available
+ 034D:0058 ___default_freemem
+ 0354:0000 _APItable
+ 047D:0008 _errno
+ 047D:0012 __rpc_hostDS
+ 047D:0014 _theTable
+ 047D:00DA _cbMaxPathLen
+ 047D:00DC _cbMaxPathCompLen
+ 047D:021A __CollateTable
+ 047D:031A __ToUpperCaseTable
+ 047D:041A __ToLowerCaseTable
+ 047D:051A ____ctype
+ 047D:051A ____ctype_
+ 047D:0654 _uname
+ 047D:066A _cname
+ 047D:067A _Caller_Info
+ 047D:068A _Writer_Sem
+ 047D:068E _Data_Sem
+ 047D:0692 _RC_Sem
+ 047D:0696 _Reader_Count
+ 047D:0698 _AdminProcess
+ 047D:06AC _AdminProcessCount
+ 047D:06AE _AdminProcessSem
+ 047D:06B2 _PinballInstalled
+ 047D:06B4 _DomainSem
+ 047D:06B8 _PrimaryDCName
+ 047D:06C8 _LogonDCName
+ 047D:06D8 _PrimaryDomain
+ 047D:06E8 _LogonDomain
+ 047D:06F8 _Encrypt_Sem
+ 047D:06FC _MslotName
+ 047D:0724 _ALLOCATOR
+ 047D:0728 _REALLOCATOR
+ 047D:072C _FREEMEM
+ 047D:07BA _txt_REM_I_NetListCanonicalizeP
+ 047D:07C4 _txt_REM_I_NetNameCanonicalizeP
+ 047D:07CA _txt_REM_I_NetPathCanonicalizeP
+ 047D:07D2 _txt_REM_I_NetNameCompare_P
+ 047D:07D7 _txt_REM_I_NetNameValidate_P
+ 047D:07DB _txt_REM_I_NetPathCompare_P
+ 047D:07E0 _txt_REM_I_NetPathType_P
+ 047D:07E4 _txt_REM_NetGetDCName_P
+ 047D:07E8 _txt_REM_NetLogonEnum_P
+ 047D:07EE _txt_REM_dc_name
+ 047D:07F2 _txt_REM_NetServerAdminCommand_
+ 047D:07F2 _txt_REM_NetServerAdminCom_P
+ 047D:07F9 _txt_REM_server_admin_command
+ 047D:07FB _txt_REM_NetServerEnum2_P
+ 047D:0803 _txt_REM_NetServerEnum_P
+ 047D:0809 _txt_REM_server_info_0
+ 047D:080D _txt_REM_server_info_1
+ 047D:0815 _txt_REM_server_info_2
+ 047D:0846 _txt_REM_server_info_3
+ 047D:087A _txt_REM_server_info_table
+ 047D:0882 _num_server_info
+ 047D:0884 _txt_REM_NetServerGetInfo_P
+ 047D:0889 _txt_REM_NetServerSetInfo_P
+ 047D:088E _txt_REM_connection_info_0
+ 047D:0890 _txt_REM_connection_info_1
+ 047D:0898 _txt_REM_NetConnectionEnum_P
+ 047D:089F _txt_REM_NetServerDiskEnum_P
+ 047D:08A5 _txt_REM_server_diskenum
+ 047D:08A8 _txt_REM_NetWkstaGetInfo_P
+ 047D:08AD _txt_REM_wksta_info_0
+ 047D:08CF _txt_REM_wksta_info_1
+ 047D:08F4 _txt_REM_wksta_info_10
+ 047D:08FC _txt_REM_WWkstaGetInfo_P
+ 047D:0903 _txt_REM_NetWkstaSetInfo_P
+ 047D:0908 _txt_REM_wksta_info_0_setinf
+ 047D:092A _txt_REM_wksta_info_1_setinf
+ 047D:094F _txt_REM_user_logon_info_0
+ 047D:0954 _txt_REM_user_logon_info_1
+ 047D:0969 _txt_REM_user_logon_info_2
+ 047D:0972 _txt_REM_user_logoff_info_1
+ 047D:0976 _txt_REM_NetWkstaUserLogon_P
+ 047D:0981 _txt_REM_NetWkstaUserLogoff_P
+ 047D:098C _txt_REM_NetWkstaSetUID_P
+ 047D:0994 __DosVersionCheckMsg
+ 047D:09CB __DosMVDMErrorMsg
+ 047D:0A15 __InMVDMBox
+ 047D:0A16 _txt_REM_nulstr
+ 047D:0A18 __edata
+ 047D:0A18 __end
+ 047D:0A18 _end
+ 047D:0A18 _edata
+ 0000:9876 Abs __anlsused
+
+Program entry point at 0000:0000
diff --git a/public/sdk/rpc16/dos/dll/rpcnslm.rpc b/public/sdk/rpc16/dos/dll/rpcnslm.rpc
new file mode 100644
index 000000000..438cf82ef
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpcnslm.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/rpcnsmgm.map b/public/sdk/rpc16/dos/dll/rpcnsmgm.map
new file mode 100644
index 000000000..932ece577
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpcnsmgm.map
@@ -0,0 +1,387 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H NSIMGMT_TEXT CODE
+ 00000H 00000H 00000H NSIMGM_C_TEXT CODE
+ 00000H 00000H 00000H CBIND_TEXT CODE
+ 00000H 000E4H 000E5H LMDLL_TEXT CODE
+ 000E6H 002A3H 001BEH EXPORTMG_TEXT CODE
+ 002A4H 0032AH 00087H EXCEPT86_TEXT CODE
+ 0032CH 0032CH 00000H UTIL_TEXT CODE
+ 0032CH 0037EH 00053H MEM_TEXT CODE
+ 00380H 004B1H 00132H _TEXT CODE
+ 004C0H 03DF4H 03935H COMDAT_SEG1 CODE
+ 03DF6H 04209H 00414H _DATA DATA
+ 0420AH 04225H 0001CH TABLESEGMENT DATA
+ 04226H 04428H 00203H STRINGSEGMENT DATA
+ 0442AH 0442AH 00000H XIFB DATA
+ 0442AH 0442AH 00000H XIF DATA
+ 0442AH 0442AH 00000H XIFE DATA
+ 0442AH 0442BH 00002H CONST CONST
+ 0442CH 0445BH 00030H _BSS BSS
+ 04460H 04460H 00000H c_common BSS
+
+ Origin Group
+ 03DF:0 DGROUP
+
+ Address Publics by Name
+
+ 004C:372A ??0WIDE_STRING@@REC@PEE@Z
+ 004C:380E ??2@ZAPEXI@Z
+ 004C:381C ??3@ZAXPEX@Z
+ 004C:36E4 ??_C@_08GAHO@Endpoint?$AA@
+ 004C:36CA ??_C@_08OBCM@Protocol?$AA@
+ 004C:3694 ??_C@_0BB@EHCE@?2mailslot?2Resp_c?$AA@
+ 004C:3680 ??_C@_0BE@JFMA@?2?2?$CK?2mailslot?2Resp_s?$AA@
+ 004C:36A6 ??_C@_0CD@LHG@Software?2Microsoft?2Rpc?2NameServi@
+ 004C:3928 ??_C@_0N@NHGH@DefaultEntry?$AA@
+ 004C:391A ??_C@_0O@JCMN@DefaultSyntax?$AA@
+ 004C:36EE ??_C@_0O@MCEM@?2pipe?2locator?$AA@
+ 004C:36D4 ??_C@_0P@NOEJ@NetworkAddress?$AA@
+ 03DF:0266 ?LocalMS@@3PEDE
+ 03DF:0262 ?MailslotName@@3PEDE
+ 03DF:064A ?NsiStringBinding@@3PEEE
+ 004C:05D8 ?RpcNsEntryExpandNameW@@ZCGKPEGPEPEG@Z
+ 004C:0386 ?RpcNsEntryObjectInqBeginW@@ZCGKPEGPEPEX@Z
+ 004C:0000 ?RpcNsGroupDeleteW@@ZCGKPEG@Z
+ 004C:008E ?RpcNsGroupMbrAddW@@ZCGKPEGK0@Z
+ 004C:01F2 ?RpcNsGroupMbrInqBeginW@@ZCGKPEGKPEPEX@Z
+ 004C:02B0 ?RpcNsGroupMbrInqNextW@@ZCGPEXPEPEG@Z
+ 004C:0140 ?RpcNsGroupMbrRemoveW@@ZCGKPEGK0@Z
+ 004C:066C ?RpcNsMgmtBindingUnexportW@@ZCGKPEGPEU_RPC_IF_ID@@KPEU_UUID_VECTOR@@@Z
+ 004C:0710 ?RpcNsMgmtEntryCreateW@@ZCGKPEG@Z
+ 004C:079E ?RpcNsMgmtEntryDeleteW@@ZCGKPEG@Z
+ 004C:082C ?RpcNsMgmtEntryInqIfIdsW@@ZCGKPEGPEPEURPC_IF_ID_VECTOR@@@Z
+ 004C:096C ?RpcNsProfileDeleteW@@ZCGKPEG@Z
+ 004C:09FA ?RpcNsProfileEltAddW@@ZCGKPEGPEU_RPC_IF_ID@@K0K0@Z
+ 004C:0B76 ?RpcNsProfileEltInqBeginW@@ZCGKPEGKPEU_RPC_IF_ID@@KK0PEPEX@Z
+ 004C:0C40 ?RpcNsProfileEltInqNextW@@ZCGPEXPEU_RPC_IF_ID@@PEPEGPEK2@Z
+ 004C:0ABE ?RpcNsProfileEltRemoveW@@ZCGKPEGPEU_RPC_IF_ID@@K0@Z
+ 0000:002A DOSDELETEMAILSLOT
+ 0000:0015 DOSMAKEMAILSLOT
+ 0000:001C DOSREADMAILSLOT
+ 0000:0023 DOSWRITEMAILSLOT
+ 000E:01A0 EXPORTTIME
+ 000E:00A5 I_DOSATEXIT
+ 0000:0000 Unr I_GETDEFAULTENTRYSYNTAX
+ 004C:3484 I_NSCLIENTBINDDONE
+ 004C:30FC I_NSCLIENTBINDSEARCH
+ 000E:01B2 I_NSGETMEMORYALLOCATOR
+ 000E:00FE I_RPCALLOCATE
+ 000E:0104 I_RPCFREE
+ 000E:010A I_RPCFREEBUFFER
+ 000E:0110 I_RPCGETBUFFER
+ 000E:011C I_RPCNSBINDINGSETENTRYNAME
+ 000E:01A6 I_RPCREGISTEREDBUFFERALLOCATE
+ 000E:01AC I_RPCREGISTEREDBUFFERFREE
+ 000E:0116 I_RPCSENDRECEIVE
+ 000E:0158 I_RPCTRANSCLIENTMAXFRAG
+ 000E:00BE I_RPCTRANSCLIENTREALLOCBUFFER
+ 0032:0028 MIDL_USER_ALLOCATE
+ 0032:0041 MIDL_USER_FREE
+ 000E:0140 NDRCCONTEXTBINDING
+ 000E:0146 NDRCCONTEXTMARSHALL
+ 000E:014C NDRCCONTEXTUNMARSHALL
+ 000E:0164 NDRCLIENTCONTEXTMARSHALL
+ 000E:0194 NDRCLIENTCONTEXTUNMARSHALL
+ 000E:0188 NDRCLIENTINITIALIZE
+ 000E:018E NDRCLIENTINITIALIZENEW
+ 000E:0182 NDRCONVERT
+ 000E:0170 NDRFREEBUFFER
+ 000E:0176 NDRGETBUFFER
+ 000E:017C NDRPOINTERBUFFERSIZE
+ 000E:016A NDRPOINTERMARSHALL
+ 000E:015E NDRPOINTERUNMARSHALL
+ 000E:019A NDRSENDRECEIVE
+ 000E:01BE NDRSIMPLESTRUCTBUFFERSIZE
+ 000E:01B8 NDRSIMPLESTRUCTMARSHALL
+ 0000:0000 NETGETDCNAME
+ 0000:0007 NETSERVERENUM2
+ 0000:000E NETWKSTAGETINFO
+ 0032:000C NSALLOCATORSETUP
+ 000E:00D2 RPCBINDINGCOPY
+ 000E:00F2 RPCBINDINGFREE
+ 000E:00E6 RPCBINDINGFROMSTRINGBINDING
+ 000E:00E1 RPCBINDINGTOSTRINGBINDING
+ 000E:00EC RPCBINDINGVECTORFREE
+ 000E:00C3 RPCGETEXCEPTIONHANDLER
+ 004C:08D0 RPCIFIDVECTORFREE
+ 000E:00CD RPCLEAVEEXCEPTION
+ 004C:0FF8 RPCNSENTRYEXPANDNAMEA
+ 004C:0F8A RPCNSENTRYOBJECTINQBEGINA
+ 004C:048E RPCNSENTRYOBJECTINQDONE
+ 004C:0426 RPCNSENTRYOBJECTINQNEXT
+ 004C:0D1C RPCNSGROUPDELETEA
+ 004C:0D84 RPCNSGROUPMBRADDA
+ 004C:0EDC RPCNSGROUPMBRINQBEGINA
+ 004C:0324 RPCNSGROUPMBRINQDONE
+ 004C:0F50 RPCNSGROUPMBRINQNEXTA
+ 004C:0E30 RPCNSGROUPMBRREMOVEA
+ 004C:1080 RPCNSMGMTBINDINGUNEXPORTA
+ 004C:10FA RPCNSMGMTENTRYCREATEA
+ 004C:1162 RPCNSMGMTENTRYDELETEA
+ 004C:11CA RPCNSMGMTENTRYINQIFIDSA
+ 004C:04F0 RPCNSMGMTINQEXPAGE
+ 004C:0564 RPCNSMGMTSETEXPAGE
+ 004C:1238 RPCNSPROFILEDELETEA
+ 004C:12A0 RPCNSPROFILEELTADDA
+ 004C:1448 RPCNSPROFILEELTINQBEGINA
+ 004C:0CBA RPCNSPROFILEELTINQDONE
+ 004C:150C RPCNSPROFILEELTINQNEXTA
+ 004C:1396 RPCNSPROFILEELTREMOVEA
+ 002A:0043 RPCRAISEEXCEPTION
+ 000E:012E RPCREGCLOSEKEY
+ 000E:0128 RPCREGCREATEKEY
+ 000E:0122 RPCREGOPENKEY
+ 000E:013A RPCREGQUERYVALUE
+ 000E:0134 RPCREGSETVALUE
+ 002A:0004 RPCSETEXCEPTION
+ 000E:00C8 RPCSETEXCEPTIONHANDLER
+ 000E:0152 RPCSSDESTROYCLIENTCONTEXT
+ 000E:00D7 RPCSTRINGBINDINGCOMPOSE
+ 000E:00DC RPCSTRINGBINDINGPARSE
+ 000E:00F8 RPCSTRINGFREE
+ 0038:0090 _atoi
+ 004C:3550 _BroadcastAQuery
+ 000E:0069 _CallExport
+ 004C:382C _CallExportInit
+ 004C:382E _CopyString
+ 03DF:0644 _DefaultName
+ 03DF:025E _DefaultSyntax
+ 000E:0006 _DOSDLLInit
+ 03DF:063C _edata
+ 03DF:0670 _end
+ 03DF:030C _errno
+ 000E:004C _ExportInit
+ 03DF:0648 _fSyntaxDefaultsLoaded
+ 004C:3870 _GetDefaultEntrys
+ 000E:00AA _GETENV
+ 000E:0087 _GetExportTableVersion
+ 000E:00B9 _GetProcAddrR
+ 000E:00AF _LoadModR
+ 004C:36FC _MapException
+ 0038:00EA _memset
+ 03DF:0640 _NsiClntBinding
+ 03DF:0044 _NsiM_ClientIfHandle
+ 03DF:03E0 _NsiToRpcStatus
+ 004C:2890 _nsi_entry_expand_name
+ 004C:2550 _nsi_entry_object_inq_begin
+ 004C:27A6 _nsi_entry_object_inq_done
+ 004C:266E _nsi_entry_object_inq_next
+ 004C:1572 _nsi_group_delete
+ 004C:167A _nsi_group_mbr_add
+ 004C:1936 _nsi_group_mbr_inq_begin
+ 004C:1B88 _nsi_group_mbr_inq_done
+ 004C:1A80 _nsi_group_mbr_inq_next
+ 004C:17D8 _nsi_group_mbr_remove
+ 004C:29C6 _nsi_mgmt_binding_unexport
+ 004C:2C56 _nsi_mgmt_entry_create
+ 004C:2B4E _nsi_mgmt_entry_delete
+ 004C:2D5E _nsi_mgmt_entry_inq_if_ids
+ 004C:2E94 _nsi_mgmt_inq_exp_age
+ 004C:2F58 _nsi_mgmt_inq_set_age
+ 004C:1C72 _nsi_profile_delete
+ 004C:1D7A _nsi_profile_elt_add
+ 004C:20E2 _nsi_profile_elt_inq_begin
+ 004C:2466 _nsi_profile_elt_inq_done
+ 004C:22D0 _nsi_profile_elt_inq_next
+ 004C:1F5A _nsi_profile_elt_remove
+ 004C:3014 _RegGetString
+ 0000:0031 _RpcNsLmDiscard
+ 0038:004C _strcmp
+ 0038:0010 _strcpy
+ 0038:0076 _strlen
+ 03DF:0318 _theTable
+ 004C:37C6 _UnicodeToAscii
+ 000E:00B4 _UnloadModR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 0038:0094 __catox
+ 03DF:063C __edata
+ 03DF:0670 __end
+ 03DF:0410 __NsAllocatorInitialized
+ 03DF:0316 __rpc_hostDS
+
+ Address Publics by Value
+
+ 0000:0000 Unr I_GETDEFAULTENTRYSYNTAX
+ 0000:0000 NETGETDCNAME
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 0000:0007 NETSERVERENUM2
+ 0000:000C Abs __AHSHIFT
+ 0000:000E NETWKSTAGETINFO
+ 0000:0015 DOSMAKEMAILSLOT
+ 0000:001C DOSREADMAILSLOT
+ 0000:0023 DOSWRITEMAILSLOT
+ 0000:002A DOSDELETEMAILSLOT
+ 0000:0031 _RpcNsLmDiscard
+ 000E:0006 _DOSDLLInit
+ 000E:004C _ExportInit
+ 000E:0069 _CallExport
+ 000E:0087 _GetExportTableVersion
+ 000E:00A5 I_DOSATEXIT
+ 000E:00AA _GETENV
+ 000E:00AF _LoadModR
+ 000E:00B4 _UnloadModR
+ 000E:00B9 _GetProcAddrR
+ 000E:00BE I_RPCTRANSCLIENTREALLOCBUFFER
+ 000E:00C3 RPCGETEXCEPTIONHANDLER
+ 000E:00C8 RPCSETEXCEPTIONHANDLER
+ 000E:00CD RPCLEAVEEXCEPTION
+ 000E:00D2 RPCBINDINGCOPY
+ 000E:00D7 RPCSTRINGBINDINGCOMPOSE
+ 000E:00DC RPCSTRINGBINDINGPARSE
+ 000E:00E1 RPCBINDINGTOSTRINGBINDING
+ 000E:00E6 RPCBINDINGFROMSTRINGBINDING
+ 000E:00EC RPCBINDINGVECTORFREE
+ 000E:00F2 RPCBINDINGFREE
+ 000E:00F8 RPCSTRINGFREE
+ 000E:00FE I_RPCALLOCATE
+ 000E:0104 I_RPCFREE
+ 000E:010A I_RPCFREEBUFFER
+ 000E:0110 I_RPCGETBUFFER
+ 000E:0116 I_RPCSENDRECEIVE
+ 000E:011C I_RPCNSBINDINGSETENTRYNAME
+ 000E:0122 RPCREGOPENKEY
+ 000E:0128 RPCREGCREATEKEY
+ 000E:012E RPCREGCLOSEKEY
+ 000E:0134 RPCREGSETVALUE
+ 000E:013A RPCREGQUERYVALUE
+ 000E:0140 NDRCCONTEXTBINDING
+ 000E:0146 NDRCCONTEXTMARSHALL
+ 000E:014C NDRCCONTEXTUNMARSHALL
+ 000E:0152 RPCSSDESTROYCLIENTCONTEXT
+ 000E:0158 I_RPCTRANSCLIENTMAXFRAG
+ 000E:015E NDRPOINTERUNMARSHALL
+ 000E:0164 NDRCLIENTCONTEXTMARSHALL
+ 000E:016A NDRPOINTERMARSHALL
+ 000E:0170 NDRFREEBUFFER
+ 000E:0176 NDRGETBUFFER
+ 000E:017C NDRPOINTERBUFFERSIZE
+ 000E:0182 NDRCONVERT
+ 000E:0188 NDRCLIENTINITIALIZE
+ 000E:018E NDRCLIENTINITIALIZENEW
+ 000E:0194 NDRCLIENTCONTEXTUNMARSHALL
+ 000E:019A NDRSENDRECEIVE
+ 000E:01A0 EXPORTTIME
+ 000E:01A6 I_RPCREGISTEREDBUFFERALLOCATE
+ 000E:01AC I_RPCREGISTEREDBUFFERFREE
+ 000E:01B2 I_NSGETMEMORYALLOCATOR
+ 000E:01B8 NDRSIMPLESTRUCTMARSHALL
+ 000E:01BE NDRSIMPLESTRUCTBUFFERSIZE
+ 002A:0004 RPCSETEXCEPTION
+ 002A:0043 RPCRAISEEXCEPTION
+ 0032:000C NSALLOCATORSETUP
+ 0032:0028 MIDL_USER_ALLOCATE
+ 0032:0041 MIDL_USER_FREE
+ 0038:0010 _strcpy
+ 0038:004C _strcmp
+ 0038:0076 _strlen
+ 0038:0090 _atoi
+ 0038:0094 __catox
+ 0038:00EA _memset
+ 004C:0000 ?RpcNsGroupDeleteW@@ZCGKPEG@Z
+ 004C:008E ?RpcNsGroupMbrAddW@@ZCGKPEGK0@Z
+ 004C:0140 ?RpcNsGroupMbrRemoveW@@ZCGKPEGK0@Z
+ 004C:01F2 ?RpcNsGroupMbrInqBeginW@@ZCGKPEGKPEPEX@Z
+ 004C:02B0 ?RpcNsGroupMbrInqNextW@@ZCGPEXPEPEG@Z
+ 004C:0324 RPCNSGROUPMBRINQDONE
+ 004C:0386 ?RpcNsEntryObjectInqBeginW@@ZCGKPEGPEPEX@Z
+ 004C:0426 RPCNSENTRYOBJECTINQNEXT
+ 004C:048E RPCNSENTRYOBJECTINQDONE
+ 004C:04F0 RPCNSMGMTINQEXPAGE
+ 004C:0564 RPCNSMGMTSETEXPAGE
+ 004C:05D8 ?RpcNsEntryExpandNameW@@ZCGKPEGPEPEG@Z
+ 004C:066C ?RpcNsMgmtBindingUnexportW@@ZCGKPEGPEU_RPC_IF_ID@@KPEU_UUID_VECTOR@@@Z
+ 004C:0710 ?RpcNsMgmtEntryCreateW@@ZCGKPEG@Z
+ 004C:079E ?RpcNsMgmtEntryDeleteW@@ZCGKPEG@Z
+ 004C:082C ?RpcNsMgmtEntryInqIfIdsW@@ZCGKPEGPEPEURPC_IF_ID_VECTOR@@@Z
+ 004C:08D0 RPCIFIDVECTORFREE
+ 004C:096C ?RpcNsProfileDeleteW@@ZCGKPEG@Z
+ 004C:09FA ?RpcNsProfileEltAddW@@ZCGKPEGPEU_RPC_IF_ID@@K0K0@Z
+ 004C:0ABE ?RpcNsProfileEltRemoveW@@ZCGKPEGPEU_RPC_IF_ID@@K0@Z
+ 0000:1000 Abs __AHINCR
+ 004C:0B76 ?RpcNsProfileEltInqBeginW@@ZCGKPEGKPEU_RPC_IF_ID@@KK0PEPEX@Z
+ 004C:0C40 ?RpcNsProfileEltInqNextW@@ZCGPEXPEU_RPC_IF_ID@@PEPEGPEK2@Z
+ 004C:0CBA RPCNSPROFILEELTINQDONE
+ 004C:0D1C RPCNSGROUPDELETEA
+ 004C:0D84 RPCNSGROUPMBRADDA
+ 004C:0E30 RPCNSGROUPMBRREMOVEA
+ 004C:0EDC RPCNSGROUPMBRINQBEGINA
+ 004C:0F50 RPCNSGROUPMBRINQNEXTA
+ 004C:0F8A RPCNSENTRYOBJECTINQBEGINA
+ 004C:0FF8 RPCNSENTRYEXPANDNAMEA
+ 004C:1080 RPCNSMGMTBINDINGUNEXPORTA
+ 004C:10FA RPCNSMGMTENTRYCREATEA
+ 004C:1162 RPCNSMGMTENTRYDELETEA
+ 004C:11CA RPCNSMGMTENTRYINQIFIDSA
+ 004C:1238 RPCNSPROFILEDELETEA
+ 004C:12A0 RPCNSPROFILEELTADDA
+ 004C:1396 RPCNSPROFILEELTREMOVEA
+ 004C:1448 RPCNSPROFILEELTINQBEGINA
+ 004C:150C RPCNSPROFILEELTINQNEXTA
+ 004C:1572 _nsi_group_delete
+ 004C:167A _nsi_group_mbr_add
+ 004C:17D8 _nsi_group_mbr_remove
+ 004C:1936 _nsi_group_mbr_inq_begin
+ 004C:1A80 _nsi_group_mbr_inq_next
+ 004C:1B88 _nsi_group_mbr_inq_done
+ 004C:1C72 _nsi_profile_delete
+ 004C:1D7A _nsi_profile_elt_add
+ 004C:1F5A _nsi_profile_elt_remove
+ 004C:20E2 _nsi_profile_elt_inq_begin
+ 004C:22D0 _nsi_profile_elt_inq_next
+ 004C:2466 _nsi_profile_elt_inq_done
+ 004C:2550 _nsi_entry_object_inq_begin
+ 004C:266E _nsi_entry_object_inq_next
+ 004C:27A6 _nsi_entry_object_inq_done
+ 004C:2890 _nsi_entry_expand_name
+ 004C:29C6 _nsi_mgmt_binding_unexport
+ 004C:2B4E _nsi_mgmt_entry_delete
+ 004C:2C56 _nsi_mgmt_entry_create
+ 004C:2D5E _nsi_mgmt_entry_inq_if_ids
+ 004C:2E94 _nsi_mgmt_inq_exp_age
+ 004C:2F58 _nsi_mgmt_inq_set_age
+ 004C:3014 _RegGetString
+ 004C:30FC I_NSCLIENTBINDSEARCH
+ 004C:3484 I_NSCLIENTBINDDONE
+ 004C:3550 _BroadcastAQuery
+ 004C:3680 ??_C@_0BE@JFMA@?2?2?$CK?2mailslot?2Resp_s?$AA@
+ 004C:3694 ??_C@_0BB@EHCE@?2mailslot?2Resp_c?$AA@
+ 004C:36A6 ??_C@_0CD@LHG@Software?2Microsoft?2Rpc?2NameServi@
+ 004C:36CA ??_C@_08OBCM@Protocol?$AA@
+ 004C:36D4 ??_C@_0P@NOEJ@NetworkAddress?$AA@
+ 004C:36E4 ??_C@_08GAHO@Endpoint?$AA@
+ 004C:36EE ??_C@_0O@MCEM@?2pipe?2locator?$AA@
+ 004C:36FC _MapException
+ 004C:372A ??0WIDE_STRING@@REC@PEE@Z
+ 004C:37C6 _UnicodeToAscii
+ 004C:380E ??2@ZAPEXI@Z
+ 004C:381C ??3@ZAXPEX@Z
+ 004C:382C _CallExportInit
+ 004C:382E _CopyString
+ 004C:3870 _GetDefaultEntrys
+ 004C:391A ??_C@_0O@JCMN@DefaultSyntax?$AA@
+ 004C:3928 ??_C@_0N@NHGH@DefaultEntry?$AA@
+ 03DF:0044 _NsiM_ClientIfHandle
+ 03DF:025E _DefaultSyntax
+ 03DF:0262 ?MailslotName@@3PEDE
+ 03DF:0266 ?LocalMS@@3PEDE
+ 03DF:030C _errno
+ 03DF:0316 __rpc_hostDS
+ 03DF:0318 _theTable
+ 03DF:03E0 _NsiToRpcStatus
+ 03DF:0410 __NsAllocatorInitialized
+ 03DF:063C _edata
+ 03DF:063C __edata
+ 03DF:0640 _NsiClntBinding
+ 03DF:0644 _DefaultName
+ 03DF:0648 _fSyntaxDefaultsLoaded
+ 03DF:064A ?NsiStringBinding@@3PEEE
+ 03DF:0670 _end
+ 03DF:0670 __end
+
+Program entry point at 000E:0006
diff --git a/public/sdk/rpc16/dos/dll/rpcnsmgm.rpc b/public/sdk/rpc16/dos/dll/rpcnsmgm.rpc
new file mode 100644
index 000000000..51e4aa733
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/rpcnsmgm.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/dll/security.map b/public/sdk/rpc16/dos/dll/security.map
new file mode 100644
index 000000000..d8f3d0276
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/security.map
@@ -0,0 +1,353 @@
+LINK : warning L4021: no stack segment
+
+ Start Stop Length Name Class
+ 00000H 00000H 00000H NTLMSSP_TEXT CODE
+ 00000H 00000H 00000H ALLOC_TEXT CODE
+ 00000H 00000H 00000H SSPSTRNG_TEXT CODE
+ 00000H 00000H 00000H CACHE_TEXT CODE
+ 00000H 00000H 00000H CONTEXT_TEXT CODE
+ 00000H 00000H 00000H CRED_TEXT CODE
+ 00000H 00000H 00000H OWF_TEXT CODE
+ 00000H 00000H 00000H RESPONSE_TEXT CODE
+ 00000H 000CFH 000D0H ECB_TEXT CODE
+ 000D0H 0063FH 00570H DES_TEXT CODE
+ 00640H 00640H 00000H DEBUG_TEXT CODE
+ 00640H 00640H 00000H TICKS_TEXT CODE
+ 00640H 00640H 00000H GETUSER_TEXT CODE
+ 00640H 007FDH 001BEH SECLT_TEXT CODE
+ 007FEH 007FEH 00000H CRC32_TEXT CODE
+ 007FEH 00A04H 00207H RC4C_TEXT CODE
+ 00A06H 00C11H 0020CH _TEXT CODE
+ 00C20H 02D4CH 0212DH COMDAT_SEG1 CODE
+ 02D50H 03177H 00428H FAR_BSS FAR_BSS
+ 03178H 03A4DH 008D6H _DATA DATA
+ 03A4EH 03A6FH 00022H STRINGSEGMENT DATA
+ 03A70H 03A70H 00000H XIFB DATA
+ 03A70H 03A70H 00000H XIF DATA
+ 03A70H 03A70H 00000H XIFE DATA
+ 03A70H 03A7FH 00010H CONST CONST
+ 03A80H 03A80H 00000H _BSS BSS
+ 03A80H 03A80H 00000H c_common BSS
+
+ Origin Group
+ 0317:0 DGROUP
+
+ Address Publics by Name
+
+ 00C2:1CC6 ??_C@_04KIKH@none?$AA@
+ 00C2:15DE ??_C@_04PJIL@NTLM?$AA@
+ 00C2:15FA ??_C@_07LBGP@NTLMSSP?$AA@
+ 00C2:1FE8 ??_C@_08OLPO@KGS?$CB?$EA?$CD$?$CF?$AA@
+ 00C2:1CCC ??_C@_09CIPE@WORKGROUP?$AA@
+ 00C2:15E4 ??_C@_0BG@FFCA@NTLM?5Security?5Package?$AA@
+ 00C2:0176 ACQUIRECREDENTIALSHANDLEA
+ 00C2:0D5A APPLYCONTROLTOKEN
+ 00C2:15D0 COMPLETEAUTHTOKEN
+ 00C2:0CE6 DELETESECURITYCONTEXT
+ 00C2:0140 ENUMERATESECURITYPACKAGESA
+ 0064:019A EXPORTTIME
+ 00C2:0D3C FREECONTEXTBUFFER
+ 00C2:026E FREECREDENTIALSHANDLE
+ 00C2:0A96 INITIALIZESECURITYCONTEXTA
+ 00C2:0000 INITSECURITYINTERFACEA
+ 0064:009F I_DOSATEXIT
+ 0064:01AC I_NSGETMEMORYALLOCATOR
+ 0064:00F8 I_RPCALLOCATE
+ 0064:00FE I_RPCFREE
+ 0064:0104 I_RPCFREEBUFFER
+ 0064:010A I_RPCGETBUFFER
+ 0064:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0064:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0064:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0064:0110 I_RPCSENDRECEIVE
+ 0064:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0064:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 00C2:0DA4 MAKESIGNATURE
+ 0064:013A NDRCCONTEXTBINDING
+ 0064:0140 NDRCCONTEXTMARSHALL
+ 0064:0146 NDRCCONTEXTUNMARSHALL
+ 0064:015E NDRCLIENTCONTEXTMARSHALL
+ 0064:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0064:0182 NDRCLIENTINITIALIZE
+ 0064:0188 NDRCLIENTINITIALIZENEW
+ 0064:017C NDRCONVERT
+ 0064:016A NDRFREEBUFFER
+ 0064:0170 NDRGETBUFFER
+ 0064:0176 NDRPOINTERBUFFERSIZE
+ 0064:0164 NDRPOINTERMARSHALL
+ 0064:0158 NDRPOINTERUNMARSHALL
+ 0064:0194 NDRSENDRECEIVE
+ 0064:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 0064:01B2 NDRSIMPLESTRUCTMARSHALL
+ 00C2:0BB8 QUERYCONTEXTATTRIBUTESA
+ 00C2:0044 QUERYSECURITYPACKAGEINFOA
+ 0064:00CC RPCBINDINGCOPY
+ 0064:00EC RPCBINDINGFREE
+ 0064:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0064:00DB RPCBINDINGTOSTRINGBINDING
+ 0064:00E6 RPCBINDINGVECTORFREE
+ 0064:00BD RPCGETEXCEPTIONHANDLER
+ 0064:00C7 RPCLEAVEEXCEPTION
+ 0064:0128 RPCREGCLOSEKEY
+ 0064:0122 RPCREGCREATEKEY
+ 0064:011C RPCREGOPENKEY
+ 0064:0134 RPCREGQUERYVALUE
+ 0064:012E RPCREGSETVALUE
+ 0064:00C2 RPCSETEXCEPTIONHANDLER
+ 0064:014C RPCSSDESTROYCLIENTCONTEXT
+ 0064:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0064:00D6 RPCSTRINGBINDINGPARSE
+ 0064:00F2 RPCSTRINGFREE
+ 00C2:11BC SEALMESSAGE
+ 00C2:13C8 UNSEALMESSAGE
+ 00C2:0F9C VERIFYSIGNATURE
+ 02D5:0040 _C
+ 00C2:16E8 _CacheGetPassword
+ 00C2:16E6 _CacheInitializeCache
+ 00C2:1740 _CacheSetCredentials
+ 00C2:1F2A _CalculateLmOwfPassword
+ 00C2:1FF2 _CalculateLmResponse
+ 0064:0063 _CallExport
+ 00C2:20CA _Crc32
+ 0317:03DC _CRCTable
+ 02D5:005C _D
+ 000D:0338 _des
+ 000D:03DA _desf
+ 000D:00FE _des_cipher
+ 0000:0000 _DES_ECB
+ 0000:0068 _DES_ECB_LM
+ 0064:0000 _DOSDLLInit
+ 0317:0168 _E
+ 0317:0910 _edata
+ 0317:0910 _end
+ 0317:03B8 _errno
+ 0064:0046 _ExportInit
+ 02D5:0078 _f
+ 0317:00B0 _FP
+ 0064:00A4 _GETENV
+ 0064:0081 _GetExportTableVersion
+ 00C2:0012 _GetPassword
+ 0064:00B3 _GETPROCADDRR
+ 000D:047C _InitLanManKey
+ 000D:04FC _InitNormalKey
+ 0317:0070 _IP
+ 02D5:0000 _KeyBuilder
+ 000D:0000 _key_table
+ 02D5:00D8 _KS
+ 02D5:0098 _L
+ 0064:00A9 _LOADMODR
+ 0317:0398 _P
+ 0317:00F0 _PC1_C
+ 0317:010C _PC1_D
+ 0317:0138 _PC2_C
+ 0317:0150 _PC2_D
+ 02D5:03D8 _preS
+ 007F:0120 _rc4
+ 007F:000E _rc4_key
+ 0317:0198 _S
+ 000D:02D2 _setkey
+ 0317:0128 _shifts
+ 00C2:1602 _SspAlloc
+ 0000:0000 Unr _SspAllocateString
+ 00C2:1620 _SspAllocateStringBlock
+ 00C2:1D70 _SspContextAllocateContext
+ 00C2:1D0A _SspContextDereferenceContext
+ 00C2:1DD2 _SspContextGetTimeStamp
+ 00C2:1CD6 _SspContextReferenceContext
+ 0000:0000 Unr _SspCopyString
+ 00C2:1694 _SspCopyStringFromRaw
+ 00C2:1E14 _SspCredentialAllocateCredential
+ 00C2:1E94 _SspCredentialDereferenceCredential
+ 00C2:1E60 _SspCredentialReferenceCredential
+ 00C2:1610 _SspFree
+ 0000:0000 Unr _SspFreeString
+ 00C2:02BC _SspGetTokenBuffer
+ 00C2:20C6 _SspGetWorkstation
+ 00C2:04F6 _SspHandleChallengeMessage
+ 00C2:0370 _SspHandleFirstCall
+ 00C2:0D68 _SsprGenCheckSum
+ 00C2:20B4 _SspTicks
+ 0000:0000 Unr _SspTimeHasElapsed
+ 02D5:0408 _tempL
+ 0317:03C4 _theTable
+ 0064:00AE _UNLOADMODR
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Abs __ADBUSED
+ 00A0:0016 __aFlmul
+ 00A0:0016 __aFulmul
+ 00A0:0048 __aFulshr
+ 0000:1000 Abs __AHINCR
+ 0000:000C Abs __AHSHIFT
+ 0317:07DC __ctype
+ 0317:07DC __ctype_
+ 0317:0910 __edata
+ 0317:0910 __end
+ 00A0:0054 __fmemcmp
+ 00A0:00B0 __fmemcpy
+ 00A0:01CA __fmemset
+ 00A0:0164 __fstrcmp
+ 00A0:018E __fstrcpy
+ 00A0:014A __fstrlen
+ 00A0:010E __fstrncmp
+ 0317:03C2 __rpc_hostDS
+
+ Address Publics by Value
+
+ 0000:0000 Abs __ADBUSED
+ 0000:0000 Unr _SspAllocateString
+ 0000:0000 _DES_ECB
+ 0000:0000 Abs __ACRTUSED
+ 0000:0000 Unr _SspFreeString
+ 0000:0000 Unr _SspCopyString
+ 0000:0000 Unr _SspTimeHasElapsed
+ 0000:000C Abs __AHSHIFT
+ 0000:0068 _DES_ECB_LM
+ 000D:0000 _key_table
+ 000D:00FE _des_cipher
+ 000D:02D2 _setkey
+ 000D:0338 _des
+ 000D:03DA _desf
+ 000D:047C _InitLanManKey
+ 000D:04FC _InitNormalKey
+ 0064:0000 _DOSDLLInit
+ 0064:0046 _ExportInit
+ 0064:0063 _CallExport
+ 0064:0081 _GetExportTableVersion
+ 0064:009F I_DOSATEXIT
+ 0064:00A4 _GETENV
+ 0064:00A9 _LOADMODR
+ 0064:00AE _UNLOADMODR
+ 0064:00B3 _GETPROCADDRR
+ 0064:00B8 I_RPCTRANSCLIENTREALLOCBUFFER
+ 0064:00BD RPCGETEXCEPTIONHANDLER
+ 0064:00C2 RPCSETEXCEPTIONHANDLER
+ 0064:00C7 RPCLEAVEEXCEPTION
+ 0064:00CC RPCBINDINGCOPY
+ 0064:00D1 RPCSTRINGBINDINGCOMPOSE
+ 0064:00D6 RPCSTRINGBINDINGPARSE
+ 0064:00DB RPCBINDINGTOSTRINGBINDING
+ 0064:00E0 RPCBINDINGFROMSTRINGBINDING
+ 0064:00E6 RPCBINDINGVECTORFREE
+ 0064:00EC RPCBINDINGFREE
+ 0064:00F2 RPCSTRINGFREE
+ 0064:00F8 I_RPCALLOCATE
+ 0064:00FE I_RPCFREE
+ 0064:0104 I_RPCFREEBUFFER
+ 0064:010A I_RPCGETBUFFER
+ 0064:0110 I_RPCSENDRECEIVE
+ 0064:0116 I_RPCNSBINDINGSETENTRYNAME
+ 0064:011C RPCREGOPENKEY
+ 0064:0122 RPCREGCREATEKEY
+ 0064:0128 RPCREGCLOSEKEY
+ 0064:012E RPCREGSETVALUE
+ 0064:0134 RPCREGQUERYVALUE
+ 0064:013A NDRCCONTEXTBINDING
+ 0064:0140 NDRCCONTEXTMARSHALL
+ 0064:0146 NDRCCONTEXTUNMARSHALL
+ 0064:014C RPCSSDESTROYCLIENTCONTEXT
+ 0064:0152 I_RPCTRANSCLIENTMAXFRAG
+ 0064:0158 NDRPOINTERUNMARSHALL
+ 0064:015E NDRCLIENTCONTEXTMARSHALL
+ 0064:0164 NDRPOINTERMARSHALL
+ 0064:016A NDRFREEBUFFER
+ 0064:0170 NDRGETBUFFER
+ 0064:0176 NDRPOINTERBUFFERSIZE
+ 0064:017C NDRCONVERT
+ 0064:0182 NDRCLIENTINITIALIZE
+ 0064:0188 NDRCLIENTINITIALIZENEW
+ 0064:018E NDRCLIENTCONTEXTUNMARSHALL
+ 0064:0194 NDRSENDRECEIVE
+ 0064:019A EXPORTTIME
+ 0064:01A0 I_RPCREGISTEREDBUFFERALLOCATE
+ 0064:01A6 I_RPCREGISTEREDBUFFERFREE
+ 0064:01AC I_NSGETMEMORYALLOCATOR
+ 0064:01B2 NDRSIMPLESTRUCTMARSHALL
+ 0064:01B8 NDRSIMPLESTRUCTBUFFERSIZE
+ 007F:000E _rc4_key
+ 007F:0120 _rc4
+ 00A0:0016 __aFulmul
+ 00A0:0016 __aFlmul
+ 00A0:0048 __aFulshr
+ 00A0:0054 __fmemcmp
+ 00A0:00B0 __fmemcpy
+ 00A0:010E __fstrncmp
+ 00A0:014A __fstrlen
+ 00A0:0164 __fstrcmp
+ 00A0:018E __fstrcpy
+ 00A0:01CA __fmemset
+ 00C2:0000 INITSECURITYINTERFACEA
+ 00C2:0012 _GetPassword
+ 00C2:0044 QUERYSECURITYPACKAGEINFOA
+ 00C2:0140 ENUMERATESECURITYPACKAGESA
+ 00C2:0176 ACQUIRECREDENTIALSHANDLEA
+ 00C2:026E FREECREDENTIALSHANDLE
+ 00C2:02BC _SspGetTokenBuffer
+ 00C2:0370 _SspHandleFirstCall
+ 0000:1000 Abs __AHINCR
+ 00C2:04F6 _SspHandleChallengeMessage
+ 00C2:0A96 INITIALIZESECURITYCONTEXTA
+ 00C2:0BB8 QUERYCONTEXTATTRIBUTESA
+ 00C2:0CE6 DELETESECURITYCONTEXT
+ 00C2:0D3C FREECONTEXTBUFFER
+ 00C2:0D5A APPLYCONTROLTOKEN
+ 00C2:0D68 _SsprGenCheckSum
+ 00C2:0DA4 MAKESIGNATURE
+ 00C2:0F9C VERIFYSIGNATURE
+ 00C2:11BC SEALMESSAGE
+ 00C2:13C8 UNSEALMESSAGE
+ 00C2:15D0 COMPLETEAUTHTOKEN
+ 00C2:15DE ??_C@_04PJIL@NTLM?$AA@
+ 00C2:15E4 ??_C@_0BG@FFCA@NTLM?5Security?5Package?$AA@
+ 00C2:15FA ??_C@_07LBGP@NTLMSSP?$AA@
+ 00C2:1602 _SspAlloc
+ 00C2:1610 _SspFree
+ 00C2:1620 _SspAllocateStringBlock
+ 00C2:1694 _SspCopyStringFromRaw
+ 00C2:16E6 _CacheInitializeCache
+ 00C2:16E8 _CacheGetPassword
+ 00C2:1740 _CacheSetCredentials
+ 00C2:1CC6 ??_C@_04KIKH@none?$AA@
+ 00C2:1CCC ??_C@_09CIPE@WORKGROUP?$AA@
+ 00C2:1CD6 _SspContextReferenceContext
+ 00C2:1D0A _SspContextDereferenceContext
+ 00C2:1D70 _SspContextAllocateContext
+ 00C2:1DD2 _SspContextGetTimeStamp
+ 00C2:1E14 _SspCredentialAllocateCredential
+ 00C2:1E60 _SspCredentialReferenceCredential
+ 00C2:1E94 _SspCredentialDereferenceCredential
+ 00C2:1F2A _CalculateLmOwfPassword
+ 00C2:1FE8 ??_C@_08OLPO@KGS?$CB?$EA?$CD$?$CF?$AA@
+ 00C2:1FF2 _CalculateLmResponse
+ 00C2:20B4 _SspTicks
+ 00C2:20C6 _SspGetWorkstation
+ 00C2:20CA _Crc32
+ 02D5:0000 _KeyBuilder
+ 02D5:0040 _C
+ 02D5:005C _D
+ 02D5:0078 _f
+ 02D5:0098 _L
+ 02D5:00D8 _KS
+ 02D5:03D8 _preS
+ 02D5:0408 _tempL
+ 0317:0070 _IP
+ 0317:00B0 _FP
+ 0317:00F0 _PC1_C
+ 0317:010C _PC1_D
+ 0317:0128 _shifts
+ 0317:0138 _PC2_C
+ 0317:0150 _PC2_D
+ 0317:0168 _E
+ 0317:0198 _S
+ 0317:0398 _P
+ 0317:03B8 _errno
+ 0317:03C2 __rpc_hostDS
+ 0317:03C4 _theTable
+ 0317:03DC _CRCTable
+ 0317:07DC __ctype
+ 0317:07DC __ctype_
+ 0317:0910 __end
+ 0317:0910 _edata
+ 0317:0910 __edata
+ 0317:0910 _end
+
+Program entry point at 0064:0000
diff --git a/public/sdk/rpc16/dos/dll/security.rpc b/public/sdk/rpc16/dos/dll/security.rpc
new file mode 100644
index 000000000..740922599
--- /dev/null
+++ b/public/sdk/rpc16/dos/dll/security.rpc
Binary files differ
diff --git a/public/sdk/rpc16/dos/inc/midles.h b/public/sdk/rpc16/dos/inc/midles.h
new file mode 100644
index 000000000..b64e4fe61
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/midles.h
@@ -0,0 +1,218 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ midles.h
+
+Abstract:
+
+ This module contains definitions needed for encoding/decoding
+ support (serializing/deserializing a.k.a. pickling).
+
+--*/
+
+#ifndef __MIDLES_H__
+#define __MIDLES_H__
+
+#include <rpcndr.h>
+
+//
+// Set the packing level for RPC structures for Dos and Windows.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Pickling support
+ */
+typedef enum
+{
+ MES_ENCODE,
+ MES_DECODE,
+} MIDL_ES_CODE;
+
+typedef enum
+{
+ MES_INCREMENTAL_HANDLE,
+ MES_FIXED_BUFFER_HANDLE,
+ MES_DYNAMIC_BUFFER_HANDLE
+} MIDL_ES_HANDLE_STYLE;
+
+
+typedef void (__RPC_USER * MIDL_ES_ALLOC )
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef void (__RPC_USER * MIDL_ES_WRITE)
+ ( IN OUT void __RPC_FAR * state,
+ IN char __RPC_FAR * buffer,
+ IN unsigned int size );
+
+typedef void (__RPC_USER * MIDL_ES_READ)
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef struct _MIDL_ES_MESSAGE
+{
+ MIDL_STUB_MESSAGE StubMsg;
+ MIDL_ES_CODE Operation;
+ void __RPC_FAR * UserState;
+ unsigned long MesVersion:8;
+ unsigned long HandleStyle:8;
+ unsigned long HandleFlags:8;
+ unsigned long Reserve:8;
+ MIDL_ES_ALLOC Alloc;
+ MIDL_ES_WRITE Write;
+ MIDL_ES_READ Read;
+ unsigned char __RPC_FAR * Buffer;
+ unsigned long BufferSize;
+ unsigned char __RPC_FAR * __RPC_FAR * pDynBuffer;
+ unsigned long __RPC_FAR * pEncodedSize;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ unsigned long ProcNumber;
+ unsigned long AlienDataRep;
+ unsigned long IncrDataSize;
+ unsigned long ByteCount;
+} MIDL_ES_MESSAGE, __RPC_FAR * PMIDL_ES_MESSAGE;
+
+typedef PMIDL_ES_MESSAGE MIDL_ES_HANDLE;
+
+RPC_STATUS RPC_ENTRY
+MesEncodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_READ ReadFn,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesIncrementalHandleReset(
+ handle_t Handle,
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ MIDL_ES_READ ReadFn,
+ MIDL_ES_CODE Operation );
+
+
+RPC_STATUS RPC_ENTRY
+MesEncodeFixedBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesEncodeDynBufferHandleCreate(
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesBufferHandleReset(
+ handle_t Handle,
+ unsigned long HandleStyle,
+ MIDL_ES_CODE Operation,
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize );
+
+
+RPC_STATUS RPC_ENTRY
+MesHandleFree( handle_t Handle );
+
+RPC_STATUS RPC_ENTRY
+MesInqProcEncodingId(
+ handle_t Handle,
+ PRPC_SYNTAX_IDENTIFIER pInterfaceId,
+ unsigned long __RPC_FAR * pProcNum );
+
+
+#if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
+#define __RPC_UNALIGNED __unaligned
+#else
+#define __RPC_UNALIGNED
+#endif
+
+void RPC_ENTRY I_NdrMesMessageInit( PMIDL_STUB_MESSAGE );
+
+size_t RPC_ENTRY
+NdrMesSimpleTypeAlignSize ( handle_t );
+
+void RPC_ENTRY
+NdrMesSimpleTypeDecode(
+ handle_t Handle,
+ void __RPC_FAR * pObject,
+ short Size );
+
+void RPC_ENTRY
+NdrMesSimpleTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ void __RPC_FAR * pObject,
+ short Size );
+
+
+size_t RPC_ENTRY
+NdrMesTypeAlignSize(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_VAR_ENTRY
+NdrMesProcEncodeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ ... );
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __MIDLES_H__ */
diff --git a/public/sdk/rpc16/dos/inc/rpc.h b/public/sdk/rpc16/dos/inc/rpc.h
new file mode 100644
index 000000000..ba4dbed89
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpc.h
@@ -0,0 +1,64 @@
+/*++
+
+Copyright (c) 1991-1993 Microsoft Corporation
+
+Module Name:
+
+ rpc.h
+
+Abstract:
+
+ Master include file for RPC applications.
+
+--*/
+
+#ifndef __RPC_H__
+#define __RPC_H__
+
+// Set the packing level for RPC structures.
+
+#pragma warning( disable:4103 )
+#pragma pack(2)
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define __RPC_DOS__
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+typedef unsigned short RPC_STATUS;
+
+// Added 2 words for DOS mail.
+#define RPCXCWORD 9
+
+#define __RPC_FAR __far
+#define __RPC_API __far __pascal
+#define __RPC_USER __far __pascal
+#define __RPC_STUB __far __pascal
+#define RPC_ENTRY __pascal __loadds __far
+
+typedef void _far * I_RPC_HANDLE;
+
+#include "rpcdce.h"
+#include "rpcnsi.h"
+#include "rpcerr.h"
+#include "rpcx86.h"
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level.
+
+#pragma pack()
+#pragma warning( default:4103 )
+
+#endif // __RPC_H__
+
+
diff --git a/public/sdk/rpc16/dos/inc/rpcdce.h b/public/sdk/rpc16/dos/inc/rpcdce.h
new file mode 100644
index 000000000..099457ea4
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpcdce.h
@@ -0,0 +1,1618 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdce.h
+
+Abstract:
+
+ This module contains the DCE RPC runtime APIs.
+
+--*/
+
+#ifndef __RPCDCE_H__
+#define __RPCDCE_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define IN
+#define OUT
+#define OPTIONAL
+
+/*typedef char small;*/
+/*typedef unsigned char byte;*/
+/*typedef unsigned char boolean;*/
+
+typedef I_RPC_HANDLE RPC_BINDING_HANDLE;
+typedef RPC_BINDING_HANDLE handle_t;
+#define rpc_binding_handle_t RPC_BINDING_HANDLE
+
+#ifndef GUID_DEFINED
+#define GUID_DEFINED
+typedef struct _GUID
+{
+ unsigned long Data1;
+ unsigned short Data2;
+ unsigned short Data3;
+ unsigned char Data4[8];
+} GUID;
+#endif /* GUID_DEFINED */
+
+#ifndef UUID_DEFINED
+#define UUID_DEFINED
+typedef GUID UUID;
+#ifndef uuid_t
+#define uuid_t UUID
+#endif
+#endif
+
+typedef struct _RPC_BINDING_VECTOR
+{
+ unsigned long Count;
+ RPC_BINDING_HANDLE BindingH[1];
+} RPC_BINDING_VECTOR;
+#ifndef rpc_binding_vector_t
+#define rpc_binding_vector_t RPC_BINDING_VECTOR
+#endif
+
+typedef struct _UUID_VECTOR
+{
+ unsigned long Count;
+ UUID *Uuid[1];
+} UUID_VECTOR;
+#ifndef uuid_vector_t
+#define uuid_vector_t UUID_VECTOR
+#endif
+
+typedef void __RPC_FAR * RPC_IF_HANDLE;
+
+#ifndef IFID_DEFINED
+#define IFID_DEFINED
+typedef struct _RPC_IF_ID
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_IF_ID;
+#endif
+
+#define RPC_C_BINDING_INFINITE_TIMEOUT 10
+#define RPC_C_BINDING_MIN_TIMEOUT 0
+#define RPC_C_BINDING_DEFAULT_TIMEOUT 5
+#define RPC_C_BINDING_MAX_TIMEOUT 9
+
+#define RPC_C_CANCEL_INFINITE_TIMEOUT -1
+
+#define RPC_C_LISTEN_MAX_CALLS_DEFAULT 1234
+#define RPC_C_PROTSEQ_MAX_REQS_DEFAULT 10
+
+#define RPC_C_BIND_TO_ALL_NICS 1
+#define RPC_C_USE_INTERNET_PORT 1
+#define RPC_C_USE_INTRANET_PORT 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+typedef struct _RPC_PROTSEQ_VECTORA
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORA;
+
+typedef struct _RPC_PROTSEQ_VECTORW
+{
+ unsigned int Count;
+ unsigned short __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORW;
+
+#ifdef UNICODE
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORW
+#else /* UNICODE */
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+typedef struct _RPC_PROTSEQ_VECTOR
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTOR;
+
+#endif /* RPC_UNICODE_SUPPORTED */
+typedef struct _RPC_POLICY {
+ unsigned int Length ;
+ unsigned long EndpointFlags ;
+ unsigned long NICFlags ;
+ } RPC_POLICY, __RPC_FAR *PRPC_POLICY ;
+
+typedef void __RPC_USER
+RPC_OBJECT_INQ_FN (
+ IN UUID __RPC_FAR * ObjectUuid,
+ OUT UUID __RPC_FAR * TypeUuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+typedef RPC_STATUS
+RPC_IF_CALLBACK_FN (
+ IN RPC_IF_HANDLE InterfaceUuid,
+ IN void *Context
+ ) ;
+
+#define RPC_MGR_EPV void
+
+typedef struct
+{
+ unsigned int Count;
+ unsigned long Stats[1];
+} RPC_STATS_VECTOR;
+
+#define RPC_C_STATS_CALLS_IN 0
+#define RPC_C_STATS_CALLS_OUT 1
+#define RPC_C_STATS_PKTS_IN 2
+#define RPC_C_STATS_PKTS_OUT 3
+
+typedef struct
+{
+ unsigned long Count;
+ RPC_IF_ID __RPC_FAR * IfId[1];
+} RPC_IF_ID_VECTOR;
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingFree (
+ IN OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingW
+#else /* UNICODE */
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBinding (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingInqObject (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingReset (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* RpcBindingServerFromClient : UNSUPPORTED */
+/* RpcBindingSetAuthInfo */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingSetObject (
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqDefaultProtectLevel(
+ IN unsigned long AuthnSvc,
+ OUT unsigned long __RPC_FAR *AuthnLevel
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#ifdef UNICODE
+#define RpcBindingToStringBinding RpcBindingToStringBindingW
+#else /* UNICODE */
+#define RpcBindingToStringBinding RpcBindingToStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingVectorFree (
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeA (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeW (
+ IN unsigned short __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned short __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned short __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned short __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned short __RPC_FAR * Options OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingCompose RpcStringBindingComposeW
+#else /* UNICODE */
+#define RpcStringBindingCompose RpcStringBindingComposeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingCompose (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingParse RpcStringBindingParseW
+#else /* UNICODE */
+#define RpcStringBindingParse RpcStringBindingParseA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParse (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeA (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeW (
+ IN OUT unsigned short __RPC_FAR * __RPC_FAR * String
+ );
+
+#ifdef UNICODE
+#define RpcStringFree RpcStringFreeW
+#else /* UNICODE */
+#define RpcStringFree RpcStringFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringFree (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcIfInqId (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_IF_ID __RPC_FAR * RpcIfId
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidA (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidW (
+ IN unsigned short __RPC_FAR * Protseq
+ );
+
+#ifdef UNICODE
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidW
+#else /* UNICODE */
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValid (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned int Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetCancelTimeout(
+ long Timeout
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsA (
+ OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsW (
+ OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsW
+#else /* UNICODE */
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqs (
+ OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectInqType (
+ IN UUID __RPC_FAR * ObjUuid,
+ OUT UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetInqFn (
+ IN RPC_OBJECT_INQ_FN __RPC_FAR * InquiryFn
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetType (
+ IN UUID __RPC_FAR * ObjUuid,
+ IN UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeA (
+ IN OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeW (
+ IN OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcProtseqVectorFree RpcProtseqVectorFreeW
+#else /* UNICODE */
+#define RpcProtseqVectorFree RpcProtseqVectorFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFree (
+ IN OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqBindings (
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ OUT RPC_MGR_EPV __RPC_FAR * __RPC_FAR * MgrEpv
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerListen (
+ IN unsigned int MinimumCallThreads,
+ IN unsigned int MaxCalls,
+ IN unsigned int DontWait
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid OPTIONAL,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIfEx (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv,
+ IN unsigned int Flags,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_CALLBACK_FN __RPC_FAR *IfCallback
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUnregisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ IN unsigned int WaitForCallsToComplete
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqs (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsEx (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIf (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIfEx (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseq RpcServerUseProtseqW
+#define RpcServerUseProtseqEx RpcServerUseProtseqExW
+#else /* UNICODE */
+#define RpcServerUseProtseq RpcServerUseProtseqA
+#define RpcServerUseProtseqEx RpcServerUseProtseqExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseq (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpW
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExW
+#else /* UNICODE */
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpA
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEp (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfW
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExW
+#else /* UNICODE */
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfA
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIf (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStatsVectorFree (
+ IN RPC_STATS_VECTOR ** StatsVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqStats (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_STATS_VECTOR ** Statistics
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtIsServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStopServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtWaitServerListen (
+ void
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetServerStackSize (
+ IN unsigned long ThreadStackSize
+ );
+
+/* server */
+void RPC_ENTRY
+RpcSsDontSerializeContext (
+ void
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtEnableIdleCleanup (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqIfIds (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcIfIdVectorFree (
+ IN OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#ifdef UNICODE
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameW
+#else /* UNICODE */
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameA (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameW (
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#ifdef UNICODE
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameW
+#else /* UNICODE */
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincName (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcEpResolveBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_IF_HANDLE IfSpec
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#ifdef UNICODE
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameW
+#else /* UNICODE */
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef void __RPC_FAR * RPC_AUTH_IDENTITY_HANDLE;
+typedef void __RPC_FAR * RPC_AUTHZ_HANDLE;
+
+#define RPC_C_AUTHN_LEVEL_DEFAULT 0
+#define RPC_C_AUTHN_LEVEL_NONE 1
+#define RPC_C_AUTHN_LEVEL_CONNECT 2
+#define RPC_C_AUTHN_LEVEL_CALL 3
+#define RPC_C_AUTHN_LEVEL_PKT 4
+#define RPC_C_AUTHN_LEVEL_PKT_INTEGRITY 5
+#define RPC_C_AUTHN_LEVEL_PKT_PRIVACY 6
+
+#define RPC_C_IMP_LEVEL_ANONYMOUS 1
+#define RPC_C_IMP_LEVEL_IDENTIFY 2
+#define RPC_C_IMP_LEVEL_IMPERSONATE 3
+#define RPC_C_IMP_LEVEL_DELEGATE 4
+
+#define RPC_C_QOS_IDENTITY_STATIC 0
+#define RPC_C_QOS_IDENTITY_DYNAMIC 1
+
+#define RPC_C_QOS_CAPABILITIES_DEFAULT 0
+#define RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH 1
+
+#define RPC_C_PROTECT_LEVEL_DEFAULT (RPC_C_AUTHN_LEVEL_DEFAULT)
+#define RPC_C_PROTECT_LEVEL_NONE (RPC_C_AUTHN_LEVEL_NONE)
+#define RPC_C_PROTECT_LEVEL_CONNECT (RPC_C_AUTHN_LEVEL_CONNECT)
+#define RPC_C_PROTECT_LEVEL_CALL (RPC_C_AUTHN_LEVEL_CALL)
+#define RPC_C_PROTECT_LEVEL_PKT (RPC_C_AUTHN_LEVEL_PKT)
+#define RPC_C_PROTECT_LEVEL_PKT_INTEGRITY (RPC_C_AUTHN_LEVEL_PKT_INTEGRITY)
+#define RPC_C_PROTECT_LEVEL_PKT_PRIVACY (RPC_C_AUTHN_LEVEL_PKT_PRIVACY)
+
+#define RPC_C_AUTHN_NONE 0
+#define RPC_C_AUTHN_DCE_PRIVATE 1
+#define RPC_C_AUTHN_DCE_PUBLIC 2
+#define RPC_C_AUTHN_DEC_PUBLIC 4
+#define RPC_C_AUTHN_WINNT 10
+#define RPC_C_AUTHN_DEFAULT 0xFFFFFFFFL
+
+#define RPC_C_SECURITY_QOS_VERSION 1L
+
+typedef struct _RPC_SECURITY_QOS {
+ unsigned long Version;
+ unsigned long Capabilities;
+ unsigned long IdentityTracking;
+ unsigned long ImpersonationType;
+} RPC_SECURITY_QOS, *PRPC_SECURITY_QOS;
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+typedef struct _SEC_WINNT_AUTH_IDENTITY
+{
+ char __RPC_FAR *User;
+ char __RPC_FAR *Domain;
+ char __RPC_FAR *Password;
+} SEC_WINNT_AUTH_IDENTITY;
+#else
+
+
+#define SEC_WINNT_AUTH_IDENTITY_ANSI 0x1
+#define SEC_WINNT_AUTH_IDENTITY_UNICODE 0x2
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_W {
+ unsigned short __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned short __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned short __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W;
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_A {
+ unsigned char __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned char __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned char __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A;
+
+
+#ifdef UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_W
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_W
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_W
+#else // UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_A
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_A
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_A
+#endif // UNICODE
+#endif // defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+
+#define RPC_C_AUTHZ_NONE 0
+#define RPC_C_AUTHZ_NAME 1
+#define RPC_C_AUTHZ_DCE 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientA (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientW (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc,
+ IN RPC_SECURITY_QOS *SecurityQos OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc, OPTIONAL
+ IN RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc, OPTIONAL
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL,
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoA (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoW (
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientW
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoW
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoW
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoW
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExW
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExW
+#else /* UNICODE */
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientA
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoA
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoA
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoA
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExA
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClient (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfo (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef struct {
+ unsigned char __RPC_FAR * UserName;
+ unsigned char __RPC_FAR * ComputerName;
+ unsigned short Privilege;
+ unsigned long AuthFlags;
+} RPC_CLIENT_INFORMATION1, __RPC_FAR * PRPC_CLIENT_INFORMATION1;
+
+RPC_STATUS RPC_ENTRY
+RpcBindingServerFromClient (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * ServerBinding
+ );
+
+void RPC_ENTRY
+RpcRaiseException (
+ IN RPC_STATUS exception
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcTestCancel(
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcCancelThread(
+ IN void * Thread
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringA (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringA (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringW (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringW (
+ IN unsigned short __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef UNICODE
+#define UuidFromString UuidFromStringW
+#define UuidToString UuidToStringW
+#else /* UNICODE */
+#define UuidFromString UuidFromStringA
+#define UuidToString UuidToStringA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToString (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromString (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+signed int RPC_ENTRY
+UuidCompare (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+UuidCreateNil (
+ OUT UUID __RPC_FAR * NilUuid
+ );
+
+int RPC_ENTRY
+UuidEqual (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+unsigned short RPC_ENTRY
+UuidHash (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+int RPC_ENTRY
+UuidIsNil (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+#ifdef UNICODE
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceW
+#define RpcEpRegister RpcEpRegisterW
+#else /* UNICODE */
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceA
+#define RpcEpRegister RpcEpRegisterA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplace (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegister (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+
+RPC_STATUS RPC_ENTRY
+RpcEpUnregister(
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextA (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextW (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned short __RPC_FAR * ErrorText
+ );
+
+#ifdef UNICODE
+#define DceErrorInqText DceErrorInqTextW
+#else /* UNICODE */
+#define DceErrorInqText DceErrorInqTextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqText (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#define DCE_C_ERROR_STRING_LEN 256
+
+typedef I_RPC_HANDLE * RPC_EP_INQ_HANDLE;
+
+#define RPC_C_EP_ALL_ELTS 0
+#define RPC_C_EP_MATCH_BY_IF 1
+#define RPC_C_EP_MATCH_BY_OBJ 2
+#define RPC_C_EP_MATCH_BY_BOTH 3
+
+#define RPC_C_VERS_ALL 1
+#define RPC_C_VERS_COMPATIBLE 2
+#define RPC_C_VERS_EXACT 3
+#define RPC_C_VERS_MAJOR_ONLY 4
+#define RPC_C_VERS_UPTO 5
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqBegin (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption OPTIONAL,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqDone (
+ IN OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextA (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextW (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextW
+#else /* UNICODE */
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNext (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpUnregister (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN RPC_IF_ID __RPC_FAR * IfId,
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL
+ );
+
+typedef int
+(__RPC_API * RPC_MGMT_AUTHORIZATION_FN) (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ IN unsigned long RequestedMgmtOperation,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#define RPC_C_MGMT_INQ_IF_IDS 0
+#define RPC_C_MGMT_INQ_PRINC_NAME 1
+#define RPC_C_MGMT_INQ_STATS 2
+#define RPC_C_MGMT_IS_SERVER_LISTEN 3
+#define RPC_C_MGMT_STOP_SERVER_LISTEN 4
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetAuthorizationFn (
+ IN RPC_MGMT_AUTHORIZATION_FN AuthorizationFn
+ );
+
+
+#define RPC_C_PARM_MAX_PACKET_LENGTH 1
+#define RPC_C_PARM_BUFFER_LENGTH 2
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqParameter (
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetParameter (
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingInqParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingSetParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+#define RPC_IF_AUTOLISTEN 0x0001
+#define RPC_IF_OLE 0x0002
+
+#include <rpcdcep.h>
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCDCE_H__ */
diff --git a/public/sdk/rpc16/dos/inc/rpcdcep.h b/public/sdk/rpc16/dos/inc/rpcdcep.h
new file mode 100644
index 000000000..85ed0fd67
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpcdcep.h
@@ -0,0 +1,415 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdcep.h
+
+Abstract:
+
+ This module contains the private RPC runtime APIs for use by the
+ stubs and by support libraries. Applications must not call these
+ routines.
+
+--*/
+
+#ifndef __RPCDCEP_H__
+#define __RPCDCEP_H__
+
+// Set the packing level for RPC structures for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _RPC_VERSION {
+ unsigned short MajorVersion;
+ unsigned short MinorVersion;
+} RPC_VERSION;
+
+typedef struct _RPC_SYNTAX_IDENTIFIER {
+ GUID SyntaxGUID;
+ RPC_VERSION SyntaxVersion;
+} RPC_SYNTAX_IDENTIFIER, __RPC_FAR * PRPC_SYNTAX_IDENTIFIER;
+
+typedef struct _RPC_MESSAGE
+{
+ RPC_BINDING_HANDLE Handle;
+ unsigned long DataRepresentation;
+ void __RPC_FAR * Buffer;
+ unsigned int BufferLength;
+ unsigned int ProcNum;
+ PRPC_SYNTAX_IDENTIFIER TransferSyntax;
+ void __RPC_FAR * RpcInterfaceInformation;
+ void __RPC_FAR * ReservedForRuntime;
+ RPC_MGR_EPV __RPC_FAR * ManagerEpv;
+ void __RPC_FAR * ImportContext;
+ unsigned long RpcFlags;
+} RPC_MESSAGE, __RPC_FAR * PRPC_MESSAGE;
+
+
+typedef RPC_STATUS RPC_ENTRY RPC_FORWARD_FUNCTION(
+ IN UUID __RPC_FAR * InterfaceId,
+ IN RPC_VERSION __RPC_FAR * InterfaceVersion,
+ IN UUID __RPC_FAR * ObjectId,
+ IN unsigned char __RPC_FAR * Rpcpro,
+ IN void __RPC_FAR * __RPC_FAR * ppDestEndpoint);
+
+/*
+ * Types of function calls for datagram rpc
+ */
+
+#define RPC_NCA_FLAGS_DEFAULT 0x00000000 /* 0b000...000 */
+#define RPC_NCA_FLAGS_IDEMPOTENT 0x00000001 /* 0b000...001 */
+#define RPC_NCA_FLAGS_BROADCAST 0x00000002 /* 0b000...010 */
+#define RPC_NCA_FLAGS_MAYBE 0x00000004 /* 0b000...100 */
+
+#define RPC_BUFFER_COMPLETE 0x00001000 /* used by pipes */
+#define RPC_BUFFER_PARTIAL 0x00002000 /* used by pipes */
+#define RPC_BUFFER_EXTRA 0x00004000 /* used by pipes */
+
+#define RPCFLG_NON_NDR 0x80000000UL
+#define RPCFLG_ASYNCHRONOUS 0x40000000UL
+#define RPCFLG_INPUT_SYNCHRONOUS 0x20000000UL
+#define RPCFLG_LOCAL_CALL 0x10000000UL
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#define RPC_FLAGS_VALID_BIT 0x8000
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define RPC_FLAGS_VALID_BIT 0x00008000
+#endif
+
+typedef
+void
+(__RPC_STUB __RPC_FAR * RPC_DISPATCH_FUNCTION) (
+ IN OUT PRPC_MESSAGE Message
+ );
+
+typedef struct {
+ unsigned int DispatchTableCount;
+ RPC_DISPATCH_FUNCTION __RPC_FAR * DispatchTable;
+ int Reserved;
+} RPC_DISPATCH_TABLE, __RPC_FAR * PRPC_DISPATCH_TABLE;
+
+typedef struct _RPC_PROTSEQ_ENDPOINT
+{
+ unsigned char __RPC_FAR * RpcProtocolSequence;
+ unsigned char __RPC_FAR * Endpoint;
+} RPC_PROTSEQ_ENDPOINT, __RPC_FAR * PRPC_PROTSEQ_ENDPOINT;
+
+/*
+Both of these types MUST start with the InterfaceId and TransferSyntax.
+Look at RpcIfInqId and I_RpcIfInqTransferSyntaxes to see why.
+*/
+#define NT351_INTERFACE_SIZE 0x40
+#define RPC_INTERFACE_HAS_PIPES 0x0001
+
+typedef struct _RPC_SERVER_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ RPC_MGR_EPV __RPC_FAR *DefaultManagerEpv;
+ void const __RPC_FAR *InterpreterInfo;
+ unsigned int Flags ;
+} RPC_SERVER_INTERFACE, __RPC_FAR * PRPC_SERVER_INTERFACE;
+
+typedef struct _RPC_CLIENT_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ unsigned long Reserved;
+ void const __RPC_FAR * InterpreterInfo;
+ unsigned int Flags ;
+} RPC_CLIENT_INTERFACE, __RPC_FAR * PRPC_CLIENT_INTERFACE;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSendReceive (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSend (
+ IN OUT PRPC_MESSAGE Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReceive (
+ IN OUT PRPC_MESSAGE Message,
+ IN unsigned int Size
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreePipeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReallocPipeBuffer (
+ IN PRPC_MESSAGE Message,
+ IN unsigned int NewSize
+ ) ;
+
+typedef void * I_RPC_MUTEX;
+
+void RPC_ENTRY
+I_RpcRequestMutex (
+ IN OUT I_RPC_MUTEX * Mutex
+ );
+
+void RPC_ENTRY
+I_RpcClearMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void RPC_ENTRY
+I_RpcDeleteMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void __RPC_FAR * RPC_ENTRY
+I_RpcAllocate (
+ IN unsigned int Size
+ );
+
+void RPC_ENTRY
+I_RpcFree (
+ IN void __RPC_FAR * Object
+ );
+
+void RPC_ENTRY
+I_RpcPauseExecution (
+ IN unsigned long Milliseconds
+ );
+
+typedef
+void
+(__RPC_USER __RPC_FAR * PRPC_RUNDOWN) (
+ void __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle,
+ IN PRPC_RUNDOWN RundownRoutine,
+ IN void * Context
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcStopMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle
+ );
+
+RPC_BINDING_HANDLE RPC_ENTRY
+I_RpcGetCurrentCallHandle(
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetAssociationContext (
+ OUT void __RPC_FAR * __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetAssociationContext (
+ IN void __RPC_FAR * AssociationContext
+ );
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+#endif
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#endif
+
+#define TRANSPORT_TYPE_CN 0x1
+#define TRANSPORT_TYPE_DG 0x2
+#define TRANSPORT_TYPE_LPC 0x4
+#define TRANSPORT_TYPE_WMSG 0x8
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqTransportType (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Type
+ );
+
+typedef struct _RPC_TRANSFER_SYNTAX
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_TRANSFER_SYNTAX;
+
+RPC_STATUS RPC_ENTRY
+I_RpcIfInqTransferSyntaxes (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_TRANSFER_SYNTAX __RPC_FAR * TransferSyntaxes,
+ IN unsigned int TransferSyntaxSize,
+ OUT unsigned int __RPC_FAR * TransferSyntaxCount
+ );
+
+RPC_STATUS RPC_ENTRY
+I_UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingIsClientLocal (
+ IN RPC_BINDING_HANDLE BindingHandle OPTIONAL,
+ OUT unsigned int __RPC_FAR * ClientLocalFlag
+ );
+
+void RPC_ENTRY
+I_RpcSsDontSerializeContext (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcLaunchDatagramReceiveThread(
+ void __RPC_FAR * pAddress
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerRegisterForwardFunction (
+ IN RPC_FORWARD_FUNCTION __RPC_FAR * pForwardFunction
+ );
+
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionInqSockBuffSize(
+ OUT unsigned long __RPC_FAR * RecvBuffSize,
+ OUT unsigned long __RPC_FAR * SendBuffSize
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionSetSockBuffSize(
+ IN unsigned long RecvBuffSize,
+ IN unsigned long SendBuffSize
+ );
+
+
+#ifdef MSWMSG
+RPC_STATUS RPC_ENTRY
+I_RpcServerStartListening(
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerStopListening(
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetThreadWindowHandle(
+ OUT HWND *WindowHandle
+ ) ;
+
+typedef RPC_STATUS (*RPC_BLOCKING_FN) (
+ IN void *wnd,
+ IN void *Context,
+ IN HANDLE hSyncEvent
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcAsyncSendReceive(
+ IN OUT PRPC_MESSAGE pRpcMessage,
+ IN OPTIONAL void *Context,
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingSetAsync(
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_BLOCKING_FN BlockingFn
+ ) ;
+
+LONG RPC_ENTRY
+I_RpcWindowProc(
+ IN HWND hWnd,
+ IN UINT Message,
+ IN WPARAM wParam,
+ IN LPARAM lParam
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetWMsgEndpoint (
+ IN WCHAR __RPC_FAR * Endpoint
+ ) ;
+#endif
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerInqTransportType(
+ OUT unsigned int __RPC_FAR * Type
+ ) ;
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __RPCDCEP_H__ */
diff --git a/public/sdk/rpc16/dos/inc/rpcerr.h b/public/sdk/rpc16/dos/inc/rpcerr.h
new file mode 100644
index 000000000..139df1b1b
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpcerr.h
@@ -0,0 +1,188 @@
+/*********************************************************/
+/** Microsoft LAN Manager **/
+/** Copyright(c) Microsoft Corp., 1987-1990 **/
+/** **/
+/** Rpc Error Codes from the compiler and runtime **/
+/** **/
+/*********************************************************/
+
+/*
+If you change this file, you must also change ntstatus.mc and winerror.mc
+*/
+
+#ifndef __RPCERR_H__
+#define __RPCERR_H__
+
+#define RPC_S_OK 0
+#define RPC_S_INVALID_ARG 1
+#define RPC_S_INVALID_STRING_BINDING 2
+#define RPC_S_OUT_OF_MEMORY 3
+#define RPC_S_WRONG_KIND_OF_BINDING 4
+#define RPC_S_INVALID_BINDING 5
+#define RPC_S_PROTSEQ_NOT_SUPPORTED 6
+#define RPC_S_INVALID_RPC_PROTSEQ 7
+#define RPC_S_INVALID_STRING_UUID 8
+#define RPC_S_INVALID_ENDPOINT_FORMAT 9
+
+#define RPC_S_INVALID_NET_ADDR 10
+#define RPC_S_INVALID_NAF_ID 11
+#define RPC_S_NO_ENDPOINT_FOUND 12
+#define RPC_S_INVALID_TIMEOUT 13
+#define RPC_S_OBJECT_NOT_FOUND 14
+#define RPC_S_ALREADY_REGISTERED 15
+#define RPC_S_TYPE_ALREADY_REGISTERED 16
+#define RPC_S_ALREADY_LISTENING 17
+#define RPC_S_NO_PROTSEQS_REGISTERED 18
+#define RPC_S_NOT_LISTENING 19
+
+#define RPC_S_OUT_OF_THREADS 20
+#define RPC_S_UNKNOWN_MGR_TYPE 21
+#define RPC_S_UNKNOWN_IF 22
+#define RPC_S_NO_BINDINGS 23
+#define RPC_S_NO_PROTSEQS 24
+#define RPC_S_CANT_CREATE_ENDPOINT 25
+#define RPC_S_OUT_OF_RESOURCES 26
+#define RPC_S_SERVER_UNAVAILABLE 27
+#define RPC_S_SERVER_TOO_BUSY 28
+#define RPC_S_INVALID_NETWORK_OPTIONS 29
+
+#define RPC_S_NO_CALL_ACTIVE 30
+#define RPC_S_INVALID_LEVEL 31
+#define RPC_S_CANNOT_SUPPORT 32
+#define RPC_S_CALL_FAILED 33
+#define RPC_S_CALL_FAILED_DNE 34
+#define RPC_S_PROTOCOL_ERROR 35
+
+// Unused.
+
+// Unused.
+
+#define RPC_S_UNSUPPORTED_TRANS_SYN 38
+#define RPC_S_BUFFER_TOO_SMALL 39
+
+#define RPC_S_NO_CONTEXT_AVAILABLE 40
+#define RPC_S_SERVER_OUT_OF_MEMORY 41
+#define RPC_S_UNSUPPORTED_TYPE 42
+#define RPC_S_ZERO_DIVIDE 43
+#define RPC_S_ADDRESS_ERROR 44
+#define RPC_S_FP_DIV_ZERO 45
+#define RPC_S_FP_UNDERFLOW 46
+#define RPC_S_FP_OVERFLOW 47
+#define RPC_S_INVALID_TAG 48
+#define RPC_S_INVALID_BOUND 49
+
+#define RPC_S_NO_ENTRY_NAME 50
+#define RPC_S_INVALID_NAME_SYNTAX 51
+#define RPC_S_UNSUPPORTED_NAME_SYNTAX 52
+#define RPC_S_UUID_LOCAL_ONLY 53
+#define RPC_S_UUID_NO_ADDRESS 54
+#define RPC_S_DUPLICATE_ENDPOINT 55
+#define RPC_S_INVALID_SECURITY_DESC 56
+#define RPC_S_ACCESS_DENIED 57
+#define RPC_S_UNKNOWN_AUTHN_TYPE 58
+#define RPC_S_MAX_CALLS_TOO_SMALL 59
+
+#define RPC_S_STRING_TOO_LONG 60
+#define RPC_S_PROTSEQ_NOT_FOUND 61
+#define RPC_S_PROCNUM_OUT_OF_RANGE 62
+#define RPC_S_BINDING_HAS_NO_AUTH 63
+#define RPC_S_UNKNOWN_AUTHN_SERVICE 64
+#define RPC_S_UNKNOWN_AUTHN_LEVEL 65
+#define RPC_S_INVALID_AUTH_IDENTITY 66
+#define RPC_S_UNKNOWN_AUTHZ_SERVICE 67
+#define EPT_S_INVALID_ENTRY 68
+#define EPT_S_CANT_PERFORM_OP 69
+
+#define EPT_S_NOT_REGISTERED 70
+#define RPC_S_NOTHING_TO_EXPORT 71
+#define RPC_S_INCOMPLETE_NAME 72
+#define RPC_S_UNIMPLEMENTED_API 73
+#define RPC_S_INVALID_VERS_OPTION 74
+#define RPC_S_NO_MORE_MEMBERS 75
+#define RPC_S_NOT_ALL_OBJS_UNEXPORTED 76
+#define RPC_S_INTERFACE_NOT_FOUND 77
+#define RPC_S_ENTRY_ALREADY_EXISTS 78
+#define RPC_S_ENTRY_NOT_FOUND 79
+
+#define RPC_S_NAME_SERVICE_UNAVAILABLE 80
+#define RPC_S_CALL_IN_PROGRESS 81
+#define RPC_S_NO_MORE_BINDINGS 82
+#define RPC_S_GROUP_MEMBER_NOT_FOUND 83
+#define EPT_S_CANT_CREATE 84
+#define RPC_S_INVALID_OBJECT 85
+#define RPC_S_CALL_CANCELLED 86
+#define RPC_S_BINDING_INCOMPLETE 87
+#define RPC_S_COMM_FAILURE 88
+#define RPC_S_UNSUPPORTED_AUTHN_LEVEL 89
+
+#define RPC_S_NO_PRINC_NAME 90
+#define RPC_S_NOT_RPC_ERROR 91
+#define RPC_S_SEC_PKG_ERROR 92
+#define RPC_S_NOT_CANCELLED 93
+#define RPC_S_SEND_INCOMPLETE 94
+
+
+#define RPC_S_INTERNAL_ERROR 100
+
+/* The list of servers available for auto_handle binding has been exhausted. */
+
+#define RPC_X_NO_MORE_ENTRIES 256
+
+/* Insufficient memory available to set up necessary data structures. */
+
+#define RPC_X_NO_MEMORY 257
+
+/* The specified bounds of an array are inconsistent. */
+
+#define RPC_X_INVALID_BOUND 258
+
+/* The discriminant value does not match any of the case values. */
+/* There is no default case. */
+
+#define RPC_X_INVALID_TAG 259
+
+/* The file designated by DCERPCCHARTRANS cannot be opened. */
+
+#define RPC_X_SS_CHAR_TRANS_OPEN_FAIL 260
+
+/* The file containing char translation table has fewer than 512 bytes. */
+
+#define RPC_X_SS_CHAR_TRANS_SHORT_FILE 261
+
+/* A null context handle is passed in an [in] parameter position. */
+
+#define RPC_X_SS_IN_NULL_CONTEXT 262
+
+/* Only raised on the callee side. */
+/* A uuid in an [in] handle does not correspond to any known context. */
+
+#define RPC_X_SS_CONTEXT_MISMATCH 263
+
+/* Only raised on the caller side. */
+/* A uuid in an [in, out] context handle changed during a call. */
+
+#define RPC_X_SS_CONTEXT_DAMAGED 264
+
+#define RPC_X_SS_HANDLES_MISMATCH 265
+
+#define RPC_X_SS_CANNOT_GET_CALL_HANDLE 266
+
+#define RPC_X_NULL_REF_POINTER 267
+
+#define RPC_X_ENUM_VALUE_OUT_OF_RANGE 268
+
+#define RPC_X_BYTE_COUNT_TOO_SMALL 269
+
+#define RPC_X_BAD_STUB_DATA 270
+
+#define RPC_X_INVALID_ES_ACTION 271
+#define RPC_X_WRONG_ES_VERSION 272
+#define RPC_X_WRONG_STUB_VERSION 273
+#define RPC_X_INVALID_BUFFER 274
+#define RPC_X_INVALID_PIPE_OBJECT 275
+#define RPC_X_INVALID_PIPE_OPERATION 276
+#define RPC_X_WRONG_PIPE_VERSION 277
+
+
+#endif /* __RPCERR_H__ */
+
diff --git a/public/sdk/rpc16/dos/inc/rpcndr.h b/public/sdk/rpc16/dos/inc/rpcndr.h
new file mode 100644
index 000000000..65d1cdbfe
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpcndr.h
@@ -0,0 +1,2630 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcndr.h
+
+Abstract:
+
+ Definitions for stub data structures and prototypes of helper functions.
+
+Author:
+
+ DonnaLi (01-01-91)
+
+Environment:
+
+ DOS, Win 3.X, and Win/NT.
+
+Revision History:
+
+ DONNALI 08-29-91 Start recording history
+ donnali 09-11-91 change conversion macros
+ donnali 09-18-91 check in files for moving
+ STEVEZ 10-15-91 Merge with NT tree
+ donnali 10-28-91 add prototype
+ donnali 11-19-91 bugfix for strings
+ MIKEMON 12-17-91 DCE runtime API conversion
+ donnali 03-24-92 change rpc public header f
+ STEVEZ 04-04-92 add nsi include
+ mikemon 04-18-92 security support and misc
+ DovhH 04-24-24 Changed signature of <int>_from_ndr
+ (to unsigned <int>)
+ Added <base_type>_array_from_ndr routines
+ RyszardK 06-17-93 Added support for hyper
+ VibhasC 09-11-93 Created rpcndrn.h
+ DKays 10-14-93 Fixed up rpcndrn.h MIDL 2.0
+ RyszardK 01-15-94 Merged in the midl 2.0 changes from rpcndrn.h
+ Stevebl 04-22-96 Hookole support changes to MIDL_*_INFO
+
+--*/
+
+#ifndef __RPCNDR_H__
+#define __RPCNDR_H__
+
+//
+// Set the packing level for RPC structures for Dos, Windows and Mac.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack(2)
+#endif
+
+#if defined(__RPC_MAC__)
+#define _MAC_
+#endif
+
+#include <rpcnsip.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/****************************************************************************
+
+ Network Computing Architecture (NCA) definition:
+
+ Network Data Representation: (NDR) Label format:
+ An unsigned long (32 bits) with the following layout:
+
+ 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
+ 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
+ +---------------+---------------+---------------+-------+-------+
+ | Reserved | Reserved |Floating point | Int | Char |
+ | | |Representation | Rep. | Rep. |
+ +---------------+---------------+---------------+-------+-------+
+
+ Where
+
+ Reserved:
+
+ Must be zero (0) for NCA 1.5 and NCA 2.0.
+
+ Floating point Representation is:
+
+ 0 - IEEE
+ 1 - VAX
+ 2 - Cray
+ 3 - IBM
+
+ Int Rep. is Integer Representation:
+
+ 0 - Big Endian
+ 1 - Little Endian
+
+ Char Rep. is Character Representation:
+
+ 0 - ASCII
+ 1 - EBCDIC
+
+ The Microsoft Local Data Representation (for all platforms which are
+ of interest currently is edefined below:
+
+ ****************************************************************************/
+
+#define NDR_CHAR_REP_MASK (unsigned long)0X0000000FL
+#define NDR_INT_REP_MASK (unsigned long)0X000000F0L
+#define NDR_FLOAT_REP_MASK (unsigned long)0X0000FF00L
+
+#define NDR_LITTLE_ENDIAN (unsigned long)0X00000010L
+#define NDR_BIG_ENDIAN (unsigned long)0X00000000L
+
+#define NDR_IEEE_FLOAT (unsigned long)0X00000000L
+#define NDR_VAX_FLOAT (unsigned long)0X00000100L
+
+#define NDR_ASCII_CHAR (unsigned long)0X00000000L
+#define NDR_EBCDIC_CHAR (unsigned long)0X00000001L
+
+#if defined(__RPC_MAC__)
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000000L
+#define NDR_LOCAL_ENDIAN NDR_BIG_ENDIAN
+#else
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000010L
+#define NDR_LOCAL_ENDIAN NDR_LITTLE_ENDIAN
+#endif
+
+
+/****************************************************************************
+ * Macros for targeted platforms
+ ****************************************************************************/
+
+#if (defined(_WIN32_DCOM) || 0x400 <= _WIN32_WINNT)
+#define TARGET_IS_NT40_OR_LATER 1
+#else
+#define TARGET_IS_NT40_OR_LATER 0
+#endif
+
+#if (0x400 <= WINVER)
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 1
+#else
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 0
+#endif
+
+/****************************************************************************
+ * Other MIDL base types / predefined types:
+ ****************************************************************************/
+
+#define small char
+typedef unsigned char byte;
+typedef unsigned char boolean;
+
+#ifndef _HYPER_DEFINED
+#define _HYPER_DEFINED
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__) && (!defined(_M_IX86) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64))
+#define hyper __int64
+#define MIDL_uhyper unsigned __int64
+#else
+typedef double hyper;
+typedef double MIDL_uhyper;
+#endif
+
+#endif // _HYPER_DEFINED
+
+#ifndef _WCHAR_T_DEFINED
+typedef unsigned short wchar_t;
+#define _WCHAR_T_DEFINED
+#endif
+
+#ifndef _SIZE_T_DEFINED
+typedef unsigned int size_t;
+#define _SIZE_T_DEFINED
+#endif
+
+#ifdef __RPC_DOS__
+#define __RPC_CALLEE __far __pascal
+#endif
+
+#ifdef __RPC_WIN16__
+#define __RPC_CALLEE __far __pascal __export
+#endif
+
+#ifdef __RPC_WIN32__
+#if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
+#define __RPC_CALLEE __stdcall
+#else
+#define __RPC_CALLEE
+#endif
+#endif
+
+#ifdef __RPC_MAC__
+#define __RPC_CALLEE __far
+#endif
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
+void __RPC_USER MIDL_user_free( void __RPC_FAR * );
+
+#ifdef __RPC_WIN16__
+#define RPC_VAR_ENTRY __export __cdecl
+#else
+#define RPC_VAR_ENTRY __cdecl
+#endif
+
+
+/* winnt only */
+#if defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA)
+#define __MIDL_DECLSPEC_DLLIMPORT __declspec(dllimport)
+#define __MIDL_DECLSPEC_DLLEXPORT __declspec(dllexport)
+#else
+#define __MIDL_DECLSPEC_DLLIMPORT
+#define __MIDL_DECLSPEC_DLLEXPORT
+#endif
+
+
+
+
+/****************************************************************************
+ * Context handle management related definitions:
+ *
+ * Client and Server Contexts.
+ *
+ ****************************************************************************/
+
+typedef void __RPC_FAR * NDR_CCONTEXT;
+
+typedef struct
+ {
+ void __RPC_FAR * pad[2];
+ void __RPC_FAR * userContext;
+ } __RPC_FAR * NDR_SCONTEXT;
+
+#define NDRSContextValue(hContext) (&(hContext)->userContext)
+
+#define cbNDRContext 20 /* size of context on WIRE */
+
+typedef void (__RPC_USER __RPC_FAR * NDR_RUNDOWN)(void __RPC_FAR * context);
+
+typedef struct _SCONTEXT_QUEUE {
+ unsigned long NumberOfObjects;
+ NDR_SCONTEXT * ArrayOfObjects;
+ } SCONTEXT_QUEUE, __RPC_FAR * PSCONTEXT_QUEUE;
+
+RPC_BINDING_HANDLE RPC_ENTRY
+NDRCContextBinding (
+ IN NDR_CCONTEXT CContext
+ );
+
+void RPC_ENTRY
+NDRCContextMarshall (
+ IN NDR_CCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff
+ );
+
+void RPC_ENTRY
+NDRCContextUnmarshall (
+ OUT NDR_CCONTEXT __RPC_FAR *pCContext,
+ IN RPC_BINDING_HANDLE hBinding,
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+NDRSContextMarshall (
+ IN NDR_SCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff,
+ IN NDR_RUNDOWN userRunDownIn
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NDRSContextUnmarshall (
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+RpcSsDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+
+/****************************************************************************
+ NDR conversion related definitions.
+ ****************************************************************************/
+
+#define byte_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define byte_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define boolean_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define boolean_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define small_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define small_from_ndr_temp(source, target, format) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)(source))++; \
+ }
+
+#define small_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+/****************************************************************************
+ Platform specific mapping of c-runtime functions.
+ ****************************************************************************/
+
+#ifdef __RPC_DOS__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#ifdef __RPC_WIN16__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define MIDL_ascii_strlen(string) \
+ strlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ strcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ memset(s,c,n)
+#endif
+
+/****************************************************************************
+ Ndr Library helper function prototypes for MIDL 1.0 ndr functions.
+ ****************************************************************************/
+
+void RPC_ENTRY
+NDRcopy (
+ IN void __RPC_FAR *pTarget,
+ IN void __RPC_FAR *pSource,
+ IN unsigned int size
+ );
+
+size_t RPC_ENTRY
+MIDL_wchar_strlen (
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+MIDL_wchar_strcpy (
+ OUT void __RPC_FAR * t,
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+char_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+char_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned short __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+short_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned short __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned short __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+long_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned long __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+long_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned long __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+long_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned long __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+enum_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned int __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT hyper __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+hyper_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT hyper __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT hyper __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+data_from_ndr (
+ PRPC_MESSAGE source,
+ void __RPC_FAR * target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_peek_ndr (
+ PRPC_MESSAGE source,
+ unsigned char __RPC_FAR * __RPC_FAR * buffer,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void __RPC_FAR * RPC_ENTRY
+midl_allocate (
+ size_t size
+ );
+
+/****************************************************************************
+ MIDL 2.0 ndr definitions.
+ ****************************************************************************/
+
+typedef unsigned long error_status_t;
+
+#define _midl_ma1( p, cast ) *(*( cast **)&p)++
+#define _midl_ma2( p, cast ) *(*( cast **)&p)++
+#define _midl_ma4( p, cast ) *(*( cast **)&p)++
+#define _midl_ma8( p, cast ) *(*( cast **)&p)++
+
+#define _midl_unma1( p, cast ) *(( cast *)p)++
+#define _midl_unma2( p, cast ) *(( cast *)p)++
+#define _midl_unma3( p, cast ) *(( cast *)p)++
+#define _midl_unma4( p, cast ) *(( cast *)p)++
+
+// Some alignment specific macros.
+
+
+#define _midl_fa2( p ) (p = (RPC_BUFPTR )((unsigned long)(p+1) & 0xfffffffe))
+#define _midl_fa4( p ) (p = (RPC_BUFPTR )((unsigned long)(p+3) & 0xfffffffc))
+#define _midl_fa8( p ) (p = (RPC_BUFPTR )((unsigned long)(p+7) & 0xfffffff8))
+
+#define _midl_addp( p, n ) (p += n)
+
+// Marshalling macros
+
+#define _midl_marsh_lhs( p, cast ) *(*( cast **)&p)++
+#define _midl_marsh_up( mp, p ) *(*(unsigned long **)&mp)++ = (unsigned long)p
+#define _midl_advmp( mp ) *(*(unsigned long **)&mp)++
+#define _midl_unmarsh_up( p ) (*(*(unsigned long **)&p)++)
+
+
+////////////////////////////////////////////////////////////////////////////
+// Ndr macros.
+////////////////////////////////////////////////////////////////////////////
+
+#define NdrMarshConfStringHdr( p, s, l ) (_midl_ma4( p, unsigned long) = s, \
+ _midl_ma4( p, unsigned long) = 0, \
+ _midl_ma4( p, unsigned long) = l)
+
+#define NdrUnMarshConfStringHdr(p, s, l) ((s=_midl_unma4(p,unsigned long),\
+ (_midl_addp(p,4)), \
+ (l=_midl_unma4(p,unsigned long))
+
+#define NdrMarshCCtxtHdl(pc,p) (NDRCContextMarshall( (NDR_CCONTEXT)pc, p ),p+20)
+
+#define NdrUnMarshCCtxtHdl(pc,p,h,drep) \
+ (NDRCContextUnmarshall((NDR_CONTEXT)pc,h,p,drep), p+20)
+
+#define NdrUnMarshSCtxtHdl(pc, p,drep) (pc = NdrSContextUnMarshall(p,drep ))
+
+
+#define NdrMarshSCtxtHdl(pc,p,rd) (NdrSContextMarshall((NDR_SCONTEXT)pc,p, (NDR_RUNDOWN)rd)
+
+#define NdrFieldOffset(s,f) (long)(& (((s __RPC_FAR *)0)->f))
+#define NdrFieldPad(s,f,p,t) (NdrFieldOffset(s,f) - NdrFieldOffset(s,p) - sizeof(t))
+
+#if defined(__RPC_MAC__)
+#define NdrFcShort(s) (unsigned char)(s >> 8), (unsigned char)(s & 0xff)
+#define NdrFcLong(s) (unsigned char)(s >> 24), (unsigned char)((s & 0x00ff0000) >> 16), \
+ (unsigned char)((s & 0x0000ff00) >> 8), (unsigned char)(s & 0xff)
+#else
+#define NdrFcShort(s) (unsigned char)(s & 0xff), (unsigned char)(s >> 8)
+#define NdrFcLong(s) (unsigned char)(s & 0xff), (unsigned char)((s & 0x0000ff00) >> 8), \
+ (unsigned char)((s & 0x00ff0000) >> 16), (unsigned char)(s >> 24)
+#endif // Mac
+
+//
+// On the server side, the following exceptions are mapped to
+// the bad stub data exception if -error stub_data is used.
+//
+
+#define RPC_BAD_STUB_DATA_EXCEPTION_FILTER \
+ ( (RpcExceptionCode() == STATUS_ACCESS_VIOLATION) || \
+ (RpcExceptionCode() == STATUS_DATATYPE_MISALIGNMENT) || \
+ (RpcExceptionCode() == RPC_X_BAD_STUB_DATA) )
+
+/////////////////////////////////////////////////////////////////////////////
+// Some stub helper functions.
+/////////////////////////////////////////////////////////////////////////////
+
+////////////////////////////////////////////////////////////////////////////
+// Stub helper structures.
+////////////////////////////////////////////////////////////////////////////
+
+struct _MIDL_STUB_MESSAGE;
+struct _MIDL_STUB_DESC;
+struct _FULL_PTR_XLAT_TABLES;
+
+typedef unsigned char __RPC_FAR * RPC_BUFPTR;
+typedef unsigned long RPC_LENGTH;
+
+// Expression evaluation callback routine prototype.
+typedef void (__RPC_USER __RPC_FAR * EXPR_EVAL)( struct _MIDL_STUB_MESSAGE __RPC_FAR * );
+
+typedef const unsigned char __RPC_FAR * PFORMAT_STRING;
+
+/*
+ * Multidimensional conformant/varying array struct.
+ */
+typedef struct
+ {
+ long Dimension;
+
+ /* These fields MUST be (unsigned long *) */
+ unsigned long __RPC_FAR * BufferConformanceMark;
+ unsigned long __RPC_FAR * BufferVarianceMark;
+
+ /* Count arrays, used for top level arrays in -Os stubs */
+ unsigned long __RPC_FAR * MaxCountArray;
+ unsigned long __RPC_FAR * OffsetArray;
+ unsigned long __RPC_FAR * ActualCountArray;
+ } ARRAY_INFO, __RPC_FAR *PARRAY_INFO;
+
+/*
+ * Pipe related definitions.
+ */
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PULL_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PUSH_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_ALLOC_RTN)(
+ char __RPC_FAR * state,
+ unsigned long bsize,
+ void __RPC_FAR * __RPC_FAR * buf,
+ unsigned long __RPC_FAR * bcount );
+
+
+typedef struct _GENERIC_PIPE_TYPE
+ {
+ NDR_PIPE_PULL_RTN pfnPull;
+ NDR_PIPE_PUSH_RTN pfnPush;
+ NDR_PIPE_ALLOC_RTN pfnAlloc;
+ char __RPC_FAR * pState;
+ } GENERIC_PIPE_TYPE;
+
+
+typedef struct {
+ int CurrentState;
+ int ElemsInChunk;
+ int ElemAlign;
+ int ElemWireSize;
+ int ElemMemSize;
+ int PartialBufferSize;
+ unsigned char __RPC_FAR * PartialElem;
+ int PartialElemSize;
+ int PartialOffset;
+ int EndOfPipe;
+ } NDR_PIPE_STATE;
+
+typedef struct _PIPE_MESSAGE
+ {
+ unsigned short Signature;
+ unsigned short PipeId;
+ GENERIC_PIPE_TYPE __RPC_FAR * pPipeType;
+ PFORMAT_STRING pTypeFormat;
+ unsigned short PipeStatus;
+ unsigned short PipeFlags;
+ struct _MIDL_STUB_MESSAGE __RPC_FAR * pStubMsg;
+ } NDR_PIPE_MESSAGE, __RPC_FAR * PNDR_PIPE_MESSAGE;
+
+typedef struct _NDR_PIPE_DESC
+ {
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg;
+ short CurrentPipe;
+ short InPipes;
+ short OutPipes;
+ short TotalPipes;
+ short PipeVersion;
+ short Flags;
+ unsigned char __RPC_FAR * DispatchBuffer;
+ unsigned char __RPC_FAR * LastPartialBuffer;
+ unsigned long LastPartialSize;
+ unsigned char __RPC_FAR * BufferSave;
+ unsigned long LengthSave;
+ NDR_PIPE_STATE RuntimeState;
+ } NDR_PIPE_DESC, __RPC_FAR * PNDR_PIPE_DESC;
+
+
+/*
+ * MIDL Stub Message
+ */
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <pshpack4.h>
+#endif
+
+typedef struct _MIDL_STUB_MESSAGE
+ {
+ /* RPC message structure. */
+ PRPC_MESSAGE RpcMsg;
+
+ /* Pointer into RPC message buffer. */
+ unsigned char __RPC_FAR * Buffer;
+
+ /*
+ * These are used internally by the Ndr routines to mark the beginning
+ * and end of an incoming RPC buffer.
+ */
+ unsigned char __RPC_FAR * BufferStart;
+ unsigned char __RPC_FAR * BufferEnd;
+
+ /*
+ * Used internally by the Ndr routines as a place holder in the buffer.
+ * On the marshalling side it's used to mark the location where conformance
+ * size should be marshalled.
+ * On the unmarshalling side it's used to mark the location in the buffer
+ * used during pointer unmarshalling to base pointer offsets off of.
+ */
+ unsigned char __RPC_FAR * BufferMark;
+
+ /* Set by the buffer sizing routines. */
+ unsigned long BufferLength;
+
+ /* Set by the memory sizing routines. */
+ unsigned long MemorySize;
+
+ /* Pointer to user memory. */
+ unsigned char __RPC_FAR * Memory;
+
+ /* Is the Ndr routine begin called from a client side stub. */
+ int IsClient;
+
+ /* Can the buffer be re-used for memory on unmarshalling. */
+ int ReuseBuffer;
+
+ /* Holds the current pointer to an allocate all nodes memory block. */
+ unsigned char __RPC_FAR * AllocAllNodesMemory;
+
+ /* Used for debugging asserts only, remove later. */
+ unsigned char __RPC_FAR * AllocAllNodesMemoryEnd;
+
+ /*
+ * Stuff needed while handling complex structures
+ */
+
+ /* Ignore imbeded pointers while computing buffer or memory sizes. */
+ int IgnoreEmbeddedPointers;
+
+ /*
+ * This marks the location in the buffer where pointees of a complex
+ * struct reside.
+ */
+ unsigned char __RPC_FAR * PointerBufferMark;
+
+ /*
+ * Used to catch errors in SendReceive.
+ */
+ unsigned char fBufferValid;
+
+ /*
+ * Obsolete unused field (formerly MaxContextHandleNumber).
+ */
+ unsigned char Unused;
+
+ /*
+ * Used internally by the Ndr routines. Holds the max counts for
+ * a conformant array.
+ */
+ unsigned long MaxCount;
+
+ /*
+ * Used internally by the Ndr routines. Holds the offsets for a varying
+ * array.
+ */
+ unsigned long Offset;
+
+ /*
+ * Used internally by the Ndr routines. Holds the actual counts for
+ * a varying array.
+ */
+ unsigned long ActualCount;
+
+ /* Allocation and Free routine to be used by the Ndr routines. */
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ /*
+ * Top of parameter stack. Used for "single call" stubs during marshalling
+ * to hold the beginning of the parameter list on the stack. Needed to
+ * extract parameters which hold attribute values for top level arrays and
+ * pointers.
+ */
+ unsigned char __RPC_FAR * StackTop;
+
+ /*
+ * Fields used for the transmit_as and represent_as objects.
+ * For represent_as the mapping is: presented=local, transmit=named.
+ */
+ unsigned char __RPC_FAR * pPresentedType;
+ unsigned char __RPC_FAR * pTransmitType;
+
+ /*
+ * When we first construct a binding on the client side, stick it
+ * in the rpcmessage and later call RpcGetBuffer, the handle field
+ * in the rpcmessage is changed. That's fine except that we need to
+ * have that original handle for use in unmarshalling context handles
+ * (the second argument in NDRCContextUnmarshall to be exact). So
+ * stash the contructed handle here and extract it when needed.
+ */
+ handle_t SavedHandle;
+
+ /*
+ * Pointer back to the stub descriptor. Use this to get all handle info.
+ */
+ const struct _MIDL_STUB_DESC __RPC_FAR * StubDesc;
+
+ /*
+ * Full pointer stuff.
+ */
+ struct _FULL_PTR_XLAT_TABLES __RPC_FAR * FullPtrXlatTables;
+
+ unsigned long FullPtrRefId;
+
+ /*
+ * flags
+ */
+
+ int fCheckBounds;
+
+ int fInDontFree :1;
+ int fDontCallFreeInst :1;
+ int fInOnlyParam :1;
+ int fHasReturn :1;
+
+ unsigned long dwDestContext;
+ void __RPC_FAR * pvDestContext;
+
+ NDR_SCONTEXT * SavedContextHandles;
+
+ long ParamNumber;
+
+ struct IRpcChannelBuffer __RPC_FAR * pRpcChannelBuffer;
+
+ PARRAY_INFO pArrayInfo;
+
+ /*
+ * This is where the Beta2 stub message ends.
+ */
+
+ unsigned long __RPC_FAR * SizePtrCountArray;
+ unsigned long __RPC_FAR * SizePtrOffsetArray;
+ unsigned long __RPC_FAR * SizePtrLengthArray;
+
+ /*
+ * Interpreter argument queue. Used on server side only.
+ */
+ void __RPC_FAR * pArgQueue;
+
+ unsigned long dwStubPhase;
+
+ /*
+ * Pipe descriptor, defined for the 4.0 release.
+ */
+
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc;
+
+ unsigned long Reserved[4];
+
+ /*
+ * Fields up to this point present since the 3.50 release.
+ */
+
+ } MIDL_STUB_MESSAGE, __RPC_FAR *PMIDL_STUB_MESSAGE;
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <poppack.h>
+#endif
+
+/*
+ * Generic handle bind/unbind routine pair.
+ */
+typedef void __RPC_FAR *
+ (__RPC_FAR __RPC_API * GENERIC_BINDING_ROUTINE)
+ (void __RPC_FAR *);
+typedef void
+ (__RPC_FAR __RPC_API * GENERIC_UNBIND_ROUTINE)
+ (void __RPC_FAR *, unsigned char __RPC_FAR *);
+
+typedef struct _GENERIC_BINDING_ROUTINE_PAIR
+ {
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_ROUTINE_PAIR, __RPC_FAR *PGENERIC_BINDING_ROUTINE_PAIR;
+
+typedef struct __GENERIC_BINDING_INFO
+ {
+ void __RPC_FAR * pObj;
+ unsigned int Size;
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_INFO, __RPC_FAR *PGENERIC_BINDING_INFO;
+
+// typedef EXPR_EVAL - see above
+// typedefs for xmit_as
+
+#if (defined(_MSC_VER)) && !defined(MIDL_PASS)
+// a Microsoft C++ compiler
+#define NDR_SHAREABLE __inline
+#else
+#define NDR_SHAREABLE static
+#endif
+
+
+typedef void (__RPC_FAR __RPC_USER * XMIT_HELPER_ROUTINE)
+ ( PMIDL_STUB_MESSAGE );
+
+typedef struct _XMIT_ROUTINE_QUINTUPLE
+ {
+ XMIT_HELPER_ROUTINE pfnTranslateToXmit;
+ XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
+ XMIT_HELPER_ROUTINE pfnFreeXmit;
+ XMIT_HELPER_ROUTINE pfnFreeInst;
+ } XMIT_ROUTINE_QUINTUPLE, __RPC_FAR *PXMIT_ROUTINE_QUINTUPLE;
+
+typedef unsigned long
+(__RPC_FAR __RPC_USER * USER_MARSHAL_SIZING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned long,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_MARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_UNMARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef void (__RPC_FAR __RPC_USER * USER_MARSHAL_FREEING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ void __RPC_FAR * );
+
+typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE
+ {
+ USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
+ USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
+ USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
+ USER_MARSHAL_FREEING_ROUTINE pfnFree;
+ } USER_MARSHAL_ROUTINE_QUADRUPLE;
+
+typedef struct _USER_MARSHAL_CB
+{
+ unsigned long Flags;
+ PMIDL_STUB_MESSAGE pStubMsg;
+ PFORMAT_STRING pReserve;
+} USER_MARSHAL_CB;
+
+
+#define USER_CALL_CTXT_MASK(f) ((f) & 0xff)
+#define GET_USER_DATA_REP(f) ((f) >> 16)
+
+typedef struct _MALLOC_FREE_STRUCT
+ {
+ void __RPC_FAR * (__RPC_FAR __RPC_USER * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_USER * pfnFree)(void __RPC_FAR *);
+ } MALLOC_FREE_STRUCT;
+
+typedef struct _COMM_FAULT_OFFSETS
+ {
+ short CommOffset;
+ short FaultOffset;
+ } COMM_FAULT_OFFSETS;
+
+/*
+ * MIDL Stub Descriptor
+ */
+
+typedef struct _MIDL_STUB_DESC
+ {
+
+ void __RPC_FAR * RpcInterfaceInformation;
+
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ union
+ {
+ handle_t __RPC_FAR * pAutoHandle;
+ handle_t __RPC_FAR * pPrimitiveHandle;
+ PGENERIC_BINDING_INFO pGenericBindingInfo;
+ } IMPLICIT_HANDLE_INFO;
+
+ const NDR_RUNDOWN __RPC_FAR * apfnNdrRundownRoutines;
+ const GENERIC_BINDING_ROUTINE_PAIR __RPC_FAR * aGenericBindingRoutinePairs;
+
+ const EXPR_EVAL __RPC_FAR * apfnExprEval;
+
+ const XMIT_ROUTINE_QUINTUPLE __RPC_FAR * aXmitQuintuple;
+
+ const unsigned char __RPC_FAR * pFormatTypes;
+
+ int fCheckBounds;
+
+ /* Ndr library version. */
+ unsigned long Version;
+
+ /*
+ * Reserved for future use. (no reserves )
+ */
+
+ MALLOC_FREE_STRUCT __RPC_FAR * pMallocFreeStruct;
+
+ long MIDLVersion;
+
+ const COMM_FAULT_OFFSETS __RPC_FAR * CommFaultOffsets;
+
+ // New fields for version 3.0+
+
+ const USER_MARSHAL_ROUTINE_QUADRUPLE __RPC_FAR * aUserMarshalQuadruple;
+
+ long Reserved1;
+ long Reserved2;
+ long Reserved3;
+ long Reserved4;
+ long Reserved5;
+
+ } MIDL_STUB_DESC;
+
+typedef const MIDL_STUB_DESC __RPC_FAR * PMIDL_STUB_DESC;
+
+typedef void __RPC_FAR * PMIDL_XMIT_TYPE;
+
+/*
+ * MIDL Stub Format String. This is a const in the stub.
+ */
+#if !defined( RC_INVOKED )
+#pragma warning( disable:4200 )
+#endif
+typedef struct _MIDL_FORMAT_STRING
+ {
+ short Pad;
+ unsigned char Format[];
+ } MIDL_FORMAT_STRING;
+#if !defined( RC_INVOKED )
+#pragma warning( default:4200 )
+#endif
+
+/*
+ * Stub thunk used for some interpreted server stubs.
+ */
+typedef void (__RPC_FAR __RPC_API * STUB_THUNK)( PMIDL_STUB_MESSAGE );
+
+typedef long (__RPC_FAR __RPC_API * SERVER_ROUTINE)();
+
+/*
+ * Server Interpreter's information strucuture.
+ */
+typedef struct _MIDL_SERVER_INFO_
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ const SERVER_ROUTINE * DispatchTable;
+ PFORMAT_STRING ProcString;
+ const unsigned short * FmtStringOffset;
+ const STUB_THUNK * ThunkTable;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short * LocalFmtStringOffset;
+ } MIDL_SERVER_INFO, *PMIDL_SERVER_INFO;
+
+/*
+ * Stubless object proxy information structure.
+ */
+typedef struct _MIDL_STUBLESS_PROXY_INFO
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ PFORMAT_STRING ProcFormatString;
+ const unsigned short __RPC_FAR * FormatStringOffset;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short __RPC_FAR * LocalFmtStringOffset;
+ } MIDL_STUBLESS_PROXY_INFO;
+
+typedef MIDL_STUBLESS_PROXY_INFO __RPC_FAR * PMIDL_STUBLESS_PROXY_INFO;
+
+/*
+ * This is the return value from NdrClientCall.
+ */
+typedef union _CLIENT_CALL_RETURN
+ {
+ void __RPC_FAR * Pointer;
+ long Simple;
+ } CLIENT_CALL_RETURN;
+
+/*
+ * Full pointer data structures.
+ */
+
+typedef enum
+ {
+ XLAT_SERVER = 1,
+ XLAT_CLIENT
+ } XLAT_SIDE;
+
+/*
+ * Stores the translation for the conversion from a full pointer into it's
+ * corresponding ref id.
+ */
+typedef struct _FULL_PTR_TO_REFID_ELEMENT
+ {
+ struct _FULL_PTR_TO_REFID_ELEMENT __RPC_FAR * Next;
+
+ void __RPC_FAR * Pointer;
+ unsigned long RefId;
+ unsigned char State;
+ } FULL_PTR_TO_REFID_ELEMENT, __RPC_FAR *PFULL_PTR_TO_REFID_ELEMENT;
+
+/*
+ * Full pointer translation tables.
+ */
+typedef struct _FULL_PTR_XLAT_TABLES
+ {
+ /*
+ * Ref id to pointer translation information.
+ */
+ struct
+ {
+ void __RPC_FAR *__RPC_FAR * XlatTable;
+ unsigned char __RPC_FAR * StateTable;
+ unsigned long NumberOfEntries;
+ } RefIdToPointer;
+
+ /*
+ * Pointer to ref id translation information.
+ */
+ struct
+ {
+ PFULL_PTR_TO_REFID_ELEMENT __RPC_FAR * XlatTable;
+ unsigned long NumberOfBuckets;
+ unsigned long HashMask;
+ } PointerToRefId;
+
+ /*
+ * Next ref id to use.
+ */
+ unsigned long NextRefId;
+
+ /*
+ * Keep track of the translation size we're handling : server or client.
+ * This tells us when we have to do reverse translations when we insert
+ * new translations. On the server we must insert a pointer-to-refid
+ * translation whenever we insert a refid-to-pointer translation, and
+ * vica versa for the client.
+ */
+ XLAT_SIDE XlatSide;
+ } FULL_PTR_XLAT_TABLES, __RPC_FAR *PFULL_PTR_XLAT_TABLES;
+
+/***************************************************************************
+ ** New MIDL 2.0 Ndr routine templates
+ ***************************************************************************/
+
+/*
+ * Marshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT ContextHandle,
+ int fCheck
+ );
+
+void RPC_ENTRY
+NdrServerContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_SCONTEXT ContextHandle,
+ NDR_RUNDOWN RundownRoutine
+ );
+
+/*
+ * Unmarshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT __RPC_FAR * pContextHandle,
+ RPC_BINDING_HANDLE BindHandle
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NdrServerContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+/*
+ * Buffer sizing routines
+ */
+
+void RPC_ENTRY
+NdrPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+void RPC_ENTRY
+NdrConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+void RPC_ENTRY
+NdrByteCountPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+// Context Handle size
+//
+void RPC_ENTRY
+NdrContextHandleSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Memory sizing routines
+ */
+
+unsigned long RPC_ENTRY
+NdrPointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned long RPC_ENTRY
+NdrSimpleStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrHardStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned long RPC_ENTRY
+NdrFixedArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned long RPC_ENTRY
+NdrConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned long RPC_ENTRY
+NdrEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned long RPC_ENTRY
+NdrXmitOrRepAsMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned long RPC_ENTRY
+NdrUserMarshalMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+unsigned long RPC_ENTRY
+NdrInterfacePointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Freeing routines
+ */
+
+void RPC_ENTRY
+NdrPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count */
+
+void RPC_ENTRY
+NdrByteCountPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Endian conversion routine.
+ */
+
+void RPC_ENTRY
+NdrConvert2(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ long NumberParams
+ );
+
+void RPC_ENTRY
+NdrConvert(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+#define USER_MARSHAL_FC_BYTE 1
+#define USER_MARSHAL_FC_CHAR 2
+#define USER_MARSHAL_FC_SMALL 3
+#define USER_MARSHAL_FC_USMALL 4
+#define USER_MARSHAL_FC_WCHAR 5
+#define USER_MARSHAL_FC_SHORT 6
+#define USER_MARSHAL_FC_USHORT 7
+#define USER_MARSHAL_FC_LONG 8
+#define USER_MARSHAL_FC_ULONG 9
+#define USER_MARSHAL_FC_FLOAT 10
+#define USER_MARSHAL_FC_HYPER 11
+#define USER_MARSHAL_FC_DOUBLE 12
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalSimpleTypeConvert(
+ unsigned long * pFlags,
+ unsigned char * pBuffer,
+ unsigned char FormatChar
+ );
+
+/*
+ * Auxilary routines
+ */
+
+void RPC_ENTRY
+NdrClientInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+void RPC_ENTRY
+NdrServerInitializePartial(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned long RequestedBufferSize
+ );
+
+void RPC_ENTRY
+NdrClientInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeUnmarshall (
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PRPC_MESSAGE pRpcMsg
+ );
+
+void RPC_ENTRY
+NdrServerInitializeMarshall (
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetPipeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle );
+
+void RPC_ENTRY
+NdrGetPartialBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR* pBufferEnd
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pBufferEnd,
+ RPC_BINDING_HANDLE __RPC_FAR * pAutoHandle
+ );
+
+void RPC_ENTRY
+NdrPipeSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrFreeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Pipe specific calls
+ */
+
+void RPC_ENTRY
+NdrPipesInitialize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pParamDesc,
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg,
+ char __RPC_FAR * pStackTop,
+ unsigned long NumberParams );
+
+void
+NdrMarkNextActivePipe(
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ unsigned int DirectionMask );
+
+void RPC_ENTRY
+NdrPipePull(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+void RPC_ENTRY
+NdrPipePush(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+void RPC_ENTRY
+NdrIsAppDoneWithPipes(
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrPipesDone(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Interpeter calls.
+ */
+
+/* client */
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall2(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+/* server */
+typedef enum {
+ STUB_UNMARSHAL,
+ STUB_CALL_SERVER,
+ STUB_MARSHAL,
+ STUB_CALL_SERVER_NO_HRESULT
+}STUB_PHASE;
+
+typedef enum {
+ PROXY_CALCSIZE,
+ PROXY_GETBUFFER,
+ PROXY_MARSHAL,
+ PROXY_SENDRECEIVE,
+ PROXY_UNMARSHAL
+}PROXY_PHASE;
+
+long RPC_ENTRY
+NdrStubCall2(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall2(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+long RPC_ENTRY
+NdrStubCall (
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+int RPC_ENTRY
+NdrServerUnmarshall(
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * pParamList
+ );
+
+void RPC_ENTRY
+NdrServerMarshall(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Comm and Fault status */
+
+RPC_STATUS RPC_ENTRY
+NdrMapCommAndFaultStatus(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long __RPC_FAR * pCommStatus,
+ unsigned long __RPC_FAR * pFaultStatus,
+ RPC_STATUS Status
+ );
+
+/* Helper routines */
+
+int RPC_ENTRY
+NdrSH_UPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ RPC_BUFPTR pBuffer
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecisionBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_IfAlloc(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocRef(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocSet(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfAllocCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+unsigned long RPC_ENTRY
+NdrSH_Copy(
+ unsigned char __RPC_FAR * pStubMsg,
+ unsigned char __RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+void RPC_ENTRY
+NdrSH_IfFree(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pPtr );
+
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned long Count,
+ int Size );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringUnMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR *__RPC_FAR * pMemory,
+ int Size );
+
+/****************************************************************************
+ MIDL 2.0 memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+typedef void __RPC_FAR * RPC_SS_THREAD_HANDLE;
+
+typedef void __RPC_FAR * __RPC_API
+RPC_CLIENT_ALLOC (
+ IN size_t Size
+ );
+
+typedef void __RPC_API
+RPC_CLIENT_FREE (
+ IN void __RPC_FAR * Ptr
+ );
+
+/*++
+ RpcSs* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSsAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+RpcSsDisableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsEnableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSsGetThreadHandle (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+void RPC_ENTRY
+RpcSsSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+void RPC_ENTRY
+RpcSsSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ RpcSm* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSmAllocate (
+ IN size_t Size,
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmClientFree (
+ IN void __RPC_FAR * pNodeToFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDisableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmEnableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSmGetThreadHandle (
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ Ndr stub entry points
+--*/
+
+void RPC_ENTRY
+NdrRpcSsEnableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSsDisableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSmSetClientToOsf(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSmClientAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSmClientFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSsDefaultAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSsDefaultFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+/****************************************************************************
+ end of memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+/****************************************************************************
+ * Full Pointer APIs
+ ****************************************************************************/
+
+PFULL_PTR_XLAT_TABLES RPC_ENTRY
+NdrFullPointerXlatInit(
+ unsigned long NumberOfPointers,
+ XLAT_SIDE XlatSide
+ );
+
+void RPC_ENTRY
+NdrFullPointerXlatFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryPointer(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * pPointer,
+ unsigned char QueryType,
+ unsigned long __RPC_FAR * pRefId
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ unsigned char QueryType,
+ void __RPC_FAR *__RPC_FAR * ppPointer
+ );
+
+void RPC_ENTRY
+NdrFullPointerInsertRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ void __RPC_FAR * pPointer
+ );
+
+int RPC_ENTRY
+NdrFullPointerFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * Pointer
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrAllocate(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ size_t Len
+ );
+
+void RPC_ENTRY
+NdrClearOutParameters(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * ArgAddr
+ );
+
+
+/****************************************************************************
+ * Proxy APIs
+ ****************************************************************************/
+
+void __RPC_FAR * RPC_ENTRY
+NdrOleAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrOleFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+#ifdef CONST_VTABLE
+#define CONST_VTBL const
+#else
+#define CONST_VTBL
+#endif
+
+
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS, Windows and Mac.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack()
+#endif
+
+#endif /* __RPCNDR_H__ */
+
+
+
+
+
diff --git a/public/sdk/rpc16/dos/inc/rpcnsi.h b/public/sdk/rpc16/dos/inc/rpcnsi.h
new file mode 100644
index 000000000..362b5bdb4
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpcnsi.h
@@ -0,0 +1,509 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsi.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ Name Service Independent APIs.
+
+--*/
+
+#ifndef __RPCNSI_H__
+#define __RPCNSI_H__
+
+typedef void __RPC_FAR * RPC_NS_HANDLE;
+
+#define RPC_C_NS_SYNTAX_DEFAULT 0
+#define RPC_C_NS_SYNTAX_DCE 3
+
+#define RPC_C_PROFILE_DEFAULT_ELT 0
+#define RPC_C_PROFILE_ALL_ELT 1
+#define RPC_C_PROFILE_MATCH_BY_IF 2
+#define RPC_C_PROFILE_MATCH_BY_MBR 3
+#define RPC_C_PROFILE_MATCH_BY_BOTH 4
+
+#define RPC_C_NS_DEFAULT_EXP_AGE -1
+
+/* Server APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#endif
+
+/* Client APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupNext(
+ IN RPC_NS_HANDLE LookupContext,
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+/* Group APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Profile APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned char __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned short __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Entry object APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqNext(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT UUID __RPC_FAR * ObjUuid
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Management and MISC APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtHandleSetExpAge(
+ IN RPC_NS_HANDLE NsHandle,
+ IN unsigned long ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtInqExpAge(
+ OUT unsigned long __RPC_FAR * ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtSetExpAge(
+ IN unsigned long ExpirationAge
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+#endif
+
+/* Client API's implemented in wrappers. */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportNext(
+ IN RPC_NS_HANDLE ImportContext,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingSelect(
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * BindingVec,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginW
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginW
+#define RpcNsBindingExport RpcNsBindingExportW
+#define RpcNsBindingUnexport RpcNsBindingUnexportW
+#define RpcNsGroupDelete RpcNsGroupDeleteW
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddW
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveW
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginW
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextW
+#define RpcNsEntryExpandName RpcNsEntryExpandNameW
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginW
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportW
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateW
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteW
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsW
+#define RpcNsProfileDelete RpcNsProfileDeleteW
+#define RpcNsProfileEltAdd RpcNsProfileEltAddW
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveW
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginW
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextW
+
+#else
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginA
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginA
+#define RpcNsBindingExport RpcNsBindingExportA
+#define RpcNsBindingUnexport RpcNsBindingUnexportA
+#define RpcNsGroupDelete RpcNsGroupDeleteA
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddA
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveA
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginA
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextA
+#define RpcNsEntryExpandName RpcNsEntryExpandNameA
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginA
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportA
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateA
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteA
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsA
+#define RpcNsProfileDelete RpcNsProfileDeleteA
+#define RpcNsProfileEltAdd RpcNsProfileEltAddA
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveA
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginA
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextA
+
+#endif /* UNICODE */
+
+#endif /* __RPCNSI_H__ */
diff --git a/public/sdk/rpc16/dos/inc/rpcnsip.h b/public/sdk/rpc16/dos/inc/rpcnsip.h
new file mode 100644
index 000000000..0db0140b0
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpcnsip.h
@@ -0,0 +1,72 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsip.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ to implement the autohandle features of the runtime.
+
+--*/
+
+#ifndef __RPCNSIP_H__
+#define __RPCNSIP_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct
+{
+ RPC_NS_HANDLE LookupContext;
+ RPC_BINDING_HANDLE ProposedHandle;
+ RPC_BINDING_VECTOR * Bindings;
+
+} RPC_IMPORT_CONTEXT_P, * PRPC_IMPORT_CONTEXT_P;
+
+
+/* Stub Auto Binding routines. */
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsGetBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsSendReceive(
+ IN PRPC_MESSAGE Message,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Handle
+ );
+
+void RPC_ENTRY
+I_RpcNsRaiseException(
+ IN PRPC_MESSAGE Message,
+ IN RPC_STATUS Status
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcReBindBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsServerBindSearch(
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsClientBindSearch(
+ );
+
+void RPC_ENTRY
+I_NsClientBindDone(
+ );
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCNSIP_H__ */
diff --git a/public/sdk/rpc16/dos/inc/rpcx86.h b/public/sdk/rpc16/dos/inc/rpcx86.h
new file mode 100644
index 000000000..8f5088c93
--- /dev/null
+++ b/public/sdk/rpc16/dos/inc/rpcx86.h
@@ -0,0 +1,74 @@
+/*********************************************************/
+/** Microsoft LAN Manager **/
+/** Copyright(c) Microsoft Corp., 1991 **/
+/** **/
+/** Exceptions package for C for DOS/WIN/OS2 **/
+/** **/
+/*********************************************************/
+
+#ifndef __RPCx86_H__
+#define __RPCx86_H__
+
+typedef struct _ExceptionBuff {
+ int registers[RPCXCWORD];
+ struct _ExceptionBuff __RPC_FAR *pExceptNext;
+
+} ExceptionBuff, __RPC_FAR *pExceptionBuff;
+
+int RPC_ENTRY RpcSetException(pExceptionBuff);
+void RPC_ENTRY RpcLeaveException(void);
+
+#define RpcTryExcept \
+ { \
+ int _exception_code; \
+ ExceptionBuff exception; \
+ \
+ _exception_code = RpcSetException(&exception); \
+ \
+ if (!_exception_code) \
+ {
+
+// trystmts
+
+#define RpcExcept(expr) \
+ RpcLeaveException(); \
+ } \
+ else \
+ { \
+ if (!(expr)) \
+ RpcRaiseException(_exception_code);
+
+// exceptstmts
+
+#define RpcEndExcept \
+ } \
+ }
+
+#define RpcTryFinally \
+ { \
+ int _abnormal_termination; \
+ ExceptionBuff exception; \
+ \
+ _abnormal_termination = RpcSetException(&exception); \
+ \
+ if (!_abnormal_termination) \
+ {
+
+// trystmts
+
+#define RpcFinally \
+ RpcLeaveException(); \
+ }
+
+// finallystmts
+
+#define RpcEndFinally \
+ if (_abnormal_termination) \
+ RpcRaiseException(_abnormal_termination); \
+ }
+
+#define RpcExceptionCode() _exception_code
+#define RpcAbnormalTermination() _abnormal_termination
+
+#endif // __RPCx86_H__
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/mac/inc/midles.h b/public/sdk/rpc16/mac/inc/midles.h
new file mode 100644
index 000000000..b64e4fe61
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/midles.h
@@ -0,0 +1,218 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ midles.h
+
+Abstract:
+
+ This module contains definitions needed for encoding/decoding
+ support (serializing/deserializing a.k.a. pickling).
+
+--*/
+
+#ifndef __MIDLES_H__
+#define __MIDLES_H__
+
+#include <rpcndr.h>
+
+//
+// Set the packing level for RPC structures for Dos and Windows.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Pickling support
+ */
+typedef enum
+{
+ MES_ENCODE,
+ MES_DECODE,
+} MIDL_ES_CODE;
+
+typedef enum
+{
+ MES_INCREMENTAL_HANDLE,
+ MES_FIXED_BUFFER_HANDLE,
+ MES_DYNAMIC_BUFFER_HANDLE
+} MIDL_ES_HANDLE_STYLE;
+
+
+typedef void (__RPC_USER * MIDL_ES_ALLOC )
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef void (__RPC_USER * MIDL_ES_WRITE)
+ ( IN OUT void __RPC_FAR * state,
+ IN char __RPC_FAR * buffer,
+ IN unsigned int size );
+
+typedef void (__RPC_USER * MIDL_ES_READ)
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef struct _MIDL_ES_MESSAGE
+{
+ MIDL_STUB_MESSAGE StubMsg;
+ MIDL_ES_CODE Operation;
+ void __RPC_FAR * UserState;
+ unsigned long MesVersion:8;
+ unsigned long HandleStyle:8;
+ unsigned long HandleFlags:8;
+ unsigned long Reserve:8;
+ MIDL_ES_ALLOC Alloc;
+ MIDL_ES_WRITE Write;
+ MIDL_ES_READ Read;
+ unsigned char __RPC_FAR * Buffer;
+ unsigned long BufferSize;
+ unsigned char __RPC_FAR * __RPC_FAR * pDynBuffer;
+ unsigned long __RPC_FAR * pEncodedSize;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ unsigned long ProcNumber;
+ unsigned long AlienDataRep;
+ unsigned long IncrDataSize;
+ unsigned long ByteCount;
+} MIDL_ES_MESSAGE, __RPC_FAR * PMIDL_ES_MESSAGE;
+
+typedef PMIDL_ES_MESSAGE MIDL_ES_HANDLE;
+
+RPC_STATUS RPC_ENTRY
+MesEncodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_READ ReadFn,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesIncrementalHandleReset(
+ handle_t Handle,
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ MIDL_ES_READ ReadFn,
+ MIDL_ES_CODE Operation );
+
+
+RPC_STATUS RPC_ENTRY
+MesEncodeFixedBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesEncodeDynBufferHandleCreate(
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesBufferHandleReset(
+ handle_t Handle,
+ unsigned long HandleStyle,
+ MIDL_ES_CODE Operation,
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize );
+
+
+RPC_STATUS RPC_ENTRY
+MesHandleFree( handle_t Handle );
+
+RPC_STATUS RPC_ENTRY
+MesInqProcEncodingId(
+ handle_t Handle,
+ PRPC_SYNTAX_IDENTIFIER pInterfaceId,
+ unsigned long __RPC_FAR * pProcNum );
+
+
+#if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
+#define __RPC_UNALIGNED __unaligned
+#else
+#define __RPC_UNALIGNED
+#endif
+
+void RPC_ENTRY I_NdrMesMessageInit( PMIDL_STUB_MESSAGE );
+
+size_t RPC_ENTRY
+NdrMesSimpleTypeAlignSize ( handle_t );
+
+void RPC_ENTRY
+NdrMesSimpleTypeDecode(
+ handle_t Handle,
+ void __RPC_FAR * pObject,
+ short Size );
+
+void RPC_ENTRY
+NdrMesSimpleTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ void __RPC_FAR * pObject,
+ short Size );
+
+
+size_t RPC_ENTRY
+NdrMesTypeAlignSize(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_VAR_ENTRY
+NdrMesProcEncodeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ ... );
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __MIDLES_H__ */
diff --git a/public/sdk/rpc16/mac/inc/rpc.h b/public/sdk/rpc16/mac/inc/rpc.h
new file mode 100644
index 000000000..6b1bfafde
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpc.h
@@ -0,0 +1,71 @@
+/*++
+
+Copyright (c) 1991-1993 Microsoft Corporation
+
+Module Name:
+
+ rpc.h
+
+Abstract:
+
+ Master include file for RPC applications.
+
+--*/
+
+#ifndef __RPC_H__
+#define __RPC_H__
+
+// Set the packing level for RPC structures.
+
+#pragma pack(2)
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define __RPC_MAC__
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+typedef long RPC_STATUS;
+
+#include <setjmp.h>
+
+#define RPCXCWORD (sizeof(jmp_buf)/sizeof(int))
+
+#define __RPC_FAR
+#define __RPC_API __stdcall
+#define __RPC_USER __stdcall
+#define __RPC_STUB __stdcall
+#define RPC_ENTRY __stdcall
+
+typedef void * I_RPC_HANDLE;
+#pragma warning( disable: 4005 )
+#include "rpcdce.h"
+#include "rpcnsi.h"
+#include "rpcerr.h"
+#include "rpcmac.h"
+#pragma warning( default : 4005 )
+
+typedef void (RPC_ENTRY *MACYIELDCALLBACK)(/*OSErr*/ short *) ;
+RPC_STATUS RPC_ENTRY
+RpcMacSetYieldInfo(
+ MACYIELDCALLBACK pfnCallback) ;
+
+#ifdef __cplusplus
+}
+#endif
+
+#if !defined(UNALIGNED)
+#define UNALIGNED
+#endif
+
+// Reset the packing level.
+#pragma pack()
+
+#endif // __RPC_H__
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/mac/inc/rpcdce.h b/public/sdk/rpc16/mac/inc/rpcdce.h
new file mode 100644
index 000000000..099457ea4
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpcdce.h
@@ -0,0 +1,1618 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdce.h
+
+Abstract:
+
+ This module contains the DCE RPC runtime APIs.
+
+--*/
+
+#ifndef __RPCDCE_H__
+#define __RPCDCE_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define IN
+#define OUT
+#define OPTIONAL
+
+/*typedef char small;*/
+/*typedef unsigned char byte;*/
+/*typedef unsigned char boolean;*/
+
+typedef I_RPC_HANDLE RPC_BINDING_HANDLE;
+typedef RPC_BINDING_HANDLE handle_t;
+#define rpc_binding_handle_t RPC_BINDING_HANDLE
+
+#ifndef GUID_DEFINED
+#define GUID_DEFINED
+typedef struct _GUID
+{
+ unsigned long Data1;
+ unsigned short Data2;
+ unsigned short Data3;
+ unsigned char Data4[8];
+} GUID;
+#endif /* GUID_DEFINED */
+
+#ifndef UUID_DEFINED
+#define UUID_DEFINED
+typedef GUID UUID;
+#ifndef uuid_t
+#define uuid_t UUID
+#endif
+#endif
+
+typedef struct _RPC_BINDING_VECTOR
+{
+ unsigned long Count;
+ RPC_BINDING_HANDLE BindingH[1];
+} RPC_BINDING_VECTOR;
+#ifndef rpc_binding_vector_t
+#define rpc_binding_vector_t RPC_BINDING_VECTOR
+#endif
+
+typedef struct _UUID_VECTOR
+{
+ unsigned long Count;
+ UUID *Uuid[1];
+} UUID_VECTOR;
+#ifndef uuid_vector_t
+#define uuid_vector_t UUID_VECTOR
+#endif
+
+typedef void __RPC_FAR * RPC_IF_HANDLE;
+
+#ifndef IFID_DEFINED
+#define IFID_DEFINED
+typedef struct _RPC_IF_ID
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_IF_ID;
+#endif
+
+#define RPC_C_BINDING_INFINITE_TIMEOUT 10
+#define RPC_C_BINDING_MIN_TIMEOUT 0
+#define RPC_C_BINDING_DEFAULT_TIMEOUT 5
+#define RPC_C_BINDING_MAX_TIMEOUT 9
+
+#define RPC_C_CANCEL_INFINITE_TIMEOUT -1
+
+#define RPC_C_LISTEN_MAX_CALLS_DEFAULT 1234
+#define RPC_C_PROTSEQ_MAX_REQS_DEFAULT 10
+
+#define RPC_C_BIND_TO_ALL_NICS 1
+#define RPC_C_USE_INTERNET_PORT 1
+#define RPC_C_USE_INTRANET_PORT 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+typedef struct _RPC_PROTSEQ_VECTORA
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORA;
+
+typedef struct _RPC_PROTSEQ_VECTORW
+{
+ unsigned int Count;
+ unsigned short __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORW;
+
+#ifdef UNICODE
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORW
+#else /* UNICODE */
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+typedef struct _RPC_PROTSEQ_VECTOR
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTOR;
+
+#endif /* RPC_UNICODE_SUPPORTED */
+typedef struct _RPC_POLICY {
+ unsigned int Length ;
+ unsigned long EndpointFlags ;
+ unsigned long NICFlags ;
+ } RPC_POLICY, __RPC_FAR *PRPC_POLICY ;
+
+typedef void __RPC_USER
+RPC_OBJECT_INQ_FN (
+ IN UUID __RPC_FAR * ObjectUuid,
+ OUT UUID __RPC_FAR * TypeUuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+typedef RPC_STATUS
+RPC_IF_CALLBACK_FN (
+ IN RPC_IF_HANDLE InterfaceUuid,
+ IN void *Context
+ ) ;
+
+#define RPC_MGR_EPV void
+
+typedef struct
+{
+ unsigned int Count;
+ unsigned long Stats[1];
+} RPC_STATS_VECTOR;
+
+#define RPC_C_STATS_CALLS_IN 0
+#define RPC_C_STATS_CALLS_OUT 1
+#define RPC_C_STATS_PKTS_IN 2
+#define RPC_C_STATS_PKTS_OUT 3
+
+typedef struct
+{
+ unsigned long Count;
+ RPC_IF_ID __RPC_FAR * IfId[1];
+} RPC_IF_ID_VECTOR;
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingFree (
+ IN OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingW
+#else /* UNICODE */
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBinding (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingInqObject (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingReset (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* RpcBindingServerFromClient : UNSUPPORTED */
+/* RpcBindingSetAuthInfo */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingSetObject (
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqDefaultProtectLevel(
+ IN unsigned long AuthnSvc,
+ OUT unsigned long __RPC_FAR *AuthnLevel
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#ifdef UNICODE
+#define RpcBindingToStringBinding RpcBindingToStringBindingW
+#else /* UNICODE */
+#define RpcBindingToStringBinding RpcBindingToStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingVectorFree (
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeA (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeW (
+ IN unsigned short __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned short __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned short __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned short __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned short __RPC_FAR * Options OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingCompose RpcStringBindingComposeW
+#else /* UNICODE */
+#define RpcStringBindingCompose RpcStringBindingComposeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingCompose (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingParse RpcStringBindingParseW
+#else /* UNICODE */
+#define RpcStringBindingParse RpcStringBindingParseA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParse (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeA (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeW (
+ IN OUT unsigned short __RPC_FAR * __RPC_FAR * String
+ );
+
+#ifdef UNICODE
+#define RpcStringFree RpcStringFreeW
+#else /* UNICODE */
+#define RpcStringFree RpcStringFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringFree (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcIfInqId (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_IF_ID __RPC_FAR * RpcIfId
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidA (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidW (
+ IN unsigned short __RPC_FAR * Protseq
+ );
+
+#ifdef UNICODE
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidW
+#else /* UNICODE */
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValid (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned int Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetCancelTimeout(
+ long Timeout
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsA (
+ OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsW (
+ OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsW
+#else /* UNICODE */
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqs (
+ OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectInqType (
+ IN UUID __RPC_FAR * ObjUuid,
+ OUT UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetInqFn (
+ IN RPC_OBJECT_INQ_FN __RPC_FAR * InquiryFn
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetType (
+ IN UUID __RPC_FAR * ObjUuid,
+ IN UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeA (
+ IN OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeW (
+ IN OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcProtseqVectorFree RpcProtseqVectorFreeW
+#else /* UNICODE */
+#define RpcProtseqVectorFree RpcProtseqVectorFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFree (
+ IN OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqBindings (
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ OUT RPC_MGR_EPV __RPC_FAR * __RPC_FAR * MgrEpv
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerListen (
+ IN unsigned int MinimumCallThreads,
+ IN unsigned int MaxCalls,
+ IN unsigned int DontWait
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid OPTIONAL,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIfEx (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv,
+ IN unsigned int Flags,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_CALLBACK_FN __RPC_FAR *IfCallback
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUnregisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ IN unsigned int WaitForCallsToComplete
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqs (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsEx (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIf (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIfEx (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseq RpcServerUseProtseqW
+#define RpcServerUseProtseqEx RpcServerUseProtseqExW
+#else /* UNICODE */
+#define RpcServerUseProtseq RpcServerUseProtseqA
+#define RpcServerUseProtseqEx RpcServerUseProtseqExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseq (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpW
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExW
+#else /* UNICODE */
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpA
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEp (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfW
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExW
+#else /* UNICODE */
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfA
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIf (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStatsVectorFree (
+ IN RPC_STATS_VECTOR ** StatsVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqStats (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_STATS_VECTOR ** Statistics
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtIsServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStopServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtWaitServerListen (
+ void
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetServerStackSize (
+ IN unsigned long ThreadStackSize
+ );
+
+/* server */
+void RPC_ENTRY
+RpcSsDontSerializeContext (
+ void
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtEnableIdleCleanup (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqIfIds (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcIfIdVectorFree (
+ IN OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#ifdef UNICODE
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameW
+#else /* UNICODE */
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameA (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameW (
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#ifdef UNICODE
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameW
+#else /* UNICODE */
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincName (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcEpResolveBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_IF_HANDLE IfSpec
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#ifdef UNICODE
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameW
+#else /* UNICODE */
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef void __RPC_FAR * RPC_AUTH_IDENTITY_HANDLE;
+typedef void __RPC_FAR * RPC_AUTHZ_HANDLE;
+
+#define RPC_C_AUTHN_LEVEL_DEFAULT 0
+#define RPC_C_AUTHN_LEVEL_NONE 1
+#define RPC_C_AUTHN_LEVEL_CONNECT 2
+#define RPC_C_AUTHN_LEVEL_CALL 3
+#define RPC_C_AUTHN_LEVEL_PKT 4
+#define RPC_C_AUTHN_LEVEL_PKT_INTEGRITY 5
+#define RPC_C_AUTHN_LEVEL_PKT_PRIVACY 6
+
+#define RPC_C_IMP_LEVEL_ANONYMOUS 1
+#define RPC_C_IMP_LEVEL_IDENTIFY 2
+#define RPC_C_IMP_LEVEL_IMPERSONATE 3
+#define RPC_C_IMP_LEVEL_DELEGATE 4
+
+#define RPC_C_QOS_IDENTITY_STATIC 0
+#define RPC_C_QOS_IDENTITY_DYNAMIC 1
+
+#define RPC_C_QOS_CAPABILITIES_DEFAULT 0
+#define RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH 1
+
+#define RPC_C_PROTECT_LEVEL_DEFAULT (RPC_C_AUTHN_LEVEL_DEFAULT)
+#define RPC_C_PROTECT_LEVEL_NONE (RPC_C_AUTHN_LEVEL_NONE)
+#define RPC_C_PROTECT_LEVEL_CONNECT (RPC_C_AUTHN_LEVEL_CONNECT)
+#define RPC_C_PROTECT_LEVEL_CALL (RPC_C_AUTHN_LEVEL_CALL)
+#define RPC_C_PROTECT_LEVEL_PKT (RPC_C_AUTHN_LEVEL_PKT)
+#define RPC_C_PROTECT_LEVEL_PKT_INTEGRITY (RPC_C_AUTHN_LEVEL_PKT_INTEGRITY)
+#define RPC_C_PROTECT_LEVEL_PKT_PRIVACY (RPC_C_AUTHN_LEVEL_PKT_PRIVACY)
+
+#define RPC_C_AUTHN_NONE 0
+#define RPC_C_AUTHN_DCE_PRIVATE 1
+#define RPC_C_AUTHN_DCE_PUBLIC 2
+#define RPC_C_AUTHN_DEC_PUBLIC 4
+#define RPC_C_AUTHN_WINNT 10
+#define RPC_C_AUTHN_DEFAULT 0xFFFFFFFFL
+
+#define RPC_C_SECURITY_QOS_VERSION 1L
+
+typedef struct _RPC_SECURITY_QOS {
+ unsigned long Version;
+ unsigned long Capabilities;
+ unsigned long IdentityTracking;
+ unsigned long ImpersonationType;
+} RPC_SECURITY_QOS, *PRPC_SECURITY_QOS;
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+typedef struct _SEC_WINNT_AUTH_IDENTITY
+{
+ char __RPC_FAR *User;
+ char __RPC_FAR *Domain;
+ char __RPC_FAR *Password;
+} SEC_WINNT_AUTH_IDENTITY;
+#else
+
+
+#define SEC_WINNT_AUTH_IDENTITY_ANSI 0x1
+#define SEC_WINNT_AUTH_IDENTITY_UNICODE 0x2
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_W {
+ unsigned short __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned short __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned short __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W;
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_A {
+ unsigned char __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned char __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned char __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A;
+
+
+#ifdef UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_W
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_W
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_W
+#else // UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_A
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_A
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_A
+#endif // UNICODE
+#endif // defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+
+#define RPC_C_AUTHZ_NONE 0
+#define RPC_C_AUTHZ_NAME 1
+#define RPC_C_AUTHZ_DCE 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientA (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientW (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc,
+ IN RPC_SECURITY_QOS *SecurityQos OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc, OPTIONAL
+ IN RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc, OPTIONAL
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL,
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoA (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoW (
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientW
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoW
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoW
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoW
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExW
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExW
+#else /* UNICODE */
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientA
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoA
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoA
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoA
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExA
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClient (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfo (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef struct {
+ unsigned char __RPC_FAR * UserName;
+ unsigned char __RPC_FAR * ComputerName;
+ unsigned short Privilege;
+ unsigned long AuthFlags;
+} RPC_CLIENT_INFORMATION1, __RPC_FAR * PRPC_CLIENT_INFORMATION1;
+
+RPC_STATUS RPC_ENTRY
+RpcBindingServerFromClient (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * ServerBinding
+ );
+
+void RPC_ENTRY
+RpcRaiseException (
+ IN RPC_STATUS exception
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcTestCancel(
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcCancelThread(
+ IN void * Thread
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringA (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringA (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringW (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringW (
+ IN unsigned short __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef UNICODE
+#define UuidFromString UuidFromStringW
+#define UuidToString UuidToStringW
+#else /* UNICODE */
+#define UuidFromString UuidFromStringA
+#define UuidToString UuidToStringA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToString (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromString (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+signed int RPC_ENTRY
+UuidCompare (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+UuidCreateNil (
+ OUT UUID __RPC_FAR * NilUuid
+ );
+
+int RPC_ENTRY
+UuidEqual (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+unsigned short RPC_ENTRY
+UuidHash (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+int RPC_ENTRY
+UuidIsNil (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+#ifdef UNICODE
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceW
+#define RpcEpRegister RpcEpRegisterW
+#else /* UNICODE */
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceA
+#define RpcEpRegister RpcEpRegisterA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplace (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegister (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+
+RPC_STATUS RPC_ENTRY
+RpcEpUnregister(
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextA (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextW (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned short __RPC_FAR * ErrorText
+ );
+
+#ifdef UNICODE
+#define DceErrorInqText DceErrorInqTextW
+#else /* UNICODE */
+#define DceErrorInqText DceErrorInqTextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqText (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#define DCE_C_ERROR_STRING_LEN 256
+
+typedef I_RPC_HANDLE * RPC_EP_INQ_HANDLE;
+
+#define RPC_C_EP_ALL_ELTS 0
+#define RPC_C_EP_MATCH_BY_IF 1
+#define RPC_C_EP_MATCH_BY_OBJ 2
+#define RPC_C_EP_MATCH_BY_BOTH 3
+
+#define RPC_C_VERS_ALL 1
+#define RPC_C_VERS_COMPATIBLE 2
+#define RPC_C_VERS_EXACT 3
+#define RPC_C_VERS_MAJOR_ONLY 4
+#define RPC_C_VERS_UPTO 5
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqBegin (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption OPTIONAL,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqDone (
+ IN OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextA (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextW (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextW
+#else /* UNICODE */
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNext (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpUnregister (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN RPC_IF_ID __RPC_FAR * IfId,
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL
+ );
+
+typedef int
+(__RPC_API * RPC_MGMT_AUTHORIZATION_FN) (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ IN unsigned long RequestedMgmtOperation,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#define RPC_C_MGMT_INQ_IF_IDS 0
+#define RPC_C_MGMT_INQ_PRINC_NAME 1
+#define RPC_C_MGMT_INQ_STATS 2
+#define RPC_C_MGMT_IS_SERVER_LISTEN 3
+#define RPC_C_MGMT_STOP_SERVER_LISTEN 4
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetAuthorizationFn (
+ IN RPC_MGMT_AUTHORIZATION_FN AuthorizationFn
+ );
+
+
+#define RPC_C_PARM_MAX_PACKET_LENGTH 1
+#define RPC_C_PARM_BUFFER_LENGTH 2
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqParameter (
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetParameter (
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingInqParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingSetParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+#define RPC_IF_AUTOLISTEN 0x0001
+#define RPC_IF_OLE 0x0002
+
+#include <rpcdcep.h>
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCDCE_H__ */
diff --git a/public/sdk/rpc16/mac/inc/rpcdcep.h b/public/sdk/rpc16/mac/inc/rpcdcep.h
new file mode 100644
index 000000000..85ed0fd67
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpcdcep.h
@@ -0,0 +1,415 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdcep.h
+
+Abstract:
+
+ This module contains the private RPC runtime APIs for use by the
+ stubs and by support libraries. Applications must not call these
+ routines.
+
+--*/
+
+#ifndef __RPCDCEP_H__
+#define __RPCDCEP_H__
+
+// Set the packing level for RPC structures for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _RPC_VERSION {
+ unsigned short MajorVersion;
+ unsigned short MinorVersion;
+} RPC_VERSION;
+
+typedef struct _RPC_SYNTAX_IDENTIFIER {
+ GUID SyntaxGUID;
+ RPC_VERSION SyntaxVersion;
+} RPC_SYNTAX_IDENTIFIER, __RPC_FAR * PRPC_SYNTAX_IDENTIFIER;
+
+typedef struct _RPC_MESSAGE
+{
+ RPC_BINDING_HANDLE Handle;
+ unsigned long DataRepresentation;
+ void __RPC_FAR * Buffer;
+ unsigned int BufferLength;
+ unsigned int ProcNum;
+ PRPC_SYNTAX_IDENTIFIER TransferSyntax;
+ void __RPC_FAR * RpcInterfaceInformation;
+ void __RPC_FAR * ReservedForRuntime;
+ RPC_MGR_EPV __RPC_FAR * ManagerEpv;
+ void __RPC_FAR * ImportContext;
+ unsigned long RpcFlags;
+} RPC_MESSAGE, __RPC_FAR * PRPC_MESSAGE;
+
+
+typedef RPC_STATUS RPC_ENTRY RPC_FORWARD_FUNCTION(
+ IN UUID __RPC_FAR * InterfaceId,
+ IN RPC_VERSION __RPC_FAR * InterfaceVersion,
+ IN UUID __RPC_FAR * ObjectId,
+ IN unsigned char __RPC_FAR * Rpcpro,
+ IN void __RPC_FAR * __RPC_FAR * ppDestEndpoint);
+
+/*
+ * Types of function calls for datagram rpc
+ */
+
+#define RPC_NCA_FLAGS_DEFAULT 0x00000000 /* 0b000...000 */
+#define RPC_NCA_FLAGS_IDEMPOTENT 0x00000001 /* 0b000...001 */
+#define RPC_NCA_FLAGS_BROADCAST 0x00000002 /* 0b000...010 */
+#define RPC_NCA_FLAGS_MAYBE 0x00000004 /* 0b000...100 */
+
+#define RPC_BUFFER_COMPLETE 0x00001000 /* used by pipes */
+#define RPC_BUFFER_PARTIAL 0x00002000 /* used by pipes */
+#define RPC_BUFFER_EXTRA 0x00004000 /* used by pipes */
+
+#define RPCFLG_NON_NDR 0x80000000UL
+#define RPCFLG_ASYNCHRONOUS 0x40000000UL
+#define RPCFLG_INPUT_SYNCHRONOUS 0x20000000UL
+#define RPCFLG_LOCAL_CALL 0x10000000UL
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#define RPC_FLAGS_VALID_BIT 0x8000
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define RPC_FLAGS_VALID_BIT 0x00008000
+#endif
+
+typedef
+void
+(__RPC_STUB __RPC_FAR * RPC_DISPATCH_FUNCTION) (
+ IN OUT PRPC_MESSAGE Message
+ );
+
+typedef struct {
+ unsigned int DispatchTableCount;
+ RPC_DISPATCH_FUNCTION __RPC_FAR * DispatchTable;
+ int Reserved;
+} RPC_DISPATCH_TABLE, __RPC_FAR * PRPC_DISPATCH_TABLE;
+
+typedef struct _RPC_PROTSEQ_ENDPOINT
+{
+ unsigned char __RPC_FAR * RpcProtocolSequence;
+ unsigned char __RPC_FAR * Endpoint;
+} RPC_PROTSEQ_ENDPOINT, __RPC_FAR * PRPC_PROTSEQ_ENDPOINT;
+
+/*
+Both of these types MUST start with the InterfaceId and TransferSyntax.
+Look at RpcIfInqId and I_RpcIfInqTransferSyntaxes to see why.
+*/
+#define NT351_INTERFACE_SIZE 0x40
+#define RPC_INTERFACE_HAS_PIPES 0x0001
+
+typedef struct _RPC_SERVER_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ RPC_MGR_EPV __RPC_FAR *DefaultManagerEpv;
+ void const __RPC_FAR *InterpreterInfo;
+ unsigned int Flags ;
+} RPC_SERVER_INTERFACE, __RPC_FAR * PRPC_SERVER_INTERFACE;
+
+typedef struct _RPC_CLIENT_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ unsigned long Reserved;
+ void const __RPC_FAR * InterpreterInfo;
+ unsigned int Flags ;
+} RPC_CLIENT_INTERFACE, __RPC_FAR * PRPC_CLIENT_INTERFACE;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSendReceive (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSend (
+ IN OUT PRPC_MESSAGE Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReceive (
+ IN OUT PRPC_MESSAGE Message,
+ IN unsigned int Size
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreePipeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReallocPipeBuffer (
+ IN PRPC_MESSAGE Message,
+ IN unsigned int NewSize
+ ) ;
+
+typedef void * I_RPC_MUTEX;
+
+void RPC_ENTRY
+I_RpcRequestMutex (
+ IN OUT I_RPC_MUTEX * Mutex
+ );
+
+void RPC_ENTRY
+I_RpcClearMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void RPC_ENTRY
+I_RpcDeleteMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void __RPC_FAR * RPC_ENTRY
+I_RpcAllocate (
+ IN unsigned int Size
+ );
+
+void RPC_ENTRY
+I_RpcFree (
+ IN void __RPC_FAR * Object
+ );
+
+void RPC_ENTRY
+I_RpcPauseExecution (
+ IN unsigned long Milliseconds
+ );
+
+typedef
+void
+(__RPC_USER __RPC_FAR * PRPC_RUNDOWN) (
+ void __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle,
+ IN PRPC_RUNDOWN RundownRoutine,
+ IN void * Context
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcStopMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle
+ );
+
+RPC_BINDING_HANDLE RPC_ENTRY
+I_RpcGetCurrentCallHandle(
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetAssociationContext (
+ OUT void __RPC_FAR * __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetAssociationContext (
+ IN void __RPC_FAR * AssociationContext
+ );
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+#endif
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#endif
+
+#define TRANSPORT_TYPE_CN 0x1
+#define TRANSPORT_TYPE_DG 0x2
+#define TRANSPORT_TYPE_LPC 0x4
+#define TRANSPORT_TYPE_WMSG 0x8
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqTransportType (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Type
+ );
+
+typedef struct _RPC_TRANSFER_SYNTAX
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_TRANSFER_SYNTAX;
+
+RPC_STATUS RPC_ENTRY
+I_RpcIfInqTransferSyntaxes (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_TRANSFER_SYNTAX __RPC_FAR * TransferSyntaxes,
+ IN unsigned int TransferSyntaxSize,
+ OUT unsigned int __RPC_FAR * TransferSyntaxCount
+ );
+
+RPC_STATUS RPC_ENTRY
+I_UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingIsClientLocal (
+ IN RPC_BINDING_HANDLE BindingHandle OPTIONAL,
+ OUT unsigned int __RPC_FAR * ClientLocalFlag
+ );
+
+void RPC_ENTRY
+I_RpcSsDontSerializeContext (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcLaunchDatagramReceiveThread(
+ void __RPC_FAR * pAddress
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerRegisterForwardFunction (
+ IN RPC_FORWARD_FUNCTION __RPC_FAR * pForwardFunction
+ );
+
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionInqSockBuffSize(
+ OUT unsigned long __RPC_FAR * RecvBuffSize,
+ OUT unsigned long __RPC_FAR * SendBuffSize
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionSetSockBuffSize(
+ IN unsigned long RecvBuffSize,
+ IN unsigned long SendBuffSize
+ );
+
+
+#ifdef MSWMSG
+RPC_STATUS RPC_ENTRY
+I_RpcServerStartListening(
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerStopListening(
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetThreadWindowHandle(
+ OUT HWND *WindowHandle
+ ) ;
+
+typedef RPC_STATUS (*RPC_BLOCKING_FN) (
+ IN void *wnd,
+ IN void *Context,
+ IN HANDLE hSyncEvent
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcAsyncSendReceive(
+ IN OUT PRPC_MESSAGE pRpcMessage,
+ IN OPTIONAL void *Context,
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingSetAsync(
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_BLOCKING_FN BlockingFn
+ ) ;
+
+LONG RPC_ENTRY
+I_RpcWindowProc(
+ IN HWND hWnd,
+ IN UINT Message,
+ IN WPARAM wParam,
+ IN LPARAM lParam
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetWMsgEndpoint (
+ IN WCHAR __RPC_FAR * Endpoint
+ ) ;
+#endif
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerInqTransportType(
+ OUT unsigned int __RPC_FAR * Type
+ ) ;
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __RPCDCEP_H__ */
diff --git a/public/sdk/rpc16/mac/inc/rpcerr.h b/public/sdk/rpc16/mac/inc/rpcerr.h
new file mode 100644
index 000000000..139df1b1b
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpcerr.h
@@ -0,0 +1,188 @@
+/*********************************************************/
+/** Microsoft LAN Manager **/
+/** Copyright(c) Microsoft Corp., 1987-1990 **/
+/** **/
+/** Rpc Error Codes from the compiler and runtime **/
+/** **/
+/*********************************************************/
+
+/*
+If you change this file, you must also change ntstatus.mc and winerror.mc
+*/
+
+#ifndef __RPCERR_H__
+#define __RPCERR_H__
+
+#define RPC_S_OK 0
+#define RPC_S_INVALID_ARG 1
+#define RPC_S_INVALID_STRING_BINDING 2
+#define RPC_S_OUT_OF_MEMORY 3
+#define RPC_S_WRONG_KIND_OF_BINDING 4
+#define RPC_S_INVALID_BINDING 5
+#define RPC_S_PROTSEQ_NOT_SUPPORTED 6
+#define RPC_S_INVALID_RPC_PROTSEQ 7
+#define RPC_S_INVALID_STRING_UUID 8
+#define RPC_S_INVALID_ENDPOINT_FORMAT 9
+
+#define RPC_S_INVALID_NET_ADDR 10
+#define RPC_S_INVALID_NAF_ID 11
+#define RPC_S_NO_ENDPOINT_FOUND 12
+#define RPC_S_INVALID_TIMEOUT 13
+#define RPC_S_OBJECT_NOT_FOUND 14
+#define RPC_S_ALREADY_REGISTERED 15
+#define RPC_S_TYPE_ALREADY_REGISTERED 16
+#define RPC_S_ALREADY_LISTENING 17
+#define RPC_S_NO_PROTSEQS_REGISTERED 18
+#define RPC_S_NOT_LISTENING 19
+
+#define RPC_S_OUT_OF_THREADS 20
+#define RPC_S_UNKNOWN_MGR_TYPE 21
+#define RPC_S_UNKNOWN_IF 22
+#define RPC_S_NO_BINDINGS 23
+#define RPC_S_NO_PROTSEQS 24
+#define RPC_S_CANT_CREATE_ENDPOINT 25
+#define RPC_S_OUT_OF_RESOURCES 26
+#define RPC_S_SERVER_UNAVAILABLE 27
+#define RPC_S_SERVER_TOO_BUSY 28
+#define RPC_S_INVALID_NETWORK_OPTIONS 29
+
+#define RPC_S_NO_CALL_ACTIVE 30
+#define RPC_S_INVALID_LEVEL 31
+#define RPC_S_CANNOT_SUPPORT 32
+#define RPC_S_CALL_FAILED 33
+#define RPC_S_CALL_FAILED_DNE 34
+#define RPC_S_PROTOCOL_ERROR 35
+
+// Unused.
+
+// Unused.
+
+#define RPC_S_UNSUPPORTED_TRANS_SYN 38
+#define RPC_S_BUFFER_TOO_SMALL 39
+
+#define RPC_S_NO_CONTEXT_AVAILABLE 40
+#define RPC_S_SERVER_OUT_OF_MEMORY 41
+#define RPC_S_UNSUPPORTED_TYPE 42
+#define RPC_S_ZERO_DIVIDE 43
+#define RPC_S_ADDRESS_ERROR 44
+#define RPC_S_FP_DIV_ZERO 45
+#define RPC_S_FP_UNDERFLOW 46
+#define RPC_S_FP_OVERFLOW 47
+#define RPC_S_INVALID_TAG 48
+#define RPC_S_INVALID_BOUND 49
+
+#define RPC_S_NO_ENTRY_NAME 50
+#define RPC_S_INVALID_NAME_SYNTAX 51
+#define RPC_S_UNSUPPORTED_NAME_SYNTAX 52
+#define RPC_S_UUID_LOCAL_ONLY 53
+#define RPC_S_UUID_NO_ADDRESS 54
+#define RPC_S_DUPLICATE_ENDPOINT 55
+#define RPC_S_INVALID_SECURITY_DESC 56
+#define RPC_S_ACCESS_DENIED 57
+#define RPC_S_UNKNOWN_AUTHN_TYPE 58
+#define RPC_S_MAX_CALLS_TOO_SMALL 59
+
+#define RPC_S_STRING_TOO_LONG 60
+#define RPC_S_PROTSEQ_NOT_FOUND 61
+#define RPC_S_PROCNUM_OUT_OF_RANGE 62
+#define RPC_S_BINDING_HAS_NO_AUTH 63
+#define RPC_S_UNKNOWN_AUTHN_SERVICE 64
+#define RPC_S_UNKNOWN_AUTHN_LEVEL 65
+#define RPC_S_INVALID_AUTH_IDENTITY 66
+#define RPC_S_UNKNOWN_AUTHZ_SERVICE 67
+#define EPT_S_INVALID_ENTRY 68
+#define EPT_S_CANT_PERFORM_OP 69
+
+#define EPT_S_NOT_REGISTERED 70
+#define RPC_S_NOTHING_TO_EXPORT 71
+#define RPC_S_INCOMPLETE_NAME 72
+#define RPC_S_UNIMPLEMENTED_API 73
+#define RPC_S_INVALID_VERS_OPTION 74
+#define RPC_S_NO_MORE_MEMBERS 75
+#define RPC_S_NOT_ALL_OBJS_UNEXPORTED 76
+#define RPC_S_INTERFACE_NOT_FOUND 77
+#define RPC_S_ENTRY_ALREADY_EXISTS 78
+#define RPC_S_ENTRY_NOT_FOUND 79
+
+#define RPC_S_NAME_SERVICE_UNAVAILABLE 80
+#define RPC_S_CALL_IN_PROGRESS 81
+#define RPC_S_NO_MORE_BINDINGS 82
+#define RPC_S_GROUP_MEMBER_NOT_FOUND 83
+#define EPT_S_CANT_CREATE 84
+#define RPC_S_INVALID_OBJECT 85
+#define RPC_S_CALL_CANCELLED 86
+#define RPC_S_BINDING_INCOMPLETE 87
+#define RPC_S_COMM_FAILURE 88
+#define RPC_S_UNSUPPORTED_AUTHN_LEVEL 89
+
+#define RPC_S_NO_PRINC_NAME 90
+#define RPC_S_NOT_RPC_ERROR 91
+#define RPC_S_SEC_PKG_ERROR 92
+#define RPC_S_NOT_CANCELLED 93
+#define RPC_S_SEND_INCOMPLETE 94
+
+
+#define RPC_S_INTERNAL_ERROR 100
+
+/* The list of servers available for auto_handle binding has been exhausted. */
+
+#define RPC_X_NO_MORE_ENTRIES 256
+
+/* Insufficient memory available to set up necessary data structures. */
+
+#define RPC_X_NO_MEMORY 257
+
+/* The specified bounds of an array are inconsistent. */
+
+#define RPC_X_INVALID_BOUND 258
+
+/* The discriminant value does not match any of the case values. */
+/* There is no default case. */
+
+#define RPC_X_INVALID_TAG 259
+
+/* The file designated by DCERPCCHARTRANS cannot be opened. */
+
+#define RPC_X_SS_CHAR_TRANS_OPEN_FAIL 260
+
+/* The file containing char translation table has fewer than 512 bytes. */
+
+#define RPC_X_SS_CHAR_TRANS_SHORT_FILE 261
+
+/* A null context handle is passed in an [in] parameter position. */
+
+#define RPC_X_SS_IN_NULL_CONTEXT 262
+
+/* Only raised on the callee side. */
+/* A uuid in an [in] handle does not correspond to any known context. */
+
+#define RPC_X_SS_CONTEXT_MISMATCH 263
+
+/* Only raised on the caller side. */
+/* A uuid in an [in, out] context handle changed during a call. */
+
+#define RPC_X_SS_CONTEXT_DAMAGED 264
+
+#define RPC_X_SS_HANDLES_MISMATCH 265
+
+#define RPC_X_SS_CANNOT_GET_CALL_HANDLE 266
+
+#define RPC_X_NULL_REF_POINTER 267
+
+#define RPC_X_ENUM_VALUE_OUT_OF_RANGE 268
+
+#define RPC_X_BYTE_COUNT_TOO_SMALL 269
+
+#define RPC_X_BAD_STUB_DATA 270
+
+#define RPC_X_INVALID_ES_ACTION 271
+#define RPC_X_WRONG_ES_VERSION 272
+#define RPC_X_WRONG_STUB_VERSION 273
+#define RPC_X_INVALID_BUFFER 274
+#define RPC_X_INVALID_PIPE_OBJECT 275
+#define RPC_X_INVALID_PIPE_OPERATION 276
+#define RPC_X_WRONG_PIPE_VERSION 277
+
+
+#endif /* __RPCERR_H__ */
+
diff --git a/public/sdk/rpc16/mac/inc/rpcmac.h b/public/sdk/rpc16/mac/inc/rpcmac.h
new file mode 100644
index 000000000..b5d59d39b
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpcmac.h
@@ -0,0 +1,121 @@
+/*++
+
+Copyright (c) 1994 Microsoft Corporation
+
+Module Name:
+
+ RpcMac.h
+
+Abstract:
+
+ Macintosh RPC specific exception handler macros.
+
+Author:
+
+ Mario Goertzel [mariogo] 02-Nov-1994
+
+--*/
+
+#ifndef __RPCMAC_H__
+#define __RPCMAC_H__
+
+typedef struct _ExceptionBuff {
+#if _MSC_VER >= 1000
+ jmp_buf registers;
+#else
+ int registers[RPCXCWORD];
+#endif
+ struct _ExceptionBuff __RPC_FAR *pExceptNext;
+} ExceptionBuff, __RPC_FAR *pExceptionBuff;
+
+void RPC_ENTRY RpcSetException(pExceptionBuff);
+void RPC_ENTRY RpcLeaveException(void);
+
+#ifdef _MPPC_
+int __cdecl RpcSetJmp(jmp_buf);
+#else
+#define BLD_RT
+#endif
+
+#ifdef BLD_RT
+#define RpcTryExcept \
+ { \
+ int _exception_code; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _exception_code = (setjmp(exception.registers)); \
+ \
+ if (!_exception_code) \
+ {
+#else
+#define RpcTryExcept \
+ { \
+ int _exception_code; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _exception_code = (RpcSetJmp(exception.registers)); \
+ \
+ if (!_exception_code) \
+ {
+#endif
+
+// trystmts
+
+#define RpcExcept(expr) \
+ RpcLeaveException(); \
+ } \
+ else \
+ { \
+ if (!(expr)) \
+ RpcRaiseException(_exception_code);
+
+// exceptstmts
+
+#define RpcEndExcept \
+ } \
+ }
+
+#ifdef BLD_RT
+#define RpcTryFinally \
+ { \
+ int _abnormal_termination; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _abnormal_termination = (setjmp(exception.registers)); \
+ \
+ if (!_abnormal_termination) \
+ {
+#else
+#define RpcTryFinally \
+ { \
+ int _abnormal_termination; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _abnormal_termination = (RpcSetJmp(exception.registers)); \
+ \
+ if (!_abnormal_termination) \
+ {
+#endif
+
+// trystmts
+
+#define RpcFinally \
+ RpcLeaveException(); \
+ }
+
+// finallystmts
+
+#define RpcEndFinally \
+ if (_abnormal_termination) \
+ RpcRaiseException(_abnormal_termination); \
+ }
+
+#define RpcExceptionCode() _exception_code
+#define RpcAbnormalTermination() _abnormal_termination
+
+#endif // __RPCMAC_H__
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/mac/inc/rpcndr.h b/public/sdk/rpc16/mac/inc/rpcndr.h
new file mode 100644
index 000000000..65d1cdbfe
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpcndr.h
@@ -0,0 +1,2630 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcndr.h
+
+Abstract:
+
+ Definitions for stub data structures and prototypes of helper functions.
+
+Author:
+
+ DonnaLi (01-01-91)
+
+Environment:
+
+ DOS, Win 3.X, and Win/NT.
+
+Revision History:
+
+ DONNALI 08-29-91 Start recording history
+ donnali 09-11-91 change conversion macros
+ donnali 09-18-91 check in files for moving
+ STEVEZ 10-15-91 Merge with NT tree
+ donnali 10-28-91 add prototype
+ donnali 11-19-91 bugfix for strings
+ MIKEMON 12-17-91 DCE runtime API conversion
+ donnali 03-24-92 change rpc public header f
+ STEVEZ 04-04-92 add nsi include
+ mikemon 04-18-92 security support and misc
+ DovhH 04-24-24 Changed signature of <int>_from_ndr
+ (to unsigned <int>)
+ Added <base_type>_array_from_ndr routines
+ RyszardK 06-17-93 Added support for hyper
+ VibhasC 09-11-93 Created rpcndrn.h
+ DKays 10-14-93 Fixed up rpcndrn.h MIDL 2.0
+ RyszardK 01-15-94 Merged in the midl 2.0 changes from rpcndrn.h
+ Stevebl 04-22-96 Hookole support changes to MIDL_*_INFO
+
+--*/
+
+#ifndef __RPCNDR_H__
+#define __RPCNDR_H__
+
+//
+// Set the packing level for RPC structures for Dos, Windows and Mac.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack(2)
+#endif
+
+#if defined(__RPC_MAC__)
+#define _MAC_
+#endif
+
+#include <rpcnsip.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/****************************************************************************
+
+ Network Computing Architecture (NCA) definition:
+
+ Network Data Representation: (NDR) Label format:
+ An unsigned long (32 bits) with the following layout:
+
+ 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
+ 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
+ +---------------+---------------+---------------+-------+-------+
+ | Reserved | Reserved |Floating point | Int | Char |
+ | | |Representation | Rep. | Rep. |
+ +---------------+---------------+---------------+-------+-------+
+
+ Where
+
+ Reserved:
+
+ Must be zero (0) for NCA 1.5 and NCA 2.0.
+
+ Floating point Representation is:
+
+ 0 - IEEE
+ 1 - VAX
+ 2 - Cray
+ 3 - IBM
+
+ Int Rep. is Integer Representation:
+
+ 0 - Big Endian
+ 1 - Little Endian
+
+ Char Rep. is Character Representation:
+
+ 0 - ASCII
+ 1 - EBCDIC
+
+ The Microsoft Local Data Representation (for all platforms which are
+ of interest currently is edefined below:
+
+ ****************************************************************************/
+
+#define NDR_CHAR_REP_MASK (unsigned long)0X0000000FL
+#define NDR_INT_REP_MASK (unsigned long)0X000000F0L
+#define NDR_FLOAT_REP_MASK (unsigned long)0X0000FF00L
+
+#define NDR_LITTLE_ENDIAN (unsigned long)0X00000010L
+#define NDR_BIG_ENDIAN (unsigned long)0X00000000L
+
+#define NDR_IEEE_FLOAT (unsigned long)0X00000000L
+#define NDR_VAX_FLOAT (unsigned long)0X00000100L
+
+#define NDR_ASCII_CHAR (unsigned long)0X00000000L
+#define NDR_EBCDIC_CHAR (unsigned long)0X00000001L
+
+#if defined(__RPC_MAC__)
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000000L
+#define NDR_LOCAL_ENDIAN NDR_BIG_ENDIAN
+#else
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000010L
+#define NDR_LOCAL_ENDIAN NDR_LITTLE_ENDIAN
+#endif
+
+
+/****************************************************************************
+ * Macros for targeted platforms
+ ****************************************************************************/
+
+#if (defined(_WIN32_DCOM) || 0x400 <= _WIN32_WINNT)
+#define TARGET_IS_NT40_OR_LATER 1
+#else
+#define TARGET_IS_NT40_OR_LATER 0
+#endif
+
+#if (0x400 <= WINVER)
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 1
+#else
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 0
+#endif
+
+/****************************************************************************
+ * Other MIDL base types / predefined types:
+ ****************************************************************************/
+
+#define small char
+typedef unsigned char byte;
+typedef unsigned char boolean;
+
+#ifndef _HYPER_DEFINED
+#define _HYPER_DEFINED
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__) && (!defined(_M_IX86) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64))
+#define hyper __int64
+#define MIDL_uhyper unsigned __int64
+#else
+typedef double hyper;
+typedef double MIDL_uhyper;
+#endif
+
+#endif // _HYPER_DEFINED
+
+#ifndef _WCHAR_T_DEFINED
+typedef unsigned short wchar_t;
+#define _WCHAR_T_DEFINED
+#endif
+
+#ifndef _SIZE_T_DEFINED
+typedef unsigned int size_t;
+#define _SIZE_T_DEFINED
+#endif
+
+#ifdef __RPC_DOS__
+#define __RPC_CALLEE __far __pascal
+#endif
+
+#ifdef __RPC_WIN16__
+#define __RPC_CALLEE __far __pascal __export
+#endif
+
+#ifdef __RPC_WIN32__
+#if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
+#define __RPC_CALLEE __stdcall
+#else
+#define __RPC_CALLEE
+#endif
+#endif
+
+#ifdef __RPC_MAC__
+#define __RPC_CALLEE __far
+#endif
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
+void __RPC_USER MIDL_user_free( void __RPC_FAR * );
+
+#ifdef __RPC_WIN16__
+#define RPC_VAR_ENTRY __export __cdecl
+#else
+#define RPC_VAR_ENTRY __cdecl
+#endif
+
+
+/* winnt only */
+#if defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA)
+#define __MIDL_DECLSPEC_DLLIMPORT __declspec(dllimport)
+#define __MIDL_DECLSPEC_DLLEXPORT __declspec(dllexport)
+#else
+#define __MIDL_DECLSPEC_DLLIMPORT
+#define __MIDL_DECLSPEC_DLLEXPORT
+#endif
+
+
+
+
+/****************************************************************************
+ * Context handle management related definitions:
+ *
+ * Client and Server Contexts.
+ *
+ ****************************************************************************/
+
+typedef void __RPC_FAR * NDR_CCONTEXT;
+
+typedef struct
+ {
+ void __RPC_FAR * pad[2];
+ void __RPC_FAR * userContext;
+ } __RPC_FAR * NDR_SCONTEXT;
+
+#define NDRSContextValue(hContext) (&(hContext)->userContext)
+
+#define cbNDRContext 20 /* size of context on WIRE */
+
+typedef void (__RPC_USER __RPC_FAR * NDR_RUNDOWN)(void __RPC_FAR * context);
+
+typedef struct _SCONTEXT_QUEUE {
+ unsigned long NumberOfObjects;
+ NDR_SCONTEXT * ArrayOfObjects;
+ } SCONTEXT_QUEUE, __RPC_FAR * PSCONTEXT_QUEUE;
+
+RPC_BINDING_HANDLE RPC_ENTRY
+NDRCContextBinding (
+ IN NDR_CCONTEXT CContext
+ );
+
+void RPC_ENTRY
+NDRCContextMarshall (
+ IN NDR_CCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff
+ );
+
+void RPC_ENTRY
+NDRCContextUnmarshall (
+ OUT NDR_CCONTEXT __RPC_FAR *pCContext,
+ IN RPC_BINDING_HANDLE hBinding,
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+NDRSContextMarshall (
+ IN NDR_SCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff,
+ IN NDR_RUNDOWN userRunDownIn
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NDRSContextUnmarshall (
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+RpcSsDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+
+/****************************************************************************
+ NDR conversion related definitions.
+ ****************************************************************************/
+
+#define byte_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define byte_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define boolean_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define boolean_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define small_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define small_from_ndr_temp(source, target, format) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)(source))++; \
+ }
+
+#define small_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+/****************************************************************************
+ Platform specific mapping of c-runtime functions.
+ ****************************************************************************/
+
+#ifdef __RPC_DOS__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#ifdef __RPC_WIN16__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define MIDL_ascii_strlen(string) \
+ strlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ strcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ memset(s,c,n)
+#endif
+
+/****************************************************************************
+ Ndr Library helper function prototypes for MIDL 1.0 ndr functions.
+ ****************************************************************************/
+
+void RPC_ENTRY
+NDRcopy (
+ IN void __RPC_FAR *pTarget,
+ IN void __RPC_FAR *pSource,
+ IN unsigned int size
+ );
+
+size_t RPC_ENTRY
+MIDL_wchar_strlen (
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+MIDL_wchar_strcpy (
+ OUT void __RPC_FAR * t,
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+char_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+char_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned short __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+short_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned short __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned short __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+long_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned long __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+long_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned long __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+long_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned long __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+enum_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned int __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT hyper __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+hyper_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT hyper __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT hyper __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+data_from_ndr (
+ PRPC_MESSAGE source,
+ void __RPC_FAR * target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_peek_ndr (
+ PRPC_MESSAGE source,
+ unsigned char __RPC_FAR * __RPC_FAR * buffer,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void __RPC_FAR * RPC_ENTRY
+midl_allocate (
+ size_t size
+ );
+
+/****************************************************************************
+ MIDL 2.0 ndr definitions.
+ ****************************************************************************/
+
+typedef unsigned long error_status_t;
+
+#define _midl_ma1( p, cast ) *(*( cast **)&p)++
+#define _midl_ma2( p, cast ) *(*( cast **)&p)++
+#define _midl_ma4( p, cast ) *(*( cast **)&p)++
+#define _midl_ma8( p, cast ) *(*( cast **)&p)++
+
+#define _midl_unma1( p, cast ) *(( cast *)p)++
+#define _midl_unma2( p, cast ) *(( cast *)p)++
+#define _midl_unma3( p, cast ) *(( cast *)p)++
+#define _midl_unma4( p, cast ) *(( cast *)p)++
+
+// Some alignment specific macros.
+
+
+#define _midl_fa2( p ) (p = (RPC_BUFPTR )((unsigned long)(p+1) & 0xfffffffe))
+#define _midl_fa4( p ) (p = (RPC_BUFPTR )((unsigned long)(p+3) & 0xfffffffc))
+#define _midl_fa8( p ) (p = (RPC_BUFPTR )((unsigned long)(p+7) & 0xfffffff8))
+
+#define _midl_addp( p, n ) (p += n)
+
+// Marshalling macros
+
+#define _midl_marsh_lhs( p, cast ) *(*( cast **)&p)++
+#define _midl_marsh_up( mp, p ) *(*(unsigned long **)&mp)++ = (unsigned long)p
+#define _midl_advmp( mp ) *(*(unsigned long **)&mp)++
+#define _midl_unmarsh_up( p ) (*(*(unsigned long **)&p)++)
+
+
+////////////////////////////////////////////////////////////////////////////
+// Ndr macros.
+////////////////////////////////////////////////////////////////////////////
+
+#define NdrMarshConfStringHdr( p, s, l ) (_midl_ma4( p, unsigned long) = s, \
+ _midl_ma4( p, unsigned long) = 0, \
+ _midl_ma4( p, unsigned long) = l)
+
+#define NdrUnMarshConfStringHdr(p, s, l) ((s=_midl_unma4(p,unsigned long),\
+ (_midl_addp(p,4)), \
+ (l=_midl_unma4(p,unsigned long))
+
+#define NdrMarshCCtxtHdl(pc,p) (NDRCContextMarshall( (NDR_CCONTEXT)pc, p ),p+20)
+
+#define NdrUnMarshCCtxtHdl(pc,p,h,drep) \
+ (NDRCContextUnmarshall((NDR_CONTEXT)pc,h,p,drep), p+20)
+
+#define NdrUnMarshSCtxtHdl(pc, p,drep) (pc = NdrSContextUnMarshall(p,drep ))
+
+
+#define NdrMarshSCtxtHdl(pc,p,rd) (NdrSContextMarshall((NDR_SCONTEXT)pc,p, (NDR_RUNDOWN)rd)
+
+#define NdrFieldOffset(s,f) (long)(& (((s __RPC_FAR *)0)->f))
+#define NdrFieldPad(s,f,p,t) (NdrFieldOffset(s,f) - NdrFieldOffset(s,p) - sizeof(t))
+
+#if defined(__RPC_MAC__)
+#define NdrFcShort(s) (unsigned char)(s >> 8), (unsigned char)(s & 0xff)
+#define NdrFcLong(s) (unsigned char)(s >> 24), (unsigned char)((s & 0x00ff0000) >> 16), \
+ (unsigned char)((s & 0x0000ff00) >> 8), (unsigned char)(s & 0xff)
+#else
+#define NdrFcShort(s) (unsigned char)(s & 0xff), (unsigned char)(s >> 8)
+#define NdrFcLong(s) (unsigned char)(s & 0xff), (unsigned char)((s & 0x0000ff00) >> 8), \
+ (unsigned char)((s & 0x00ff0000) >> 16), (unsigned char)(s >> 24)
+#endif // Mac
+
+//
+// On the server side, the following exceptions are mapped to
+// the bad stub data exception if -error stub_data is used.
+//
+
+#define RPC_BAD_STUB_DATA_EXCEPTION_FILTER \
+ ( (RpcExceptionCode() == STATUS_ACCESS_VIOLATION) || \
+ (RpcExceptionCode() == STATUS_DATATYPE_MISALIGNMENT) || \
+ (RpcExceptionCode() == RPC_X_BAD_STUB_DATA) )
+
+/////////////////////////////////////////////////////////////////////////////
+// Some stub helper functions.
+/////////////////////////////////////////////////////////////////////////////
+
+////////////////////////////////////////////////////////////////////////////
+// Stub helper structures.
+////////////////////////////////////////////////////////////////////////////
+
+struct _MIDL_STUB_MESSAGE;
+struct _MIDL_STUB_DESC;
+struct _FULL_PTR_XLAT_TABLES;
+
+typedef unsigned char __RPC_FAR * RPC_BUFPTR;
+typedef unsigned long RPC_LENGTH;
+
+// Expression evaluation callback routine prototype.
+typedef void (__RPC_USER __RPC_FAR * EXPR_EVAL)( struct _MIDL_STUB_MESSAGE __RPC_FAR * );
+
+typedef const unsigned char __RPC_FAR * PFORMAT_STRING;
+
+/*
+ * Multidimensional conformant/varying array struct.
+ */
+typedef struct
+ {
+ long Dimension;
+
+ /* These fields MUST be (unsigned long *) */
+ unsigned long __RPC_FAR * BufferConformanceMark;
+ unsigned long __RPC_FAR * BufferVarianceMark;
+
+ /* Count arrays, used for top level arrays in -Os stubs */
+ unsigned long __RPC_FAR * MaxCountArray;
+ unsigned long __RPC_FAR * OffsetArray;
+ unsigned long __RPC_FAR * ActualCountArray;
+ } ARRAY_INFO, __RPC_FAR *PARRAY_INFO;
+
+/*
+ * Pipe related definitions.
+ */
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PULL_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PUSH_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_ALLOC_RTN)(
+ char __RPC_FAR * state,
+ unsigned long bsize,
+ void __RPC_FAR * __RPC_FAR * buf,
+ unsigned long __RPC_FAR * bcount );
+
+
+typedef struct _GENERIC_PIPE_TYPE
+ {
+ NDR_PIPE_PULL_RTN pfnPull;
+ NDR_PIPE_PUSH_RTN pfnPush;
+ NDR_PIPE_ALLOC_RTN pfnAlloc;
+ char __RPC_FAR * pState;
+ } GENERIC_PIPE_TYPE;
+
+
+typedef struct {
+ int CurrentState;
+ int ElemsInChunk;
+ int ElemAlign;
+ int ElemWireSize;
+ int ElemMemSize;
+ int PartialBufferSize;
+ unsigned char __RPC_FAR * PartialElem;
+ int PartialElemSize;
+ int PartialOffset;
+ int EndOfPipe;
+ } NDR_PIPE_STATE;
+
+typedef struct _PIPE_MESSAGE
+ {
+ unsigned short Signature;
+ unsigned short PipeId;
+ GENERIC_PIPE_TYPE __RPC_FAR * pPipeType;
+ PFORMAT_STRING pTypeFormat;
+ unsigned short PipeStatus;
+ unsigned short PipeFlags;
+ struct _MIDL_STUB_MESSAGE __RPC_FAR * pStubMsg;
+ } NDR_PIPE_MESSAGE, __RPC_FAR * PNDR_PIPE_MESSAGE;
+
+typedef struct _NDR_PIPE_DESC
+ {
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg;
+ short CurrentPipe;
+ short InPipes;
+ short OutPipes;
+ short TotalPipes;
+ short PipeVersion;
+ short Flags;
+ unsigned char __RPC_FAR * DispatchBuffer;
+ unsigned char __RPC_FAR * LastPartialBuffer;
+ unsigned long LastPartialSize;
+ unsigned char __RPC_FAR * BufferSave;
+ unsigned long LengthSave;
+ NDR_PIPE_STATE RuntimeState;
+ } NDR_PIPE_DESC, __RPC_FAR * PNDR_PIPE_DESC;
+
+
+/*
+ * MIDL Stub Message
+ */
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <pshpack4.h>
+#endif
+
+typedef struct _MIDL_STUB_MESSAGE
+ {
+ /* RPC message structure. */
+ PRPC_MESSAGE RpcMsg;
+
+ /* Pointer into RPC message buffer. */
+ unsigned char __RPC_FAR * Buffer;
+
+ /*
+ * These are used internally by the Ndr routines to mark the beginning
+ * and end of an incoming RPC buffer.
+ */
+ unsigned char __RPC_FAR * BufferStart;
+ unsigned char __RPC_FAR * BufferEnd;
+
+ /*
+ * Used internally by the Ndr routines as a place holder in the buffer.
+ * On the marshalling side it's used to mark the location where conformance
+ * size should be marshalled.
+ * On the unmarshalling side it's used to mark the location in the buffer
+ * used during pointer unmarshalling to base pointer offsets off of.
+ */
+ unsigned char __RPC_FAR * BufferMark;
+
+ /* Set by the buffer sizing routines. */
+ unsigned long BufferLength;
+
+ /* Set by the memory sizing routines. */
+ unsigned long MemorySize;
+
+ /* Pointer to user memory. */
+ unsigned char __RPC_FAR * Memory;
+
+ /* Is the Ndr routine begin called from a client side stub. */
+ int IsClient;
+
+ /* Can the buffer be re-used for memory on unmarshalling. */
+ int ReuseBuffer;
+
+ /* Holds the current pointer to an allocate all nodes memory block. */
+ unsigned char __RPC_FAR * AllocAllNodesMemory;
+
+ /* Used for debugging asserts only, remove later. */
+ unsigned char __RPC_FAR * AllocAllNodesMemoryEnd;
+
+ /*
+ * Stuff needed while handling complex structures
+ */
+
+ /* Ignore imbeded pointers while computing buffer or memory sizes. */
+ int IgnoreEmbeddedPointers;
+
+ /*
+ * This marks the location in the buffer where pointees of a complex
+ * struct reside.
+ */
+ unsigned char __RPC_FAR * PointerBufferMark;
+
+ /*
+ * Used to catch errors in SendReceive.
+ */
+ unsigned char fBufferValid;
+
+ /*
+ * Obsolete unused field (formerly MaxContextHandleNumber).
+ */
+ unsigned char Unused;
+
+ /*
+ * Used internally by the Ndr routines. Holds the max counts for
+ * a conformant array.
+ */
+ unsigned long MaxCount;
+
+ /*
+ * Used internally by the Ndr routines. Holds the offsets for a varying
+ * array.
+ */
+ unsigned long Offset;
+
+ /*
+ * Used internally by the Ndr routines. Holds the actual counts for
+ * a varying array.
+ */
+ unsigned long ActualCount;
+
+ /* Allocation and Free routine to be used by the Ndr routines. */
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ /*
+ * Top of parameter stack. Used for "single call" stubs during marshalling
+ * to hold the beginning of the parameter list on the stack. Needed to
+ * extract parameters which hold attribute values for top level arrays and
+ * pointers.
+ */
+ unsigned char __RPC_FAR * StackTop;
+
+ /*
+ * Fields used for the transmit_as and represent_as objects.
+ * For represent_as the mapping is: presented=local, transmit=named.
+ */
+ unsigned char __RPC_FAR * pPresentedType;
+ unsigned char __RPC_FAR * pTransmitType;
+
+ /*
+ * When we first construct a binding on the client side, stick it
+ * in the rpcmessage and later call RpcGetBuffer, the handle field
+ * in the rpcmessage is changed. That's fine except that we need to
+ * have that original handle for use in unmarshalling context handles
+ * (the second argument in NDRCContextUnmarshall to be exact). So
+ * stash the contructed handle here and extract it when needed.
+ */
+ handle_t SavedHandle;
+
+ /*
+ * Pointer back to the stub descriptor. Use this to get all handle info.
+ */
+ const struct _MIDL_STUB_DESC __RPC_FAR * StubDesc;
+
+ /*
+ * Full pointer stuff.
+ */
+ struct _FULL_PTR_XLAT_TABLES __RPC_FAR * FullPtrXlatTables;
+
+ unsigned long FullPtrRefId;
+
+ /*
+ * flags
+ */
+
+ int fCheckBounds;
+
+ int fInDontFree :1;
+ int fDontCallFreeInst :1;
+ int fInOnlyParam :1;
+ int fHasReturn :1;
+
+ unsigned long dwDestContext;
+ void __RPC_FAR * pvDestContext;
+
+ NDR_SCONTEXT * SavedContextHandles;
+
+ long ParamNumber;
+
+ struct IRpcChannelBuffer __RPC_FAR * pRpcChannelBuffer;
+
+ PARRAY_INFO pArrayInfo;
+
+ /*
+ * This is where the Beta2 stub message ends.
+ */
+
+ unsigned long __RPC_FAR * SizePtrCountArray;
+ unsigned long __RPC_FAR * SizePtrOffsetArray;
+ unsigned long __RPC_FAR * SizePtrLengthArray;
+
+ /*
+ * Interpreter argument queue. Used on server side only.
+ */
+ void __RPC_FAR * pArgQueue;
+
+ unsigned long dwStubPhase;
+
+ /*
+ * Pipe descriptor, defined for the 4.0 release.
+ */
+
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc;
+
+ unsigned long Reserved[4];
+
+ /*
+ * Fields up to this point present since the 3.50 release.
+ */
+
+ } MIDL_STUB_MESSAGE, __RPC_FAR *PMIDL_STUB_MESSAGE;
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <poppack.h>
+#endif
+
+/*
+ * Generic handle bind/unbind routine pair.
+ */
+typedef void __RPC_FAR *
+ (__RPC_FAR __RPC_API * GENERIC_BINDING_ROUTINE)
+ (void __RPC_FAR *);
+typedef void
+ (__RPC_FAR __RPC_API * GENERIC_UNBIND_ROUTINE)
+ (void __RPC_FAR *, unsigned char __RPC_FAR *);
+
+typedef struct _GENERIC_BINDING_ROUTINE_PAIR
+ {
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_ROUTINE_PAIR, __RPC_FAR *PGENERIC_BINDING_ROUTINE_PAIR;
+
+typedef struct __GENERIC_BINDING_INFO
+ {
+ void __RPC_FAR * pObj;
+ unsigned int Size;
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_INFO, __RPC_FAR *PGENERIC_BINDING_INFO;
+
+// typedef EXPR_EVAL - see above
+// typedefs for xmit_as
+
+#if (defined(_MSC_VER)) && !defined(MIDL_PASS)
+// a Microsoft C++ compiler
+#define NDR_SHAREABLE __inline
+#else
+#define NDR_SHAREABLE static
+#endif
+
+
+typedef void (__RPC_FAR __RPC_USER * XMIT_HELPER_ROUTINE)
+ ( PMIDL_STUB_MESSAGE );
+
+typedef struct _XMIT_ROUTINE_QUINTUPLE
+ {
+ XMIT_HELPER_ROUTINE pfnTranslateToXmit;
+ XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
+ XMIT_HELPER_ROUTINE pfnFreeXmit;
+ XMIT_HELPER_ROUTINE pfnFreeInst;
+ } XMIT_ROUTINE_QUINTUPLE, __RPC_FAR *PXMIT_ROUTINE_QUINTUPLE;
+
+typedef unsigned long
+(__RPC_FAR __RPC_USER * USER_MARSHAL_SIZING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned long,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_MARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_UNMARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef void (__RPC_FAR __RPC_USER * USER_MARSHAL_FREEING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ void __RPC_FAR * );
+
+typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE
+ {
+ USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
+ USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
+ USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
+ USER_MARSHAL_FREEING_ROUTINE pfnFree;
+ } USER_MARSHAL_ROUTINE_QUADRUPLE;
+
+typedef struct _USER_MARSHAL_CB
+{
+ unsigned long Flags;
+ PMIDL_STUB_MESSAGE pStubMsg;
+ PFORMAT_STRING pReserve;
+} USER_MARSHAL_CB;
+
+
+#define USER_CALL_CTXT_MASK(f) ((f) & 0xff)
+#define GET_USER_DATA_REP(f) ((f) >> 16)
+
+typedef struct _MALLOC_FREE_STRUCT
+ {
+ void __RPC_FAR * (__RPC_FAR __RPC_USER * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_USER * pfnFree)(void __RPC_FAR *);
+ } MALLOC_FREE_STRUCT;
+
+typedef struct _COMM_FAULT_OFFSETS
+ {
+ short CommOffset;
+ short FaultOffset;
+ } COMM_FAULT_OFFSETS;
+
+/*
+ * MIDL Stub Descriptor
+ */
+
+typedef struct _MIDL_STUB_DESC
+ {
+
+ void __RPC_FAR * RpcInterfaceInformation;
+
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ union
+ {
+ handle_t __RPC_FAR * pAutoHandle;
+ handle_t __RPC_FAR * pPrimitiveHandle;
+ PGENERIC_BINDING_INFO pGenericBindingInfo;
+ } IMPLICIT_HANDLE_INFO;
+
+ const NDR_RUNDOWN __RPC_FAR * apfnNdrRundownRoutines;
+ const GENERIC_BINDING_ROUTINE_PAIR __RPC_FAR * aGenericBindingRoutinePairs;
+
+ const EXPR_EVAL __RPC_FAR * apfnExprEval;
+
+ const XMIT_ROUTINE_QUINTUPLE __RPC_FAR * aXmitQuintuple;
+
+ const unsigned char __RPC_FAR * pFormatTypes;
+
+ int fCheckBounds;
+
+ /* Ndr library version. */
+ unsigned long Version;
+
+ /*
+ * Reserved for future use. (no reserves )
+ */
+
+ MALLOC_FREE_STRUCT __RPC_FAR * pMallocFreeStruct;
+
+ long MIDLVersion;
+
+ const COMM_FAULT_OFFSETS __RPC_FAR * CommFaultOffsets;
+
+ // New fields for version 3.0+
+
+ const USER_MARSHAL_ROUTINE_QUADRUPLE __RPC_FAR * aUserMarshalQuadruple;
+
+ long Reserved1;
+ long Reserved2;
+ long Reserved3;
+ long Reserved4;
+ long Reserved5;
+
+ } MIDL_STUB_DESC;
+
+typedef const MIDL_STUB_DESC __RPC_FAR * PMIDL_STUB_DESC;
+
+typedef void __RPC_FAR * PMIDL_XMIT_TYPE;
+
+/*
+ * MIDL Stub Format String. This is a const in the stub.
+ */
+#if !defined( RC_INVOKED )
+#pragma warning( disable:4200 )
+#endif
+typedef struct _MIDL_FORMAT_STRING
+ {
+ short Pad;
+ unsigned char Format[];
+ } MIDL_FORMAT_STRING;
+#if !defined( RC_INVOKED )
+#pragma warning( default:4200 )
+#endif
+
+/*
+ * Stub thunk used for some interpreted server stubs.
+ */
+typedef void (__RPC_FAR __RPC_API * STUB_THUNK)( PMIDL_STUB_MESSAGE );
+
+typedef long (__RPC_FAR __RPC_API * SERVER_ROUTINE)();
+
+/*
+ * Server Interpreter's information strucuture.
+ */
+typedef struct _MIDL_SERVER_INFO_
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ const SERVER_ROUTINE * DispatchTable;
+ PFORMAT_STRING ProcString;
+ const unsigned short * FmtStringOffset;
+ const STUB_THUNK * ThunkTable;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short * LocalFmtStringOffset;
+ } MIDL_SERVER_INFO, *PMIDL_SERVER_INFO;
+
+/*
+ * Stubless object proxy information structure.
+ */
+typedef struct _MIDL_STUBLESS_PROXY_INFO
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ PFORMAT_STRING ProcFormatString;
+ const unsigned short __RPC_FAR * FormatStringOffset;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short __RPC_FAR * LocalFmtStringOffset;
+ } MIDL_STUBLESS_PROXY_INFO;
+
+typedef MIDL_STUBLESS_PROXY_INFO __RPC_FAR * PMIDL_STUBLESS_PROXY_INFO;
+
+/*
+ * This is the return value from NdrClientCall.
+ */
+typedef union _CLIENT_CALL_RETURN
+ {
+ void __RPC_FAR * Pointer;
+ long Simple;
+ } CLIENT_CALL_RETURN;
+
+/*
+ * Full pointer data structures.
+ */
+
+typedef enum
+ {
+ XLAT_SERVER = 1,
+ XLAT_CLIENT
+ } XLAT_SIDE;
+
+/*
+ * Stores the translation for the conversion from a full pointer into it's
+ * corresponding ref id.
+ */
+typedef struct _FULL_PTR_TO_REFID_ELEMENT
+ {
+ struct _FULL_PTR_TO_REFID_ELEMENT __RPC_FAR * Next;
+
+ void __RPC_FAR * Pointer;
+ unsigned long RefId;
+ unsigned char State;
+ } FULL_PTR_TO_REFID_ELEMENT, __RPC_FAR *PFULL_PTR_TO_REFID_ELEMENT;
+
+/*
+ * Full pointer translation tables.
+ */
+typedef struct _FULL_PTR_XLAT_TABLES
+ {
+ /*
+ * Ref id to pointer translation information.
+ */
+ struct
+ {
+ void __RPC_FAR *__RPC_FAR * XlatTable;
+ unsigned char __RPC_FAR * StateTable;
+ unsigned long NumberOfEntries;
+ } RefIdToPointer;
+
+ /*
+ * Pointer to ref id translation information.
+ */
+ struct
+ {
+ PFULL_PTR_TO_REFID_ELEMENT __RPC_FAR * XlatTable;
+ unsigned long NumberOfBuckets;
+ unsigned long HashMask;
+ } PointerToRefId;
+
+ /*
+ * Next ref id to use.
+ */
+ unsigned long NextRefId;
+
+ /*
+ * Keep track of the translation size we're handling : server or client.
+ * This tells us when we have to do reverse translations when we insert
+ * new translations. On the server we must insert a pointer-to-refid
+ * translation whenever we insert a refid-to-pointer translation, and
+ * vica versa for the client.
+ */
+ XLAT_SIDE XlatSide;
+ } FULL_PTR_XLAT_TABLES, __RPC_FAR *PFULL_PTR_XLAT_TABLES;
+
+/***************************************************************************
+ ** New MIDL 2.0 Ndr routine templates
+ ***************************************************************************/
+
+/*
+ * Marshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT ContextHandle,
+ int fCheck
+ );
+
+void RPC_ENTRY
+NdrServerContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_SCONTEXT ContextHandle,
+ NDR_RUNDOWN RundownRoutine
+ );
+
+/*
+ * Unmarshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT __RPC_FAR * pContextHandle,
+ RPC_BINDING_HANDLE BindHandle
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NdrServerContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+/*
+ * Buffer sizing routines
+ */
+
+void RPC_ENTRY
+NdrPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+void RPC_ENTRY
+NdrConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+void RPC_ENTRY
+NdrByteCountPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+// Context Handle size
+//
+void RPC_ENTRY
+NdrContextHandleSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Memory sizing routines
+ */
+
+unsigned long RPC_ENTRY
+NdrPointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned long RPC_ENTRY
+NdrSimpleStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrHardStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned long RPC_ENTRY
+NdrFixedArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned long RPC_ENTRY
+NdrConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned long RPC_ENTRY
+NdrEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned long RPC_ENTRY
+NdrXmitOrRepAsMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned long RPC_ENTRY
+NdrUserMarshalMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+unsigned long RPC_ENTRY
+NdrInterfacePointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Freeing routines
+ */
+
+void RPC_ENTRY
+NdrPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count */
+
+void RPC_ENTRY
+NdrByteCountPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Endian conversion routine.
+ */
+
+void RPC_ENTRY
+NdrConvert2(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ long NumberParams
+ );
+
+void RPC_ENTRY
+NdrConvert(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+#define USER_MARSHAL_FC_BYTE 1
+#define USER_MARSHAL_FC_CHAR 2
+#define USER_MARSHAL_FC_SMALL 3
+#define USER_MARSHAL_FC_USMALL 4
+#define USER_MARSHAL_FC_WCHAR 5
+#define USER_MARSHAL_FC_SHORT 6
+#define USER_MARSHAL_FC_USHORT 7
+#define USER_MARSHAL_FC_LONG 8
+#define USER_MARSHAL_FC_ULONG 9
+#define USER_MARSHAL_FC_FLOAT 10
+#define USER_MARSHAL_FC_HYPER 11
+#define USER_MARSHAL_FC_DOUBLE 12
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalSimpleTypeConvert(
+ unsigned long * pFlags,
+ unsigned char * pBuffer,
+ unsigned char FormatChar
+ );
+
+/*
+ * Auxilary routines
+ */
+
+void RPC_ENTRY
+NdrClientInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+void RPC_ENTRY
+NdrServerInitializePartial(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned long RequestedBufferSize
+ );
+
+void RPC_ENTRY
+NdrClientInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeUnmarshall (
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PRPC_MESSAGE pRpcMsg
+ );
+
+void RPC_ENTRY
+NdrServerInitializeMarshall (
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetPipeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle );
+
+void RPC_ENTRY
+NdrGetPartialBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR* pBufferEnd
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pBufferEnd,
+ RPC_BINDING_HANDLE __RPC_FAR * pAutoHandle
+ );
+
+void RPC_ENTRY
+NdrPipeSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrFreeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Pipe specific calls
+ */
+
+void RPC_ENTRY
+NdrPipesInitialize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pParamDesc,
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg,
+ char __RPC_FAR * pStackTop,
+ unsigned long NumberParams );
+
+void
+NdrMarkNextActivePipe(
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ unsigned int DirectionMask );
+
+void RPC_ENTRY
+NdrPipePull(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+void RPC_ENTRY
+NdrPipePush(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+void RPC_ENTRY
+NdrIsAppDoneWithPipes(
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrPipesDone(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Interpeter calls.
+ */
+
+/* client */
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall2(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+/* server */
+typedef enum {
+ STUB_UNMARSHAL,
+ STUB_CALL_SERVER,
+ STUB_MARSHAL,
+ STUB_CALL_SERVER_NO_HRESULT
+}STUB_PHASE;
+
+typedef enum {
+ PROXY_CALCSIZE,
+ PROXY_GETBUFFER,
+ PROXY_MARSHAL,
+ PROXY_SENDRECEIVE,
+ PROXY_UNMARSHAL
+}PROXY_PHASE;
+
+long RPC_ENTRY
+NdrStubCall2(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall2(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+long RPC_ENTRY
+NdrStubCall (
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+int RPC_ENTRY
+NdrServerUnmarshall(
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * pParamList
+ );
+
+void RPC_ENTRY
+NdrServerMarshall(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Comm and Fault status */
+
+RPC_STATUS RPC_ENTRY
+NdrMapCommAndFaultStatus(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long __RPC_FAR * pCommStatus,
+ unsigned long __RPC_FAR * pFaultStatus,
+ RPC_STATUS Status
+ );
+
+/* Helper routines */
+
+int RPC_ENTRY
+NdrSH_UPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ RPC_BUFPTR pBuffer
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecisionBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_IfAlloc(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocRef(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocSet(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfAllocCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+unsigned long RPC_ENTRY
+NdrSH_Copy(
+ unsigned char __RPC_FAR * pStubMsg,
+ unsigned char __RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+void RPC_ENTRY
+NdrSH_IfFree(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pPtr );
+
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned long Count,
+ int Size );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringUnMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR *__RPC_FAR * pMemory,
+ int Size );
+
+/****************************************************************************
+ MIDL 2.0 memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+typedef void __RPC_FAR * RPC_SS_THREAD_HANDLE;
+
+typedef void __RPC_FAR * __RPC_API
+RPC_CLIENT_ALLOC (
+ IN size_t Size
+ );
+
+typedef void __RPC_API
+RPC_CLIENT_FREE (
+ IN void __RPC_FAR * Ptr
+ );
+
+/*++
+ RpcSs* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSsAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+RpcSsDisableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsEnableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSsGetThreadHandle (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+void RPC_ENTRY
+RpcSsSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+void RPC_ENTRY
+RpcSsSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ RpcSm* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSmAllocate (
+ IN size_t Size,
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmClientFree (
+ IN void __RPC_FAR * pNodeToFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDisableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmEnableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSmGetThreadHandle (
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ Ndr stub entry points
+--*/
+
+void RPC_ENTRY
+NdrRpcSsEnableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSsDisableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSmSetClientToOsf(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSmClientAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSmClientFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSsDefaultAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSsDefaultFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+/****************************************************************************
+ end of memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+/****************************************************************************
+ * Full Pointer APIs
+ ****************************************************************************/
+
+PFULL_PTR_XLAT_TABLES RPC_ENTRY
+NdrFullPointerXlatInit(
+ unsigned long NumberOfPointers,
+ XLAT_SIDE XlatSide
+ );
+
+void RPC_ENTRY
+NdrFullPointerXlatFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryPointer(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * pPointer,
+ unsigned char QueryType,
+ unsigned long __RPC_FAR * pRefId
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ unsigned char QueryType,
+ void __RPC_FAR *__RPC_FAR * ppPointer
+ );
+
+void RPC_ENTRY
+NdrFullPointerInsertRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ void __RPC_FAR * pPointer
+ );
+
+int RPC_ENTRY
+NdrFullPointerFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * Pointer
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrAllocate(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ size_t Len
+ );
+
+void RPC_ENTRY
+NdrClearOutParameters(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * ArgAddr
+ );
+
+
+/****************************************************************************
+ * Proxy APIs
+ ****************************************************************************/
+
+void __RPC_FAR * RPC_ENTRY
+NdrOleAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrOleFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+#ifdef CONST_VTABLE
+#define CONST_VTBL const
+#else
+#define CONST_VTBL
+#endif
+
+
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS, Windows and Mac.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack()
+#endif
+
+#endif /* __RPCNDR_H__ */
+
+
+
+
+
diff --git a/public/sdk/rpc16/mac/inc/rpcnsi.h b/public/sdk/rpc16/mac/inc/rpcnsi.h
new file mode 100644
index 000000000..362b5bdb4
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpcnsi.h
@@ -0,0 +1,509 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsi.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ Name Service Independent APIs.
+
+--*/
+
+#ifndef __RPCNSI_H__
+#define __RPCNSI_H__
+
+typedef void __RPC_FAR * RPC_NS_HANDLE;
+
+#define RPC_C_NS_SYNTAX_DEFAULT 0
+#define RPC_C_NS_SYNTAX_DCE 3
+
+#define RPC_C_PROFILE_DEFAULT_ELT 0
+#define RPC_C_PROFILE_ALL_ELT 1
+#define RPC_C_PROFILE_MATCH_BY_IF 2
+#define RPC_C_PROFILE_MATCH_BY_MBR 3
+#define RPC_C_PROFILE_MATCH_BY_BOTH 4
+
+#define RPC_C_NS_DEFAULT_EXP_AGE -1
+
+/* Server APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#endif
+
+/* Client APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupNext(
+ IN RPC_NS_HANDLE LookupContext,
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+/* Group APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Profile APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned char __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned short __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Entry object APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqNext(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT UUID __RPC_FAR * ObjUuid
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Management and MISC APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtHandleSetExpAge(
+ IN RPC_NS_HANDLE NsHandle,
+ IN unsigned long ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtInqExpAge(
+ OUT unsigned long __RPC_FAR * ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtSetExpAge(
+ IN unsigned long ExpirationAge
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+#endif
+
+/* Client API's implemented in wrappers. */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportNext(
+ IN RPC_NS_HANDLE ImportContext,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingSelect(
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * BindingVec,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginW
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginW
+#define RpcNsBindingExport RpcNsBindingExportW
+#define RpcNsBindingUnexport RpcNsBindingUnexportW
+#define RpcNsGroupDelete RpcNsGroupDeleteW
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddW
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveW
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginW
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextW
+#define RpcNsEntryExpandName RpcNsEntryExpandNameW
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginW
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportW
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateW
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteW
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsW
+#define RpcNsProfileDelete RpcNsProfileDeleteW
+#define RpcNsProfileEltAdd RpcNsProfileEltAddW
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveW
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginW
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextW
+
+#else
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginA
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginA
+#define RpcNsBindingExport RpcNsBindingExportA
+#define RpcNsBindingUnexport RpcNsBindingUnexportA
+#define RpcNsGroupDelete RpcNsGroupDeleteA
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddA
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveA
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginA
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextA
+#define RpcNsEntryExpandName RpcNsEntryExpandNameA
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginA
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportA
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateA
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteA
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsA
+#define RpcNsProfileDelete RpcNsProfileDeleteA
+#define RpcNsProfileEltAdd RpcNsProfileEltAddA
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveA
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginA
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextA
+
+#endif /* UNICODE */
+
+#endif /* __RPCNSI_H__ */
diff --git a/public/sdk/rpc16/mac/inc/rpcnsip.h b/public/sdk/rpc16/mac/inc/rpcnsip.h
new file mode 100644
index 000000000..0db0140b0
--- /dev/null
+++ b/public/sdk/rpc16/mac/inc/rpcnsip.h
@@ -0,0 +1,72 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsip.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ to implement the autohandle features of the runtime.
+
+--*/
+
+#ifndef __RPCNSIP_H__
+#define __RPCNSIP_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct
+{
+ RPC_NS_HANDLE LookupContext;
+ RPC_BINDING_HANDLE ProposedHandle;
+ RPC_BINDING_VECTOR * Bindings;
+
+} RPC_IMPORT_CONTEXT_P, * PRPC_IMPORT_CONTEXT_P;
+
+
+/* Stub Auto Binding routines. */
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsGetBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsSendReceive(
+ IN PRPC_MESSAGE Message,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Handle
+ );
+
+void RPC_ENTRY
+I_RpcNsRaiseException(
+ IN PRPC_MESSAGE Message,
+ IN RPC_STATUS Status
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcReBindBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsServerBindSearch(
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsClientBindSearch(
+ );
+
+void RPC_ENTRY
+I_NsClientBindDone(
+ );
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCNSIP_H__ */
diff --git a/public/sdk/rpc16/mppc/inc/midles.h b/public/sdk/rpc16/mppc/inc/midles.h
new file mode 100644
index 000000000..b64e4fe61
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/midles.h
@@ -0,0 +1,218 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ midles.h
+
+Abstract:
+
+ This module contains definitions needed for encoding/decoding
+ support (serializing/deserializing a.k.a. pickling).
+
+--*/
+
+#ifndef __MIDLES_H__
+#define __MIDLES_H__
+
+#include <rpcndr.h>
+
+//
+// Set the packing level for RPC structures for Dos and Windows.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Pickling support
+ */
+typedef enum
+{
+ MES_ENCODE,
+ MES_DECODE,
+} MIDL_ES_CODE;
+
+typedef enum
+{
+ MES_INCREMENTAL_HANDLE,
+ MES_FIXED_BUFFER_HANDLE,
+ MES_DYNAMIC_BUFFER_HANDLE
+} MIDL_ES_HANDLE_STYLE;
+
+
+typedef void (__RPC_USER * MIDL_ES_ALLOC )
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef void (__RPC_USER * MIDL_ES_WRITE)
+ ( IN OUT void __RPC_FAR * state,
+ IN char __RPC_FAR * buffer,
+ IN unsigned int size );
+
+typedef void (__RPC_USER * MIDL_ES_READ)
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef struct _MIDL_ES_MESSAGE
+{
+ MIDL_STUB_MESSAGE StubMsg;
+ MIDL_ES_CODE Operation;
+ void __RPC_FAR * UserState;
+ unsigned long MesVersion:8;
+ unsigned long HandleStyle:8;
+ unsigned long HandleFlags:8;
+ unsigned long Reserve:8;
+ MIDL_ES_ALLOC Alloc;
+ MIDL_ES_WRITE Write;
+ MIDL_ES_READ Read;
+ unsigned char __RPC_FAR * Buffer;
+ unsigned long BufferSize;
+ unsigned char __RPC_FAR * __RPC_FAR * pDynBuffer;
+ unsigned long __RPC_FAR * pEncodedSize;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ unsigned long ProcNumber;
+ unsigned long AlienDataRep;
+ unsigned long IncrDataSize;
+ unsigned long ByteCount;
+} MIDL_ES_MESSAGE, __RPC_FAR * PMIDL_ES_MESSAGE;
+
+typedef PMIDL_ES_MESSAGE MIDL_ES_HANDLE;
+
+RPC_STATUS RPC_ENTRY
+MesEncodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_READ ReadFn,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesIncrementalHandleReset(
+ handle_t Handle,
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ MIDL_ES_READ ReadFn,
+ MIDL_ES_CODE Operation );
+
+
+RPC_STATUS RPC_ENTRY
+MesEncodeFixedBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesEncodeDynBufferHandleCreate(
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesBufferHandleReset(
+ handle_t Handle,
+ unsigned long HandleStyle,
+ MIDL_ES_CODE Operation,
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize );
+
+
+RPC_STATUS RPC_ENTRY
+MesHandleFree( handle_t Handle );
+
+RPC_STATUS RPC_ENTRY
+MesInqProcEncodingId(
+ handle_t Handle,
+ PRPC_SYNTAX_IDENTIFIER pInterfaceId,
+ unsigned long __RPC_FAR * pProcNum );
+
+
+#if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
+#define __RPC_UNALIGNED __unaligned
+#else
+#define __RPC_UNALIGNED
+#endif
+
+void RPC_ENTRY I_NdrMesMessageInit( PMIDL_STUB_MESSAGE );
+
+size_t RPC_ENTRY
+NdrMesSimpleTypeAlignSize ( handle_t );
+
+void RPC_ENTRY
+NdrMesSimpleTypeDecode(
+ handle_t Handle,
+ void __RPC_FAR * pObject,
+ short Size );
+
+void RPC_ENTRY
+NdrMesSimpleTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ void __RPC_FAR * pObject,
+ short Size );
+
+
+size_t RPC_ENTRY
+NdrMesTypeAlignSize(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_VAR_ENTRY
+NdrMesProcEncodeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ ... );
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __MIDLES_H__ */
diff --git a/public/sdk/rpc16/mppc/inc/rpc.h b/public/sdk/rpc16/mppc/inc/rpc.h
new file mode 100644
index 000000000..6b1bfafde
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpc.h
@@ -0,0 +1,71 @@
+/*++
+
+Copyright (c) 1991-1993 Microsoft Corporation
+
+Module Name:
+
+ rpc.h
+
+Abstract:
+
+ Master include file for RPC applications.
+
+--*/
+
+#ifndef __RPC_H__
+#define __RPC_H__
+
+// Set the packing level for RPC structures.
+
+#pragma pack(2)
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define __RPC_MAC__
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+typedef long RPC_STATUS;
+
+#include <setjmp.h>
+
+#define RPCXCWORD (sizeof(jmp_buf)/sizeof(int))
+
+#define __RPC_FAR
+#define __RPC_API __stdcall
+#define __RPC_USER __stdcall
+#define __RPC_STUB __stdcall
+#define RPC_ENTRY __stdcall
+
+typedef void * I_RPC_HANDLE;
+#pragma warning( disable: 4005 )
+#include "rpcdce.h"
+#include "rpcnsi.h"
+#include "rpcerr.h"
+#include "rpcmac.h"
+#pragma warning( default : 4005 )
+
+typedef void (RPC_ENTRY *MACYIELDCALLBACK)(/*OSErr*/ short *) ;
+RPC_STATUS RPC_ENTRY
+RpcMacSetYieldInfo(
+ MACYIELDCALLBACK pfnCallback) ;
+
+#ifdef __cplusplus
+}
+#endif
+
+#if !defined(UNALIGNED)
+#define UNALIGNED
+#endif
+
+// Reset the packing level.
+#pragma pack()
+
+#endif // __RPC_H__
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/mppc/inc/rpcdce.h b/public/sdk/rpc16/mppc/inc/rpcdce.h
new file mode 100644
index 000000000..099457ea4
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpcdce.h
@@ -0,0 +1,1618 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdce.h
+
+Abstract:
+
+ This module contains the DCE RPC runtime APIs.
+
+--*/
+
+#ifndef __RPCDCE_H__
+#define __RPCDCE_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define IN
+#define OUT
+#define OPTIONAL
+
+/*typedef char small;*/
+/*typedef unsigned char byte;*/
+/*typedef unsigned char boolean;*/
+
+typedef I_RPC_HANDLE RPC_BINDING_HANDLE;
+typedef RPC_BINDING_HANDLE handle_t;
+#define rpc_binding_handle_t RPC_BINDING_HANDLE
+
+#ifndef GUID_DEFINED
+#define GUID_DEFINED
+typedef struct _GUID
+{
+ unsigned long Data1;
+ unsigned short Data2;
+ unsigned short Data3;
+ unsigned char Data4[8];
+} GUID;
+#endif /* GUID_DEFINED */
+
+#ifndef UUID_DEFINED
+#define UUID_DEFINED
+typedef GUID UUID;
+#ifndef uuid_t
+#define uuid_t UUID
+#endif
+#endif
+
+typedef struct _RPC_BINDING_VECTOR
+{
+ unsigned long Count;
+ RPC_BINDING_HANDLE BindingH[1];
+} RPC_BINDING_VECTOR;
+#ifndef rpc_binding_vector_t
+#define rpc_binding_vector_t RPC_BINDING_VECTOR
+#endif
+
+typedef struct _UUID_VECTOR
+{
+ unsigned long Count;
+ UUID *Uuid[1];
+} UUID_VECTOR;
+#ifndef uuid_vector_t
+#define uuid_vector_t UUID_VECTOR
+#endif
+
+typedef void __RPC_FAR * RPC_IF_HANDLE;
+
+#ifndef IFID_DEFINED
+#define IFID_DEFINED
+typedef struct _RPC_IF_ID
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_IF_ID;
+#endif
+
+#define RPC_C_BINDING_INFINITE_TIMEOUT 10
+#define RPC_C_BINDING_MIN_TIMEOUT 0
+#define RPC_C_BINDING_DEFAULT_TIMEOUT 5
+#define RPC_C_BINDING_MAX_TIMEOUT 9
+
+#define RPC_C_CANCEL_INFINITE_TIMEOUT -1
+
+#define RPC_C_LISTEN_MAX_CALLS_DEFAULT 1234
+#define RPC_C_PROTSEQ_MAX_REQS_DEFAULT 10
+
+#define RPC_C_BIND_TO_ALL_NICS 1
+#define RPC_C_USE_INTERNET_PORT 1
+#define RPC_C_USE_INTRANET_PORT 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+typedef struct _RPC_PROTSEQ_VECTORA
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORA;
+
+typedef struct _RPC_PROTSEQ_VECTORW
+{
+ unsigned int Count;
+ unsigned short __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORW;
+
+#ifdef UNICODE
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORW
+#else /* UNICODE */
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+typedef struct _RPC_PROTSEQ_VECTOR
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTOR;
+
+#endif /* RPC_UNICODE_SUPPORTED */
+typedef struct _RPC_POLICY {
+ unsigned int Length ;
+ unsigned long EndpointFlags ;
+ unsigned long NICFlags ;
+ } RPC_POLICY, __RPC_FAR *PRPC_POLICY ;
+
+typedef void __RPC_USER
+RPC_OBJECT_INQ_FN (
+ IN UUID __RPC_FAR * ObjectUuid,
+ OUT UUID __RPC_FAR * TypeUuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+typedef RPC_STATUS
+RPC_IF_CALLBACK_FN (
+ IN RPC_IF_HANDLE InterfaceUuid,
+ IN void *Context
+ ) ;
+
+#define RPC_MGR_EPV void
+
+typedef struct
+{
+ unsigned int Count;
+ unsigned long Stats[1];
+} RPC_STATS_VECTOR;
+
+#define RPC_C_STATS_CALLS_IN 0
+#define RPC_C_STATS_CALLS_OUT 1
+#define RPC_C_STATS_PKTS_IN 2
+#define RPC_C_STATS_PKTS_OUT 3
+
+typedef struct
+{
+ unsigned long Count;
+ RPC_IF_ID __RPC_FAR * IfId[1];
+} RPC_IF_ID_VECTOR;
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingFree (
+ IN OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingW
+#else /* UNICODE */
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBinding (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingInqObject (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingReset (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* RpcBindingServerFromClient : UNSUPPORTED */
+/* RpcBindingSetAuthInfo */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingSetObject (
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqDefaultProtectLevel(
+ IN unsigned long AuthnSvc,
+ OUT unsigned long __RPC_FAR *AuthnLevel
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#ifdef UNICODE
+#define RpcBindingToStringBinding RpcBindingToStringBindingW
+#else /* UNICODE */
+#define RpcBindingToStringBinding RpcBindingToStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingVectorFree (
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeA (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeW (
+ IN unsigned short __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned short __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned short __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned short __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned short __RPC_FAR * Options OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingCompose RpcStringBindingComposeW
+#else /* UNICODE */
+#define RpcStringBindingCompose RpcStringBindingComposeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingCompose (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingParse RpcStringBindingParseW
+#else /* UNICODE */
+#define RpcStringBindingParse RpcStringBindingParseA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParse (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeA (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeW (
+ IN OUT unsigned short __RPC_FAR * __RPC_FAR * String
+ );
+
+#ifdef UNICODE
+#define RpcStringFree RpcStringFreeW
+#else /* UNICODE */
+#define RpcStringFree RpcStringFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringFree (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcIfInqId (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_IF_ID __RPC_FAR * RpcIfId
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidA (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidW (
+ IN unsigned short __RPC_FAR * Protseq
+ );
+
+#ifdef UNICODE
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidW
+#else /* UNICODE */
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValid (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned int Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetCancelTimeout(
+ long Timeout
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsA (
+ OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsW (
+ OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsW
+#else /* UNICODE */
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqs (
+ OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectInqType (
+ IN UUID __RPC_FAR * ObjUuid,
+ OUT UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetInqFn (
+ IN RPC_OBJECT_INQ_FN __RPC_FAR * InquiryFn
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetType (
+ IN UUID __RPC_FAR * ObjUuid,
+ IN UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeA (
+ IN OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeW (
+ IN OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcProtseqVectorFree RpcProtseqVectorFreeW
+#else /* UNICODE */
+#define RpcProtseqVectorFree RpcProtseqVectorFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFree (
+ IN OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqBindings (
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ OUT RPC_MGR_EPV __RPC_FAR * __RPC_FAR * MgrEpv
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerListen (
+ IN unsigned int MinimumCallThreads,
+ IN unsigned int MaxCalls,
+ IN unsigned int DontWait
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid OPTIONAL,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIfEx (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv,
+ IN unsigned int Flags,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_CALLBACK_FN __RPC_FAR *IfCallback
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUnregisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ IN unsigned int WaitForCallsToComplete
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqs (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsEx (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIf (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIfEx (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseq RpcServerUseProtseqW
+#define RpcServerUseProtseqEx RpcServerUseProtseqExW
+#else /* UNICODE */
+#define RpcServerUseProtseq RpcServerUseProtseqA
+#define RpcServerUseProtseqEx RpcServerUseProtseqExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseq (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpW
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExW
+#else /* UNICODE */
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpA
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEp (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfW
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExW
+#else /* UNICODE */
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfA
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIf (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStatsVectorFree (
+ IN RPC_STATS_VECTOR ** StatsVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqStats (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_STATS_VECTOR ** Statistics
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtIsServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStopServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtWaitServerListen (
+ void
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetServerStackSize (
+ IN unsigned long ThreadStackSize
+ );
+
+/* server */
+void RPC_ENTRY
+RpcSsDontSerializeContext (
+ void
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtEnableIdleCleanup (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqIfIds (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcIfIdVectorFree (
+ IN OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#ifdef UNICODE
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameW
+#else /* UNICODE */
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameA (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameW (
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#ifdef UNICODE
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameW
+#else /* UNICODE */
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincName (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcEpResolveBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_IF_HANDLE IfSpec
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#ifdef UNICODE
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameW
+#else /* UNICODE */
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef void __RPC_FAR * RPC_AUTH_IDENTITY_HANDLE;
+typedef void __RPC_FAR * RPC_AUTHZ_HANDLE;
+
+#define RPC_C_AUTHN_LEVEL_DEFAULT 0
+#define RPC_C_AUTHN_LEVEL_NONE 1
+#define RPC_C_AUTHN_LEVEL_CONNECT 2
+#define RPC_C_AUTHN_LEVEL_CALL 3
+#define RPC_C_AUTHN_LEVEL_PKT 4
+#define RPC_C_AUTHN_LEVEL_PKT_INTEGRITY 5
+#define RPC_C_AUTHN_LEVEL_PKT_PRIVACY 6
+
+#define RPC_C_IMP_LEVEL_ANONYMOUS 1
+#define RPC_C_IMP_LEVEL_IDENTIFY 2
+#define RPC_C_IMP_LEVEL_IMPERSONATE 3
+#define RPC_C_IMP_LEVEL_DELEGATE 4
+
+#define RPC_C_QOS_IDENTITY_STATIC 0
+#define RPC_C_QOS_IDENTITY_DYNAMIC 1
+
+#define RPC_C_QOS_CAPABILITIES_DEFAULT 0
+#define RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH 1
+
+#define RPC_C_PROTECT_LEVEL_DEFAULT (RPC_C_AUTHN_LEVEL_DEFAULT)
+#define RPC_C_PROTECT_LEVEL_NONE (RPC_C_AUTHN_LEVEL_NONE)
+#define RPC_C_PROTECT_LEVEL_CONNECT (RPC_C_AUTHN_LEVEL_CONNECT)
+#define RPC_C_PROTECT_LEVEL_CALL (RPC_C_AUTHN_LEVEL_CALL)
+#define RPC_C_PROTECT_LEVEL_PKT (RPC_C_AUTHN_LEVEL_PKT)
+#define RPC_C_PROTECT_LEVEL_PKT_INTEGRITY (RPC_C_AUTHN_LEVEL_PKT_INTEGRITY)
+#define RPC_C_PROTECT_LEVEL_PKT_PRIVACY (RPC_C_AUTHN_LEVEL_PKT_PRIVACY)
+
+#define RPC_C_AUTHN_NONE 0
+#define RPC_C_AUTHN_DCE_PRIVATE 1
+#define RPC_C_AUTHN_DCE_PUBLIC 2
+#define RPC_C_AUTHN_DEC_PUBLIC 4
+#define RPC_C_AUTHN_WINNT 10
+#define RPC_C_AUTHN_DEFAULT 0xFFFFFFFFL
+
+#define RPC_C_SECURITY_QOS_VERSION 1L
+
+typedef struct _RPC_SECURITY_QOS {
+ unsigned long Version;
+ unsigned long Capabilities;
+ unsigned long IdentityTracking;
+ unsigned long ImpersonationType;
+} RPC_SECURITY_QOS, *PRPC_SECURITY_QOS;
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+typedef struct _SEC_WINNT_AUTH_IDENTITY
+{
+ char __RPC_FAR *User;
+ char __RPC_FAR *Domain;
+ char __RPC_FAR *Password;
+} SEC_WINNT_AUTH_IDENTITY;
+#else
+
+
+#define SEC_WINNT_AUTH_IDENTITY_ANSI 0x1
+#define SEC_WINNT_AUTH_IDENTITY_UNICODE 0x2
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_W {
+ unsigned short __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned short __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned short __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W;
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_A {
+ unsigned char __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned char __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned char __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A;
+
+
+#ifdef UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_W
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_W
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_W
+#else // UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_A
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_A
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_A
+#endif // UNICODE
+#endif // defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+
+#define RPC_C_AUTHZ_NONE 0
+#define RPC_C_AUTHZ_NAME 1
+#define RPC_C_AUTHZ_DCE 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientA (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientW (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc,
+ IN RPC_SECURITY_QOS *SecurityQos OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc, OPTIONAL
+ IN RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc, OPTIONAL
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL,
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoA (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoW (
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientW
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoW
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoW
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoW
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExW
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExW
+#else /* UNICODE */
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientA
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoA
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoA
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoA
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExA
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClient (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfo (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef struct {
+ unsigned char __RPC_FAR * UserName;
+ unsigned char __RPC_FAR * ComputerName;
+ unsigned short Privilege;
+ unsigned long AuthFlags;
+} RPC_CLIENT_INFORMATION1, __RPC_FAR * PRPC_CLIENT_INFORMATION1;
+
+RPC_STATUS RPC_ENTRY
+RpcBindingServerFromClient (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * ServerBinding
+ );
+
+void RPC_ENTRY
+RpcRaiseException (
+ IN RPC_STATUS exception
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcTestCancel(
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcCancelThread(
+ IN void * Thread
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringA (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringA (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringW (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringW (
+ IN unsigned short __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef UNICODE
+#define UuidFromString UuidFromStringW
+#define UuidToString UuidToStringW
+#else /* UNICODE */
+#define UuidFromString UuidFromStringA
+#define UuidToString UuidToStringA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToString (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromString (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+signed int RPC_ENTRY
+UuidCompare (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+UuidCreateNil (
+ OUT UUID __RPC_FAR * NilUuid
+ );
+
+int RPC_ENTRY
+UuidEqual (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+unsigned short RPC_ENTRY
+UuidHash (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+int RPC_ENTRY
+UuidIsNil (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+#ifdef UNICODE
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceW
+#define RpcEpRegister RpcEpRegisterW
+#else /* UNICODE */
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceA
+#define RpcEpRegister RpcEpRegisterA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplace (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegister (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+
+RPC_STATUS RPC_ENTRY
+RpcEpUnregister(
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextA (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextW (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned short __RPC_FAR * ErrorText
+ );
+
+#ifdef UNICODE
+#define DceErrorInqText DceErrorInqTextW
+#else /* UNICODE */
+#define DceErrorInqText DceErrorInqTextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqText (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#define DCE_C_ERROR_STRING_LEN 256
+
+typedef I_RPC_HANDLE * RPC_EP_INQ_HANDLE;
+
+#define RPC_C_EP_ALL_ELTS 0
+#define RPC_C_EP_MATCH_BY_IF 1
+#define RPC_C_EP_MATCH_BY_OBJ 2
+#define RPC_C_EP_MATCH_BY_BOTH 3
+
+#define RPC_C_VERS_ALL 1
+#define RPC_C_VERS_COMPATIBLE 2
+#define RPC_C_VERS_EXACT 3
+#define RPC_C_VERS_MAJOR_ONLY 4
+#define RPC_C_VERS_UPTO 5
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqBegin (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption OPTIONAL,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqDone (
+ IN OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextA (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextW (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextW
+#else /* UNICODE */
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNext (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpUnregister (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN RPC_IF_ID __RPC_FAR * IfId,
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL
+ );
+
+typedef int
+(__RPC_API * RPC_MGMT_AUTHORIZATION_FN) (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ IN unsigned long RequestedMgmtOperation,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#define RPC_C_MGMT_INQ_IF_IDS 0
+#define RPC_C_MGMT_INQ_PRINC_NAME 1
+#define RPC_C_MGMT_INQ_STATS 2
+#define RPC_C_MGMT_IS_SERVER_LISTEN 3
+#define RPC_C_MGMT_STOP_SERVER_LISTEN 4
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetAuthorizationFn (
+ IN RPC_MGMT_AUTHORIZATION_FN AuthorizationFn
+ );
+
+
+#define RPC_C_PARM_MAX_PACKET_LENGTH 1
+#define RPC_C_PARM_BUFFER_LENGTH 2
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqParameter (
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetParameter (
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingInqParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingSetParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+#define RPC_IF_AUTOLISTEN 0x0001
+#define RPC_IF_OLE 0x0002
+
+#include <rpcdcep.h>
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCDCE_H__ */
diff --git a/public/sdk/rpc16/mppc/inc/rpcdcep.h b/public/sdk/rpc16/mppc/inc/rpcdcep.h
new file mode 100644
index 000000000..85ed0fd67
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpcdcep.h
@@ -0,0 +1,415 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdcep.h
+
+Abstract:
+
+ This module contains the private RPC runtime APIs for use by the
+ stubs and by support libraries. Applications must not call these
+ routines.
+
+--*/
+
+#ifndef __RPCDCEP_H__
+#define __RPCDCEP_H__
+
+// Set the packing level for RPC structures for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _RPC_VERSION {
+ unsigned short MajorVersion;
+ unsigned short MinorVersion;
+} RPC_VERSION;
+
+typedef struct _RPC_SYNTAX_IDENTIFIER {
+ GUID SyntaxGUID;
+ RPC_VERSION SyntaxVersion;
+} RPC_SYNTAX_IDENTIFIER, __RPC_FAR * PRPC_SYNTAX_IDENTIFIER;
+
+typedef struct _RPC_MESSAGE
+{
+ RPC_BINDING_HANDLE Handle;
+ unsigned long DataRepresentation;
+ void __RPC_FAR * Buffer;
+ unsigned int BufferLength;
+ unsigned int ProcNum;
+ PRPC_SYNTAX_IDENTIFIER TransferSyntax;
+ void __RPC_FAR * RpcInterfaceInformation;
+ void __RPC_FAR * ReservedForRuntime;
+ RPC_MGR_EPV __RPC_FAR * ManagerEpv;
+ void __RPC_FAR * ImportContext;
+ unsigned long RpcFlags;
+} RPC_MESSAGE, __RPC_FAR * PRPC_MESSAGE;
+
+
+typedef RPC_STATUS RPC_ENTRY RPC_FORWARD_FUNCTION(
+ IN UUID __RPC_FAR * InterfaceId,
+ IN RPC_VERSION __RPC_FAR * InterfaceVersion,
+ IN UUID __RPC_FAR * ObjectId,
+ IN unsigned char __RPC_FAR * Rpcpro,
+ IN void __RPC_FAR * __RPC_FAR * ppDestEndpoint);
+
+/*
+ * Types of function calls for datagram rpc
+ */
+
+#define RPC_NCA_FLAGS_DEFAULT 0x00000000 /* 0b000...000 */
+#define RPC_NCA_FLAGS_IDEMPOTENT 0x00000001 /* 0b000...001 */
+#define RPC_NCA_FLAGS_BROADCAST 0x00000002 /* 0b000...010 */
+#define RPC_NCA_FLAGS_MAYBE 0x00000004 /* 0b000...100 */
+
+#define RPC_BUFFER_COMPLETE 0x00001000 /* used by pipes */
+#define RPC_BUFFER_PARTIAL 0x00002000 /* used by pipes */
+#define RPC_BUFFER_EXTRA 0x00004000 /* used by pipes */
+
+#define RPCFLG_NON_NDR 0x80000000UL
+#define RPCFLG_ASYNCHRONOUS 0x40000000UL
+#define RPCFLG_INPUT_SYNCHRONOUS 0x20000000UL
+#define RPCFLG_LOCAL_CALL 0x10000000UL
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#define RPC_FLAGS_VALID_BIT 0x8000
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define RPC_FLAGS_VALID_BIT 0x00008000
+#endif
+
+typedef
+void
+(__RPC_STUB __RPC_FAR * RPC_DISPATCH_FUNCTION) (
+ IN OUT PRPC_MESSAGE Message
+ );
+
+typedef struct {
+ unsigned int DispatchTableCount;
+ RPC_DISPATCH_FUNCTION __RPC_FAR * DispatchTable;
+ int Reserved;
+} RPC_DISPATCH_TABLE, __RPC_FAR * PRPC_DISPATCH_TABLE;
+
+typedef struct _RPC_PROTSEQ_ENDPOINT
+{
+ unsigned char __RPC_FAR * RpcProtocolSequence;
+ unsigned char __RPC_FAR * Endpoint;
+} RPC_PROTSEQ_ENDPOINT, __RPC_FAR * PRPC_PROTSEQ_ENDPOINT;
+
+/*
+Both of these types MUST start with the InterfaceId and TransferSyntax.
+Look at RpcIfInqId and I_RpcIfInqTransferSyntaxes to see why.
+*/
+#define NT351_INTERFACE_SIZE 0x40
+#define RPC_INTERFACE_HAS_PIPES 0x0001
+
+typedef struct _RPC_SERVER_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ RPC_MGR_EPV __RPC_FAR *DefaultManagerEpv;
+ void const __RPC_FAR *InterpreterInfo;
+ unsigned int Flags ;
+} RPC_SERVER_INTERFACE, __RPC_FAR * PRPC_SERVER_INTERFACE;
+
+typedef struct _RPC_CLIENT_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ unsigned long Reserved;
+ void const __RPC_FAR * InterpreterInfo;
+ unsigned int Flags ;
+} RPC_CLIENT_INTERFACE, __RPC_FAR * PRPC_CLIENT_INTERFACE;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSendReceive (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSend (
+ IN OUT PRPC_MESSAGE Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReceive (
+ IN OUT PRPC_MESSAGE Message,
+ IN unsigned int Size
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreePipeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReallocPipeBuffer (
+ IN PRPC_MESSAGE Message,
+ IN unsigned int NewSize
+ ) ;
+
+typedef void * I_RPC_MUTEX;
+
+void RPC_ENTRY
+I_RpcRequestMutex (
+ IN OUT I_RPC_MUTEX * Mutex
+ );
+
+void RPC_ENTRY
+I_RpcClearMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void RPC_ENTRY
+I_RpcDeleteMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void __RPC_FAR * RPC_ENTRY
+I_RpcAllocate (
+ IN unsigned int Size
+ );
+
+void RPC_ENTRY
+I_RpcFree (
+ IN void __RPC_FAR * Object
+ );
+
+void RPC_ENTRY
+I_RpcPauseExecution (
+ IN unsigned long Milliseconds
+ );
+
+typedef
+void
+(__RPC_USER __RPC_FAR * PRPC_RUNDOWN) (
+ void __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle,
+ IN PRPC_RUNDOWN RundownRoutine,
+ IN void * Context
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcStopMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle
+ );
+
+RPC_BINDING_HANDLE RPC_ENTRY
+I_RpcGetCurrentCallHandle(
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetAssociationContext (
+ OUT void __RPC_FAR * __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetAssociationContext (
+ IN void __RPC_FAR * AssociationContext
+ );
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+#endif
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#endif
+
+#define TRANSPORT_TYPE_CN 0x1
+#define TRANSPORT_TYPE_DG 0x2
+#define TRANSPORT_TYPE_LPC 0x4
+#define TRANSPORT_TYPE_WMSG 0x8
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqTransportType (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Type
+ );
+
+typedef struct _RPC_TRANSFER_SYNTAX
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_TRANSFER_SYNTAX;
+
+RPC_STATUS RPC_ENTRY
+I_RpcIfInqTransferSyntaxes (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_TRANSFER_SYNTAX __RPC_FAR * TransferSyntaxes,
+ IN unsigned int TransferSyntaxSize,
+ OUT unsigned int __RPC_FAR * TransferSyntaxCount
+ );
+
+RPC_STATUS RPC_ENTRY
+I_UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingIsClientLocal (
+ IN RPC_BINDING_HANDLE BindingHandle OPTIONAL,
+ OUT unsigned int __RPC_FAR * ClientLocalFlag
+ );
+
+void RPC_ENTRY
+I_RpcSsDontSerializeContext (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcLaunchDatagramReceiveThread(
+ void __RPC_FAR * pAddress
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerRegisterForwardFunction (
+ IN RPC_FORWARD_FUNCTION __RPC_FAR * pForwardFunction
+ );
+
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionInqSockBuffSize(
+ OUT unsigned long __RPC_FAR * RecvBuffSize,
+ OUT unsigned long __RPC_FAR * SendBuffSize
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionSetSockBuffSize(
+ IN unsigned long RecvBuffSize,
+ IN unsigned long SendBuffSize
+ );
+
+
+#ifdef MSWMSG
+RPC_STATUS RPC_ENTRY
+I_RpcServerStartListening(
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerStopListening(
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetThreadWindowHandle(
+ OUT HWND *WindowHandle
+ ) ;
+
+typedef RPC_STATUS (*RPC_BLOCKING_FN) (
+ IN void *wnd,
+ IN void *Context,
+ IN HANDLE hSyncEvent
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcAsyncSendReceive(
+ IN OUT PRPC_MESSAGE pRpcMessage,
+ IN OPTIONAL void *Context,
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingSetAsync(
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_BLOCKING_FN BlockingFn
+ ) ;
+
+LONG RPC_ENTRY
+I_RpcWindowProc(
+ IN HWND hWnd,
+ IN UINT Message,
+ IN WPARAM wParam,
+ IN LPARAM lParam
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetWMsgEndpoint (
+ IN WCHAR __RPC_FAR * Endpoint
+ ) ;
+#endif
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerInqTransportType(
+ OUT unsigned int __RPC_FAR * Type
+ ) ;
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __RPCDCEP_H__ */
diff --git a/public/sdk/rpc16/mppc/inc/rpcerr.h b/public/sdk/rpc16/mppc/inc/rpcerr.h
new file mode 100644
index 000000000..139df1b1b
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpcerr.h
@@ -0,0 +1,188 @@
+/*********************************************************/
+/** Microsoft LAN Manager **/
+/** Copyright(c) Microsoft Corp., 1987-1990 **/
+/** **/
+/** Rpc Error Codes from the compiler and runtime **/
+/** **/
+/*********************************************************/
+
+/*
+If you change this file, you must also change ntstatus.mc and winerror.mc
+*/
+
+#ifndef __RPCERR_H__
+#define __RPCERR_H__
+
+#define RPC_S_OK 0
+#define RPC_S_INVALID_ARG 1
+#define RPC_S_INVALID_STRING_BINDING 2
+#define RPC_S_OUT_OF_MEMORY 3
+#define RPC_S_WRONG_KIND_OF_BINDING 4
+#define RPC_S_INVALID_BINDING 5
+#define RPC_S_PROTSEQ_NOT_SUPPORTED 6
+#define RPC_S_INVALID_RPC_PROTSEQ 7
+#define RPC_S_INVALID_STRING_UUID 8
+#define RPC_S_INVALID_ENDPOINT_FORMAT 9
+
+#define RPC_S_INVALID_NET_ADDR 10
+#define RPC_S_INVALID_NAF_ID 11
+#define RPC_S_NO_ENDPOINT_FOUND 12
+#define RPC_S_INVALID_TIMEOUT 13
+#define RPC_S_OBJECT_NOT_FOUND 14
+#define RPC_S_ALREADY_REGISTERED 15
+#define RPC_S_TYPE_ALREADY_REGISTERED 16
+#define RPC_S_ALREADY_LISTENING 17
+#define RPC_S_NO_PROTSEQS_REGISTERED 18
+#define RPC_S_NOT_LISTENING 19
+
+#define RPC_S_OUT_OF_THREADS 20
+#define RPC_S_UNKNOWN_MGR_TYPE 21
+#define RPC_S_UNKNOWN_IF 22
+#define RPC_S_NO_BINDINGS 23
+#define RPC_S_NO_PROTSEQS 24
+#define RPC_S_CANT_CREATE_ENDPOINT 25
+#define RPC_S_OUT_OF_RESOURCES 26
+#define RPC_S_SERVER_UNAVAILABLE 27
+#define RPC_S_SERVER_TOO_BUSY 28
+#define RPC_S_INVALID_NETWORK_OPTIONS 29
+
+#define RPC_S_NO_CALL_ACTIVE 30
+#define RPC_S_INVALID_LEVEL 31
+#define RPC_S_CANNOT_SUPPORT 32
+#define RPC_S_CALL_FAILED 33
+#define RPC_S_CALL_FAILED_DNE 34
+#define RPC_S_PROTOCOL_ERROR 35
+
+// Unused.
+
+// Unused.
+
+#define RPC_S_UNSUPPORTED_TRANS_SYN 38
+#define RPC_S_BUFFER_TOO_SMALL 39
+
+#define RPC_S_NO_CONTEXT_AVAILABLE 40
+#define RPC_S_SERVER_OUT_OF_MEMORY 41
+#define RPC_S_UNSUPPORTED_TYPE 42
+#define RPC_S_ZERO_DIVIDE 43
+#define RPC_S_ADDRESS_ERROR 44
+#define RPC_S_FP_DIV_ZERO 45
+#define RPC_S_FP_UNDERFLOW 46
+#define RPC_S_FP_OVERFLOW 47
+#define RPC_S_INVALID_TAG 48
+#define RPC_S_INVALID_BOUND 49
+
+#define RPC_S_NO_ENTRY_NAME 50
+#define RPC_S_INVALID_NAME_SYNTAX 51
+#define RPC_S_UNSUPPORTED_NAME_SYNTAX 52
+#define RPC_S_UUID_LOCAL_ONLY 53
+#define RPC_S_UUID_NO_ADDRESS 54
+#define RPC_S_DUPLICATE_ENDPOINT 55
+#define RPC_S_INVALID_SECURITY_DESC 56
+#define RPC_S_ACCESS_DENIED 57
+#define RPC_S_UNKNOWN_AUTHN_TYPE 58
+#define RPC_S_MAX_CALLS_TOO_SMALL 59
+
+#define RPC_S_STRING_TOO_LONG 60
+#define RPC_S_PROTSEQ_NOT_FOUND 61
+#define RPC_S_PROCNUM_OUT_OF_RANGE 62
+#define RPC_S_BINDING_HAS_NO_AUTH 63
+#define RPC_S_UNKNOWN_AUTHN_SERVICE 64
+#define RPC_S_UNKNOWN_AUTHN_LEVEL 65
+#define RPC_S_INVALID_AUTH_IDENTITY 66
+#define RPC_S_UNKNOWN_AUTHZ_SERVICE 67
+#define EPT_S_INVALID_ENTRY 68
+#define EPT_S_CANT_PERFORM_OP 69
+
+#define EPT_S_NOT_REGISTERED 70
+#define RPC_S_NOTHING_TO_EXPORT 71
+#define RPC_S_INCOMPLETE_NAME 72
+#define RPC_S_UNIMPLEMENTED_API 73
+#define RPC_S_INVALID_VERS_OPTION 74
+#define RPC_S_NO_MORE_MEMBERS 75
+#define RPC_S_NOT_ALL_OBJS_UNEXPORTED 76
+#define RPC_S_INTERFACE_NOT_FOUND 77
+#define RPC_S_ENTRY_ALREADY_EXISTS 78
+#define RPC_S_ENTRY_NOT_FOUND 79
+
+#define RPC_S_NAME_SERVICE_UNAVAILABLE 80
+#define RPC_S_CALL_IN_PROGRESS 81
+#define RPC_S_NO_MORE_BINDINGS 82
+#define RPC_S_GROUP_MEMBER_NOT_FOUND 83
+#define EPT_S_CANT_CREATE 84
+#define RPC_S_INVALID_OBJECT 85
+#define RPC_S_CALL_CANCELLED 86
+#define RPC_S_BINDING_INCOMPLETE 87
+#define RPC_S_COMM_FAILURE 88
+#define RPC_S_UNSUPPORTED_AUTHN_LEVEL 89
+
+#define RPC_S_NO_PRINC_NAME 90
+#define RPC_S_NOT_RPC_ERROR 91
+#define RPC_S_SEC_PKG_ERROR 92
+#define RPC_S_NOT_CANCELLED 93
+#define RPC_S_SEND_INCOMPLETE 94
+
+
+#define RPC_S_INTERNAL_ERROR 100
+
+/* The list of servers available for auto_handle binding has been exhausted. */
+
+#define RPC_X_NO_MORE_ENTRIES 256
+
+/* Insufficient memory available to set up necessary data structures. */
+
+#define RPC_X_NO_MEMORY 257
+
+/* The specified bounds of an array are inconsistent. */
+
+#define RPC_X_INVALID_BOUND 258
+
+/* The discriminant value does not match any of the case values. */
+/* There is no default case. */
+
+#define RPC_X_INVALID_TAG 259
+
+/* The file designated by DCERPCCHARTRANS cannot be opened. */
+
+#define RPC_X_SS_CHAR_TRANS_OPEN_FAIL 260
+
+/* The file containing char translation table has fewer than 512 bytes. */
+
+#define RPC_X_SS_CHAR_TRANS_SHORT_FILE 261
+
+/* A null context handle is passed in an [in] parameter position. */
+
+#define RPC_X_SS_IN_NULL_CONTEXT 262
+
+/* Only raised on the callee side. */
+/* A uuid in an [in] handle does not correspond to any known context. */
+
+#define RPC_X_SS_CONTEXT_MISMATCH 263
+
+/* Only raised on the caller side. */
+/* A uuid in an [in, out] context handle changed during a call. */
+
+#define RPC_X_SS_CONTEXT_DAMAGED 264
+
+#define RPC_X_SS_HANDLES_MISMATCH 265
+
+#define RPC_X_SS_CANNOT_GET_CALL_HANDLE 266
+
+#define RPC_X_NULL_REF_POINTER 267
+
+#define RPC_X_ENUM_VALUE_OUT_OF_RANGE 268
+
+#define RPC_X_BYTE_COUNT_TOO_SMALL 269
+
+#define RPC_X_BAD_STUB_DATA 270
+
+#define RPC_X_INVALID_ES_ACTION 271
+#define RPC_X_WRONG_ES_VERSION 272
+#define RPC_X_WRONG_STUB_VERSION 273
+#define RPC_X_INVALID_BUFFER 274
+#define RPC_X_INVALID_PIPE_OBJECT 275
+#define RPC_X_INVALID_PIPE_OPERATION 276
+#define RPC_X_WRONG_PIPE_VERSION 277
+
+
+#endif /* __RPCERR_H__ */
+
diff --git a/public/sdk/rpc16/mppc/inc/rpcmac.h b/public/sdk/rpc16/mppc/inc/rpcmac.h
new file mode 100644
index 000000000..b5d59d39b
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpcmac.h
@@ -0,0 +1,121 @@
+/*++
+
+Copyright (c) 1994 Microsoft Corporation
+
+Module Name:
+
+ RpcMac.h
+
+Abstract:
+
+ Macintosh RPC specific exception handler macros.
+
+Author:
+
+ Mario Goertzel [mariogo] 02-Nov-1994
+
+--*/
+
+#ifndef __RPCMAC_H__
+#define __RPCMAC_H__
+
+typedef struct _ExceptionBuff {
+#if _MSC_VER >= 1000
+ jmp_buf registers;
+#else
+ int registers[RPCXCWORD];
+#endif
+ struct _ExceptionBuff __RPC_FAR *pExceptNext;
+} ExceptionBuff, __RPC_FAR *pExceptionBuff;
+
+void RPC_ENTRY RpcSetException(pExceptionBuff);
+void RPC_ENTRY RpcLeaveException(void);
+
+#ifdef _MPPC_
+int __cdecl RpcSetJmp(jmp_buf);
+#else
+#define BLD_RT
+#endif
+
+#ifdef BLD_RT
+#define RpcTryExcept \
+ { \
+ int _exception_code; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _exception_code = (setjmp(exception.registers)); \
+ \
+ if (!_exception_code) \
+ {
+#else
+#define RpcTryExcept \
+ { \
+ int _exception_code; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _exception_code = (RpcSetJmp(exception.registers)); \
+ \
+ if (!_exception_code) \
+ {
+#endif
+
+// trystmts
+
+#define RpcExcept(expr) \
+ RpcLeaveException(); \
+ } \
+ else \
+ { \
+ if (!(expr)) \
+ RpcRaiseException(_exception_code);
+
+// exceptstmts
+
+#define RpcEndExcept \
+ } \
+ }
+
+#ifdef BLD_RT
+#define RpcTryFinally \
+ { \
+ int _abnormal_termination; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _abnormal_termination = (setjmp(exception.registers)); \
+ \
+ if (!_abnormal_termination) \
+ {
+#else
+#define RpcTryFinally \
+ { \
+ int _abnormal_termination; \
+ ExceptionBuff exception; \
+ RpcSetException(&exception); \
+ \
+ _abnormal_termination = (RpcSetJmp(exception.registers)); \
+ \
+ if (!_abnormal_termination) \
+ {
+#endif
+
+// trystmts
+
+#define RpcFinally \
+ RpcLeaveException(); \
+ }
+
+// finallystmts
+
+#define RpcEndFinally \
+ if (_abnormal_termination) \
+ RpcRaiseException(_abnormal_termination); \
+ }
+
+#define RpcExceptionCode() _exception_code
+#define RpcAbnormalTermination() _abnormal_termination
+
+#endif // __RPCMAC_H__
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/mppc/inc/rpcndr.h b/public/sdk/rpc16/mppc/inc/rpcndr.h
new file mode 100644
index 000000000..65d1cdbfe
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpcndr.h
@@ -0,0 +1,2630 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcndr.h
+
+Abstract:
+
+ Definitions for stub data structures and prototypes of helper functions.
+
+Author:
+
+ DonnaLi (01-01-91)
+
+Environment:
+
+ DOS, Win 3.X, and Win/NT.
+
+Revision History:
+
+ DONNALI 08-29-91 Start recording history
+ donnali 09-11-91 change conversion macros
+ donnali 09-18-91 check in files for moving
+ STEVEZ 10-15-91 Merge with NT tree
+ donnali 10-28-91 add prototype
+ donnali 11-19-91 bugfix for strings
+ MIKEMON 12-17-91 DCE runtime API conversion
+ donnali 03-24-92 change rpc public header f
+ STEVEZ 04-04-92 add nsi include
+ mikemon 04-18-92 security support and misc
+ DovhH 04-24-24 Changed signature of <int>_from_ndr
+ (to unsigned <int>)
+ Added <base_type>_array_from_ndr routines
+ RyszardK 06-17-93 Added support for hyper
+ VibhasC 09-11-93 Created rpcndrn.h
+ DKays 10-14-93 Fixed up rpcndrn.h MIDL 2.0
+ RyszardK 01-15-94 Merged in the midl 2.0 changes from rpcndrn.h
+ Stevebl 04-22-96 Hookole support changes to MIDL_*_INFO
+
+--*/
+
+#ifndef __RPCNDR_H__
+#define __RPCNDR_H__
+
+//
+// Set the packing level for RPC structures for Dos, Windows and Mac.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack(2)
+#endif
+
+#if defined(__RPC_MAC__)
+#define _MAC_
+#endif
+
+#include <rpcnsip.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/****************************************************************************
+
+ Network Computing Architecture (NCA) definition:
+
+ Network Data Representation: (NDR) Label format:
+ An unsigned long (32 bits) with the following layout:
+
+ 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
+ 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
+ +---------------+---------------+---------------+-------+-------+
+ | Reserved | Reserved |Floating point | Int | Char |
+ | | |Representation | Rep. | Rep. |
+ +---------------+---------------+---------------+-------+-------+
+
+ Where
+
+ Reserved:
+
+ Must be zero (0) for NCA 1.5 and NCA 2.0.
+
+ Floating point Representation is:
+
+ 0 - IEEE
+ 1 - VAX
+ 2 - Cray
+ 3 - IBM
+
+ Int Rep. is Integer Representation:
+
+ 0 - Big Endian
+ 1 - Little Endian
+
+ Char Rep. is Character Representation:
+
+ 0 - ASCII
+ 1 - EBCDIC
+
+ The Microsoft Local Data Representation (for all platforms which are
+ of interest currently is edefined below:
+
+ ****************************************************************************/
+
+#define NDR_CHAR_REP_MASK (unsigned long)0X0000000FL
+#define NDR_INT_REP_MASK (unsigned long)0X000000F0L
+#define NDR_FLOAT_REP_MASK (unsigned long)0X0000FF00L
+
+#define NDR_LITTLE_ENDIAN (unsigned long)0X00000010L
+#define NDR_BIG_ENDIAN (unsigned long)0X00000000L
+
+#define NDR_IEEE_FLOAT (unsigned long)0X00000000L
+#define NDR_VAX_FLOAT (unsigned long)0X00000100L
+
+#define NDR_ASCII_CHAR (unsigned long)0X00000000L
+#define NDR_EBCDIC_CHAR (unsigned long)0X00000001L
+
+#if defined(__RPC_MAC__)
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000000L
+#define NDR_LOCAL_ENDIAN NDR_BIG_ENDIAN
+#else
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000010L
+#define NDR_LOCAL_ENDIAN NDR_LITTLE_ENDIAN
+#endif
+
+
+/****************************************************************************
+ * Macros for targeted platforms
+ ****************************************************************************/
+
+#if (defined(_WIN32_DCOM) || 0x400 <= _WIN32_WINNT)
+#define TARGET_IS_NT40_OR_LATER 1
+#else
+#define TARGET_IS_NT40_OR_LATER 0
+#endif
+
+#if (0x400 <= WINVER)
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 1
+#else
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 0
+#endif
+
+/****************************************************************************
+ * Other MIDL base types / predefined types:
+ ****************************************************************************/
+
+#define small char
+typedef unsigned char byte;
+typedef unsigned char boolean;
+
+#ifndef _HYPER_DEFINED
+#define _HYPER_DEFINED
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__) && (!defined(_M_IX86) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64))
+#define hyper __int64
+#define MIDL_uhyper unsigned __int64
+#else
+typedef double hyper;
+typedef double MIDL_uhyper;
+#endif
+
+#endif // _HYPER_DEFINED
+
+#ifndef _WCHAR_T_DEFINED
+typedef unsigned short wchar_t;
+#define _WCHAR_T_DEFINED
+#endif
+
+#ifndef _SIZE_T_DEFINED
+typedef unsigned int size_t;
+#define _SIZE_T_DEFINED
+#endif
+
+#ifdef __RPC_DOS__
+#define __RPC_CALLEE __far __pascal
+#endif
+
+#ifdef __RPC_WIN16__
+#define __RPC_CALLEE __far __pascal __export
+#endif
+
+#ifdef __RPC_WIN32__
+#if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
+#define __RPC_CALLEE __stdcall
+#else
+#define __RPC_CALLEE
+#endif
+#endif
+
+#ifdef __RPC_MAC__
+#define __RPC_CALLEE __far
+#endif
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
+void __RPC_USER MIDL_user_free( void __RPC_FAR * );
+
+#ifdef __RPC_WIN16__
+#define RPC_VAR_ENTRY __export __cdecl
+#else
+#define RPC_VAR_ENTRY __cdecl
+#endif
+
+
+/* winnt only */
+#if defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA)
+#define __MIDL_DECLSPEC_DLLIMPORT __declspec(dllimport)
+#define __MIDL_DECLSPEC_DLLEXPORT __declspec(dllexport)
+#else
+#define __MIDL_DECLSPEC_DLLIMPORT
+#define __MIDL_DECLSPEC_DLLEXPORT
+#endif
+
+
+
+
+/****************************************************************************
+ * Context handle management related definitions:
+ *
+ * Client and Server Contexts.
+ *
+ ****************************************************************************/
+
+typedef void __RPC_FAR * NDR_CCONTEXT;
+
+typedef struct
+ {
+ void __RPC_FAR * pad[2];
+ void __RPC_FAR * userContext;
+ } __RPC_FAR * NDR_SCONTEXT;
+
+#define NDRSContextValue(hContext) (&(hContext)->userContext)
+
+#define cbNDRContext 20 /* size of context on WIRE */
+
+typedef void (__RPC_USER __RPC_FAR * NDR_RUNDOWN)(void __RPC_FAR * context);
+
+typedef struct _SCONTEXT_QUEUE {
+ unsigned long NumberOfObjects;
+ NDR_SCONTEXT * ArrayOfObjects;
+ } SCONTEXT_QUEUE, __RPC_FAR * PSCONTEXT_QUEUE;
+
+RPC_BINDING_HANDLE RPC_ENTRY
+NDRCContextBinding (
+ IN NDR_CCONTEXT CContext
+ );
+
+void RPC_ENTRY
+NDRCContextMarshall (
+ IN NDR_CCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff
+ );
+
+void RPC_ENTRY
+NDRCContextUnmarshall (
+ OUT NDR_CCONTEXT __RPC_FAR *pCContext,
+ IN RPC_BINDING_HANDLE hBinding,
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+NDRSContextMarshall (
+ IN NDR_SCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff,
+ IN NDR_RUNDOWN userRunDownIn
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NDRSContextUnmarshall (
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+RpcSsDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+
+/****************************************************************************
+ NDR conversion related definitions.
+ ****************************************************************************/
+
+#define byte_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define byte_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define boolean_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define boolean_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define small_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define small_from_ndr_temp(source, target, format) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)(source))++; \
+ }
+
+#define small_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+/****************************************************************************
+ Platform specific mapping of c-runtime functions.
+ ****************************************************************************/
+
+#ifdef __RPC_DOS__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#ifdef __RPC_WIN16__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define MIDL_ascii_strlen(string) \
+ strlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ strcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ memset(s,c,n)
+#endif
+
+/****************************************************************************
+ Ndr Library helper function prototypes for MIDL 1.0 ndr functions.
+ ****************************************************************************/
+
+void RPC_ENTRY
+NDRcopy (
+ IN void __RPC_FAR *pTarget,
+ IN void __RPC_FAR *pSource,
+ IN unsigned int size
+ );
+
+size_t RPC_ENTRY
+MIDL_wchar_strlen (
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+MIDL_wchar_strcpy (
+ OUT void __RPC_FAR * t,
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+char_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+char_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned short __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+short_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned short __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned short __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+long_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned long __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+long_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned long __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+long_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned long __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+enum_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned int __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT hyper __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+hyper_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT hyper __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT hyper __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+data_from_ndr (
+ PRPC_MESSAGE source,
+ void __RPC_FAR * target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_peek_ndr (
+ PRPC_MESSAGE source,
+ unsigned char __RPC_FAR * __RPC_FAR * buffer,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void __RPC_FAR * RPC_ENTRY
+midl_allocate (
+ size_t size
+ );
+
+/****************************************************************************
+ MIDL 2.0 ndr definitions.
+ ****************************************************************************/
+
+typedef unsigned long error_status_t;
+
+#define _midl_ma1( p, cast ) *(*( cast **)&p)++
+#define _midl_ma2( p, cast ) *(*( cast **)&p)++
+#define _midl_ma4( p, cast ) *(*( cast **)&p)++
+#define _midl_ma8( p, cast ) *(*( cast **)&p)++
+
+#define _midl_unma1( p, cast ) *(( cast *)p)++
+#define _midl_unma2( p, cast ) *(( cast *)p)++
+#define _midl_unma3( p, cast ) *(( cast *)p)++
+#define _midl_unma4( p, cast ) *(( cast *)p)++
+
+// Some alignment specific macros.
+
+
+#define _midl_fa2( p ) (p = (RPC_BUFPTR )((unsigned long)(p+1) & 0xfffffffe))
+#define _midl_fa4( p ) (p = (RPC_BUFPTR )((unsigned long)(p+3) & 0xfffffffc))
+#define _midl_fa8( p ) (p = (RPC_BUFPTR )((unsigned long)(p+7) & 0xfffffff8))
+
+#define _midl_addp( p, n ) (p += n)
+
+// Marshalling macros
+
+#define _midl_marsh_lhs( p, cast ) *(*( cast **)&p)++
+#define _midl_marsh_up( mp, p ) *(*(unsigned long **)&mp)++ = (unsigned long)p
+#define _midl_advmp( mp ) *(*(unsigned long **)&mp)++
+#define _midl_unmarsh_up( p ) (*(*(unsigned long **)&p)++)
+
+
+////////////////////////////////////////////////////////////////////////////
+// Ndr macros.
+////////////////////////////////////////////////////////////////////////////
+
+#define NdrMarshConfStringHdr( p, s, l ) (_midl_ma4( p, unsigned long) = s, \
+ _midl_ma4( p, unsigned long) = 0, \
+ _midl_ma4( p, unsigned long) = l)
+
+#define NdrUnMarshConfStringHdr(p, s, l) ((s=_midl_unma4(p,unsigned long),\
+ (_midl_addp(p,4)), \
+ (l=_midl_unma4(p,unsigned long))
+
+#define NdrMarshCCtxtHdl(pc,p) (NDRCContextMarshall( (NDR_CCONTEXT)pc, p ),p+20)
+
+#define NdrUnMarshCCtxtHdl(pc,p,h,drep) \
+ (NDRCContextUnmarshall((NDR_CONTEXT)pc,h,p,drep), p+20)
+
+#define NdrUnMarshSCtxtHdl(pc, p,drep) (pc = NdrSContextUnMarshall(p,drep ))
+
+
+#define NdrMarshSCtxtHdl(pc,p,rd) (NdrSContextMarshall((NDR_SCONTEXT)pc,p, (NDR_RUNDOWN)rd)
+
+#define NdrFieldOffset(s,f) (long)(& (((s __RPC_FAR *)0)->f))
+#define NdrFieldPad(s,f,p,t) (NdrFieldOffset(s,f) - NdrFieldOffset(s,p) - sizeof(t))
+
+#if defined(__RPC_MAC__)
+#define NdrFcShort(s) (unsigned char)(s >> 8), (unsigned char)(s & 0xff)
+#define NdrFcLong(s) (unsigned char)(s >> 24), (unsigned char)((s & 0x00ff0000) >> 16), \
+ (unsigned char)((s & 0x0000ff00) >> 8), (unsigned char)(s & 0xff)
+#else
+#define NdrFcShort(s) (unsigned char)(s & 0xff), (unsigned char)(s >> 8)
+#define NdrFcLong(s) (unsigned char)(s & 0xff), (unsigned char)((s & 0x0000ff00) >> 8), \
+ (unsigned char)((s & 0x00ff0000) >> 16), (unsigned char)(s >> 24)
+#endif // Mac
+
+//
+// On the server side, the following exceptions are mapped to
+// the bad stub data exception if -error stub_data is used.
+//
+
+#define RPC_BAD_STUB_DATA_EXCEPTION_FILTER \
+ ( (RpcExceptionCode() == STATUS_ACCESS_VIOLATION) || \
+ (RpcExceptionCode() == STATUS_DATATYPE_MISALIGNMENT) || \
+ (RpcExceptionCode() == RPC_X_BAD_STUB_DATA) )
+
+/////////////////////////////////////////////////////////////////////////////
+// Some stub helper functions.
+/////////////////////////////////////////////////////////////////////////////
+
+////////////////////////////////////////////////////////////////////////////
+// Stub helper structures.
+////////////////////////////////////////////////////////////////////////////
+
+struct _MIDL_STUB_MESSAGE;
+struct _MIDL_STUB_DESC;
+struct _FULL_PTR_XLAT_TABLES;
+
+typedef unsigned char __RPC_FAR * RPC_BUFPTR;
+typedef unsigned long RPC_LENGTH;
+
+// Expression evaluation callback routine prototype.
+typedef void (__RPC_USER __RPC_FAR * EXPR_EVAL)( struct _MIDL_STUB_MESSAGE __RPC_FAR * );
+
+typedef const unsigned char __RPC_FAR * PFORMAT_STRING;
+
+/*
+ * Multidimensional conformant/varying array struct.
+ */
+typedef struct
+ {
+ long Dimension;
+
+ /* These fields MUST be (unsigned long *) */
+ unsigned long __RPC_FAR * BufferConformanceMark;
+ unsigned long __RPC_FAR * BufferVarianceMark;
+
+ /* Count arrays, used for top level arrays in -Os stubs */
+ unsigned long __RPC_FAR * MaxCountArray;
+ unsigned long __RPC_FAR * OffsetArray;
+ unsigned long __RPC_FAR * ActualCountArray;
+ } ARRAY_INFO, __RPC_FAR *PARRAY_INFO;
+
+/*
+ * Pipe related definitions.
+ */
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PULL_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PUSH_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_ALLOC_RTN)(
+ char __RPC_FAR * state,
+ unsigned long bsize,
+ void __RPC_FAR * __RPC_FAR * buf,
+ unsigned long __RPC_FAR * bcount );
+
+
+typedef struct _GENERIC_PIPE_TYPE
+ {
+ NDR_PIPE_PULL_RTN pfnPull;
+ NDR_PIPE_PUSH_RTN pfnPush;
+ NDR_PIPE_ALLOC_RTN pfnAlloc;
+ char __RPC_FAR * pState;
+ } GENERIC_PIPE_TYPE;
+
+
+typedef struct {
+ int CurrentState;
+ int ElemsInChunk;
+ int ElemAlign;
+ int ElemWireSize;
+ int ElemMemSize;
+ int PartialBufferSize;
+ unsigned char __RPC_FAR * PartialElem;
+ int PartialElemSize;
+ int PartialOffset;
+ int EndOfPipe;
+ } NDR_PIPE_STATE;
+
+typedef struct _PIPE_MESSAGE
+ {
+ unsigned short Signature;
+ unsigned short PipeId;
+ GENERIC_PIPE_TYPE __RPC_FAR * pPipeType;
+ PFORMAT_STRING pTypeFormat;
+ unsigned short PipeStatus;
+ unsigned short PipeFlags;
+ struct _MIDL_STUB_MESSAGE __RPC_FAR * pStubMsg;
+ } NDR_PIPE_MESSAGE, __RPC_FAR * PNDR_PIPE_MESSAGE;
+
+typedef struct _NDR_PIPE_DESC
+ {
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg;
+ short CurrentPipe;
+ short InPipes;
+ short OutPipes;
+ short TotalPipes;
+ short PipeVersion;
+ short Flags;
+ unsigned char __RPC_FAR * DispatchBuffer;
+ unsigned char __RPC_FAR * LastPartialBuffer;
+ unsigned long LastPartialSize;
+ unsigned char __RPC_FAR * BufferSave;
+ unsigned long LengthSave;
+ NDR_PIPE_STATE RuntimeState;
+ } NDR_PIPE_DESC, __RPC_FAR * PNDR_PIPE_DESC;
+
+
+/*
+ * MIDL Stub Message
+ */
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <pshpack4.h>
+#endif
+
+typedef struct _MIDL_STUB_MESSAGE
+ {
+ /* RPC message structure. */
+ PRPC_MESSAGE RpcMsg;
+
+ /* Pointer into RPC message buffer. */
+ unsigned char __RPC_FAR * Buffer;
+
+ /*
+ * These are used internally by the Ndr routines to mark the beginning
+ * and end of an incoming RPC buffer.
+ */
+ unsigned char __RPC_FAR * BufferStart;
+ unsigned char __RPC_FAR * BufferEnd;
+
+ /*
+ * Used internally by the Ndr routines as a place holder in the buffer.
+ * On the marshalling side it's used to mark the location where conformance
+ * size should be marshalled.
+ * On the unmarshalling side it's used to mark the location in the buffer
+ * used during pointer unmarshalling to base pointer offsets off of.
+ */
+ unsigned char __RPC_FAR * BufferMark;
+
+ /* Set by the buffer sizing routines. */
+ unsigned long BufferLength;
+
+ /* Set by the memory sizing routines. */
+ unsigned long MemorySize;
+
+ /* Pointer to user memory. */
+ unsigned char __RPC_FAR * Memory;
+
+ /* Is the Ndr routine begin called from a client side stub. */
+ int IsClient;
+
+ /* Can the buffer be re-used for memory on unmarshalling. */
+ int ReuseBuffer;
+
+ /* Holds the current pointer to an allocate all nodes memory block. */
+ unsigned char __RPC_FAR * AllocAllNodesMemory;
+
+ /* Used for debugging asserts only, remove later. */
+ unsigned char __RPC_FAR * AllocAllNodesMemoryEnd;
+
+ /*
+ * Stuff needed while handling complex structures
+ */
+
+ /* Ignore imbeded pointers while computing buffer or memory sizes. */
+ int IgnoreEmbeddedPointers;
+
+ /*
+ * This marks the location in the buffer where pointees of a complex
+ * struct reside.
+ */
+ unsigned char __RPC_FAR * PointerBufferMark;
+
+ /*
+ * Used to catch errors in SendReceive.
+ */
+ unsigned char fBufferValid;
+
+ /*
+ * Obsolete unused field (formerly MaxContextHandleNumber).
+ */
+ unsigned char Unused;
+
+ /*
+ * Used internally by the Ndr routines. Holds the max counts for
+ * a conformant array.
+ */
+ unsigned long MaxCount;
+
+ /*
+ * Used internally by the Ndr routines. Holds the offsets for a varying
+ * array.
+ */
+ unsigned long Offset;
+
+ /*
+ * Used internally by the Ndr routines. Holds the actual counts for
+ * a varying array.
+ */
+ unsigned long ActualCount;
+
+ /* Allocation and Free routine to be used by the Ndr routines. */
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ /*
+ * Top of parameter stack. Used for "single call" stubs during marshalling
+ * to hold the beginning of the parameter list on the stack. Needed to
+ * extract parameters which hold attribute values for top level arrays and
+ * pointers.
+ */
+ unsigned char __RPC_FAR * StackTop;
+
+ /*
+ * Fields used for the transmit_as and represent_as objects.
+ * For represent_as the mapping is: presented=local, transmit=named.
+ */
+ unsigned char __RPC_FAR * pPresentedType;
+ unsigned char __RPC_FAR * pTransmitType;
+
+ /*
+ * When we first construct a binding on the client side, stick it
+ * in the rpcmessage and later call RpcGetBuffer, the handle field
+ * in the rpcmessage is changed. That's fine except that we need to
+ * have that original handle for use in unmarshalling context handles
+ * (the second argument in NDRCContextUnmarshall to be exact). So
+ * stash the contructed handle here and extract it when needed.
+ */
+ handle_t SavedHandle;
+
+ /*
+ * Pointer back to the stub descriptor. Use this to get all handle info.
+ */
+ const struct _MIDL_STUB_DESC __RPC_FAR * StubDesc;
+
+ /*
+ * Full pointer stuff.
+ */
+ struct _FULL_PTR_XLAT_TABLES __RPC_FAR * FullPtrXlatTables;
+
+ unsigned long FullPtrRefId;
+
+ /*
+ * flags
+ */
+
+ int fCheckBounds;
+
+ int fInDontFree :1;
+ int fDontCallFreeInst :1;
+ int fInOnlyParam :1;
+ int fHasReturn :1;
+
+ unsigned long dwDestContext;
+ void __RPC_FAR * pvDestContext;
+
+ NDR_SCONTEXT * SavedContextHandles;
+
+ long ParamNumber;
+
+ struct IRpcChannelBuffer __RPC_FAR * pRpcChannelBuffer;
+
+ PARRAY_INFO pArrayInfo;
+
+ /*
+ * This is where the Beta2 stub message ends.
+ */
+
+ unsigned long __RPC_FAR * SizePtrCountArray;
+ unsigned long __RPC_FAR * SizePtrOffsetArray;
+ unsigned long __RPC_FAR * SizePtrLengthArray;
+
+ /*
+ * Interpreter argument queue. Used on server side only.
+ */
+ void __RPC_FAR * pArgQueue;
+
+ unsigned long dwStubPhase;
+
+ /*
+ * Pipe descriptor, defined for the 4.0 release.
+ */
+
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc;
+
+ unsigned long Reserved[4];
+
+ /*
+ * Fields up to this point present since the 3.50 release.
+ */
+
+ } MIDL_STUB_MESSAGE, __RPC_FAR *PMIDL_STUB_MESSAGE;
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <poppack.h>
+#endif
+
+/*
+ * Generic handle bind/unbind routine pair.
+ */
+typedef void __RPC_FAR *
+ (__RPC_FAR __RPC_API * GENERIC_BINDING_ROUTINE)
+ (void __RPC_FAR *);
+typedef void
+ (__RPC_FAR __RPC_API * GENERIC_UNBIND_ROUTINE)
+ (void __RPC_FAR *, unsigned char __RPC_FAR *);
+
+typedef struct _GENERIC_BINDING_ROUTINE_PAIR
+ {
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_ROUTINE_PAIR, __RPC_FAR *PGENERIC_BINDING_ROUTINE_PAIR;
+
+typedef struct __GENERIC_BINDING_INFO
+ {
+ void __RPC_FAR * pObj;
+ unsigned int Size;
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_INFO, __RPC_FAR *PGENERIC_BINDING_INFO;
+
+// typedef EXPR_EVAL - see above
+// typedefs for xmit_as
+
+#if (defined(_MSC_VER)) && !defined(MIDL_PASS)
+// a Microsoft C++ compiler
+#define NDR_SHAREABLE __inline
+#else
+#define NDR_SHAREABLE static
+#endif
+
+
+typedef void (__RPC_FAR __RPC_USER * XMIT_HELPER_ROUTINE)
+ ( PMIDL_STUB_MESSAGE );
+
+typedef struct _XMIT_ROUTINE_QUINTUPLE
+ {
+ XMIT_HELPER_ROUTINE pfnTranslateToXmit;
+ XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
+ XMIT_HELPER_ROUTINE pfnFreeXmit;
+ XMIT_HELPER_ROUTINE pfnFreeInst;
+ } XMIT_ROUTINE_QUINTUPLE, __RPC_FAR *PXMIT_ROUTINE_QUINTUPLE;
+
+typedef unsigned long
+(__RPC_FAR __RPC_USER * USER_MARSHAL_SIZING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned long,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_MARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_UNMARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef void (__RPC_FAR __RPC_USER * USER_MARSHAL_FREEING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ void __RPC_FAR * );
+
+typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE
+ {
+ USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
+ USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
+ USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
+ USER_MARSHAL_FREEING_ROUTINE pfnFree;
+ } USER_MARSHAL_ROUTINE_QUADRUPLE;
+
+typedef struct _USER_MARSHAL_CB
+{
+ unsigned long Flags;
+ PMIDL_STUB_MESSAGE pStubMsg;
+ PFORMAT_STRING pReserve;
+} USER_MARSHAL_CB;
+
+
+#define USER_CALL_CTXT_MASK(f) ((f) & 0xff)
+#define GET_USER_DATA_REP(f) ((f) >> 16)
+
+typedef struct _MALLOC_FREE_STRUCT
+ {
+ void __RPC_FAR * (__RPC_FAR __RPC_USER * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_USER * pfnFree)(void __RPC_FAR *);
+ } MALLOC_FREE_STRUCT;
+
+typedef struct _COMM_FAULT_OFFSETS
+ {
+ short CommOffset;
+ short FaultOffset;
+ } COMM_FAULT_OFFSETS;
+
+/*
+ * MIDL Stub Descriptor
+ */
+
+typedef struct _MIDL_STUB_DESC
+ {
+
+ void __RPC_FAR * RpcInterfaceInformation;
+
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ union
+ {
+ handle_t __RPC_FAR * pAutoHandle;
+ handle_t __RPC_FAR * pPrimitiveHandle;
+ PGENERIC_BINDING_INFO pGenericBindingInfo;
+ } IMPLICIT_HANDLE_INFO;
+
+ const NDR_RUNDOWN __RPC_FAR * apfnNdrRundownRoutines;
+ const GENERIC_BINDING_ROUTINE_PAIR __RPC_FAR * aGenericBindingRoutinePairs;
+
+ const EXPR_EVAL __RPC_FAR * apfnExprEval;
+
+ const XMIT_ROUTINE_QUINTUPLE __RPC_FAR * aXmitQuintuple;
+
+ const unsigned char __RPC_FAR * pFormatTypes;
+
+ int fCheckBounds;
+
+ /* Ndr library version. */
+ unsigned long Version;
+
+ /*
+ * Reserved for future use. (no reserves )
+ */
+
+ MALLOC_FREE_STRUCT __RPC_FAR * pMallocFreeStruct;
+
+ long MIDLVersion;
+
+ const COMM_FAULT_OFFSETS __RPC_FAR * CommFaultOffsets;
+
+ // New fields for version 3.0+
+
+ const USER_MARSHAL_ROUTINE_QUADRUPLE __RPC_FAR * aUserMarshalQuadruple;
+
+ long Reserved1;
+ long Reserved2;
+ long Reserved3;
+ long Reserved4;
+ long Reserved5;
+
+ } MIDL_STUB_DESC;
+
+typedef const MIDL_STUB_DESC __RPC_FAR * PMIDL_STUB_DESC;
+
+typedef void __RPC_FAR * PMIDL_XMIT_TYPE;
+
+/*
+ * MIDL Stub Format String. This is a const in the stub.
+ */
+#if !defined( RC_INVOKED )
+#pragma warning( disable:4200 )
+#endif
+typedef struct _MIDL_FORMAT_STRING
+ {
+ short Pad;
+ unsigned char Format[];
+ } MIDL_FORMAT_STRING;
+#if !defined( RC_INVOKED )
+#pragma warning( default:4200 )
+#endif
+
+/*
+ * Stub thunk used for some interpreted server stubs.
+ */
+typedef void (__RPC_FAR __RPC_API * STUB_THUNK)( PMIDL_STUB_MESSAGE );
+
+typedef long (__RPC_FAR __RPC_API * SERVER_ROUTINE)();
+
+/*
+ * Server Interpreter's information strucuture.
+ */
+typedef struct _MIDL_SERVER_INFO_
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ const SERVER_ROUTINE * DispatchTable;
+ PFORMAT_STRING ProcString;
+ const unsigned short * FmtStringOffset;
+ const STUB_THUNK * ThunkTable;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short * LocalFmtStringOffset;
+ } MIDL_SERVER_INFO, *PMIDL_SERVER_INFO;
+
+/*
+ * Stubless object proxy information structure.
+ */
+typedef struct _MIDL_STUBLESS_PROXY_INFO
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ PFORMAT_STRING ProcFormatString;
+ const unsigned short __RPC_FAR * FormatStringOffset;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short __RPC_FAR * LocalFmtStringOffset;
+ } MIDL_STUBLESS_PROXY_INFO;
+
+typedef MIDL_STUBLESS_PROXY_INFO __RPC_FAR * PMIDL_STUBLESS_PROXY_INFO;
+
+/*
+ * This is the return value from NdrClientCall.
+ */
+typedef union _CLIENT_CALL_RETURN
+ {
+ void __RPC_FAR * Pointer;
+ long Simple;
+ } CLIENT_CALL_RETURN;
+
+/*
+ * Full pointer data structures.
+ */
+
+typedef enum
+ {
+ XLAT_SERVER = 1,
+ XLAT_CLIENT
+ } XLAT_SIDE;
+
+/*
+ * Stores the translation for the conversion from a full pointer into it's
+ * corresponding ref id.
+ */
+typedef struct _FULL_PTR_TO_REFID_ELEMENT
+ {
+ struct _FULL_PTR_TO_REFID_ELEMENT __RPC_FAR * Next;
+
+ void __RPC_FAR * Pointer;
+ unsigned long RefId;
+ unsigned char State;
+ } FULL_PTR_TO_REFID_ELEMENT, __RPC_FAR *PFULL_PTR_TO_REFID_ELEMENT;
+
+/*
+ * Full pointer translation tables.
+ */
+typedef struct _FULL_PTR_XLAT_TABLES
+ {
+ /*
+ * Ref id to pointer translation information.
+ */
+ struct
+ {
+ void __RPC_FAR *__RPC_FAR * XlatTable;
+ unsigned char __RPC_FAR * StateTable;
+ unsigned long NumberOfEntries;
+ } RefIdToPointer;
+
+ /*
+ * Pointer to ref id translation information.
+ */
+ struct
+ {
+ PFULL_PTR_TO_REFID_ELEMENT __RPC_FAR * XlatTable;
+ unsigned long NumberOfBuckets;
+ unsigned long HashMask;
+ } PointerToRefId;
+
+ /*
+ * Next ref id to use.
+ */
+ unsigned long NextRefId;
+
+ /*
+ * Keep track of the translation size we're handling : server or client.
+ * This tells us when we have to do reverse translations when we insert
+ * new translations. On the server we must insert a pointer-to-refid
+ * translation whenever we insert a refid-to-pointer translation, and
+ * vica versa for the client.
+ */
+ XLAT_SIDE XlatSide;
+ } FULL_PTR_XLAT_TABLES, __RPC_FAR *PFULL_PTR_XLAT_TABLES;
+
+/***************************************************************************
+ ** New MIDL 2.0 Ndr routine templates
+ ***************************************************************************/
+
+/*
+ * Marshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT ContextHandle,
+ int fCheck
+ );
+
+void RPC_ENTRY
+NdrServerContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_SCONTEXT ContextHandle,
+ NDR_RUNDOWN RundownRoutine
+ );
+
+/*
+ * Unmarshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT __RPC_FAR * pContextHandle,
+ RPC_BINDING_HANDLE BindHandle
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NdrServerContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+/*
+ * Buffer sizing routines
+ */
+
+void RPC_ENTRY
+NdrPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+void RPC_ENTRY
+NdrConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+void RPC_ENTRY
+NdrByteCountPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+// Context Handle size
+//
+void RPC_ENTRY
+NdrContextHandleSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Memory sizing routines
+ */
+
+unsigned long RPC_ENTRY
+NdrPointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned long RPC_ENTRY
+NdrSimpleStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrHardStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned long RPC_ENTRY
+NdrFixedArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned long RPC_ENTRY
+NdrConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned long RPC_ENTRY
+NdrEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned long RPC_ENTRY
+NdrXmitOrRepAsMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned long RPC_ENTRY
+NdrUserMarshalMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+unsigned long RPC_ENTRY
+NdrInterfacePointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Freeing routines
+ */
+
+void RPC_ENTRY
+NdrPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count */
+
+void RPC_ENTRY
+NdrByteCountPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Endian conversion routine.
+ */
+
+void RPC_ENTRY
+NdrConvert2(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ long NumberParams
+ );
+
+void RPC_ENTRY
+NdrConvert(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+#define USER_MARSHAL_FC_BYTE 1
+#define USER_MARSHAL_FC_CHAR 2
+#define USER_MARSHAL_FC_SMALL 3
+#define USER_MARSHAL_FC_USMALL 4
+#define USER_MARSHAL_FC_WCHAR 5
+#define USER_MARSHAL_FC_SHORT 6
+#define USER_MARSHAL_FC_USHORT 7
+#define USER_MARSHAL_FC_LONG 8
+#define USER_MARSHAL_FC_ULONG 9
+#define USER_MARSHAL_FC_FLOAT 10
+#define USER_MARSHAL_FC_HYPER 11
+#define USER_MARSHAL_FC_DOUBLE 12
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalSimpleTypeConvert(
+ unsigned long * pFlags,
+ unsigned char * pBuffer,
+ unsigned char FormatChar
+ );
+
+/*
+ * Auxilary routines
+ */
+
+void RPC_ENTRY
+NdrClientInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+void RPC_ENTRY
+NdrServerInitializePartial(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned long RequestedBufferSize
+ );
+
+void RPC_ENTRY
+NdrClientInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeUnmarshall (
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PRPC_MESSAGE pRpcMsg
+ );
+
+void RPC_ENTRY
+NdrServerInitializeMarshall (
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetPipeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle );
+
+void RPC_ENTRY
+NdrGetPartialBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR* pBufferEnd
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pBufferEnd,
+ RPC_BINDING_HANDLE __RPC_FAR * pAutoHandle
+ );
+
+void RPC_ENTRY
+NdrPipeSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrFreeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Pipe specific calls
+ */
+
+void RPC_ENTRY
+NdrPipesInitialize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pParamDesc,
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg,
+ char __RPC_FAR * pStackTop,
+ unsigned long NumberParams );
+
+void
+NdrMarkNextActivePipe(
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ unsigned int DirectionMask );
+
+void RPC_ENTRY
+NdrPipePull(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+void RPC_ENTRY
+NdrPipePush(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+void RPC_ENTRY
+NdrIsAppDoneWithPipes(
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrPipesDone(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Interpeter calls.
+ */
+
+/* client */
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall2(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+/* server */
+typedef enum {
+ STUB_UNMARSHAL,
+ STUB_CALL_SERVER,
+ STUB_MARSHAL,
+ STUB_CALL_SERVER_NO_HRESULT
+}STUB_PHASE;
+
+typedef enum {
+ PROXY_CALCSIZE,
+ PROXY_GETBUFFER,
+ PROXY_MARSHAL,
+ PROXY_SENDRECEIVE,
+ PROXY_UNMARSHAL
+}PROXY_PHASE;
+
+long RPC_ENTRY
+NdrStubCall2(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall2(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+long RPC_ENTRY
+NdrStubCall (
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+int RPC_ENTRY
+NdrServerUnmarshall(
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * pParamList
+ );
+
+void RPC_ENTRY
+NdrServerMarshall(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Comm and Fault status */
+
+RPC_STATUS RPC_ENTRY
+NdrMapCommAndFaultStatus(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long __RPC_FAR * pCommStatus,
+ unsigned long __RPC_FAR * pFaultStatus,
+ RPC_STATUS Status
+ );
+
+/* Helper routines */
+
+int RPC_ENTRY
+NdrSH_UPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ RPC_BUFPTR pBuffer
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecisionBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_IfAlloc(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocRef(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocSet(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfAllocCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+unsigned long RPC_ENTRY
+NdrSH_Copy(
+ unsigned char __RPC_FAR * pStubMsg,
+ unsigned char __RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+void RPC_ENTRY
+NdrSH_IfFree(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pPtr );
+
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned long Count,
+ int Size );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringUnMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR *__RPC_FAR * pMemory,
+ int Size );
+
+/****************************************************************************
+ MIDL 2.0 memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+typedef void __RPC_FAR * RPC_SS_THREAD_HANDLE;
+
+typedef void __RPC_FAR * __RPC_API
+RPC_CLIENT_ALLOC (
+ IN size_t Size
+ );
+
+typedef void __RPC_API
+RPC_CLIENT_FREE (
+ IN void __RPC_FAR * Ptr
+ );
+
+/*++
+ RpcSs* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSsAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+RpcSsDisableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsEnableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSsGetThreadHandle (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+void RPC_ENTRY
+RpcSsSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+void RPC_ENTRY
+RpcSsSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ RpcSm* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSmAllocate (
+ IN size_t Size,
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmClientFree (
+ IN void __RPC_FAR * pNodeToFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDisableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmEnableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSmGetThreadHandle (
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ Ndr stub entry points
+--*/
+
+void RPC_ENTRY
+NdrRpcSsEnableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSsDisableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSmSetClientToOsf(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSmClientAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSmClientFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSsDefaultAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSsDefaultFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+/****************************************************************************
+ end of memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+/****************************************************************************
+ * Full Pointer APIs
+ ****************************************************************************/
+
+PFULL_PTR_XLAT_TABLES RPC_ENTRY
+NdrFullPointerXlatInit(
+ unsigned long NumberOfPointers,
+ XLAT_SIDE XlatSide
+ );
+
+void RPC_ENTRY
+NdrFullPointerXlatFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryPointer(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * pPointer,
+ unsigned char QueryType,
+ unsigned long __RPC_FAR * pRefId
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ unsigned char QueryType,
+ void __RPC_FAR *__RPC_FAR * ppPointer
+ );
+
+void RPC_ENTRY
+NdrFullPointerInsertRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ void __RPC_FAR * pPointer
+ );
+
+int RPC_ENTRY
+NdrFullPointerFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * Pointer
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrAllocate(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ size_t Len
+ );
+
+void RPC_ENTRY
+NdrClearOutParameters(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * ArgAddr
+ );
+
+
+/****************************************************************************
+ * Proxy APIs
+ ****************************************************************************/
+
+void __RPC_FAR * RPC_ENTRY
+NdrOleAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrOleFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+#ifdef CONST_VTABLE
+#define CONST_VTBL const
+#else
+#define CONST_VTBL
+#endif
+
+
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS, Windows and Mac.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack()
+#endif
+
+#endif /* __RPCNDR_H__ */
+
+
+
+
+
diff --git a/public/sdk/rpc16/mppc/inc/rpcnsi.h b/public/sdk/rpc16/mppc/inc/rpcnsi.h
new file mode 100644
index 000000000..362b5bdb4
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpcnsi.h
@@ -0,0 +1,509 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsi.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ Name Service Independent APIs.
+
+--*/
+
+#ifndef __RPCNSI_H__
+#define __RPCNSI_H__
+
+typedef void __RPC_FAR * RPC_NS_HANDLE;
+
+#define RPC_C_NS_SYNTAX_DEFAULT 0
+#define RPC_C_NS_SYNTAX_DCE 3
+
+#define RPC_C_PROFILE_DEFAULT_ELT 0
+#define RPC_C_PROFILE_ALL_ELT 1
+#define RPC_C_PROFILE_MATCH_BY_IF 2
+#define RPC_C_PROFILE_MATCH_BY_MBR 3
+#define RPC_C_PROFILE_MATCH_BY_BOTH 4
+
+#define RPC_C_NS_DEFAULT_EXP_AGE -1
+
+/* Server APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#endif
+
+/* Client APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupNext(
+ IN RPC_NS_HANDLE LookupContext,
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+/* Group APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Profile APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned char __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned short __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Entry object APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqNext(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT UUID __RPC_FAR * ObjUuid
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Management and MISC APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtHandleSetExpAge(
+ IN RPC_NS_HANDLE NsHandle,
+ IN unsigned long ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtInqExpAge(
+ OUT unsigned long __RPC_FAR * ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtSetExpAge(
+ IN unsigned long ExpirationAge
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+#endif
+
+/* Client API's implemented in wrappers. */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportNext(
+ IN RPC_NS_HANDLE ImportContext,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingSelect(
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * BindingVec,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginW
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginW
+#define RpcNsBindingExport RpcNsBindingExportW
+#define RpcNsBindingUnexport RpcNsBindingUnexportW
+#define RpcNsGroupDelete RpcNsGroupDeleteW
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddW
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveW
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginW
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextW
+#define RpcNsEntryExpandName RpcNsEntryExpandNameW
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginW
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportW
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateW
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteW
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsW
+#define RpcNsProfileDelete RpcNsProfileDeleteW
+#define RpcNsProfileEltAdd RpcNsProfileEltAddW
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveW
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginW
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextW
+
+#else
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginA
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginA
+#define RpcNsBindingExport RpcNsBindingExportA
+#define RpcNsBindingUnexport RpcNsBindingUnexportA
+#define RpcNsGroupDelete RpcNsGroupDeleteA
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddA
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveA
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginA
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextA
+#define RpcNsEntryExpandName RpcNsEntryExpandNameA
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginA
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportA
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateA
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteA
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsA
+#define RpcNsProfileDelete RpcNsProfileDeleteA
+#define RpcNsProfileEltAdd RpcNsProfileEltAddA
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveA
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginA
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextA
+
+#endif /* UNICODE */
+
+#endif /* __RPCNSI_H__ */
diff --git a/public/sdk/rpc16/mppc/inc/rpcnsip.h b/public/sdk/rpc16/mppc/inc/rpcnsip.h
new file mode 100644
index 000000000..0db0140b0
--- /dev/null
+++ b/public/sdk/rpc16/mppc/inc/rpcnsip.h
@@ -0,0 +1,72 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsip.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ to implement the autohandle features of the runtime.
+
+--*/
+
+#ifndef __RPCNSIP_H__
+#define __RPCNSIP_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct
+{
+ RPC_NS_HANDLE LookupContext;
+ RPC_BINDING_HANDLE ProposedHandle;
+ RPC_BINDING_VECTOR * Bindings;
+
+} RPC_IMPORT_CONTEXT_P, * PRPC_IMPORT_CONTEXT_P;
+
+
+/* Stub Auto Binding routines. */
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsGetBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsSendReceive(
+ IN PRPC_MESSAGE Message,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Handle
+ );
+
+void RPC_ENTRY
+I_RpcNsRaiseException(
+ IN PRPC_MESSAGE Message,
+ IN RPC_STATUS Status
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcReBindBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsServerBindSearch(
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsClientBindSearch(
+ );
+
+void RPC_ENTRY
+I_NsClientBindDone(
+ );
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCNSIP_H__ */
diff --git a/public/sdk/rpc16/sdk/dnetapi.dl_ b/public/sdk/rpc16/sdk/dnetapi.dl_
new file mode 100644
index 000000000..6c61e393b
--- /dev/null
+++ b/public/sdk/rpc16/sdk/dnetapi.dl_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/drpc.h_ b/public/sdk/rpc16/sdk/drpc.h_
new file mode 100644
index 000000000..95ca34154
--- /dev/null
+++ b/public/sdk/rpc16/sdk/drpc.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/drpc.li_ b/public/sdk/rpc16/sdk/drpc.li_
new file mode 100644
index 000000000..3ce0bd5e3
--- /dev/null
+++ b/public/sdk/rpc16/sdk/drpc.li_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/drpcndr.li_ b/public/sdk/rpc16/sdk/drpcndr.li_
new file mode 100644
index 000000000..4cf645885
--- /dev/null
+++ b/public/sdk/rpc16/sdk/drpcndr.li_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/midles.h_ b/public/sdk/rpc16/sdk/midles.h_
new file mode 100644
index 000000000..cac7a1f5a
--- /dev/null
+++ b/public/sdk/rpc16/sdk/midles.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/mrpc.h_ b/public/sdk/rpc16/sdk/mrpc.h_
new file mode 100644
index 000000000..6d89dd06d
--- /dev/null
+++ b/public/sdk/rpc16/sdk/mrpc.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/mrpc.li_ b/public/sdk/rpc16/sdk/mrpc.li_
new file mode 100644
index 000000000..f99614244
--- /dev/null
+++ b/public/sdk/rpc16/sdk/mrpc.li_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/mscuistf.dl_ b/public/sdk/rpc16/sdk/mscuistf.dl_
new file mode 100644
index 000000000..1c01af909
--- /dev/null
+++ b/public/sdk/rpc16/sdk/mscuistf.dl_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/msdetect.inc b/public/sdk/rpc16/sdk/msdetect.inc
new file mode 100644
index 000000000..20c869ebf
--- /dev/null
+++ b/public/sdk/rpc16/sdk/msdetect.inc
@@ -0,0 +1,661 @@
+'**************************************************************************
+'************************* Setup Detect API's ***************************
+'**************************************************************************
+
+''detect
+
+DECLARE FUNCTION CbGetVersionOfFile LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION LGetVersionNthField LIB "msdetstf.dll" (szVersion$, nField%) AS LONG
+DECLARE FUNCTION LcbGetSizeOfFile LIB "msdetstf.dll" (szFile$) AS LONG
+DECLARE FUNCTION FGetValidDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
+DECLARE FUNCTION FGetLocalHardDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
+DECLARE FUNCTION FGetRemovableDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
+DECLARE FUNCTION FGetNetworkDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
+DECLARE FUNCTION LcbTotalDrive LIB "msdetstf.dll" (nDrive%) AS LONG
+DECLARE FUNCTION LcbFreeDrive LIB "msdetstf.dll" (nDrive%) AS LONG
+DECLARE FUNCTION FIsValidDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
+DECLARE FUNCTION FIsLocalHardDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
+DECLARE FUNCTION FIsRemoveDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
+DECLARE FUNCTION FIsRemoteDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
+DECLARE FUNCTION FDirExists LIB "msdetstf.dll" (szDir$) AS INTEGER
+DECLARE FUNCTION FDoesFileExist LIB "msdetstf.dll" (szFileName$, mode%) AS INTEGER
+DECLARE FUNCTION CbGetDateOfFile LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION FDoesIniSectionExist LIB "msdetstf.dll" (szFile$, szSect$) AS INTEGER
+DECLARE FUNCTION FDoesIniKeyExist LIB "msdetstf.dll" (szFile$, szSect$, szKey$) AS INTEGER
+DECLARE FUNCTION CbGetIniKeyString LIB "msdetstf.dll" (szFile$, szSect$, szKey$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION WGetDOSMajorVersion LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION WGetDOSMinorVersion LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION CbGetEnvVariableValue LIB "msdetstf.dll" (szEnvVar$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION WGetNumWinApps LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION FGetParallelPortsList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
+DECLARE FUNCTION FGetSerialPortsList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
+DECLARE FUNCTION FHas87MathChip LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION FHasMonochromeDisplay LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION FHasMouseInstalled LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION WGetConfigSmartdrvSize LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION WGetConfigRamdriveSize LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION WGetConfigNumBuffers LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION WGetConfigNumFiles LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION WGetConfigLastDrive LIB "msdetstf.dll" AS INTEGER
+DECLARE FUNCTION FIsDriverInConfig LIB "msdetstf.dll" (szDrv$) AS INTEGER
+DECLARE FUNCTION CbFindTargetOnEnvVar LIB "msdetstf.dll" (szFile$, szEnvVar$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION CbFindFileInTree LIB "msdetstf.dll" (szFile$, szDir$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION GetTypeFaceNameFromTTF LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION GetExistingFOTFileForTTF LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
+
+
+
+'*************************************************************************
+'**************** Detect Basic Wrapper Declarations ********************
+'*************************************************************************
+
+
+'' detect
+
+DECLARE FUNCTION IsDriveValid (szDrive$) AS INTEGER
+DECLARE FUNCTION IsDriveLocalHard (szDrive$) AS INTEGER
+DECLARE FUNCTION IsDriveRemovable (szDrive$) AS INTEGER
+DECLARE FUNCTION IsDriveNetwork (szDrive$) AS INTEGER
+DECLARE SUB GetValidDrivesList (szSymbol$)
+DECLARE SUB GetLocalHardDrivesList (szSymbol$)
+DECLARE SUB GetRemovableDrivesList (szSymbol$)
+DECLARE SUB GetNetworkDrivesList (szSymbol$)
+DECLARE FUNCTION GetTotalSpaceForDrive (szDrive$) AS LONG
+DECLARE FUNCTION GetFreeSpaceForDrive (szDrive$) AS LONG
+
+DECLARE FUNCTION GetDOSMajorVersion AS INTEGER
+DECLARE FUNCTION GetDOSMinorVersion AS INTEGER
+DECLARE FUNCTION GetEnvVariableValue (szEnvVar$) AS STRING
+DECLARE FUNCTION GetNumWinApps AS INTEGER
+
+DECLARE FUNCTION DoesFileExist (szFile$, mode%) AS INTEGER
+DECLARE FUNCTION GetDateOfFile (szFile$) AS STRING
+DECLARE FUNCTION GetYearFromDate (szDate$) AS INTEGER
+DECLARE FUNCTION GetMonthFromDate (szDate$) AS INTEGER
+DECLARE FUNCTION GetDayFromDate (szDate$) AS INTEGER
+DECLARE FUNCTION GetHourFromDate (szDate$) AS INTEGER
+DECLARE FUNCTION GetMinuteFromDate (szDate$) AS INTEGER
+DECLARE FUNCTION GetSecondFromDate (szDate$) AS INTEGER
+DECLARE FUNCTION GetVersionOfFile (szFile$) AS STRING
+DECLARE FUNCTION GetVersionNthField (szVersion$, nField%) AS LONG
+DECLARE FUNCTION GetSizeOfFile (szFile$) AS LONG
+DECLARE FUNCTION FindTargetOnEnvVar (szFile$, szEnvVar$) AS STRING
+DECLARE FUNCTION FindFileInTree (szFile$, szDir$) AS STRING
+DECLARE FUNCTION DoesDirExist (szDir$) AS INTEGER
+
+DECLARE FUNCTION DoesIniSectionExist (szFile$, szSect$) AS INTEGER
+DECLARE FUNCTION DoesIniKeyExist (szFile$, szSect$, szKey$) AS INTEGER
+DECLARE FUNCTION GetIniKeyString (szFile$, szSect$, szKey$) AS STRING
+
+DECLARE FUNCTION GetConfigSmartdrvSize AS INTEGER
+DECLARE FUNCTION GetConfigRamdriveSize AS INTEGER
+DECLARE FUNCTION GetConfigNumBuffers AS INTEGER
+DECLARE FUNCTION GetConfigNumFiles AS INTEGER
+DECLARE FUNCTION GetConfigLastDrive AS STRING
+DECLARE FUNCTION IsDriverInConfig (szDrv$) AS INTEGER
+
+DECLARE FUNCTION GetProcessorType AS INTEGER
+DECLARE SUB GetParallelPortsList (szSymbol$)
+DECLARE SUB GetSerialPortsList (szSymbol$)
+DECLARE FUNCTION Has87MathChip AS INTEGER
+DECLARE FUNCTION HasMonochromeDisplay AS INTEGER
+DECLARE FUNCTION HasMouseInstalled AS INTEGER
+
+
+'*************************************************************************
+FUNCTION IsDriveValid (szDrive$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidDrive(szDrive$) = 0 then
+ BadArgErr 1, "IsDriveValid", szDrive$
+ end if
+'$endif ''DEBUG
+ IsDriveValid = FIsValidDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION IsDriveLocalHard (szDrive$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidDrive(szDrive$) = 0 then
+ BadArgErr 1, "IsDriveLocalHard", szDrive$
+ end if
+'$endif ''DEBUG
+ IsDriveLocalHard = FIsLocalHardDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION IsDriveRemovable (szDrive$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidDrive(szDrive$) = 0 then
+ BadArgErr 1, "IsDriveRemovable", szDrive$
+ end if
+'$endif ''DEBUG
+ IsDriveRemovable = FIsRemoveDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION IsDriveNetwork (szDrive$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidDrive(szDrive$) = 0 then
+ BadArgErr 1, "IsDriveNetwork", szDrive$
+ end if
+'$endif ''DEBUG
+ IsDriveNetwork = FIsRemoteDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetTotalSpaceForDrive (szDrive$) STATIC AS LONG
+'$ifdef DEBUG
+ if FValidDrive(szDrive$) = 0 then
+ BadArgErr 1, "GetTotalSpaceForDrive", szDrive$
+ end if
+'$endif ''DEBUG
+ GetTotalSpaceForDrive = LcbTotalDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetFreeSpaceForDrive (szDrive$) STATIC AS LONG
+'$ifdef DEBUG
+ if FValidDrive(szDrive$) = 0 then
+ BadArgErr 1, "GetFreeSpaceForDrive", szDrive$
+ end if
+'$endif ''DEBUG
+ GetFreeSpaceForDrive = LcbFreeDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
+END FUNCTION
+
+
+'*************************************************************************
+SUB GetValidDrivesList (szSymbol$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetValidDrivesList", szSymbol$
+ end if
+'$endif ''DEBUG
+ if FGetValidDrivesList(szSymbol$) = 0 then
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetValidDrivesList", szSymbol$
+'$endif ''DEBUG
+ ERROR STFERR
+ end if
+END SUB
+
+
+'*************************************************************************
+SUB GetLocalHardDrivesList (szSymbol$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetLocalHardDrivesList", szSymbol$
+ end if
+'$endif ''DEBUG
+ if FGetLocalHardDrivesList(szSymbol$) = 0 then
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetLocalHardDrivesList", szSymbol$
+'$endif ''DEBUG
+ ERROR STFERR
+ end if
+END SUB
+
+
+'*************************************************************************
+SUB GetRemovableDrivesList (szSymbol$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetRemovableDrivesList", szSymbol$
+ end if
+'$endif ''DEBUG
+ if FGetRemovableDrivesList(szSymbol$) = 0 then
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetRemovableDrivesList", szSymbol$
+'$endif ''DEBUG
+ ERROR STFERR
+ end if
+END SUB
+
+
+'*************************************************************************
+SUB GetNetworkDrivesList (szSymbol$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetNetworkDrivesList", szSymbol$
+ end if
+'$endif ''DEBUG
+ if FGetNetworkDrivesList(szSymbol$) = 0 then
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetNetworkDrivesList", szSymbol$
+'$endif ''DEBUG
+ ERROR STFERR
+ end if
+END SUB
+
+
+'*************************************************************************
+FUNCTION GetDOSMajorVersion STATIC AS INTEGER
+ GetDOSMajorVersion = WGetDOSMajorVersion
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetDOSMinorVersion STATIC AS INTEGER
+ GetDOSMinorVersion = WGetDOSMinorVersion
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetEnvVariableValue (szEnvVar$) STATIC AS STRING
+'$ifdef DEBUG
+ if szEnvVar$ = "" then
+ BadArgErr 1, "GetEnvVariableValue", szEnvVar$
+ end if
+'$endif ''DEBUG
+ cb% = 1024
+ szBuf$ = STRING$(cb%, 32)
+ cbRet% = CbGetEnvVariableValue(szEnvVar$, szBuf$, cb%)
+ GetEnvVariableValue = szBuf$
+'$ifdef DEBUG
+ IF cbRet% >= cb% THEN
+ StfApiErr saeOvfl, "GetEnvVariableValue", szEnvVar$
+ ERROR STFERR
+ END IF
+'$endif ''DEBUG
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetNumWinApps STATIC AS INTEGER
+ GetNumWinApps = WGetNumWinApps
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION DoesFileExist (szFileName$, mode%) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidFATPath(szFileName$) = 0 then
+ BadArgErr 1, "DoesFileExist", szFileName$+", "+STR$(mode%)
+ end if
+'$endif ''DEBUG
+ DoesFileExist = FDoesFileExist(szFileName$, mode%)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetDateOfFile (szFile$) STATIC AS STRING
+'$ifdef DEBUG
+ if FValidFATPath(szFile$) = 0 then
+ BadArgErr 1, "GetDateOfFile", szFile$
+ end if
+'$endif ''DEBUG
+ cb% = 20
+ szBuf$ = STRING$(cb%, 32)
+ cbRet% = CbGetDateOfFile(szFile$, szBuf$, cb%)
+ GetDateOfFile = szBuf$
+'$ifdef DEBUG
+ IF cbRet% >= cb% THEN
+ StfApiErr saeOvfl, "GetDateOfFile", szFile$
+ ERROR STFERR
+ END IF
+'$endif ''DEBUG
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetYearFromDate (szDate$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szDate = "" then
+ BadArgErr 1, "GetYearFromDate", szDate$
+ end if
+'$endif ''DEBUG
+ GetYearFromDate = VAL(MID$(szDate$, 1, 4))
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetMonthFromDate (szDate$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szDate = "" then
+ BadArgErr 1, "GetMonthFromDate", szDate$
+ end if
+'$endif ''DEBUG
+ GetMonthFromDate = VAL(MID$(szDate$, 6, 2))
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetDayFromDate (szDate$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szDate = "" then
+ BadArgErr 1, "GetDayFromDate", szDate$
+ end if
+'$endif ''DEBUG
+ GetDayFromDate = VAL(MID$(szDate$, 9, 2))
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetHourFromDate (szDate$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szDate = "" then
+ BadArgErr 1, "GetHourFromDate", szDate$
+ end if
+'$endif ''DEBUG
+ GetHourFromDate = VAL(MID$(szDate$, 12, 2))
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetMinuteFromDate (szDate$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szDate = "" then
+ BadArgErr 1, "GetMinuteFromDate", szDate$
+ end if
+'$endif ''DEBUG
+ GetMinuteFromDate = VAL(MID$(szDate$, 15, 2))
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetSecondFromDate (szDate$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szDate = "" then
+ BadArgErr 1, "GetSecondFromDate", szDate$
+ end if
+'$endif ''DEBUG
+ GetSecondFromDate = VAL(MID$(szDate$, 18, 2))
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetVersionOfFile (szFile$) STATIC AS STRING
+'$ifdef DEBUG
+ if FValidFATPath(szFile$) = 0 then
+ BadArgErr 1, "GetVersionOfFile", szFile$
+ end if
+'$endif ''DEBUG
+ cb% = 30
+ szBuf$ = STRING$(cb%, 32)
+ cbRet% = CbGetVersionOfFile(szFile$, szBuf$, cb%)
+ GetVersionOfFile = szBuf$
+'$ifdef DEBUG
+ IF cbRet% >= cb% THEN
+ StfApiErr saeOvfl, "GetVersionOfFile", szFile$
+ ERROR STFERR
+ END IF
+'$endif ''DEBUG
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetVersionNthField (szVersion$, nField%) STATIC AS LONG
+'$ifdef DEBUG
+ if (nField% < 1) OR (nField% > 4) then
+ BadArgErr 2, "GetVersionNthField", szVersion$+", "+STR$(nField%)
+ end if
+'$endif ''DEBUG
+ GetVersionNthField = LGetVersionNthField(szVersion$, nField%)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetSizeOfFile (szFile$) STATIC AS LONG
+'$ifdef DEBUG
+ if FValidFATPath(szFile$) = 0 then
+ BadArgErr 1, "GetSizeOfFile", szFile$
+ end if
+'$endif ''DEBUG
+ GetSizeOfFile = LcbGetSizeOfFile(szFile$)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION FindTargetOnEnvVar (szFile$, szEnvVar$) STATIC AS STRING
+'$ifdef DEBUG
+ if CchlValidFATSubPath(szFile$) = 0 then
+ n% = 1
+ elseif szEnvVar$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "FindTargetOnEnvVar", szFile$+", "+szEnvVar$
+ end if
+'$endif ''DEBUG
+
+ cb% = 512
+ szBuf$ = STRING$(cb%, 32)
+ cbRet% = CbFindTargetOnEnvVar(szFile$, szEnvVar$, szBuf$, cb%)
+ IF cbRet% >= cb% THEN
+'$ifdef DEBUG
+ StfApiErr saeOvfl, "FindTargetOnEnvVar", szFile$+", "+szEnvVar$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+ szBuf$ = RTRIM$(szBuf$)
+ IF MID$(szBuf$, 1, 1) = "\" THEN
+ szBuf$ = MID$(CURDIR$, 1, 2) + szBuf$
+ ELSEIF Len(szBuf$) > 0 AND MID$(szBuf$, 2, 1) <> ":" THEN
+ szBuf$ = MID$(CURDIR$, 1, 3) + szBuf$
+ END IF
+ FindTargetOnEnvVar = szBuf$
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION FindFileInTree (szFile$, szDir$) STATIC AS STRING
+'$ifdef DEBUG
+ if CchlValidFATSubPath(szFile$) = 0 then
+ n% = 1
+ elseif FValidFATDir(szDir$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "FindFileInTree", szFile$+", "+szDir$
+ end if
+'$endif ''DEBUG
+
+ cb% = 512
+ szBuf$ = STRING$(cb%, 32)
+ cbRet% = CbFindFileInTree(szFile$, szDir$, szBuf$, cb%)
+ FindFileInTree = szBuf$
+'$ifdef DEBUG
+ IF cbRet% >= cb% THEN
+ StfApiErr saeOvfl, "FindFileInTree", szFile$+", "+szDir$
+ ERROR STFERR
+ END IF
+'$endif ''DEBUG
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetConfigSmartdrvSize STATIC AS INTEGER
+ GetConfigSmartdrvSize = WGetConfigSmartdrvSize
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetConfigRamdriveSize STATIC AS INTEGER
+ GetConfigRamdriveSize = WGetConfigRamdriveSize
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetConfigNumBuffers STATIC AS INTEGER
+ GetConfigNumBuffers = WGetConfigNumBuffers
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetConfigNumFiles STATIC AS INTEGER
+ GetConfigNumFiles = WGetConfigNumFiles
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetConfigLastDrive STATIC AS STRING
+ chRet% = WGetConfigLastDrive
+ if chRet% = 0 then
+ GetConfigLastDrive = ""
+ else
+ GetConfigLastDrive = CHR$(chRet%)
+ end if
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION IsDriverInConfig (szDrv$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szDrv$ = "" then
+ BadArgErr 1, "IsDriverInConfig", szDrv$
+ end if
+'$endif ''DEBUG
+ IsDriverInConfig = FIsDriverInConfig(szDrv$)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetProcessorType STATIC AS INTEGER
+ GetProcessorType = 0
+ longTmp& = GetWinFlags()
+ IF longTmp& AND WF_CPU486 THEN
+ GetProcessorType = 4
+ ELSEIF longTmp& AND WF_CPU386 THEN
+ GetProcessorType = 3
+ ELSEIF longTmp& AND WF_CPU286 THEN
+ GetProcessorType = 2
+ ELSEIF longTmp& AND WF_CPU186 THEN
+ GetProcessorType = 1
+ END IF
+END FUNCTION
+
+
+'*************************************************************************
+SUB GetParallelPortsList (szSymbol$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetParallelPortsList", szSymbol$
+ end if
+'$endif ''DEBUG
+ if FGetParallelPortsList(szSymbol$) = 0 then
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetParallelPortsList", szSymbol$
+'$endif ''DEBUG
+ ERROR STFERR
+ end if
+END SUB
+
+
+'*************************************************************************
+SUB GetSerialPortsList (szSymbol$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetSerialPortsList", szSymbol$
+ end if
+'$endif ''DEBUG
+ if FGetSerialPortsList(szSymbol$) = 0 then
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetSerialPortsList", szSymbol$
+'$endif ''DEBUG
+ ERROR STFERR
+ end if
+END SUB
+
+
+'*************************************************************************
+FUNCTION Has87MathChip STATIC AS INTEGER
+ Has87MathChip = FHas87MathChip
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION HasMonochromeDisplay STATIC AS INTEGER
+ HasMonochromeDisplay = FHasMonochromeDisplay
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION HasMouseInstalled STATIC AS INTEGER
+ HasMouseInstalled = FHasMouseInstalled
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION DoesDirExist (szDir$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidFATDir(szDir$) = 0 then
+ BadArgErr 1, "DoesDirExist", szDir$
+ end if
+'$endif ''DEBUG
+ DoesDirExist = FDirExists(szDir$)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION DoesIniSectionExist (szFile$, szSect$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidIniFile(szFile$) = 0 then
+ BadArgErr 1, "DoesIniSectionExist", szFile$+", "+szSect$
+ end if
+'$endif ''DEBUG
+ DoesIniSectionExist = FDoesIniSectionExist(szFile$, szSect$)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION DoesIniKeyExist (szFile$, szSect$, szKey$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidIniFile(szFile$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "DoesIniKeyExist", szFile$+", "+szSect$+", "+szKey$
+ end if
+'$endif ''DEBUG
+
+ DoesIniKeyExist = FDoesIniKeyExist(szFile$, szSect$, szKey$)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetIniKeyString (szFile$, szSect$, szKey$) STATIC AS STRING
+'$ifdef DEBUG
+ if FValidIniFile(szFile$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "GetIniKeyString", szFile$+", "+szSect$+", "+szKey$
+ end if
+'$endif ''DEBUG
+
+ cb% = 512
+ szBuf$ = STRING$(cb%, 32)
+ cbRet% = CbGetIniKeyString(szFile$, szSect$, szKey$, szBuf$, cb%)
+ GetIniKeyString = szBuf$
+'$ifdef DEBUG
+ IF cbRet% >= cb% THEN
+ StfApiErr saeOvfl, "GetIniKeyString", szFile$+", "+szSect$+", "+szKey$
+ ERROR STFERR
+ END IF
+'$endif ''DEBUG
+ szBuf$ = ""
+END FUNCTION
+
+
+
diff --git a/public/sdk/rpc16/sdk/readme.txt b/public/sdk/rpc16/sdk/readme.txt
new file mode 100644
index 000000000..4a501f497
--- /dev/null
+++ b/public/sdk/rpc16/sdk/readme.txt
@@ -0,0 +1,54 @@
+A note on what to do for the rpc install setup.
+
+The first thing to do is to be sure that all components are in place.
+
+The binary part of this is normally handled by the rpc test group.
+This includes binaries, headers, samples and doc files. Since this
+list changes often, there's not much point in covering it here.
+Presently, if a new file is added to the release list, one must add it
+to the list of released files, rpcsdk.lyt by using dsklayt2.exe.
+Caveat hacker below.
+
+The installation scripts, setup exectables, etc., are the responsibility
+of the rpc developer saddled with setup.
+
+Let [x] denote an optional argument x.
+
+First, go to \isvinst and run the .bat file getrpcrt.bat. It moves some
+files around. Then run mkdisk.bat there. It creates a script file for use
+by ISVs in order to install the rpc support .dlls on their customers
+machines. If this step is omitted, the setup created by wrundisk.bat WILL
+FAIL.
+
+Next, cd\install. Make sure testing has all their components in place.
+
+Once all components are in place, run getcur.bat. It picks up files from
+their supposed origin and puts them in \install\stage. This is required
+input in order to run the layout tool, dsklayt.exe, a win app. If only
+samples have changed, one could run getsam.bat. Note that if the file
+list changes, then get.bat and possibly getsam.bat will have to be
+changed so that these files are put in \install\stage by these batch
+files.
+
+If any files have changed, be sure to put them in rpcsdk.lyt. One is
+supposed to use dsklayt.exe, but it doesn't work too well, so I'd suggest
+avoiding it. Be sure to format your edits to rpcsdk.lyt excatly right.
+
+dsklayt.exe will inspect the files in \install\stage and compare them
+with an extant .lyt, if so requested. It is in this situation, however,
+that the damn thing hoses your old .lyt file.
+
+Next, delete all files in \install\sdk.new\disk1, \install\sdk.new\disk1
+and \install\sdk.new\nsetup.
+
+Thereafter, run mkdisk [net], where the optional argument, if used,
+forces only the building of the network setup directory,
+\install\sdk.new\nsetup. mkdisk invokes dsklayt2.exe, a dos app which
+appears to be far more reliable than dsklayt.exe.
+from \install\wsetup to nsetup or disk1.
+
+Test your changes by running setup.exe from the target of your changes.
+If it works, delnode sdk.new and tc the files to \sdk.new and tell rpccore.
+Keep \sdk updated with the last release.
+
+brucemc 6/14/93
diff --git a/public/sdk/rpc16/sdk/rpcdce.h_ b/public/sdk/rpc16/sdk/rpcdce.h_
new file mode 100644
index 000000000..fe69d99e0
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcdce.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcdcep.h_ b/public/sdk/rpc16/sdk/rpcdcep.h_
new file mode 100644
index 000000000..1f180353f
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcdcep.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcerr.h_ b/public/sdk/rpc16/sdk/rpcerr.h_
new file mode 100644
index 000000000..4e0ea7a0e
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcerr.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcmac.h_ b/public/sdk/rpc16/sdk/rpcmac.h_
new file mode 100644
index 000000000..6f7e924ad
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcmac.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcndr.h_ b/public/sdk/rpc16/sdk/rpcndr.h_
new file mode 100644
index 000000000..09840bef6
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcndr.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcnsi.h_ b/public/sdk/rpc16/sdk/rpcnsi.h_
new file mode 100644
index 000000000..e137ed300
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcnsi.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcnsip.h_ b/public/sdk/rpc16/sdk/rpcnsip.h_
new file mode 100644
index 000000000..f7345eb1f
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcnsip.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcsdk.in_ b/public/sdk/rpc16/sdk/rpcsdk.in_
new file mode 100644
index 000000000..54d98cae3
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcsdk.in_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/rpcsdk.mst b/public/sdk/rpc16/sdk/rpcsdk.mst
new file mode 100644
index 000000000..a16f96dc2
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcsdk.mst
@@ -0,0 +1,786 @@
+'***********************************************************************
+'* RPC SDK Install
+'* Copyright (C) - 1992 by Microsoft
+'*
+'* Written By - Steven Zeck
+'**************************************************************************
+
+'$define DEBUG
+
+'$INCLUDE 'setupapi.inc'
+'$INCLUDE 'msdetect.inc'
+
+CONST TRUE = -1
+CONST FALSE = 0
+
+''Dialog ID's
+CONST ASKQUIT = 200
+CONST DlgGetPath = 310
+CONST HlpGetPath = 311
+CONST DlgRegPath = 1700
+CONST HlpRegPath = 1701
+CONST DlgDosPath = 2000
+CONST HlpDosPath = 2001
+CONST EXITFAILURE = 400
+CONST EXITQUIT = 600
+
+' Conditionaly set the dialogs for full SDK versus runtime only.
+
+CONST DlgWelcome = 100
+CONST DlgInstallOptions = 800
+CONST HlpInstallOptions = 801
+CONST DlgNSInstallOptions = 802
+CONST HlpNSInstallOptions = 803
+CONST EXITSUCCESS = 700
+
+CONST DlgSdkOption = 1200
+CONST HlpSdkOption = 1201
+CONST DlgRuntimeOption = 1400
+CONST HlpRuntimeOption = 1401
+CONST DlgTransport = 1600
+CONST HlpTransport = 1601
+CONST DlgNetBiosOptions = 2200
+CONST HlpNetBiosOptions = 2201
+CONST DlgNetBiosProtocols = 2300
+CONST HlpNetBiosProtocols = 2301
+CONST DlgNewProtocol = 2100
+CONST HlpNewProtocol = 2101
+CONST DlgNewNS = 2150
+CONST DlgAutoPath = 2400
+CONST HlpAutoPath = 2401
+CONST BADPATH = 6400
+
+CONST DlgDosSdkPath = 3000
+CONST DlgDosSdkPathHelp = 3001
+
+CONST DlgMacSdkPath = 3100
+CONST DlgMacSdkPathHelp = 3101
+
+CONST DlgWinSdkPath = 3200
+CONST DlgWinSdkPathHelp = 3201
+
+''Bitmap ID
+CONST LOGO = 1
+
+CONST LanType_LANMAN = 6
+
+Type LAN_DETECT
+ iType As Integer
+ iMajor As Integer
+ iMinor As Integer
+ iRev As Integer
+ fEnhance As Integer
+End Type
+
+GLOBAL BasePath$ ''Default destination directory.
+GLOBAL WinIncPath$
+GLOBAL WinLibPath$
+GLOBAL BaseWPath$ ''Default destination directory.
+GLOBAL DosIncPath$
+Global DosLibPath$
+Global DosExePath$
+GLOBAL Base2Path$ ''Default destination directory.
+Global MacIncPath$
+Global MacLibPath$
+
+GLOBAL RegPath$ ''Default destination directory.
+GLOBAL DosPath$ ''Default destination directory.
+Global CustomInstall ''Custom install option
+Global SrcDir$
+Global MSDOSSDK
+Global MSDOSIncSDK
+Global MSDOSLibSDK
+
+Global WindowsSDK
+Global WindowsIncSDK
+Global WindowsLibSDK
+
+Global MacSDK
+Global MacIncSDK
+Global MacLibSDK
+
+GLOBAL CUIDLL$
+GLOBAL HELPPROC$
+Global ThreeEightySixEnh
+Global ThreeEightySixEnhStr$
+Global TCP
+
+DECLARE Function GetPath(Dialog%, Path$) AS INTEGER
+DECLARE Function GetDosPath() AS INTEGER
+DECLARE Function GetWinPath() AS INTEGER
+DECLARE Function GetMacPath() AS INTEGER
+DECLARE Sub CopyList(ListIn$, ListOut$, Truncate%)
+DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
+DECLARE FUNCTION GetCheck (index%) AS INTEGER
+DECLARE FUNCTION GetInnerChk (index%) AS INTEGER
+DECLARE FUNCTION BoolToOnOff (Bool%) AS String
+DECLARE FUNCTION GetWinSize () AS String
+DECLARE FUNCTION GetDosSize () AS String
+DECLARE FUNCTION GetMacSize () AS String
+DECLARE FUNCTION FormatSize ()AS String
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Startup Entry point
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+INIT:
+ CUIDLL$ = "mscuistf.dll" ''Custom user interface dll
+ HELPPROC$ = "FHelpDlgProc" ''Help dialog procedure
+
+ SetBitmap CUIDLL$, LOGO
+ SetTitle "RPC - Software Development Kit Install"
+
+ szInf$ = GetSymbolValue("STF_SRCINFPATH")
+ if szInf$ = "" THEN
+ szInf$ = GetSymbolValue("STF_CWDDIR") + "RPCSDK.INF"
+ end if
+ ReadInfFile szInf$
+ SetAbout "RPC SDK Install", "By GregJen - Version 0.20"
+
+ CustomInstall = FALSE
+ MSDOSRuntime = TRUE
+ ThreeEightySixEnh = FALSE
+ TCP = FALSE
+ ThreeEightySixEnhStr$="[386Enh]"
+
+
+'$ifndef WINDOWS_ONLY
+ MSDOSSDK = TRUE
+'$endif
+
+'$ifndef MSDOS_ONLY
+ WindowsRuntime = TRUE
+'$endif
+
+ MSDOSIncSDK = TRUE
+ MSDOSLibSDK = TRUE
+
+ WindowsSDK = TRUE
+ WindowsIncSDK = TRUE
+ WindowsLibSDK = TRUE
+
+ MacSDK = TRUE
+ MacIncSDK = TRUE
+ MacLibSDK = TRUE
+
+ Dim Detect As LAN_DETECT
+ BasePath$ = "C:\msvc"
+ BaseWPath$ = "C:\msvc"
+ Base2Path$ = "C:\msvc20\m68k"
+ RegPath$="C:\"
+ DosPath$="C:\DOS"
+ WinPath$=GetWindowsDir
+ SrcDir$ = GetSymbolValue("STF_SRCDIR")
+
+ ' If the path contains lanman, make that the default DOS DLL directory.
+
+ path$ = Ucase$(GetEnvVariableValue ("PATH"))+";"
+
+ i% = 1
+ while i% < len(path$)
+
+ iEnd = instr(i%, path$, ";")
+ cPath$ = mid$(path, i%, iEnd - i%)
+
+ if instr (cPath$, "LANMAN") or instr(cPath$, "\NETPROG") then
+ DosPath$ = cPath$
+ end if
+
+ if instr (cPath$, "\msvc\") then
+ BasePath$ = mid$(cPath$, 1, 1)+":\msvc"
+ end if
+
+ if instr (cPath$, "\msvc20\") then
+ Base2Path$ = mid$(cPath$, 1, 1)+":\msvc20\m68k"
+ end if
+
+ i% = iEnd + 1
+ wend
+
+ BaseWPath$ = BasePath$
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Welcome dialog box
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+WELCOME:
+ sz$ = UIStartDlg(CUIDLL$, DlgWelcome, "FInfoDlgProc", 0, "")
+ if sz$ = "CONTINUE" THEN
+ UIPop 1
+ else
+ GOSUB ASKQUIT
+ GOTO WELCOME
+ end if
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' sdk custom install dialog box
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+SDK_OPTION:
+
+ RemoveSymbol "CheckItemsState"
+ AddListItem "CheckItemsState", BoolToOnOff(MSDOSSDK)
+ AddListItem "CheckItemsState", BoolToOnOff(WindowsSDK )
+ AddListItem "CheckItemsState", BoolToOnOff(MacSDK )
+
+ RemoveSymbol "DriveStatusText"
+ AddListItem "DriveStatusText", BasePath$
+ 'AddListItem "EditFocus", "END"
+ AddListItem "DriveStatusText", BaseWPath$
+ 'AddListItem "EditFocus", "END"
+ AddListItem "DriveStatusText", Base2Path$
+ 'AddListItem "EditFocus", "END"
+
+RESTART_SDK_OPTION:
+
+ RemoveSymbol "StatusItemsText"
+ CurSize$ = GetDosSize()
+ TotalSize = val(CurSize$)
+ AddListItem "StatusItemsText", CurSize$
+ CurSize$ = GetWinSize()
+ TotalSize = TotalSize + val(CurSize$)
+ AddListItem "StatusItemsText", CurSize$
+ CurSize $= GetMacSize()
+ TotalSize = TotalSize + val(CurSize$)
+ AddListItem "StatusItemsText", CurSize$
+
+ TotalSizeStr$ = "Total ="+str$( TotalSize )+"K"
+ AddListItem "StatusItemsText", TotalSizeStr$
+
+RE_ITERATE:
+ sz$ = UIStartDlg(CUIDLL$, DlgSdkOption, "FCustInstDlgProc", HlpSdkOption, HELPPROC$)
+
+ if sz$ = "CONTINUE" THEN
+ UIPop(1)
+
+ elseif sz$ = "BACK" THEN
+ UIPop(1)
+ GOTO WELCOME
+
+ elseif sz$ = "REACTIVATE" THEN
+ GOTO RESTART_SDK_OPTION
+
+ elseif sz$ = "PATH" THEN
+
+ i% = GetPath(DlgGetPath ,BasePath$)
+ ReplaceListItem "DriveStatusText", 1, BasePath$
+ GOTO RESTART_SDK_OPTION
+
+ elseif sz$ = "CHK1" THEN
+
+ MSDOSSDK = GetCheck(1)
+ GOTO RESTART_SDK_OPTION
+
+ elseif sz$ = "CHK2" THEN
+
+ WindowsSDK = GetCheck(2)
+ GOTO RESTART_SDK_OPTION
+
+ elseif sz$ = "CHK3" THEN
+
+ MacSDK = GetCheck(3)
+ GOTO RESTART_SDK_OPTION
+
+ elseif sz$ = "BTN1" THEN
+
+ 'StfApiErr saeInit, "Got sz$", sz$
+ i% = GetDosPath()
+ ReplaceListItem "DriveStatusText", 1, BasePath$
+ GOTO RESTART_SDK_OPTION
+
+ elseif sz$ = "BTN2" THEN
+
+ 'StfApiErr saeInit, "Got sz$", sz$
+ i% = GetWinPath()
+ ReplaceListItem "DriveStatusText", 2, BaseWPath$
+ GOTO RESTART_SDK_OPTION
+
+ elseif sz$ = "BTN3" THEN
+
+ 'StfApiErr saeInit, "Got sz$", sz$
+ i% = GetMacPath()
+ ReplaceListItem "DriveStatusText", 3, Base2Path$
+ GOTO RESTART_SDK_OPTION
+
+ else
+ 'StfApiErr saeInit, "Got final sz$", sz$
+ GOSUB ASKQUIT
+ GOTO RESTART_SDK_OPTION
+ end if
+
+ 'StfApiErr saeInit, "Got sz$", sz$
+ if MSDOSSDK = FALSE and WindowsSDK = FALSE and MacSDK = FALSE then
+ goto FullInstall
+
+ end if
+
+FullInstall:
+
+ group$ = "Microsoft Visual C++"
+
+
+
+ if MSDOSSDK or WindowsSDK then
+ CreateDir BasePath$, cmoNone
+
+ CreateDir MakePath(BasePath$, "rpc"), cmoNone
+
+ ' Install the SDK files first.
+
+ CreateDir MakePath(BasePath$, "include"), cmoNone
+
+ AddSectionFilesToCopyList "Base", SrcDir$, MakePath(BaseWPath$, "rpc")
+
+ AddSectionFilesToCopyList "include", SrcDir$, MakePath(BaseWPath$, "include")
+ AddSectionFilesToCopyList "binclude", SrcDir$, MakePath(BaseWPath$, "include")
+ AddSectionFilesToCopyList "bin", SrcDir$, MakePath(BaseWPath$, "bin")
+ endif
+
+ if WindowsSDK then
+ CreateDir BaseWPath$, cmoNone
+
+ if WindowsIncSDK then
+ AddSectionFilesToCopyList "winclude", SrcDir$, MakePath(BaseWPath$, "include\win")
+ end if
+
+ if WindowsLibSDK then
+ AddSectionFilesToCopyList "wlib", SrcDir$, MakePath(BaseWPath$, "lib")
+ end if
+
+
+ CreateProgmanGroup group$, "", cmoNone
+ ShowProgmanGroup group$, 1, cmoNone
+ CreateProgmanItem group$, "RPC ReadMe", "notepad "+MakePath(BaseWPath$, "rpc\readme.txt"), "", cmoOverWrite
+
+ end if
+
+ if MSDOSSDK then
+ if MSDOSIncSDK then
+ AddSectionFilesToCopyList "dinclude", SrcDir$, MakePath(BasePath$, "include\dos")
+ end if
+ if MSDOSLibSDK then
+ AddSectionFilesToCopyList "dlib", SrcDir$, MakePath(BasePath$, "lib")
+ end if
+ end if
+
+ if MacSDK then
+ CreateDir Base2Path$, cmoNone
+
+ if MacIncSDK then
+ AddSectionFilesToCopyList "minclude", SrcDir$, MakePath(Base2Path$, "include")
+ AddSectionFilesToCopyList "binclude", SrcDir$, MakePath(Base2Path$, "include")
+ end if
+ if MacLibSDK then
+ AddSectionFilesToCopyList "mlib", SrcDir$, MakePath(Base2Path$, "lib")
+ end if
+ end if
+
+
+ ' DumpCopyList "C:\tmp\t"
+ CopyFilesInCopyList
+
+
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' QUIT points
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+
+QUIT:
+ ON ERROR GOTO ERRQUIT
+ OldNetapiPath$ = FindTargetOnEnvVar("netapi.old", "PATH")
+
+ if OldNetapiPath$ <> "" then
+ BackupFile OldNetapiPath$, "netapi.dll"
+ end if
+
+ if ERR = 0 THEN
+ dlg% = EXITSUCCESS
+
+ elseif ERR = STFQUIT THEN
+ dlg% = EXITQUIT
+
+ else
+ dlg% = EXITFAILURE
+ end if
+
+QUITL1:
+ while UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "") = "REACTIVATE"
+ wend
+
+ UIPop 1
+
+ END
+
+ERRQUIT:
+ i% = DoMsgBox("Setup sources were corrupted, contact technical support", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
+ END
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' quit prompt dialog box subroutine
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+ASKQUIT:
+ sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
+
+ if sz$ = "EXIT" THEN
+ UIPopAll
+ ERROR STFQUIT
+ elseif sz$ = "REACTIVATE" THEN
+ GOTO ASKQUIT
+ else
+ UIPop 1
+ end if
+ RETURN
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetPath
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+
+Function GetPath(Dialog%, Path$) Static AS INTEGER
+
+ SetSymbolValue "EditTextIn", Path$
+ SetSymbolValue "EditFocus", "END"
+
+ sz$ = UIStartDlg(CUIDLL$, Dialog%, "FEditDlgProc", Dialog% + 1, HELPPROC$)
+ NewPath$ = GetSymbolValue("EditTextOut")
+
+ GetPath = FALSE
+
+ if sz$ = "CONTINUE" THEN
+ Path$ = NewPath$
+ GetPath = TRUE
+ end if
+
+ UIPop (1)
+
+end function
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetDosPath
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+
+Function GetDosPath() Static AS INTEGER
+
+ SetSymbolValue "EditTextIn", BasePath$
+ SetSymbolValue "EditFocus", "END"
+ RemoveSymbol "InnerChkItemsState"
+ AddListItem "InnerChkItemsState", BoolToOnOff(MSDOSIncSDK)
+ AddListItem "InnerChkItemsState", BoolToOnOff(MSDOSLibSDK)
+
+RESTART_DOS_PATH:
+ sz$ = UIStartDlg(CUIDLL$,DlgDosSdkPath, "FMyEditDlgProc", DlgDosSdkPathHelp, HELPPROC$)
+ NewPath$ = GetSymbolValue("EditTextOut")
+
+ GetDosPath = FALSE
+
+ if sz$ = "CONTINUE" THEN
+ BasePath$ = NewPath$
+ GetDosPath = TRUE
+ elseif sz$ = "CHK1" THEN
+ MSDOSIncSDK = GetInnerChk(1)
+ GOTO RESTART_DOS_PATH
+ elseif sz$ = "CHK2" THEN
+ MSDOSLibSDK = GetInnerChk(2)
+ GOTO RESTART_DOS_PATH
+ end if
+
+ UIPop (1)
+
+end function
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetWinPath
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+
+Function GetWinPath() Static AS INTEGER
+
+ SetSymbolValue "EditTextIn", BaseWPath$
+ SetSymbolValue "EditFocus", "END"
+ RemoveSymbol "InnerChkItemsState"
+ AddListItem "InnerChkItemsState", BoolToOnOff(WindowsIncSDK)
+ AddListItem "InnerChkItemsState", BoolToOnOff(WindowsLibSDK)
+ 'StfApiErr saeInit, "WindowsIncSDK is", BoolToOnOff(WindowsIncSDK)
+
+RESTART_Win_PATH:
+ sz$ = UIStartDlg(CUIDLL$,DlgWinSdkPath, "FMyEditDlgProc", DlgWinSdkPathHelp, HELPPROC$)
+ NewPath$ = GetSymbolValue("EditTextOut")
+
+ GetWinPath = FALSE
+
+ if sz$ = "CONTINUE" THEN
+ BaseWPath$ = NewPath$
+ GetWinPath = TRUE
+ elseif sz$ = "CHK1" THEN
+ WindowsIncSDK = GetInnerChk(1)
+ GOTO RESTART_Win_PATH
+ elseif sz$ = "CHK2" THEN
+ WindowsLibSDK = GetInnerChk(2)
+ GOTO RESTART_Win_PATH
+ end if
+
+ UIPop (1)
+
+end function
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetMacPath
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+
+Function GetMacPath() Static AS INTEGER
+
+ SetSymbolValue "EditTextIn", Base2Path$
+ SetSymbolValue "EditFocus", "END"
+ RemoveSymbol "InnerChkItemsState"
+ AddListItem "InnerChkItemsState", BoolToOnOff(MacIncSDK)
+ AddListItem "InnerChkItemsState", BoolToOnOff(MacLibSDK)
+
+RESTART_Mac_PATH:
+ sz$ = UIStartDlg(CUIDLL$,DlgMacSdkPath, "FMyEditDlgProc", DlgMacSdkPathHelp, HELPPROC$)
+ NewPath$ = GetSymbolValue("EditTextOut")
+
+ GetMacPath = FALSE
+
+ if sz$ = "CONTINUE" THEN
+ Base2Path$ = NewPath$
+ GetMacPath = TRUE
+ elseif sz$ = "CHK1" THEN
+ MacIncSDK = GetInnerChk(1)
+ GOTO RESTART_Mac_PATH
+ elseif sz$ = "CHK2" THEN
+ 'StfApiErr saeInit, "Got sz$", sz$
+ GOTO RESTART_Mac_PATH
+ end if
+
+ UIPop (1)
+
+end function
+
+
+'**
+'** Purpose:
+'** Appends a file name to the end of a directory path,
+'** inserting a backslash character as needed.
+'** Arguments:
+'** szDir$ - full directory path (with optional ending "\")
+'** szFile$ - filename to append to directory
+'** Returns:
+'** Resulting fully qualified path name.
+'*************************************************************************
+
+FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
+ if szDir$ = "" THEN
+ MakePath = szFile$
+ elseif szFile$ = "" THEN
+ MakePath = szDir$
+ elseif MID$(szDir$, LEN(szDir$), 1) = "\" THEN
+ MakePath = szDir$ + szFile$
+ else
+ MakePath = szDir$ + "\" + szFile$
+ end if
+END FUNCTION
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetCheck
+'
+' returns true if the specified item is checked
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+FUNCTION GetCheck (index%) STATIC AS INTEGER
+
+ if GetListItem("CheckItemsState", index%) = "ON" then
+ GetCheck = TRUE
+ else
+ GetCheck = FALSE
+ end if
+
+END FUNCTION
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetInnerChk
+'
+' returns true if the specified item is checked
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+FUNCTION GetInnerChk (index%) STATIC AS INTEGER
+
+ if GetListItem("InnerChkItemsState", index%) = "ON" then
+ GetInnerChk = TRUE
+ else
+ GetInnerChk = FALSE
+ end if
+
+END FUNCTION
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Sub CopyList
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+Sub CopyList(ListOut$, ListIn$, Truncate%) static
+
+ if Truncate% <> 0 then
+ RemoveSymbol ListOut$
+ end if
+
+ for i% = 1 to GetListLength(ListIn$) step 1
+ AddListItem ListOut$, GetListItem(ListIn$, i%)
+ next
+
+end sub
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function BoolToOnOff
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+function BoolToOnOff (Bool%) static AS String
+
+ if Bool% then
+ BoolToOnOff$ = "ON"
+ else
+ BoolToOnOff$ = "OFF"
+ end if
+
+end function
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function FormatSize
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+function FormatSize () static AS String
+
+ cbMore& = GetCopyListCost ("", "Cost", "")
+ cbSize = val(GetListItem("Cost", asc(BasePath$) - asc("A") + 1)) / 1024
+
+ if cbSize then
+ FormatSize = str$(cbSize)+"K"
+ else
+ FormatSize = ""
+ end if
+
+ ClearCopyList
+
+end function
+
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Sizing functions
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetDosSize
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+function GetDosSize () static AS String
+
+ if MSDOSSDK then
+
+ if MSDOSIncSDK then
+ AddSectionFilesToCopyList "include", SrcDir$, BasePath$
+ AddSectionFilesToCopyList "binclude", SrcDir$, BasePath$
+ AddSectionFilesToCopyList "dinclude", SrcDir$, BasePath$
+ end if
+
+ if MSDOSLibSDK then
+ AddSectionFilesToCopyList "dlib", SrcDir$, BasePath$
+ end if
+
+ end if
+
+ GetDosSize = FormatSize()
+
+end function
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetWinSize
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+function GetWinSize () static AS String
+
+ if WindowsSDK then
+ if WindowsIncSDK then
+ AddSectionFilesToCopyList "include", SrcDir$, BaseWPath$
+ AddSectionFilesToCopyList "binclude", SrcDir$, BaseWPath$
+ AddSectionFilesToCopyList "winclude", SrcDir$, BaseWPath$
+ end if
+
+ if WindowsLibSDK then
+ AddSectionFilesToCopyList "wlib", SrcDir$, BaseWPath$
+ end if
+ end if
+
+ GetWinSize = FormatSize()
+
+end function
+
+
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+' Function GetMacSize
+'
+'
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+function GetMacSize () static AS String
+
+ if MacSDK then
+ if MacIncSDK then
+ AddSectionFilesToCopyList "minclude", SrcDir$, Base2Path$
+ AddSectionFilesToCopyList "binclude", SrcDir$, Base2Path$
+ end if
+
+ if MacLibSDK then
+ AddSectionFilesToCopyList "mlib", SrcDir$, Base2Path$
+ end if
+ end if
+
+
+ GetMacSize = FormatSize()
+
+end function
+
+
+
diff --git a/public/sdk/rpc16/sdk/rpcx86.h_ b/public/sdk/rpc16/sdk/rpcx86.h_
new file mode 100644
index 000000000..3bb5f83bd
--- /dev/null
+++ b/public/sdk/rpc16/sdk/rpcx86.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/setup.lst b/public/sdk/rpc16/sdk/setup.lst
new file mode 100644
index 000000000..5233d7d51
--- /dev/null
+++ b/public/sdk/rpc16/sdk/setup.lst
@@ -0,0 +1,20 @@
+[Params]
+ WndTitle = Microsoft RPC Setup
+ WndMess = Initializing Setup...
+ TmpDirSize = 500
+ TmpDirName = ~msstfqf.t
+ CmdLine = _mstest RPCSDK.mst /C "/S %s %s"
+ DrvModName = DSHELL
+
+[Files]
+ RPCSDK.mst = RPCSDK.mst
+ RPCSDK.in_ = RPCSDK.inf
+ setupapi.inc = setupapi.inc
+ msdetect.inc = msdetect.inc
+ mscomstf.dll = mscomstf.dll
+ msinsstf.dll = msinsstf.dll
+ msuilstf.dll = msuilstf.dll
+ msshlstf.dll = msshlstf.dll
+ mscuistf.dl_ = mscuistf.dll
+ msdetstf.dll = msdetstf.dll
+ _mstest.exe = _mstest.exe
diff --git a/public/sdk/rpc16/sdk/setupapi.inc b/public/sdk/rpc16/sdk/setupapi.inc
new file mode 100644
index 000000000..b249c01a6
--- /dev/null
+++ b/public/sdk/rpc16/sdk/setupapi.inc
@@ -0,0 +1,1803 @@
+'**************************************************************************
+'******************************* Windows API's **************************
+'**************************************************************************
+GLOBAL hSetup AS INTEGER
+GLOBAL fFrameInit AS INTEGER
+GLOBAL fInstallInit AS INTEGER
+
+CONST SM_CXSCREEN = 0
+CONST SM_CYSCREEN = 1
+
+CONST WF_80x87 = 1024
+CONST WF_CPU186 = 128
+CONST WF_CPU286 = 2
+CONST WF_CPU386 = 4
+CONST WF_CPU486 = 8
+CONST WF_STANDARD = 16
+CONST WF_ENHANCED = 32
+
+
+'' DoMsgBox Flags
+
+CONST MB_OK = 0
+CONST MB_ICONHAND = 16
+CONST MB_TASKMODAL = 8192
+
+
+DECLARE FUNCTION DoMsgBox LIB "mscomstf.dll" (lpText$,lpCaption$,wType%) As INTEGER
+DECLARE FUNCTION GetWindowsDirectory LIB "kernel" (szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION GetSystemDirectory LIB "kernel" (szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION GetProfileString LIB "kernel" (szSect$, szKey$, szDefault$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION GetVersion LIB "kernel" AS INTEGER
+DECLARE FUNCTION GetSystemMetrics LIB "user" (nIndex%) AS INTEGER
+DECLARE FUNCTION GetWinFlags LIB "kernel" AS LONG
+
+
+
+
+'**************************************************************************
+'****************************** Setup Constants ***************************
+'**************************************************************************
+
+
+''Command Option Flags
+
+CONST cmoVital = 1
+CONST cmoCopy = 2
+CONST cmoUndo = 4
+CONST cmoRoot = 8
+CONST cmoDecompress = 16
+CONST cmoTimeStamp = 32
+CONST cmoReadOnly = 64
+CONST cmoBackup = 128
+CONST cmoForce = 256
+CONST cmoRemove = 512
+CONST cmoOverwrite = 1024
+CONST cmoAppend = 2048
+CONST cmoPrepend = 4096
+CONST cmoNone = 0
+CONST cmoAll = 65535
+
+
+''File Exist Modes
+
+CONST femExists = 0
+CONST femRead = 1
+CONST femWrite = 2
+CONST femReadWrite = 3
+
+
+''Read-Only Return Code
+
+CONST ynrcNo = 0
+CONST ynrcYes = 1
+CONST ynrcErr1 = 2
+CONST ynrcErr2 = 3
+CONST ynrcErr3 = 4
+CONST ynrcErr4 = 5
+CONST ynrcErr5 = 6
+CONST ynrcErr6 = 7
+CONST ynrcErr7 = 8
+CONST ynrcErr8 = 9
+CONST ynrcErr9 = 10
+
+
+''General Return Codes
+
+CONST grcOkay = 0
+CONST grcNotOkay = 1
+CONST grcUserQuit = 48
+
+
+''Ranges
+
+''CONST cbSymValMax = 8192
+CONST cbSymValMax = 512
+ ''REVIEW: symbol table will allow strings up to 8192 bytes
+ '' but we get Out of String Space wattdrvr error if we alloc
+ '' STRING$() that big. (See GetSymbolValue and GetListItem)
+ '' We should look into using dynamic far alloc instead of
+ '' STRING$ for large buffers.
+ '' NOTE: 8192 works okay with runtime wattdrvr, however.
+
+
+''ON ERROR Error Codes
+CONST STFERR = 1024 ''setup system error
+CONST STFQUIT = 1025 ''user quit
+
+CONST scmOff = 0
+CONST scmOnIgnore = 1
+CONST scmOnFatal = 2
+
+
+'**************************************************************************
+'******************************** Setup API's ***************************
+'**************************************************************************
+
+'' common
+
+DECLARE FUNCTION FParseFATPathIntoPieces LIB "mscomstf.dll" (szPath$, szVol$, cbVol%, szDir$, cbDir%, szFile$, cbFile%) AS INTEGER
+DECLARE FUNCTION FOpenInf LIB "mscomstf.dll" (szFile$, fCheck%, fCheckSyms%) AS INTEGER
+DECLARE FUNCTION FSetSilent LIB "mscomstf.dll" (mode%) AS INTEGER
+DECLARE FUNCTION FSetBeepingMode LIB "mscomstf.dll" (mode%) AS INTEGER
+DECLARE FUNCTION HShowWaitCursor LIB "msshlstf.dll" AS INTEGER
+DECLARE FUNCTION FRestoreCursor LIB "msshlstf.dll" (hPrev%) AS INTEGER
+DECLARE FUNCTION FOpenLogFile LIB "mscomstf.dll" (szFile$, fAppend%) AS INTEGER
+DECLARE FUNCTION FCloseLogFile LIB "mscomstf.dll" AS INTEGER
+DECLARE FUNCTION FWriteToLogFile LIB "mscomstf.dll" (sz$, fRequire%) AS INTEGER
+DECLARE FUNCTION CbGetInfSectionKeyField LIB "mscomstf.dll" (szSect$, szKey$, iField%, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION FMakeListInfSectionField LIB "mscomstf.dll" (szSym$, szSect$, iField%) AS INTEGER
+
+
+''shell
+
+DECLARE FUNCTION FSetBitmap LIB "msshlstf.dll" (szDll$, Bitmap%) AS INTEGER
+DECLARE FUNCTION FSetAbout LIB "msshlstf.dll" (szAbout1$, szAbout2$) AS INTEGER
+DECLARE FUNCTION FDoDialog LIB "msuilstf.dll" (hwnd%, szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) AS INTEGER
+DECLARE FUNCTION FKillNDialogs LIB "msuilstf.dll" (n%) AS INTEGER
+DECLARE SUB SetWindowText LIB "User" (hwnd%, lpString$)
+DECLARE FUNCTION FSetSymbolValue LIB "msshlstf.dll" (szSymbol$, szValue$) AS INTEGER
+DECLARE FUNCTION FRemoveSymbol LIB "mscomstf.dll" (szSym$) AS INTEGER
+DECLARE FUNCTION CbGetSymbolValue LIB "mscomstf.dll" (szSymbol$, szValue$, Length%) AS INTEGER
+DECLARE FUNCTION UsGetListLength LIB "mscomstf.dll" (szSymbol$) AS INTEGER
+DECLARE FUNCTION CbGetListItem LIB "mscomstf.dll" (szListSymbol$, n%, szListItem$, cbMax%) AS INTEGER
+DECLARE FUNCTION FAddListItem LIB "mscomstf.dll" (szListSymbol$, szListItem$) AS INTEGER
+DECLARE FUNCTION FReplaceListItem LIB "mscomstf.dll" (szListSymbol$, n%, szListItem$) AS INTEGER
+DECLARE FUNCTION FSetSymbolToListOfInfKeys LIB "mscomstf.dll" (szSym$, szSect$, fNulls%) AS INTEGER
+
+
+''shell
+
+DECLARE FUNCTION InitializeFrame LIB "msshlstf.dll" (szCmdLine$) AS INTEGER
+DECLARE FUNCTION HwndFrame LIB "msshlstf.dll" AS INTEGER
+DECLARE FUNCTION HinstFrame LIB "msshlstf.dll" AS INTEGER
+
+
+
+''install
+
+DECLARE SUB ProSetPos LIB "msinsstf.dll" (x%, y%)
+DECLARE FUNCTION FCreateDir LIB "msinsstf.dll" (szDir$, cmo%) AS INTEGER
+DECLARE FUNCTION FRemoveDir LIB "msinsstf.dll" (szDir$, cmo%) AS INTEGER
+DECLARE FUNCTION FAddSectionFilesToCopyList LIB "mscomstf.dll" (szSect$, szSrc$, szDest$) AS INTEGER
+DECLARE FUNCTION FAddSectionKeyFileToCopyList LIB "mscomstf.dll" (szSect$, szKey$, szSrc$, szDest$) AS INTEGER
+DECLARE FUNCTION FAddSpecialFileToCopyList LIB "mscomstf.dll" (szSect$, szKey$, szSrc$, szDest$) AS INTEGER
+DECLARE FUNCTION GrcCopyFilesInCopyList LIB "msinsstf.dll" (hInstance%) AS INTEGER
+DECLARE FUNCTION FRemoveIniSection LIB "msinsstf.dll" (szFile$, szSect$, cmo%) AS INTEGER
+DECLARE FUNCTION FCreateIniKeyValue LIB "msinsstf.dll" (szFile$, szSect$, szKey$, szValue$, cmo%) AS INTEGER
+DECLARE FUNCTION FRemoveIniKey LIB "msinsstf.dll" (szFile$, szSect$, szKey$, cmo%) AS INTEGER
+DECLARE FUNCTION FCreateSysIniKeyValue LIB "msinsstf.dll" (szFile$, szSect$, szKey$, szValue$, cmo%) AS INTEGER
+DECLARE FUNCTION FCreateProgManGroup LIB "msinsstf.dll" (szGroup$, szPath$, cmo%) AS INTEGER
+DECLARE FUNCTION FCreateProgManItem LIB "msinsstf.dll" (szGroup$, szItem$, szCmd$, cmo%) AS INTEGER
+DECLARE FUNCTION FShowProgManGroup LIB "msinsstf.dll" (szGroup$, szCmd$, cmo%) AS INTEGER
+DECLARE FUNCTION FStampResource LIB "msinsstf.dll" (szSect$, szKey$, szDst$, wResType%, wResId%, szData$, cbData%) AS INTEGER
+DECLARE FUNCTION FDumpCopyListToFile LIB "msinsstf.dll" (szFile$) AS INTEGER
+DECLARE SUB ResetCopyList LIB "msinsstf.dll"
+DECLARE FUNCTION LcbGetCopyListCost LIB "msinsstf.dll" (szExtraList$, szCostList$, szNeedList$) AS LONG
+DECLARE FUNCTION FAddDos5Help LIB "msinsstf.dll" (szProgName$, szProgHelp$, cmo%) AS INTEGER
+DECLARE FUNCTION FCopyOneFile LIB "msinsstf.dll" (szSrc$, szDest$, cmo%, fAppend%) AS INTEGER
+DECLARE FUNCTION YnrcRemoveFile LIB "msinsstf.dll" (szFullPathSrc$, cmo%) AS INTEGER
+DECLARE FUNCTION YnrcBackupFile LIB "msinsstf.dll" (szFullPath$, szBackup$, cmo%) AS INTEGER
+DECLARE FUNCTION FInitializeInstall LIB "msinsstf.dll" (hinst%, hwndFrame%) AS INTEGER
+DECLARE FUNCTION WFindFileUsingFileOpen LIB "msinsstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
+DECLARE FUNCTION FIsDirWritable LIB "msinsstf.dll" (szDir$) AS INTEGER
+DECLARE FUNCTION FIsFileWritable LIB "msinsstf.dll" (szFile$) AS INTEGER
+DECLARE FUNCTION FAddToBillboardList LIB "msinsstf.dll" (szDll$, idDlg%, szProc$, lTicks&) AS INTEGER
+DECLARE FUNCTION FClearBillboardList LIB "msinsstf.dll" AS INTEGER
+DECLARE FUNCTION FSetRestartDir LIB "msinsstf.dll" (szDir$) AS INTEGER
+DECLARE FUNCTION FRestartListEmpty LIB "msinsstf.dll" AS INTEGER
+DECLARE FUNCTION FExitExecRestart LIB "msinsstf.dll" AS INTEGER
+DECLARE FUNCTION SetCopyMode LIB "msinsstf.dll" (fMode%) AS INTEGER
+DECLARE FUNCTION GetCopyMode LIB "msinsstf.dll" AS INTEGER
+DECLARE FUNCTION SetDecompMode LIB "msinsstf.dll" (fMode%) AS INTEGER
+DECLARE FUNCTION GetDecompMode LIB "msinsstf.dll" AS INTEGER
+DECLARE FUNCTION SetSizeCheckMode LIB "msinsstf.dll" (scmMode%) AS INTEGER
+DECLARE FUNCTION FPrependToPath LIB "msinsstf.dll" (szSrc$, szDst$, szDir$, cmo%) AS INTEGER
+
+DECLARE FUNCTION SetTimeValue LIB "msinsstf.dll" (usHours%, usMinutes%, usSeconds%) AS INTEGER
+
+
+
+'*************************************************************************
+'**************** Setup Basic Wrapper Declarations *********************
+'*************************************************************************
+
+
+''shell
+
+DECLARE SUB SetBitmap(szDll$, Bitmap%)
+DECLARE SUB SetAbout(szAbout1$, szAbout2$)
+DECLARE FUNCTION UIStartDlg(szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) AS STRING
+DECLARE SUB UIPop (n%)
+DECLARE SUB UIPopAll
+DECLARE SUB SetTitle (sz$)
+DECLARE SUB ReadInfFile (szFile$)
+DECLARE SUB SetSymbolValue (szSymbol$, szValue$)
+DECLARE SUB RemoveSymbol (szSym$)
+DECLARE FUNCTION GetSymbolValue (szSymbol$) AS STRING
+DECLARE FUNCTION GetListLength(szSymbol$) AS INTEGER
+DECLARE SUB MakeListFromSectionKeys (szSymbol$, szSect$)
+DECLARE FUNCTION GetListItem(szSymbol$, n%) AS STRING
+DECLARE SUB AddListItem(szSymbol$, szItem$)
+DECLARE SUB ReplaceListItem(szSymbol$, n%, szItem$)
+
+DECLARE FUNCTION InitFrame (szCmdLine$) AS INTEGER
+DECLARE FUNCTION InitSetup (szCmdLine$) AS INTEGER
+
+DECLARE FUNCTION ShowWaitCursor AS INTEGER
+DECLARE SUB RestoreCursor (hPrev%)
+
+DECLARE FUNCTION SetBeepingMode (mode%) AS INTEGER
+DECLARE FUNCTION SetSilentMode (mode%) AS INTEGER
+
+DECLARE FUNCTION GetSectionKeyDate (szSect$, szKey$) AS STRING
+DECLARE FUNCTION GetSectionKeyFilename (szSect$, szKey$) AS STRING
+DECLARE FUNCTION GetSectionKeySize (szSect$, szKey$) AS LONG
+DECLARE FUNCTION GetSectionKeyVersion (szSect$, szKey$) AS STRING
+
+DECLARE SUB MakeListFromSectionDate (szSym$, szSect$)
+DECLARE SUB MakeListFromSectionFilename (szSym$, szSect$)
+DECLARE SUB MakeListFromSectionSize (szSym$, szSect$)
+DECLARE SUB MakeListFromSectionVersion (szSym$, szSect$)
+
+
+''install
+
+
+DECLARE SUB CreateDir (szDir$, cmo%)
+DECLARE SUB RemoveDir (szDir$, cmo%)
+DECLARE SUB AddSectionFilesToCopyList (szSect$, szSrc$, szDest$)
+DECLARE SUB AddSectionKeyFileToCopyList (szSect$, szKey$, szSrc$, szDest$)
+DECLARE SUB AddSpecialFileToCopyList (szSect$, szKey$, szSrc$, szDest$)
+DECLARE SUB CopyFilesInCopyList
+DECLARE SUB RemoveIniSection (szFile$, szSect$, cmo%)
+DECLARE SUB CreateIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%)
+DECLARE SUB RemoveIniKey (szFile$, szSect$, szKey$, cmo%)
+DECLARE SUB CreateSysIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%)
+DECLARE SUB CreateProgmanGroup (szGroup$, szPath$, cmo%)
+DECLARE SUB CreateProgmanItem (szGroup$, szItem$, szCmd$, szOther$, cmo%)
+DECLARE SUB ShowProgmanGroup (szGroup$, Cmd%, cmo%)
+DECLARE SUB StampResource (szSect$, szKey$, szDst$, wResType%, wResId%, szData$, cbData%)
+DECLARE SUB DumpCopyList (szFile$)
+DECLARE SUB ClearCopyList
+DECLARE FUNCTION GetCopyListCost (szExtraList$, szCostList$, szNeedList$) AS LONG
+DECLARE SUB AddDos5Help (szProgName$, szProgHelp$, cmo%)
+DECLARE SUB CopyFile (szFullPathSrc$, szFullPathDst$, cmo%, fAppend%)
+DECLARE SUB RemoveFile (szFullPathSrc$, cmo%)
+DECLARE SUB BackupFile (szFullPath$, szBackup$)
+DECLARE SUB RenameFile (szFullPath$, szBackup$)
+DECLARE SUB InitInstall
+DECLARE SUB AddToBillboardList (szDll$, idDlg%, szProc$, lTicks&)
+DECLARE SUB AddBlankToBillboardList (lTicks&)
+DECLARE SUB ClearBillboardList
+DECLARE SUB OpenLogFile (szFile$, fAppend%)
+DECLARE SUB CloseLogFile
+DECLARE SUB WriteToLogFile (szStr$)
+DECLARE SUB SetCopyGaugePosition (x%, y%)
+DECLARE SUB SetRestartDir(szDir$)
+DECLARE FUNCTION RestartListEmpty AS INTEGER
+DECLARE FUNCTION ExitExecRestart AS INTEGER
+DECLARE FUNCTION FindFileUsingFileOpen (szFile$) AS STRING
+DECLARE FUNCTION IsDirWritable (szDir$) AS INTEGER
+DECLARE FUNCTION IsFileWritable (szFile$) AS INTEGER
+DECLARE FUNCTION GetNthFieldFromIniString (szLine$, iField%) AS STRING
+DECLARE SUB PrependToPath (szSrc$, szDst$, szDir$, cmo%)
+
+
+'' Error Handling
+
+'$ifdef DEBUG
+
+'' Setup API Errors
+CONST saeFail = 0
+CONST saeInit = 1
+CONST saeNYI = 3
+CONST saeArg = 4 ''must be max sae value
+
+DECLARE SUB StfApiErr (nMsg%, szApi$, szArgs$)
+DECLARE SUB BadArgErr (nArg%, szApi$, szArgs$)
+
+'' chk arg
+DECLARE FUNCTION FValidFATDir LIB "mscomstf.dll" (szDir$) AS INTEGER
+DECLARE FUNCTION CchlValidFATSubPath LIB "mscomstf.dll" (szPath$) AS INTEGER
+DECLARE FUNCTION FValidFATPath LIB "mscomstf.dll" (szPath$) AS INTEGER
+DECLARE FUNCTION FValidDrive (szDrive$) AS INTEGER
+
+DECLARE FUNCTION FValidInfSect (szSect$) AS INTEGER
+DECLARE FUNCTION FValidIniFile (szFile$) AS INTEGER
+
+'$endif ''DEBUG
+
+
+
+'' Windows system detect
+
+DECLARE FUNCTION GetWindowsMajorVersion AS INTEGER
+DECLARE FUNCTION GetWindowsMinorVersion AS INTEGER
+DECLARE FUNCTION GetWindowsMode AS INTEGER
+DECLARE FUNCTION GetWindowsDir AS STRING
+DECLARE FUNCTION GetWindowsSysDir AS STRING
+DECLARE FUNCTION IsWindowsShared AS INTEGER
+DECLARE FUNCTION GetScreenWidth AS INTEGER
+DECLARE FUNCTION GetScreenHeight AS INTEGER
+
+
+'*************************************************************************
+'***************** Setup Basic Wrapper Definitions *********************
+'*************************************************************************
+FUNCTION InitSetup(szCmdLine$) STATIC AS INTEGER
+ fFrameInit = 0
+ fInstallInit = 0
+
+ IF hSetup > 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeInit, "InitSetup", szCmdLine$
+'$endif ''DEBUG
+ END IF
+
+ i% = InitFrame(szCmdLine$)
+ fFrameInit = 1
+
+ InitInstall
+ fInstallInit = 1
+
+ InitSetup = i%
+END FUNCTION
+
+
+
+'**************************************************************************
+FUNCTION InitFrame(szCmdLine$) STATIC AS INTEGER
+ IF hSetup > 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeInit, "InitFrame", szCmdLine$
+'$endif ''DEBUG
+ ELSE
+ i% = InitializeFrame(szCmdLine$)
+ IF i% = -1 THEN
+ END '' NOT an error - Usage (/?) or Command line copy operation
+ ELSEIF i% = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "InitFrame", szCmdLine$
+'$endif ''DEBUG
+ END
+ ELSE
+ InitFrame = i%
+ END IF
+ END IF
+END FUNCTION
+
+
+'**************************************************************************
+SUB SetBitmap(szDll$, Bitmap%) STATIC
+ IF FSetBitmap(szDll$, Bitmap%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "SetBitmap", szDll$+","+STR$(Bitmap%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'**************************************************************************
+SUB SetAbout(szAbout1$, szAbout2$) STATIC
+ IF FSetAbout(szAbout1$, szAbout2$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "SetAbout", szAbout1$ + "," + szAbout2$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB SetTitle(sz$) STATIC
+ SetWindowText HwndFrame(), sz$
+END SUB
+
+
+'*************************************************************************
+SUB ReadInfFile (szFile$) STATIC
+'$ifdef DEBUG
+ if FValidFATPath(szFile$) = 0 then
+ BadArgErr 1, "ReadInfFile", szFile$
+ end if
+ IF FOpenInf(szFile$, 1, 1) = 0 THEN
+ StfApiErr saeFail, "ReadInfFile", szFile$
+'$else ''!DEBUG
+ IF FOpenInf(szFile$, 1, 0) = 0 THEN
+'$endif ''!DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+FUNCTION UIStartDlg(szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) STATIC AS STRING
+'$ifdef DEBUG
+ if szDll$ = "" then
+ n% = 1
+ elseif szDlgProc$ = "" then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "UIStartDlg", szDll$+", "+STR$(Dlg%)+", "+szDlgProc$+", "+STR$(HelpDlg%)+", "+szHelpProc$
+ end if
+'$endif ''DEBUG
+
+ IF FDoDialog(HwndFrame(), szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "UIStartDlg", szDll$+", "+STR$(Dlg%)+", "+szDlgProc$+", "+STR$(HelpDlg%)+", "+szHelpProc$
+'$endif ''DEBUG
+ ERROR STFERR
+ ELSE
+ UIStartDlg = GetSymbolValue("DLGEVENT")
+ END IF
+END FUNCTION
+
+
+'*************************************************************************
+SUB UIPop (n%) STATIC
+ IF FKillNDialogs(n%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "UIPop", STR$(n%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB UIPopAll STATIC
+ IF FKillNDialogs(65535) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "UIPopAll", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+FUNCTION GetSymbolValue(szSymbol$) STATIC AS STRING
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetSymbolValue", szSymbol$
+ end if
+'$endif ''DEBUG
+ szValue$ = string$(cbSymValMax,32)
+ Length% = CbGetSymbolValue(szSymbol$, szValue$, cbSymValMax)
+ GetSymbolValue = szValue$
+ IF Length% >= cbSymValMax THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+ IF szSymbol$ = "" THEN
+ ERROR STFERR
+ END IF
+ szValue$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetListLength(szSymbol$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "GetListLength", szSymbol$
+ end if
+'$endif ''DEBUG
+ GetListLength = UsGetListLength(szSymbol$)
+ IF szSymbol$ = "" THEN
+ ERROR STFERR
+ END IF
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetListItem(szListSymbol$, nItem%) STATIC AS STRING
+'$ifdef DEBUG
+ if szListSymbol$ = "" then
+ BadArgErr 1, "GetListItem", szListSymbol$+", "+STR$(nItem%)
+ end if
+
+ if nItem% <= 0 or nItem% > GetListLength(szListSymbol$) then
+ BadArgErr 2, "GetListItem", szListSymbol$+", "+STR$(nItem%)
+ end if
+'$endif ''DEBUG
+
+ szListItem$ = string$(cbSymValMax,32)
+ Length% = CbGetListItem(szListSymbol$, nItem%, szListItem$, cbSymValMax)
+ GetListItem = szListItem$
+ IF Length% >= cbSymValMax THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+ IF szListSymbol$ = "" THEN
+ ERROR STFERR
+ END IF
+ if nItem% <= 0 or nItem% > GetListLength(szListSymbol$) then
+ ERROR STFERR
+ end if
+ szListItem$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+SUB AddListItem(szSymbol$, szItem$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "AddListItem", szSymbol$+", "+szItem$
+ end if
+'$endif ''DEBUG
+ IF FAddListItem(szSymbol$, szItem$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "AddListItem", szSymbol$+", "+szItem$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB ReplaceListItem(szSymbol$, n%, szItem$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ nArg% = 1
+ elseif (n% <= 0) OR (n% > GetListLength(szSymbol$)) then
+ nArg% = 2
+ else
+ nArg% = 0
+ end if
+ if nArg% > 0 then
+ BadArgErr nArg%, "ReplaceListItem", szSymbol$+", "+STR$(n%)+", "+szItem$
+ end if
+'$endif ''DEBUG
+
+ IF FReplaceListItem(szSymbol$, n%, szItem$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "ReplaceListItem", szSymbol$+", "+STR$(n%)+", "+szItem$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'**************************************************************************
+SUB MakeListFromSectionKeys(szSymbol$, szSect$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "MakeListFromSectionKeys", szSymbol$+", "+szSect$
+ end if
+'$endif ''DEBUG
+
+ IF FSetSymbolToListOfInfKeys(szSymbol$, szSect$, 1) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "MakeListFromSectionKeys", szSymbol$+", "+szSect$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB SetSymbolValue(szSymbol$, szValue$) STATIC
+'$ifdef DEBUG
+ if szSymbol$ = "" then
+ BadArgErr 1, "SetSymbolValue", szSymbol$+", "+szValue$
+ end if
+'$endif ''DEBUG
+ IF FSetSymbolValue(szSymbol$, szValue$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "SetSymbolValue", szSymbol$+", "+szValue$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB RemoveSymbol(szSym$) STATIC
+'$ifdef DEBUG
+ if szSym$ = "" then
+ BadArgErr 1, "RemoveSymbol", szSym$
+ end if
+'$endif ''DEBUG
+ IF FRemoveSymbol(szSym$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "RemoveSymbol", szSym$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+FUNCTION ShowWaitCursor STATIC AS INTEGER
+ ShowWaitCursor = HShowWaitCursor
+END FUNCTION
+
+
+'*************************************************************************
+SUB RestoreCursor (hPrev%) STATIC
+ i% = FRestoreCursor(hPrev%)
+ IF i% = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "RestoreCursor", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+FUNCTION SetBeepingMode (mode%) STATIC AS INTEGER
+ SetBeepingMode = FSetBeepingMode(mode%)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION SetSilentMode (mode%) STATIC AS INTEGER
+ SetSilentMode = FSetSilent(mode%)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetSectionKeyDate (szSect$, szKey$) STATIC AS STRING
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "GetSectionKeyDate", szSect$+", "+szKey$
+ end if
+'$endif ''DEBUG
+
+ szBuf$ = string$(128, 32)
+ Length% = CbGetInfSectionKeyField(szSect$, szKey$, 5, szBuf$, 128)
+ IF Length% >= 128 THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+
+ IF Length% = -1 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetSectionKeyDate", szSect$+", "+szKey$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+
+ GetSectionKeyDate = szBuf$
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetSectionKeyFilename (szSect$, szKey$) STATIC AS STRING
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "GetSectionKeyFilename", szSect$+", "+szKey$
+ end if
+'$endif ''DEBUG
+
+ szBuf$ = string$(128, 32)
+ Length% = CbGetInfSectionKeyField(szSect$, szKey$, 1, szBuf$, 128)
+ IF Length% >= 128 THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+
+ IF Length% = -1 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetSectionKeyFilename", szSect$+", "+szKey$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+
+ GetSectionKeyFilename = szBuf$
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetSectionKeySize (szSect$, szKey$) STATIC AS LONG
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "GetSectionKeySize", szSect$+", "+szKey$
+ end if
+'$endif ''DEBUG
+
+ szBuf$ = string$(128, 32)
+ Length% = CbGetInfSectionKeyField(szSect$, szKey$, 15, szBuf$, 128)
+ IF Length% >= 128 THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+
+ IF Length% = -1 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetSectionKeySize", szSect$+", "+szKey$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+
+ GetSectionKeySize = VAL(szBuf$)
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetSectionKeyVersion (szSect$, szKey$) STATIC AS STRING
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "GetSectionKeyVersion", szSect$+", "+szKey$
+ end if
+'$endif ''DEBUG
+
+ szBuf$ = string$(128, 32)
+ Length% = CbGetInfSectionKeyField(szSect$, szKey$, 19, szBuf$, 128)
+ IF Length% >= 128 THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+
+ IF Length% = -1 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetSectionKeyVersion", szSect$+", "+szKey$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+
+ GetSectionKeyVersion = szBuf$
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+SUB MakeListFromSectionDate (szSym$, szSect$) STATIC
+'$ifdef DEBUG
+ if szSym$ = "" then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "MakeListFromSectionDate", szSym$+", "+szSect$
+ end if
+'$endif ''DEBUG
+
+ IF FMakeListInfSectionField(szSym$, szSect$, 5) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "MakeListFromSectionDate", szSym$+", "+szSect$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB MakeListFromSectionFilename (szSym$, szSect$) STATIC
+'$ifdef DEBUG
+ if szSym$ = "" then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "MakeListFromSectionFilename", szSym$+", "+szSect$
+ end if
+'$endif ''DEBUG
+
+ IF FMakeListInfSectionField(szSym$, szSect$, 1) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "MakeListFromSectionFilename", szSym$+", "+szSect$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB MakeListFromSectionSize (szSym$, szSect$) STATIC
+'$ifdef DEBUG
+ if szSym$ = "" then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "MakeListFromSectionSize", szSym$+", "+szSect$
+ end if
+'$endif ''DEBUG
+
+ IF FMakeListInfSectionField(szSym$, szSect$, 15) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "MakeListFromSectionSize", szSym$+", "+szSect$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB MakeListFromSectionVersion (szSym$, szSect$) STATIC
+'$ifdef DEBUG
+ if szSym$ = "" then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "MakeListFromSectionVersion", szSym$+", "+szSect$
+ end if
+'$endif ''DEBUG
+
+ IF FMakeListInfSectionField(szSym$, szSect$, 19) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "MakeListFromSectionVersion", szSym$+", "+szSect$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB InitInstall STATIC
+ IF hSetup > 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeInit, "InitInstall", ""
+'$endif ''DEBUG
+ ELSEIF FInitializeInstall(HinstFrame(), HwndFrame()) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "InitInstall", ""
+'$endif ''DEBUG
+ END
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB CreateDir (szDir$, cmo%) STATIC
+'$ifdef DEBUG
+ if FValidFATDir(szDir$) = 0 then
+ BadArgErr 1, "CreateDir", szDir$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+ IF FCreateDir(szDir$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CreateDir", szDir$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB RemoveDir (szDir$, cmo%) STATIC
+'$ifdef DEBUG
+ if FValidFATDir(szDir$) = 0 then
+ BadArgErr 1, "RemoveDir", szDir$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+ IF FRemoveDir(szDir$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "RemoveDir", szDir$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+
+'*************************************************************************
+SUB RemoveIniSection (szFile$, szSect$, cmo%) STATIC
+'$ifdef DEBUG
+ if FValidIniFile(szFile$) = 0 then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "RemoveIniSection", szFile$+", "+szSect$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+
+ IF FRemoveIniSection(szFile$, szSect$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "RemoveIniSection", szFile$+", "+szSect$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB CreateIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%) STATIC
+'$ifdef DEBUG
+ if FValidIniFile(szFile$) = 0 then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "CreateIniKeyValue", szFile$+", "+szSect$+", "+szKey$+", "+szValue$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+
+ IF FCreateIniKeyValue(szFile$, szSect$, szKey$, szValue$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CreateIniKeyValue", szFile$+", "+szSect$+", "+szKey$+", "+szValue$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB RemoveIniKey (szFile$, szSect$, szKey$, cmo%) STATIC
+'$ifdef DEBUG
+ if FValidIniFile(szFile$) = 0 then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ elseif szKey$ = "" then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "RemoveIniKey", szFile$+", "+szSect$+", "+szKey$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+
+ IF FRemoveIniKey(szFile$, szSect$, szKey$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "RemoveIniKey", szFile$+", "+szSect$+", "+szKey$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB CreateSysIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%) STATIC
+'$ifdef DEBUG
+ if FValidFATPath(szFile$) = 0 then
+ n% = 1
+ elseif FValidInfSect(szSect$) = 0 then
+ n% = 2
+ elseif szKey$ = "" then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "CreateSysIniKeyValue", szFile$+", "+szSect$+", "+szKey$+", "+szValue$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+
+ IF FCreateSysIniKeyValue(szFile$, szSect$, szKey$, szValue$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CreateSysIniKeyValue", szFile$+", "+szSect$+", "+szKey$+", "+szValue$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB CreateProgmanGroup (szGroup$, szPath$, cmo%) STATIC
+'$ifdef DEBUG
+ if szGroup$ = "" or len(szGroup$) > 24 then
+ BadArgErr 1, "CreateProgmanGroup", szGroup$+", "+STR$(Cmd%)+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+ IF FCreateProgManGroup(szGroup$, szPath$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CreateProgmanGroup", szGroup$+", "+szPath$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB ShowProgmanGroup (szGroup$, Cmd%, cmo%) STATIC
+'$ifdef DEBUG
+ if szGroup$ = "" or len(szGroup$) > 24 then
+ BadArgErr 1, "ShowProgmanGroup", szGroup$+", "+STR$(Cmd%)+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+ IF FShowProgManGroup(szGroup$, STR$(Cmd%), cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "ShowProgmanGroup", szGroup$+", "+STR$(Cmd%)+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB StampResource (szSect$, szKey$, szDst$, wResType%, wResId%, szData$, cbData%) STATIC
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 2
+ elseif FValidFATDir(szDst$) = 0 then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "StampResource", szSect$+", "+szKey$+", "+szDst$+", "+STR$(wResType%)+", "+STR$(wResId%)+", "+szData$+", "+STR$(cbData%)
+ end if
+'$endif ''DEBUG
+
+ IF FStampResource (szSect$, szKey$, szDst$, wResType%, wResId%, szData$, cbData%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "StampResource", szSect$+", "+szKey$+", "+szDst$+", "+STR$(wResType%)+", "+STR$(wResId%)+", "+szData$+", "+STR$(cbData%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB DumpCopyList (szFile$) STATIC
+'$ifdef DEBUG
+ if szFile$ = "" then
+ BadArgErr 1, "DumpCopyList", szFile$
+ end if
+'$endif ''DEBUG
+ IF FDumpCopyListToFile (szFile$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "DumpCopyList", szFile$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB ClearCopyList STATIC
+ ResetCopyList
+END SUB
+
+
+'*************************************************************************
+FUNCTION GetCopyListCost (szExtraList$, szCostList$, szNeedList$) STATIC AS LONG
+ lNeed& = LcbGetCopyListCost (szExtraList$, szCostList$, szNeedList$)
+ IF lNeed& < 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetCopyListCost", szExtraList$+", "+szCostList$+", "+szNeedList$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+ GetCopyListCost = lNeed&
+END FUNCTION
+
+
+'*************************************************************************
+SUB CreateProgmanItem (szGroup$, szItem$, szCmd$, szOther$, cmo%) STATIC
+ szItemNew$ = szItem$
+ IF szOther$ <> "" THEN
+ szItemNew$ = szItem$ + "," + szOther$
+ END IF
+'$ifdef DEBUG
+ if szGroup$ = "" or len(szGroup$) > 24 then
+ BadArgErr 1, "CreateProgmanItem", szGroup$+", "+STR$(Cmd%)+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+
+ IF FCreateProgManItem(szGroup$, szItemNew$, szCmd$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CreateProgmanItem", szGroup$+", "+szItem$+", "+szCmd$+", "+szOther$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+ szItemNew$ = ""
+END SUB
+
+
+'*************************************************************************
+SUB AddDos5Help (szProgName$, szProgHelp$, cmo%) STATIC
+'$ifdef DEBUG
+ if szProgName$ = "" OR MID$(szProgName$, 1, 1) = "@" OR LEN(szProgName$) > 8 then
+ n% = 1
+ elseif INSTR(szProgName$, " ") <> 0 OR INSTR(szProgName$, CHR$(9)) <> 0 then
+ n% = 1
+ elseif szProgHelp$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "AddDos5Help", szProgName$+", "+szProgHelp$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+ IF FAddDos5Help (szProgName$, szProgHelp$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "AddDos5Help", szProgName$+", "+szProgHelp$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB CopyFilesInCopyList STATIC
+ grc% = GrcCopyFilesInCopyList (HinstFrame())
+
+ IF grc% = grcUserQuit THEN
+ ERROR STFQUIT
+ ELSEIF grc% > 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CopyFilesInCopyList", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB CopyFile (szFullPathSrc$, szFullPathDst$, cmo%, fAppend%) STATIC
+'$ifdef DEBUG
+ if FValidFATPath(szFullPathSrc$) = 0 then
+ n% = 1
+ elseif FValidFATPath(szFullPathDst$) = 0 then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "CopyFile", szFullPathSrc$+", "+szFullPathDst$+", "+STR$(cmo%)+", "+STR$(fAppend%)
+ end if
+'$endif ''DEBUG
+
+ IF FCopyOneFile(szFullPathSrc$, szFullPathDst$, (cmo OR cmoCopy), fAppend%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CopyFile", szFullPathSrc$+", "+szFullPathDst$+", "+STR$(cmo%)+", "+STR$(fAppend%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+
+'*************************************************************************
+SUB RemoveFile (szFullPathSrc$, cmo%) STATIC
+'$ifdef DEBUG
+ if FValidFATPath(szFullPathSrc$) = 0 then
+ BadArgErr 1, "RemoveFile", szFullPathSrc$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+ IF YnrcRemoveFile(szFullPathSrc$, cmo%) = ynrcNo THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "RemoveFile", szFullPathSrc$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB BackupFile (szFullPath$, szBackup$) STATIC
+'$ifdef DEBUG
+ if FValidFATPath(szFullPath$) = 0 then
+ n% = 1
+ elseif szBackup$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "BackupFile", szFullPath$+", "+szBackup$
+ end if
+'$endif ''DEBUG
+
+ IF YnrcBackupFile(szFullPath$, szBackup$, cmoNone) = ynrcNo THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "BackupFile", szFullPath$+", "+szBackup$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB RenameFile (szFullPath$, szBackup$) STATIC
+'$ifdef DEBUG
+ if FValidFATPath(szFullPath$) = 0 then
+ n% = 1
+ elseif szBackup$ = "" then
+ n% = 2
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "RenameFile", szFullPath$+", "+szBackup$
+ end if
+'$endif ''DEBUG
+
+ IF YnrcBackupFile(szFullPath$, szBackup$, cmoNone) = ynrcNo THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "RenameFile", szFullPath$+", "+szBackup$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB AddSectionFilesToCopyList (szSect$, szSrc$, szDest$) STATIC
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif FValidFATDir(szSrc$) = 0 then
+ n% = 2
+ elseif FValidFATDir(szDest$) = 0 then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "AddSectionFilesToCopyList", szSect$+", "+szSrc$+", "+szDest$
+ end if
+'$endif ''DEBUG
+
+ IF FAddSectionFilesToCopyList (szSect$, szSrc$, szDest$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "AddSectionFilesToCopyList", szSect$+", "+szSrc$+", "+szDest$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB AddSectionKeyFileToCopyList (szSect$, szKey$, szSrc$, szDest$) STATIC
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 2
+ elseif FValidFATDir(szSrc$) = 0 then
+ n% = 3
+ elseif FValidFATDir(szDest$) = 0 then
+ n% = 4
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "AddSectionKeyFileToCopyList", szSect$+", "+szKey$+", "+szSrc$+", "+szDest$
+ end if
+'$endif ''DEBUG
+
+ IF FAddSectionKeyFileToCopyList (szSect$, szKey$, szSrc$, szDest$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "AddSectionKeyFileToCopyList", szSect$+", "+szKey$+", "+szSrc$+", "+szDest$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB AddSpecialFileToCopyList (szSect$, szKey$, szSrc$, szDest$) STATIC
+'$ifdef DEBUG
+ if FValidInfSect(szSect$) = 0 then
+ n% = 1
+ elseif szKey$ = "" then
+ n% = 2
+ elseif FValidFATDir(szSrc$) = 0 then
+ n% = 3
+ elseif FValidFATPath(szDest$) = 0 then
+ n% = 4
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "AddSpecialFileToCopyList", szSect$+", "+szKey$+", "+szSrc$+", "+szDest$
+ end if
+'$endif ''DEBUG
+
+ IF FAddSpecialFileToCopyList (szSect$, szKey$, szSrc$, szDest$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "AddSpecialFileToCopyList", szSect$+", "+szKey$+", "+szSrc$+", "+szDest$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB AddToBillboardList (szDll$, idDlg%, szProc$, lTicks&) STATIC
+'$ifdef DEBUG
+ if szDll$ = "" then
+ n% = 1
+ elseif idDlg% = 0 then
+ n% = 2
+ elseif szProc$ = "" then
+ n% = 3
+ elseif lTicks& <= 0 then
+ n% = 4
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "AddToBillboardList", szDll$+", "+STR$(idDlg%)+", "+szProc$+", "+STR$(lTicks&)
+ end if
+'$endif ''DEBUG
+
+ IF FAddToBillboardList(szDll$, idDlg%, szProc$, lTicks&) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "AddToBillboardList", szDll$+", "+STR$(idDlg%)+", "+szProc$+", "+STR$(lTicks&)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB AddBlankToBillboardList (lTicks&) STATIC
+'$ifdef DEBUG
+ if lTicks& <= 0 then
+ BadArgErr 1, "AddBlankToBillboardList", STR$(lTicks&)
+ end if
+'$endif ''DEBUG
+ IF FAddToBillboardList(NULL, 0, NULL, lTicks&) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "AddBlankToBillboardList", STR$(lTicks&)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB ClearBillboardList STATIC
+ IF FClearBillboardList = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "ClearBillboardList", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB OpenLogFile (szFile$, fAppend%) STATIC
+'$ifdef DEBUG
+ if FValidFATPath(szFile$) = 0 then
+ BadArgErr 1, "OpenLogFile", szFile$+", "+STR$(fAppend%)
+ end if
+'$endif ''DEBUG
+ IF FOpenLogFile(szFile$, fAppend%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "OpenLogFile", szFile$+", "+STR$(fAppend%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB CloseLogFile STATIC
+ IF FCloseLogFile() = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "CloseLogFile", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+SUB WriteToLogFile (szStr$) STATIC
+ IF FWriteToLogFile(szStr$, 1) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "WriteToLogFile", szStr$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+''' -1 in either parameter will mean 'center in frame client area'
+'*************************************************************************
+SUB SetCopyGaugePosition (x%, y%) STATIC
+ ProSetPos x%, y%
+END SUB
+
+
+'*************************************************************************
+FUNCTION FindFileUsingFileOpen (szFile$) STATIC AS STRING
+ szBuf$ = STRING$(512, 32)
+
+ wRet% = WFindFileUsingFileOpen(szFile$, szBuf$, len(szBuf$))
+ IF wRet% = 0 THEN
+ FindFileUsingFileOpen = szBuf$
+ ELSEIF wRet% = 1 THEN
+ FindFileUsingFileOpen = ""
+ ELSE
+'$ifdef DEBUG
+ StfApiErr saeFail, "FindFileUsingFileOpen", szFile$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION IsDirWritable (szDir$) STATIC AS INTEGER
+ IsDirWritable = FIsDirWritable(szDir$)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION IsFileWritable (szFile$) STATIC AS INTEGER
+'$ifdef DEBUG
+ if FValidFATDir(szFile$) = 0 then
+ BadArgErr 1, "IsFileWritable", szFile$
+ end if
+'$endif ''DEBUG
+ IsFileWritable = FIsFileWritable(szFile$)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetNthFieldFromIniString (szLine$, iField%) STATIC AS STRING
+ IF iField% < 1 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetNthFieldFromIniString", szLine$+", "+STR$(iField%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+ szStart$ = szLine$
+ IF iField% <> 1 THEN
+ FOR i% = 2 TO iField% STEP 1
+ iNew% = INSTR(szStart$, ",")
+ IF iNew% = 0 THEN
+ GetNthFieldFromIniString = ""
+ GOTO _GNFFIS_END
+ END IF
+ szStart$ = MID$(szStart$, (iNew% + 1))
+ NEXT
+ END IF
+
+ iNew% = INSTR(szStart$, ",")
+ IF iNew% <> 0 THEN
+ szStart$ = MID$(szStart$, 1, (iNew% - 1))
+ END IF
+
+ GetNthFieldFromIniString = LTRIM$(RTRIM$(szStart$))
+
+_GNFFIS_END:
+
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetWindowsMajorVersion STATIC AS INTEGER
+ GetWindowsMajorVersion = GetVersion() MOD 256
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetWindowsMinorVersion STATIC AS INTEGER
+ GetWindowsMinorVersion = GetVersion() / 256
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetWindowsMode STATIC AS INTEGER
+ GetWindowsMode = 0
+ longTmp& = GetWinFlags()
+ IF longTmp& AND WF_STANDARD THEN
+ GetWindowsMode = 1
+ ELSEIF longTmp& AND WF_ENHANCED THEN
+ GetWindowsMode = 2
+ END IF
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetWindowsDir STATIC AS STRING
+ szBuf$ = string$(256, 32)
+ cbBuf% = GetWindowsDirectory(szBuf$, 256)
+
+ IF cbBuf% = 0 THEN
+ GetWindowsDir = ""
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetWindowsDir", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ ELSE
+ IF cbBuf% > 255 THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+ szBuf$ = RTRIM$(szBuf$)
+ IF MID$(szBuf$, 1, 1) = "\" THEN
+ 'szBuf$ = MID$(CURDIR$, 1, 2) + szBuf$
+ szBuf$ = MID$(GetWindowsSysDir, 1, 2) + szBuf$
+ ELSEIF MID$(szBuf$, 2, 1) <> ":" THEN
+ szBuf$ = MID$(GetWindowsSysDir, 1, 3) + szBuf$
+ END IF
+ IF MID$(szBuf$, LEN(szBuf$), 1) <> "\" THEN
+ szBuf$ = szBuf$ + "\"
+ END IF
+ GetWindowsDir = szBuf$
+ END IF
+
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetWindowsSysDir STATIC AS STRING
+ szBuf$ = string$(256, 32)
+ cbBuf% = GetSystemDirectory(szBuf$, 256)
+
+ IF cbBuf% = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "GetWindowsSysDir", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ ELSE
+ IF cbBuf% > 255 THEN
+ res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
+ ERROR STFERR
+ END IF
+ szBuf$ = RTRIM$(szBuf$)
+ IF MID$(szBuf$, 1, 1) = "\" THEN
+ szBuf$ = MID$(CURDIR$, 1, 2) + szBuf$
+ ELSEIF MID$(szBuf$, 2, 1) <> ":" THEN
+ szBuf$ = MID$(CURDIR$, 1, 3) + szBuf$
+ END IF
+ IF MID$(szBuf$, LEN(szBuf$), 1) <> "\" THEN
+ szBuf$ = szBuf$ + "\"
+ END IF
+ GetWindowsSysDir = szBuf$
+ END IF
+
+ szBuf$ = ""
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION IsWindowsShared STATIC AS INTEGER
+ szWin$ = UCASE$(GetWindowsDir())
+ szSys$ = UCASE$(GetWindowsSysDir())
+
+ IF len(szWin$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "IsWindowsShared", ""
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+
+ IF len(szSys$) <= len(szWin$) THEN
+ IsWindowsShared = 1
+ ELSE
+ szSys$ = MID$(szSys$, 1, len(szWin$))
+ IF szWin$ = szSys$ THEN
+ IsWindowsShared = 0
+ ELSE
+ IsWindowsShared = 1
+ END IF
+ END IF
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetScreenWidth STATIC AS INTEGER
+ GetScreenWidth = GetSystemMetrics(SM_CXSCREEN)
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION GetScreenHeight STATIC AS INTEGER
+ GetScreenHeight = GetSystemMetrics(SM_CYSCREEN)
+END FUNCTION
+
+
+'*************************************************************************
+SUB SetRestartDir (szDir$) STATIC
+'$ifdef DEBUG
+ if FValidFATDir(szDir$) = 0 then
+ BadArgErr 1, "SetRestartDir", szDir$
+ end if
+'$endif ''DEBUG
+ IF FSetRestartDir(szDir$) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "SetRestartDir", szDir$
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+'*************************************************************************
+FUNCTION RestartListEmpty STATIC AS INTEGER
+ IF FRestartListEmpty() = 0 THEN
+ RestartListEmpty = 0
+ ELSE
+ RestartListEmpty = 1
+ END IF
+END FUNCTION
+
+
+'*************************************************************************
+FUNCTION ExitExecRestart STATIC AS INTEGER
+ ExitExecRestart = FExitExecRestart
+END FUNCTION
+
+
+'*************************************************************************
+SUB PrependToPath (szSrc$, szDst$, szDir$, cmo%) STATIC
+
+'$ifdef DEBUG
+ if (FValidFATPath(szSrc$) = 0) AND (szSrc$ <> "") then
+ n% = 1
+ elseif FValidFATPath(szDst$) = 0 then
+ n% = 2
+ elseif FValidFATDir(szDir$) = 0 then
+ n% = 3
+ else
+ n% = 0
+ end if
+ if n% > 0 then
+ BadArgErr n%, "PrependToPath", szSrc$+", "+szDst$+", "+szDir$+", "+STR$(cmo%)
+ end if
+'$endif ''DEBUG
+
+ IF FPrependToPath (szSrc$, szDst$, szDir$, cmo%) = 0 THEN
+'$ifdef DEBUG
+ StfApiErr saeFail, "PrependToPath", szSrc$+", "+szDst$+", "+szDir$+", "+STR$(cmo%)
+'$endif ''DEBUG
+ ERROR STFERR
+ END IF
+END SUB
+
+
+
+'**************************************************************************
+'*************************** Error Handlers *****************************
+'**************************************************************************
+
+
+'$ifdef DEBUG
+'**************************************************************************
+SUB StfApiErr (nMsg%, szApi$, szArgs$) STATIC ''DEBUG only
+ select case nMsg%
+ case saeFail
+ lpText$ = "Failed"
+ case saeInit
+ lpText$ = "Already Initialized"
+ case saeNYI
+ lpText$ = "NYI"
+ case else
+ lpText$ = "Bad Arg "+LTRIM$(STR$(nMsg% - saeArg))
+ end select
+
+ lpText$ = lpText$ + ": "+ szApi$
+ if szArgs$ <> "" then
+ lpText$ = lpText + " (" + szArgs$ + ")"
+ end if
+ lpCaption$ = "MS-Setup Toolkit API Error"
+ res% = DoMsgBox(lpText$, lpCaption$, MB_TASKMODAL+MB_ICONHAND+MB_OK)
+ print lpText$
+ lpText$ = ""
+ lpCaption$ = ""
+END SUB
+
+'**************************************************************************
+SUB BadArgErr (nArg%, szApi$, szArgs$) STATIC ''DEBUG only
+ StfApiErr nArg%+saeArg, szApi$, szArgs$
+ ERROR STFERR
+END SUB
+
+
+'** REVIEW: Move this function into common lib (we'll need it there too)
+'**************************************************************************
+FUNCTION FValidInfSect (szSect$) STATIC AS INTEGER
+ if (szSect$ = "") OR (INSTR(1,szSect$,"]") <> 0) then
+ FValidInfSect = 0
+ else
+ FValidInfSect = 1
+ end if
+END FUNCTION
+
+
+'** REVIEW: Move this function into common lib (we'll need it there too)
+'**************************************************************************
+FUNCTION FValidIniFile (szFile$) STATIC AS INTEGER
+ if (FValidFATPath(szFile$) = 0) AND (UCASE$(szFile$) <> "WIN.INI") then
+ FValidIniFile = 0
+ else
+ FValidIniFile = 1
+ end if
+END FUNCTION
+
+'**************************************************************************
+FUNCTION FValidDrive (szDrive$) STATIC AS INTEGER
+
+ if szDrive$ = "" then
+ FValidDrive = 0
+ elseif INSTR(1,szDrive$,"\\") = 1 then ' UNC path
+ FValidDrive = 1
+ elseif ASC(UCASE$(szDrive$)) - ASC("A") < 0 then
+ FValidDrive = 0
+ elseif ASC(UCASE$(szDrive$)) - ASC("A") > 25 then
+ FValidDrive = 0
+ elseif LEN(szDrive$) = 1 then
+ FValidDrive = 1
+ elseif INSTR(2,szDrive$,":\") = 2 then
+ FValidDrive = 1
+ elseif INSTR(1,szDrive$,":") = 2 then
+ FValidDrive = 1
+ else
+ FValidDrive = 0
+ end if
+END FUNCTION
+
+'$endif ''DEBUG
+
+
+TRAP CleanupTrap From "MSSHLSTF.DLL"
+
+End Trap
+
+hSetup = InitSetup(COMMAND$)
+
+ON ERROR GOTO QUIT
+
diff --git a/public/sdk/rpc16/sdk/setuprun.lst b/public/sdk/rpc16/sdk/setuprun.lst
new file mode 100644
index 000000000..a336c1c00
--- /dev/null
+++ b/public/sdk/rpc16/sdk/setuprun.lst
@@ -0,0 +1,21 @@
+[Params]
+ WndTitle = Microsoft RPC Setup
+ WndMess = Initializing Setup...
+ TmpDirSize = 500
+ TmpDirName = ~msstfqf.t
+ CmdLine = _mstest RPCRUN.mst /C "/S %s %s"
+ DrvModName = DSHELL
+
+[Files]
+ RPCSDK.mst = RPCSDK.mst
+ RPCRUN.mst = RPCRUN.mst
+ RPCSDK.in_ = RPCSDK.inf
+ setupapi.in_ = setupapi.inc
+ msdetect.in_ = msdetect.inc
+ mscomstf.dl_ = mscomstf.dll
+ msinsstf.dl_ = msinsstf.dll
+ msuilstf.dl_ = msuilstf.dll
+ msshlstf.dl_ = msshlstf.dll
+ mscuistf.dl_ = mscuistf.dll
+ msdetstf.dl_ = msdetstf.dll
+ _mstest.ex_ = _mstest.exe
diff --git a/public/sdk/rpc16/sdk/uuidgen.ex_ b/public/sdk/rpc16/sdk/uuidgen.ex_
new file mode 100644
index 000000000..1f12aa615
--- /dev/null
+++ b/public/sdk/rpc16/sdk/uuidgen.ex_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/wrpc.h_ b/public/sdk/rpc16/sdk/wrpc.h_
new file mode 100644
index 000000000..f3f998593
--- /dev/null
+++ b/public/sdk/rpc16/sdk/wrpc.h_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/wrpc.li_ b/public/sdk/rpc16/sdk/wrpc.li_
new file mode 100644
index 000000000..8ed4d9352
--- /dev/null
+++ b/public/sdk/rpc16/sdk/wrpc.li_
Binary files differ
diff --git a/public/sdk/rpc16/sdk/wrpcndr.li_ b/public/sdk/rpc16/sdk/wrpcndr.li_
new file mode 100644
index 000000000..c3c250420
--- /dev/null
+++ b/public/sdk/rpc16/sdk/wrpcndr.li_
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16c1.map b/public/sdk/rpc16/win/dll/rpc16c1.map
new file mode 100644
index 000000000..865bf3044
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c1.map
@@ -0,0 +1,92 @@
+
+ RPC16C1
+
+ Start Length Name Class
+ 0001:0000 00000H NPLTCLNT_TEXT CODE
+ 0001:0000 00000H LTSTART_TEXT CODE
+ 0001:0000 000A9H _TEXT CODE
+ 0001:00B0 006F4H COMDAT_SEG1 CODE
+ 0002:0000 0003FH _DATA DATA
+ 0002:0040 00000H CONST CONST
+ 0002:0040 00000H _BSS BSS
+ 0002:0040 00008H c_common BSS
+
+ Origin Group
+ 0002:0 DGROUP
+
+ Address Export Alias
+
+ 0001:01F6 CLIENTCLOSE CLIENTCLOSE
+ 0001:00B0 CLIENTOPEN CLIENTOPEN
+ 0001:0252 CLIENTREAD CLIENTREAD
+ 0001:04CE CLIENTTOWERCONSTRUCT CLIENTTOWERCONSTRUCT
+ 0001:0646 CLIENTTOWEREXPLODE CLIENTTOWEREXPLODE
+ 0001:0212 CLIENTWRITE CLIENTWRITE
+ 0001:0736 TRANSPORTLOAD TRANSPORTLOAD
+ 0001:0014 WEP WEP
+
+ Address Publics by Name
+
+ 0002:0036 ??_C@_08DNBJ@ncacn_np?$AA@
+ 0001:03B2 ASYNCREADWRITE
+ 0001:01F6 CLIENTCLOSE
+ 0001:00B0 CLIENTOPEN
+ 0001:0252 CLIENTREAD
+ 0001:04CE CLIENTTOWERCONSTRUCT
+ 0001:0646 CLIENTTOWEREXPLODE
+ 0001:0212 CLIENTWRITE
+ 0000:0000 Imp DOSREADASYNCNMPIPE (NETAPI.542)
+ 0000:0000 Imp DOSSETNMPHANDSTATE (NETAPI.533)
+ 0000:0000 Imp DOSWAITNMPIPE (NETAPI.534)
+ 0000:0000 Imp DOSWRITEASYNCNMPIPE (NETAPI.543)
+ 0001:04C0 DOS_CLOSE
+ 0001:04A4 DOS_OPEN
+ 0000:0000 Imp GETWINFLAGS (KERNEL.132)
+ 0001:0000 LIBENTRY
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp LSTRLEN (KERNEL.90)
+ 0000:0000 Imp NETWKSTAGETINFO (NETAPI.84)
+ 0001:0736 TRANSPORTLOAD
+ 0001:0014 WEP
+ 0002:0040 _AsyncCallComplete
+ 0002:0032 _DLLTERMINATION
+ 0002:0030 _HINSTANCEDLL
+ 0002:0044 _RpcRuntimeInfo
+ 0002:0000 _TransInfo
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0001:0032 __fmemcpy
+ 0001:0090 __fstrlen
+
+ Address Publics by Value
+
+ 0000:0000 Imp NETWKSTAGETINFO (NETAPI.84)
+ 0000:0000 Imp GETWINFLAGS (KERNEL.132)
+ 0000:0000 Imp DOSWAITNMPIPE (NETAPI.534)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp DOSREADASYNCNMPIPE (NETAPI.542)
+ 0000:0000 Imp DOSSETNMPHANDSTATE (NETAPI.533)
+ 0000:0000 Imp DOSWRITEASYNCNMPIPE (NETAPI.543)
+ 0000:0000 Imp LSTRLEN (KERNEL.90)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0001:0000 LIBENTRY
+ 0001:0014 WEP
+ 0001:0032 __fmemcpy
+ 0001:0090 __fstrlen
+ 0001:00B0 CLIENTOPEN
+ 0001:01F6 CLIENTCLOSE
+ 0001:0212 CLIENTWRITE
+ 0001:0252 CLIENTREAD
+ 0001:03B2 ASYNCREADWRITE
+ 0001:04A4 DOS_OPEN
+ 0001:04C0 DOS_CLOSE
+ 0001:04CE CLIENTTOWERCONSTRUCT
+ 0001:0646 CLIENTTOWEREXPLODE
+ 0001:0736 TRANSPORTLOAD
+ 0002:0000 _TransInfo
+ 0002:0030 _HINSTANCEDLL
+ 0002:0032 _DLLTERMINATION
+ 0002:0036 ??_C@_08DNBJ@ncacn_np?$AA@
+ 0002:0040 _AsyncCallComplete
+ 0002:0044 _RpcRuntimeInfo
+
+Program entry point at 0001:0000
diff --git a/public/sdk/rpc16/win/dll/rpc16c1.sym b/public/sdk/rpc16/win/dll/rpc16c1.sym
new file mode 100644
index 000000000..085f46b17
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c1.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16c3.map b/public/sdk/rpc16/win/dll/rpc16c3.map
new file mode 100644
index 000000000..afcd128ed
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c3.map
@@ -0,0 +1,443 @@
+
+ RPC16C3
+
+ Start Length Name Class
+ 0001:0000 00000H TCLTCLNT_TEXT CODE
+ 0001:0000 00000H LTSTART_TEXT CODE
+ 0001:0000 0102CH _TEXT CODE
+ 0001:1030 00B72H COMDAT_SEG1 CODE
+ 0002:0000 00010H NULL BEGDATA
+ 0002:0010 000FAH _DATA DATA
+ 0002:010A 0000EH CDATA DATA
+ 0002:0118 00000H XIFB DATA
+ 0002:0118 00000H XIF DATA
+ 0002:0118 00000H XIFE DATA
+ 0002:0118 00000H XIB DATA
+ 0002:0118 00000H XI DATA
+ 0002:0118 00000H XIE DATA
+ 0002:0118 00000H XPB DATA
+ 0002:0118 00000H XP DATA
+ 0002:0118 00000H XPE DATA
+ 0002:0118 00000H XCB DATA
+ 0002:0118 00000H XC DATA
+ 0002:0118 00000H XCE DATA
+ 0002:0118 00000H XCFB DATA
+ 0002:0118 00000H XCFCRT DATA
+ 0002:0118 00000H XCF DATA
+ 0002:0118 00000H XCFE DATA
+ 0002:0118 00000H XIFCB DATA
+ 0002:0118 00000H XIFU DATA
+ 0002:0118 00000H XIFL DATA
+ 0002:0118 00000H XIFM DATA
+ 0002:0118 00000H XIFCE DATA
+ 0002:0118 00000H DBDATA DATA
+ 0002:0118 00000H CONST CONST
+ 0002:0118 00008H HDR MSG
+ 0002:0120 000D4H MSG MSG
+ 0002:01F4 00002H PAD MSG
+ 0002:01F6 00001H EPAD MSG
+ 0002:01F8 00012H _BSS BSS
+ 0002:020A 00000H XOB BSS
+ 0002:020A 00000H XO BSS
+ 0002:020A 00000H XOE BSS
+ 0002:020A 00000H XOFB BSS
+ 0002:020A 00000H XOF BSS
+ 0002:020A 00000H XOFE BSS
+ 0002:0210 00008H c_common BSS
+
+ Origin Group
+ 0002:0 DGROUP
+
+ Address Export Alias
+
+ 0001:1362 CLIENTCLOSE CLIENTCLOSE
+ 0001:10FA CLIENTOPEN CLIENTOPEN
+ 0001:177E CLIENTREAD CLIENTREAD
+ 0001:18C6 CLIENTTOWERCONSTRUCT CLIENTTOWERCONSTRUCT
+ 0001:19CC CLIENTTOWEREXPLODE CLIENTTOWEREXPLODE
+ 0001:139E CLIENTWRITE CLIENTWRITE
+ 0001:1AAA TRANSPORTLOAD TRANSPORTLOAD
+ 0001:0024 WEP WEP
+ 0001:0D74 ___ExportedStub ___ExportedStub
+
+ Address Publics by Name
+
+ 0001:1B88 ??_C@_03EOPG@135?$AA@
+ 0001:1B9A ??_C@_07EHGE@WINSOCK?$AA@
+ 0001:1B66 ??_C@_08MPOI@TCLTCLNT?$AA@
+ 0001:1B50 ??_C@_09FCOK@127?40?40?41?$AA@
+ 0001:1B5A ??_C@_0L@EBCH@RPC?5TCP?1IP?$AA@
+ 0001:1B7C ??_C@_0L@JIBM@0123456789?$AA@
+ 0001:1B70 ??_C@_0M@OCLK@?40123456789?$AA@
+ 0001:1B8C ??_C@_0N@JDIH@ncacn_ip_tcp?$AA@
+ 0001:14FE ASYNCEVENTPROC
+ 0001:1362 CLIENTCLOSE
+ 0001:10FA CLIENTOPEN
+ 0001:177E CLIENTREAD
+ 0001:18C6 CLIENTTOWERCONSTRUCT
+ 0001:19CC CLIENTTOWEREXPLODE
+ 0001:139E CLIENTWRITE
+ 0000:0000 Imp CLOSESOCKET (WINSOCK.3)
+ 0000:0000 Imp CONNECT (WINSOCK.4)
+ 0000:0000 Imp CREATEWINDOW (USER.41)
+ 0000:0000 Imp DEFWINDOWPROC (USER.107)
+ 0000:0000 Imp DESTROYWINDOW (USER.53)
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0000:0000 Imp GETCURRENTTIME (USER.15)
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0000:0000 Imp GETSTOCKOBJECT (GDI.87)
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp GETWINDOWLONG (USER.135)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0000:0000 Imp HTONS (WINSOCK.9)
+ 0000:0000 Imp INET_ADDR (WINSOCK.10)
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0000:0000 Imp IOCTLSOCKET (WINSOCK.12)
+ 0001:0010 LIBENTRY
+ 0000:0000 Imp LOADCURSOR (USER.173)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 0001:1B3A MYWEP
+ 0000:0000 Imp PEEKMESSAGE (USER.109)
+ 0000:0000 Imp RECV (WINSOCK.16)
+ 0000:0000 Imp REGISTERCLASS (USER.57)
+ 0002:0004 rsrvptrs
+ 0000:0000 Imp SELECT (WINSOCK.18)
+ 0000:0000 Imp SEND (WINSOCK.19)
+ 0000:0000 Imp SETSOCKOPT (WINSOCK.21)
+ 0000:0000 Imp SETWINDOWLONG (USER.136)
+ 0000:0000 Imp SHOWWINDOW (USER.42)
+ 0000:0000 Imp SOCKET (WINSOCK.23)
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 0001:1AAA TRANSPORTLOAD
+ 0000:0000 Imp UPDATEWINDOW (USER.124)
+ 0001:0024 WEP
+ 0000:0000 Imp WSAASYNCGETHOSTBYNAME (WINSOCK.103)
+ 0000:0000 Imp WSAASYNCSELECT (WINSOCK.101)
+ 0000:0000 Imp WSACANCELASYNCREQUEST (WINSOCK.108)
+ 0000:0000 Imp WSACLEANUP (WINSOCK.116)
+ 0000:0000 Imp WSAGETLASTERROR (WINSOCK.111)
+ 0000:0000 Imp WSASTARTUP (WINSOCK.115)
+ 0002:0055 _aseghi
+ 0002:0053 _aseglo
+ 0002:0210 _AsyncCallComplete
+ 0001:005C _atoi
+ 0001:0A50 _atol
+ 0001:1560 _BlockForRecv
+ 0002:0042 _DllTermination
+ 0001:1030 _DoAsyncConnect
+ 0001:1084 _DoAsyncGetHostByName
+ 0002:01F8 _edata
+ 0002:0218 _end
+ 0002:006A _errno
+ 0001:0A54 _getenv
+ 0002:0040 _hInstanceDLL
+ 0001:1660 _LocalBlock
+ 0001:15DA _LocalBlockingFunc
+ 0001:016C _memcpy
+ 0001:16BE _RecvWithYield
+ 0002:0214 _RpcRuntimeInfo
+ 0002:0046 _STKHQQ
+ 0001:0110 _strcspn
+ 0001:0042 _strlen
+ 0001:0D88 _strncmp
+ 0001:0A26 _strncpy
+ 0001:007C _time
+ 0002:0010 _TransInfo
+ 0000:9876 Abs __acrtmsg
+ 0000:9876 Abs __acrtused
+ 0000:D6D6 Abs __aDBdoswp
+ 0002:00A0 __adbgmsg
+ 0000:D6D6 Abs __aDBused
+ 0001:0960 __aFlmul
+ 0001:0AF0 __aFlrem
+ 0001:0960 __aFulmul
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0002:005C __aintdiv
+ 0002:00F6 __amblksiz
+ 0001:0C1A __amsg_exit
+ 0001:026A __astart
+ 0001:0422 __catox
+ 0001:0550 __cexit
+ 0002:009D __child
+ 0001:0508 __cinit
+ 0001:0C10 __cintDIV
+ 0001:0478 __cltoasub
+ 0002:0075 __cpumode
+ 0001:05AF __ctermsub
+ 0001:0485 __cxtoa
+ 0001:0561 __c_exit
+ 0002:00E4 __daylight
+ 0002:00C6 __days
+ 0002:0052 __dllinit
+ 0002:0076 __doserrno
+ 0001:0324 __dostotime_t
+ 0002:01F8 __edata
+ 0002:0218 __end
+ 0002:0094 __environ
+ 0002:009F __exitflag
+ 0002:0060 __fac
+ 0001:0DC4 __ffree
+ 0001:05EC __FF_MSGBANNER
+ 0002:00FC __fheap
+ 0001:0D53 __findlast
+ 0001:0DE5 __fmalloc
+ 0002:010C __fpinit
+ 0000:9876 Abs __fptaskdata
+ 0001:09E0 __fptrap
+ 0001:0F0E __freefarheap
+ 0001:0F98 __freelist
+ 0001:01CA __fstrcspn
+ 0001:0BF6 __fstrlen
+ 0001:0B90 __fstrncmp
+ 0001:0BCC __fstrncpy
+ 0001:0A14 __GetDGROUP
+ 0001:0C5C __growseg
+ 0002:0048 __hModule
+ 0001:0CED __incseg
+ 0001:0FC2 __initseg
+ 0001:088C __isindst
+ 0001:0060 __itoa
+ 0001:0FF6 __linkseg
+ 0002:00AC __lpdays
+ 0002:004E __lpszCmdLine
+ 0001:09E6 __myalloc
+ 0001:0A24 __nearstub
+ 0001:0E8C __newseg
+ 0002:0078 __nfile
+ 0001:0992 __NMSG_TEXT
+ 0001:09C9 __NMSG_WRITE
+ 0001:030C __nomain
+ 0002:0076 __oserr
+ 0002:007A __osfile
+ 0002:0071 __osmajor
+ 0002:0070 __osminor
+ 0002:0074 __osmode
+ 0002:0070 __osver
+ 0002:0072 __osversion
+ 0002:0098 __pgmptr
+ 0002:00F8 __pnhFarHeap
+ 0001:0F1C __searchseg
+ 0001:0610 __setenvp
+ 0000:0001 Abs __sizec
+ 0000:0001 Abs __sized
+ 0001:04DC __stubmain
+ 0002:00E0 __timezone
+ 0002:00EE __tzname
+ 0001:06C4 __tzset
+ 0002:006C __umaskval
+ 0002:004A __wDataSeg
+ 0001:0226 __wflags
+ 0002:004C __wHeapSize
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 0002:006F __winmajor
+ 0002:006E __winminor
+ 0002:006E __winver
+ 0002:0059 ___aDBrterr
+ 0002:0057 ___aDBswpflg
+ 0002:008E ___argc
+ 0002:0090 ___argv
+ 0001:0D74 ___ExportedStub
+ 0001:06A8 ___tzset
+
+ Address Publics by Value
+
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0000:0000 Imp WSACLEANUP (WINSOCK.116)
+ 0000:0000 Imp SEND (WINSOCK.19)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp UPDATEWINDOW (USER.124)
+ 0000:0000 Imp GETCURRENTTIME (USER.15)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp CONNECT (WINSOCK.4)
+ 0000:0000 Imp GETWINDOWLONG (USER.135)
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0000:0000 Imp IOCTLSOCKET (WINSOCK.12)
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0000:0000 Imp PEEKMESSAGE (USER.109)
+ 0000:0000 Imp GETSTOCKOBJECT (GDI.87)
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 0000:0000 Imp DEFWINDOWPROC (USER.107)
+ 0000:0000 Imp DESTROYWINDOW (USER.53)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0000:0000 Imp WSAASYNCSELECT (WINSOCK.101)
+ 0000:0000 Imp REGISTERCLASS (USER.57)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0000 Imp WSAGETLASTERROR (WINSOCK.111)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp LOADCURSOR (USER.173)
+ 0000:0000 Imp WSASTARTUP (WINSOCK.115)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp SETSOCKOPT (WINSOCK.21)
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:0000 Imp WSAASYNCGETHOSTBYNAME (WINSOCK.103)
+ 0000:0000 Imp CREATEWINDOW (USER.41)
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Imp HTONS (WINSOCK.9)
+ 0000:0000 Imp SOCKET (WINSOCK.23)
+ 0000:0000 Imp SHOWWINDOW (USER.42)
+ 0000:0000 Imp INET_ADDR (WINSOCK.10)
+ 0000:0000 Imp RECV (WINSOCK.16)
+ 0000:0000 Imp SELECT (WINSOCK.18)
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 0000:0000 Imp WSACANCELASYNCREQUEST (WINSOCK.108)
+ 0000:0000 Imp SETWINDOWLONG (USER.136)
+ 0000:0000 Imp CLOSESOCKET (WINSOCK.3)
+ 0000:0001 Abs __sized
+ 0000:0001 Abs __sizec
+ 0000:9876 Abs __acrtmsg
+ 0000:9876 Abs __fptaskdata
+ 0000:9876 Abs __acrtused
+ 0000:D6D6 Abs __aDBused
+ 0000:D6D6 Abs __aDBdoswp
+ 0001:0010 LIBENTRY
+ 0001:0024 WEP
+ 0001:0042 _strlen
+ 0001:005C _atoi
+ 0001:0060 __itoa
+ 0001:007C _time
+ 0001:0110 _strcspn
+ 0001:016C _memcpy
+ 0001:01CA __fstrcspn
+ 0001:0226 __wflags
+ 0001:026A __astart
+ 0001:030C __nomain
+ 0001:0324 __dostotime_t
+ 0001:0422 __catox
+ 0001:0478 __cltoasub
+ 0001:0485 __cxtoa
+ 0001:04DC __stubmain
+ 0001:0508 __cinit
+ 0001:0550 __cexit
+ 0001:0561 __c_exit
+ 0001:05AF __ctermsub
+ 0001:05EC __FF_MSGBANNER
+ 0001:0610 __setenvp
+ 0001:06A8 ___tzset
+ 0001:06C4 __tzset
+ 0001:088C __isindst
+ 0001:0960 __aFulmul
+ 0001:0960 __aFlmul
+ 0001:0992 __NMSG_TEXT
+ 0001:09C9 __NMSG_WRITE
+ 0001:09E0 __fptrap
+ 0001:09E6 __myalloc
+ 0001:0A14 __GetDGROUP
+ 0001:0A24 __nearstub
+ 0001:0A26 _strncpy
+ 0001:0A50 _atol
+ 0001:0A54 _getenv
+ 0001:0AF0 __aFlrem
+ 0001:0B90 __fstrncmp
+ 0001:0BCC __fstrncpy
+ 0001:0BF6 __fstrlen
+ 0001:0C10 __cintDIV
+ 0001:0C1A __amsg_exit
+ 0001:0C5C __growseg
+ 0001:0CED __incseg
+ 0001:0D53 __findlast
+ 0001:0D74 ___ExportedStub
+ 0001:0D88 _strncmp
+ 0001:0DC4 __ffree
+ 0001:0DE5 __fmalloc
+ 0001:0E8C __newseg
+ 0001:0F0E __freefarheap
+ 0001:0F1C __searchseg
+ 0001:0F98 __freelist
+ 0001:0FC2 __initseg
+ 0001:0FF6 __linkseg
+ 0001:1030 _DoAsyncConnect
+ 0001:1084 _DoAsyncGetHostByName
+ 0001:10FA CLIENTOPEN
+ 0001:1362 CLIENTCLOSE
+ 0001:139E CLIENTWRITE
+ 0001:14FE ASYNCEVENTPROC
+ 0001:1560 _BlockForRecv
+ 0001:15DA _LocalBlockingFunc
+ 0001:1660 _LocalBlock
+ 0001:16BE _RecvWithYield
+ 0001:177E CLIENTREAD
+ 0001:18C6 CLIENTTOWERCONSTRUCT
+ 0001:19CC CLIENTTOWEREXPLODE
+ 0001:1AAA TRANSPORTLOAD
+ 0001:1B3A MYWEP
+ 0001:1B50 ??_C@_09FCOK@127?40?40?41?$AA@
+ 0001:1B5A ??_C@_0L@EBCH@RPC?5TCP?1IP?$AA@
+ 0001:1B66 ??_C@_08MPOI@TCLTCLNT?$AA@
+ 0001:1B70 ??_C@_0M@OCLK@?40123456789?$AA@
+ 0001:1B7C ??_C@_0L@JIBM@0123456789?$AA@
+ 0001:1B88 ??_C@_03EOPG@135?$AA@
+ 0001:1B8C ??_C@_0N@JDIH@ncacn_ip_tcp?$AA@
+ 0001:1B9A ??_C@_07EHGE@WINSOCK?$AA@
+ 0002:0004 rsrvptrs
+ 0002:0010 _TransInfo
+ 0002:0040 _hInstanceDLL
+ 0002:0042 _DllTermination
+ 0002:0046 _STKHQQ
+ 0002:0048 __hModule
+ 0002:004A __wDataSeg
+ 0002:004C __wHeapSize
+ 0002:004E __lpszCmdLine
+ 0002:0052 __dllinit
+ 0002:0053 _aseglo
+ 0002:0055 _aseghi
+ 0002:0057 ___aDBswpflg
+ 0002:0059 ___aDBrterr
+ 0002:005C __aintdiv
+ 0002:0060 __fac
+ 0002:006A _errno
+ 0002:006C __umaskval
+ 0002:006E __winver
+ 0002:006E __winminor
+ 0002:006F __winmajor
+ 0002:0070 __osver
+ 0002:0070 __osminor
+ 0002:0071 __osmajor
+ 0002:0072 __osversion
+ 0002:0074 __osmode
+ 0002:0075 __cpumode
+ 0002:0076 __oserr
+ 0002:0076 __doserrno
+ 0002:0078 __nfile
+ 0002:007A __osfile
+ 0002:008E ___argc
+ 0002:0090 ___argv
+ 0002:0094 __environ
+ 0002:0098 __pgmptr
+ 0002:009D __child
+ 0002:009F __exitflag
+ 0002:00A0 __adbgmsg
+ 0002:00AC __lpdays
+ 0002:00C6 __days
+ 0002:00E0 __timezone
+ 0002:00E4 __daylight
+ 0002:00EE __tzname
+ 0002:00F6 __amblksiz
+ 0002:00F8 __pnhFarHeap
+ 0002:00FC __fheap
+ 0002:010C __fpinit
+ 0002:01F8 _edata
+ 0002:01F8 __edata
+ 0002:0210 _AsyncCallComplete
+ 0002:0214 _RpcRuntimeInfo
+ 0002:0218 __end
+ 0002:0218 _end
+
+Program entry point at 0001:0010
diff --git a/public/sdk/rpc16/win/dll/rpc16c3.sym b/public/sdk/rpc16/win/dll/rpc16c3.sym
new file mode 100644
index 000000000..6aaa709d9
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c3.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16c4.map b/public/sdk/rpc16/win/dll/rpc16c4.map
new file mode 100644
index 000000000..c8b728ed7
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c4.map
@@ -0,0 +1,415 @@
+
+ RPC16C4
+
+ Start Length Name Class
+ 0001:0000 00000H DNLTCLNT_TEXT CODE
+ 0001:0000 00000H LTSTART_TEXT CODE
+ 0001:0000 00968H _TEXT CODE
+ 0001:0968 000EEH DNETADDR_TEXT CODE
+ 0001:0A56 00064H GNODEBAD_TEXT CODE
+ 0001:0ABA 00080H GNODEBNM_TEXT CODE
+ 0001:0B3A 00062H PRGCLS_TEXT CODE
+ 0001:0B9C 00056H PRGCON_TEXT CODE
+ 0001:0BF2 00112H PRGRCV_TEXT CODE
+ 0001:0D04 000ECH PRGSEL_TEXT CODE
+ 0001:0DF0 000FCH PRGSND_TEXT CODE
+ 0001:0EEC 0007AH PRGSOC_TEXT CODE
+ 0001:0F66 00140H GNODEENT_TEXT CODE
+ 0001:10A6 0002CH PRGSIO_TEXT CODE
+ 0001:10D2 00024H PTRCONV_TEXT CODE
+ 0001:10F6 0047BH _DNET_TEXT CODE
+ 0001:1572 00106H DNETPATH_TEXT CODE
+ 0001:1678 0000EH DNETW_TEXT CODE
+ 0001:1686 00036H HCLOSE_TEXT CODE
+ 0001:16BC 000A0H HOPEN_TEXT CODE
+ 0001:175C 00068H HREAD_TEXT CODE
+ 0001:17C4 0009CH HSEEK_TEXT CODE
+ 0001:1860 0001AH DNETCHKS_TEXT CODE
+ 0001:1880 00531H COMDAT_SEG1 CODE
+ 0002:0000 00010H NULL BEGDATA
+ 0002:0010 00310H _DATA DATA
+ 0002:0320 0000EH CDATA DATA
+ 0002:032E 00000H XIFB DATA
+ 0002:032E 00000H XIF DATA
+ 0002:032E 00000H XIFE DATA
+ 0002:032E 00000H XIB DATA
+ 0002:032E 00000H XI DATA
+ 0002:032E 00000H XIE DATA
+ 0002:032E 00000H XPB DATA
+ 0002:032E 00000H XP DATA
+ 0002:032E 00000H XPE DATA
+ 0002:032E 00000H XCB DATA
+ 0002:032E 00000H XC DATA
+ 0002:032E 00000H XCE DATA
+ 0002:032E 00000H XCFB DATA
+ 0002:032E 00000H XCFCRT DATA
+ 0002:032E 00000H XCF DATA
+ 0002:032E 00000H XCFE DATA
+ 0002:032E 00000H XIFCB DATA
+ 0002:032E 00000H XIFU DATA
+ 0002:032E 00000H XIFL DATA
+ 0002:032E 00000H XIFM DATA
+ 0002:032E 00000H XIFCE DATA
+ 0002:032E 00000H DBDATA DATA
+ 0002:032E 0000AH CONST CONST
+ 0002:0338 00008H HDR MSG
+ 0002:0340 000D4H MSG MSG
+ 0002:0414 00002H PAD MSG
+ 0002:0416 00001H EPAD MSG
+ 0002:0418 00098H _BSS BSS
+ 0002:04B0 00000H XOB BSS
+ 0002:04B0 00000H XO BSS
+ 0002:04B0 00000H XOE BSS
+ 0002:04B0 00000H XOFB BSS
+ 0002:04B0 00000H XOF BSS
+ 0002:04B0 00000H XOFE BSS
+ 0002:04B0 00004H c_common BSS
+
+ Origin Group
+ 0002:0 DGROUP
+
+ Address Export Alias
+
+ 0001:199C CLIENTCLOSE CLIENTCLOSE
+ 0001:1880 CLIENTOPEN CLIENTOPEN
+ 0001:19F8 CLIENTREAD CLIENTREAD
+ 0001:1B38 CLIENTTOWERCONSTRUCT CLIENTTOWERCONSTRUCT
+ 0001:1C5A CLIENTTOWEREXPLODE CLIENTTOWEREXPLODE
+ 0001:19B8 CLIENTWRITE CLIENTWRITE
+ 0001:1D72 TRANSPORTLOAD TRANSPORTLOAD
+ 0001:0024 WEP WEP
+ 0001:0558 ___ExportedStub ___ExportedStub
+
+ Address Publics by Name
+
+ 0001:1D9E ??_C@_03HJFF@?$CD69?$AA@
+ 0001:1D92 ??_C@_0M@OCLK@?40123456789?$AA@
+ 0001:1DA2 ??_C@_0P@MCIL@ncacn_dnet_nsp?$AA@
+ 0001:199C CLIENTCLOSE
+ 0001:1880 CLIENTOPEN
+ 0001:19F8 CLIENTREAD
+ 0001:1B38 CLIENTTOWERCONSTRUCT
+ 0001:1C5A CLIENTTOWEREXPLODE
+ 0001:19B8 CLIENTWRITE
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp GlobalDosAlloc (KERNEL.184)
+ 0000:0000 Imp GlobalDosFree (KERNEL.185)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0001:0010 LIBENTRY
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 0002:0004 rsrvptrs
+ 0001:1D72 TRANSPORTLOAD
+ 0001:0024 WEP
+ 0002:0301 _aseghi
+ 0002:02FF _aseglo
+ 0001:0098 _atoi
+ 0001:10F6 _bcmp
+ 0001:111F _bcopy
+ 0001:1144 _bzero
+ 0001:0B9C _connect
+ 0001:11D1 _decnet
+ 0002:0042 _DLLTERMINATION
+ 0001:0968 _dnet_addr
+ 0001:1860 _dnet_chkstat
+ 0002:013A _dnet_copyright
+ 0001:1572 _dnet_path
+ 0002:017C _dnet_version
+ 0002:0138 _dnp_status
+ 0001:1678 _DoWinMessages
+ 0002:0418 _edata
+ 0002:04B4 _end
+ 0001:0FB8 _endnodeent
+ 0002:01BA _errno
+ 0001:0A56 _getnodebyaddr
+ 0001:0ABA _getnodebyname
+ 0001:105E _getnodedb
+ 0001:0FDE _getnodeent
+ 0001:1658 _get_current_volume
+ 0001:1686 _hclose
+ 0002:0040 _HINSTANCEDLL
+ 0001:16BC _hopen
+ 0001:175C _hread
+ 0001:17C4 _hseek
+ 0001:147D _install_check
+ 0001:10D2 _lohi
+ 0001:10E0 _lsw
+ 0001:00F8 _memcpy
+ 0001:14D6 _msdos
+ 0001:10EA _msw
+ 0001:0BF2 _recv
+ 0002:04B0 _RpcRuntimeInfo
+ 0001:0B3A _sclose
+ 0001:0D04 _select
+ 0001:0DF0 _send
+ 0001:0F66 _setnodeent
+ 0001:10A6 _sioctl
+ 0001:0EEC _socket
+ 0001:0C52 _sread
+ 0002:02F2 _STKHQQ
+ 0001:0290 _strcat
+ 0001:02E4 _strcmp
+ 0001:0042 _strcpy
+ 0001:009C _strcspn
+ 0001:007E _strlen
+ 0001:0E44 _swrite
+ 0002:0010 _TransInfo
+ 0001:0C90 _xrecv
+ 0001:0E82 _xsend
+ 0000:9876 Abs __acrtmsg
+ 0000:9876 Abs __acrtused
+ 0000:D6D6 Abs __aDBdoswp
+ 0002:0308 __adbgmsg
+ 0000:D6D6 Abs __aDBused
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0002:01AC __aintdiv
+ 0002:030C __amblksiz
+ 0001:0516 __amsg_exit
+ 0001:0352 __astart
+ 0001:0156 __catox
+ 0001:01F4 __cexit
+ 0002:01ED __child
+ 0001:01AC __cinit
+ 0001:050C __cintDIV
+ 0002:01C5 __cpumode
+ 0001:0253 __ctermsub
+ 0002:01F0 __ctype
+ 0002:01F0 __ctype_
+ 0001:0205 __c_exit
+ 0002:02FE __dllinit
+ 0002:01C6 __doserrno
+ 0002:0418 __edata
+ 0002:04B4 __end
+ 0002:01E4 __environ
+ 0002:01EF __exitflag
+ 0002:01B0 __fac
+ 0001:0700 __ffree
+ 0001:0450 __FF_MSGBANNER
+ 0002:0312 __fheap
+ 0001:06DF __findlast
+ 0001:0721 __fmalloc
+ 0002:0322 __fpinit
+ 0000:9876 Abs __fptaskdata
+ 0001:040C __fptrap
+ 0001:084A __freefarheap
+ 0001:08D4 __freelist
+ 0001:0412 __GetDGROUP
+ 0001:05E8 __growseg
+ 0002:02F4 __hModule
+ 0001:0679 __incseg
+ 0001:08FE __initseg
+ 0001:0932 __linkseg
+ 0002:02FA __lpszCmdLine
+ 0001:05BA __myalloc
+ 0001:0422 __nearstub
+ 0001:07C8 __newseg
+ 0002:01C8 __nfile
+ 0001:056C __NMSG_TEXT
+ 0001:05A3 __NMSG_WRITE
+ 0001:03F4 __nomain
+ 0002:01C6 __oserr
+ 0002:01CA __osfile
+ 0002:01C1 __osmajor
+ 0002:01C0 __osminor
+ 0002:01C4 __osmode
+ 0002:01C0 __osver
+ 0002:01C2 __osversion
+ 0002:01E8 __pgmptr
+ 0002:030E __pnhFarHeap
+ 0001:0858 __searchseg
+ 0001:0474 __setenvp
+ 0000:0001 Abs __sizec
+ 0000:0001 Abs __sized
+ 0001:0424 __stubmain
+ 0002:01BC __umaskval
+ 0002:02F6 __wDataSeg
+ 0001:030E __wflags
+ 0002:02F8 __wHeapSize
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 0002:01BF __winmajor
+ 0002:01BE __winminor
+ 0002:01BE __winver
+ 0002:0305 ___aDBrterr
+ 0002:0303 ___aDBswpflg
+ 0002:01DE ___argc
+ 0002:01E0 ___argv
+ 0001:0558 ___ExportedStub
+
+ Address Publics by Value
+
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp GlobalDosFree (KERNEL.185)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp GlobalDosAlloc (KERNEL.184)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0001 Abs __sizec
+ 0000:0001 Abs __sized
+ 0000:9876 Abs __fptaskdata
+ 0000:9876 Abs __acrtmsg
+ 0000:9876 Abs __acrtused
+ 0000:D6D6 Abs __aDBdoswp
+ 0000:D6D6 Abs __aDBused
+ 0001:0010 LIBENTRY
+ 0001:0024 WEP
+ 0001:0042 _strcpy
+ 0001:007E _strlen
+ 0001:0098 _atoi
+ 0001:009C _strcspn
+ 0001:00F8 _memcpy
+ 0001:0156 __catox
+ 0001:01AC __cinit
+ 0001:01F4 __cexit
+ 0001:0205 __c_exit
+ 0001:0253 __ctermsub
+ 0001:0290 _strcat
+ 0001:02E4 _strcmp
+ 0001:030E __wflags
+ 0001:0352 __astart
+ 0001:03F4 __nomain
+ 0001:040C __fptrap
+ 0001:0412 __GetDGROUP
+ 0001:0422 __nearstub
+ 0001:0424 __stubmain
+ 0001:0450 __FF_MSGBANNER
+ 0001:0474 __setenvp
+ 0001:050C __cintDIV
+ 0001:0516 __amsg_exit
+ 0001:0558 ___ExportedStub
+ 0001:056C __NMSG_TEXT
+ 0001:05A3 __NMSG_WRITE
+ 0001:05BA __myalloc
+ 0001:05E8 __growseg
+ 0001:0679 __incseg
+ 0001:06DF __findlast
+ 0001:0700 __ffree
+ 0001:0721 __fmalloc
+ 0001:07C8 __newseg
+ 0001:084A __freefarheap
+ 0001:0858 __searchseg
+ 0001:08D4 __freelist
+ 0001:08FE __initseg
+ 0001:0932 __linkseg
+ 0001:0968 _dnet_addr
+ 0001:0A56 _getnodebyaddr
+ 0001:0ABA _getnodebyname
+ 0001:0B3A _sclose
+ 0001:0B9C _connect
+ 0001:0BF2 _recv
+ 0001:0C52 _sread
+ 0001:0C90 _xrecv
+ 0001:0D04 _select
+ 0001:0DF0 _send
+ 0001:0E44 _swrite
+ 0001:0E82 _xsend
+ 0001:0EEC _socket
+ 0001:0F66 _setnodeent
+ 0001:0FB8 _endnodeent
+ 0001:0FDE _getnodeent
+ 0001:105E _getnodedb
+ 0001:10A6 _sioctl
+ 0001:10D2 _lohi
+ 0001:10E0 _lsw
+ 0001:10EA _msw
+ 0001:10F6 _bcmp
+ 0001:111F _bcopy
+ 0001:1144 _bzero
+ 0001:11D1 _decnet
+ 0001:147D _install_check
+ 0001:14D6 _msdos
+ 0001:1572 _dnet_path
+ 0001:1658 _get_current_volume
+ 0001:1678 _DoWinMessages
+ 0001:1686 _hclose
+ 0001:16BC _hopen
+ 0001:175C _hread
+ 0001:17C4 _hseek
+ 0001:1860 _dnet_chkstat
+ 0001:1880 CLIENTOPEN
+ 0001:199C CLIENTCLOSE
+ 0001:19B8 CLIENTWRITE
+ 0001:19F8 CLIENTREAD
+ 0001:1B38 CLIENTTOWERCONSTRUCT
+ 0001:1C5A CLIENTTOWEREXPLODE
+ 0001:1D72 TRANSPORTLOAD
+ 0001:1D92 ??_C@_0M@OCLK@?40123456789?$AA@
+ 0001:1D9E ??_C@_03HJFF@?$CD69?$AA@
+ 0001:1DA2 ??_C@_0P@MCIL@ncacn_dnet_nsp?$AA@
+ 0002:0004 rsrvptrs
+ 0002:0010 _TransInfo
+ 0002:0040 _HINSTANCEDLL
+ 0002:0042 _DLLTERMINATION
+ 0002:0138 _dnp_status
+ 0002:013A _dnet_copyright
+ 0002:017C _dnet_version
+ 0002:01AC __aintdiv
+ 0002:01B0 __fac
+ 0002:01BA _errno
+ 0002:01BC __umaskval
+ 0002:01BE __winver
+ 0002:01BE __winminor
+ 0002:01BF __winmajor
+ 0002:01C0 __osminor
+ 0002:01C0 __osver
+ 0002:01C1 __osmajor
+ 0002:01C2 __osversion
+ 0002:01C4 __osmode
+ 0002:01C5 __cpumode
+ 0002:01C6 __oserr
+ 0002:01C6 __doserrno
+ 0002:01C8 __nfile
+ 0002:01CA __osfile
+ 0002:01DE ___argc
+ 0002:01E0 ___argv
+ 0002:01E4 __environ
+ 0002:01E8 __pgmptr
+ 0002:01ED __child
+ 0002:01EF __exitflag
+ 0002:01F0 __ctype_
+ 0002:01F0 __ctype
+ 0002:02F2 _STKHQQ
+ 0002:02F4 __hModule
+ 0002:02F6 __wDataSeg
+ 0002:02F8 __wHeapSize
+ 0002:02FA __lpszCmdLine
+ 0002:02FE __dllinit
+ 0002:02FF _aseglo
+ 0002:0301 _aseghi
+ 0002:0303 ___aDBswpflg
+ 0002:0305 ___aDBrterr
+ 0002:0308 __adbgmsg
+ 0002:030C __amblksiz
+ 0002:030E __pnhFarHeap
+ 0002:0312 __fheap
+ 0002:0322 __fpinit
+ 0002:0418 _edata
+ 0002:0418 __edata
+ 0002:04B0 _RpcRuntimeInfo
+ 0002:04B4 _end
+ 0002:04B4 __end
+
+Program entry point at 0001:0010
diff --git a/public/sdk/rpc16/win/dll/rpc16c4.sym b/public/sdk/rpc16/win/dll/rpc16c4.sym
new file mode 100644
index 000000000..84dd3a9a7
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c4.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16c5.map b/public/sdk/rpc16/win/dll/rpc16c5.map
new file mode 100644
index 000000000..91f4a0663
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c5.map
@@ -0,0 +1,129 @@
+
+ RPC16C5
+
+ Start Length Name Class
+ 0001:0000 00098H RPC16C5_FIXED CODE
+ 0002:0000 00000H NBLTCLNT_TEXT CODE
+ 0002:0000 00000H LTSTART_TEXT CODE
+ 0002:0000 00171H _TEXT CODE
+ 0003:0000 0140DH COMDAT_SEG1 CODE
+ 0004:0000 0008EH _DATA DATA
+ 0004:008E 00000H CONST CONST
+ 0004:008E 00000H _BSS BSS
+ 0004:0090 00038H c_common BSS
+
+ Origin Group
+ 0004:0 DGROUP
+
+ Address Export Alias
+
+ 0003:0000 CLEANUPNETBIOS CLEANUPNETBIOS
+ 0003:07CA CLOSE CLOSE
+ 0003:1384 EXECNCB EXECNCB
+ 0003:119E INITNBMUTEX INITNBMUTEX
+ 0003:12FC MAPERRORCODE MAPERRORCODE
+ 0003:051C OPEN OPEN
+ 0003:0A7A RECEIVE RECEIVE
+ 0003:096C SEND SEND
+ 0003:0BF2 SENDRECEIVE SENDRECEIVE
+ 0003:0E66 TOWERCONSTRUCT TOWERCONSTRUCT
+ 0003:105A TOWEREXPLODE TOWEREXPLODE
+ 0003:00A0 TRANSPORTLOAD TRANSPORTLOAD
+ 0002:0014 WEP WEP
+ 0001:0000 _NBWinPost _NBWinPost
+
+ Address Publics by Name
+
+ 0003:13EE ??_C@_0BP@PJIB@Software?2Microsoft?2Rpc?2NetBios?$AA@
+ 0003:13B8 ??_C@_0M@PAMB@ncacn_nb_nb?$AA@
+ 0003:13C4 ??_C@_0N@DJPI@ncacn_nb_tcp?$AA@
+ 0003:13E0 ??_C@_0N@JHIF@ncacn_nb_ipx?$AA@
+ 0003:13D2 ??_C@_0N@OHPK@ncacn_nb_xns?$AA@
+ 0003:0000 CLEANUPNETBIOS
+ 0003:07CA CLOSE
+ 0003:1384 EXECNCB
+ 0000:0000 Imp GLOBALFIX (KERNEL.197)
+ 0000:0000 Imp GLOBALPAGELOCK (KERNEL.191)
+ 0000:0000 Imp GLOBALPAGEUNLOCK (KERNEL.192)
+ 0000:0000 Imp GLOBALUNFIX (KERNEL.198)
+ 0003:119E INITNBMUTEX
+ 0002:0000 LIBENTRY
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0003:12FC MAPERRORCODE
+ 0000:0000 Imp NETBIOSCALL (KERNEL.103)
+ 0003:051C OPEN
+ 0003:0A7A RECEIVE
+ 0003:096C SEND
+ 0003:0BF2 SENDRECEIVE
+ 0003:0E66 TOWERCONSTRUCT
+ 0003:105A TOWEREXPLODE
+ 0003:00A0 TRANSPORTLOAD
+ 0002:0014 WEP
+ 0004:00C0 _AsyncCallComplete
+ 0004:008A _DllTermination
+ 0004:0088 _HINSTANCEDLL
+ 0004:0076 _MachineName
+ 0004:0086 _MachineNameLengthUnpadded
+ 0003:11AA _MapProtocol
+ 0002:00B2 _memcpy
+ 0002:0110 _memset
+ 0001:0000 _NBWinPost
+ 0004:0000 _NetBiosErrors
+ 0004:0090 _ProtoToLana
+ 0004:00C4 _RpcRuntimeInfo
+ 0003:1344 _SetupNetBios
+ 0002:006E _strcmp
+ 0002:0032 _strcpy
+ 0002:0098 _strlen
+ 0004:0046 _TransInfo
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0002:0158 __fstrlen
+
+ Address Publics by Value
+
+ 0000:0000 Imp NETBIOSCALL (KERNEL.103)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp GLOBALPAGEUNLOCK (KERNEL.192)
+ 0000:0000 Imp GLOBALPAGELOCK (KERNEL.191)
+ 0000:0000 Imp GLOBALFIX (KERNEL.197)
+ 0000:0000 Imp GLOBALUNFIX (KERNEL.198)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0001:0000 _NBWinPost
+ 0002:0000 LIBENTRY
+ 0002:0014 WEP
+ 0002:0032 _strcpy
+ 0002:006E _strcmp
+ 0002:0098 _strlen
+ 0002:00B2 _memcpy
+ 0002:0110 _memset
+ 0002:0158 __fstrlen
+ 0003:0000 CLEANUPNETBIOS
+ 0003:00A0 TRANSPORTLOAD
+ 0003:051C OPEN
+ 0003:07CA CLOSE
+ 0003:096C SEND
+ 0003:0A7A RECEIVE
+ 0003:0BF2 SENDRECEIVE
+ 0003:0E66 TOWERCONSTRUCT
+ 0003:105A TOWEREXPLODE
+ 0003:119E INITNBMUTEX
+ 0003:11AA _MapProtocol
+ 0003:12FC MAPERRORCODE
+ 0003:1344 _SetupNetBios
+ 0003:1384 EXECNCB
+ 0003:13B8 ??_C@_0M@PAMB@ncacn_nb_nb?$AA@
+ 0003:13C4 ??_C@_0N@DJPI@ncacn_nb_tcp?$AA@
+ 0003:13D2 ??_C@_0N@OHPK@ncacn_nb_xns?$AA@
+ 0003:13E0 ??_C@_0N@JHIF@ncacn_nb_ipx?$AA@
+ 0003:13EE ??_C@_0BP@PJIB@Software?2Microsoft?2Rpc?2NetBios?$AA@
+ 0004:0000 _NetBiosErrors
+ 0004:0046 _TransInfo
+ 0004:0076 _MachineName
+ 0004:0086 _MachineNameLengthUnpadded
+ 0004:0088 _HINSTANCEDLL
+ 0004:008A _DllTermination
+ 0004:0090 _ProtoToLana
+ 0004:00C0 _AsyncCallComplete
+ 0004:00C4 _RpcRuntimeInfo
+
+Program entry point at 0002:0000
diff --git a/public/sdk/rpc16/win/dll/rpc16c5.sym b/public/sdk/rpc16/win/dll/rpc16c5.sym
new file mode 100644
index 000000000..81ffbd392
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c5.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16c6.map b/public/sdk/rpc16/win/dll/rpc16c6.map
new file mode 100644
index 000000000..ed5bd6246
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c6.map
@@ -0,0 +1,314 @@
+
+ RPC16C6
+
+ Start Length Name Class
+ 0001:0000 0007BH RPC16C6_FIXED CODE
+ 0002:0000 00000H SPXCLNT_TEXT CODE
+ 0002:0000 00000H GETHOST_TEXT CODE
+ 0002:0000 00000H NOVELL_TEXT CODE
+ 0002:0000 00000H LTSTART_TEXT CODE
+ 0002:0000 003A5H _TEXT CODE
+ 0003:0000 02361H COMDAT_SEG1 CODE
+ 0004:0000 00040H _DATA DATA
+ 0004:0040 00000H CONST CONST
+ 0004:0040 00000H _BSS BSS
+ 0004:0040 002B4H c_common BSS
+
+ Origin Group
+ 0004:0 DGROUP
+
+ Address Export Alias
+
+ 0003:02EA SPX_CLOSE SPX_CLOSE
+ 0003:03D0 SPX_OPEN SPX_OPEN
+ 0003:0794 SPX_RECEIVE SPX_RECEIVE
+ 0003:0668 SPX_SEND SPX_SEND
+ 0003:08BC SPX_TOWER_CONSTRUCT SPX_TOWER_CONSTRUCT
+ 0003:0992 SPX_TOWER_EXPLODE SPX_TOWER_EXPLODE
+ 0003:0ABC TRANSPORTLOAD TRANSPORTLOAD
+ 0002:0014 WEP WEP
+ 0001:0000 _post_ecb _post_ecb
+
+ Address Publics by Name
+
+ 0003:0B78 ??_C@_05LKBG@34280?$AA@
+ 0003:0B88 ??_C@_08MFIO@NWIPXSPX?$AA@
+ 0003:0B7E ??_C@_09LLEG@ncacn_spx?$AA@
+ 0003:22B2 ??_C@_0BC@GPKG@IPXGetLocalTarget?$AA@
+ 0003:2264 ??_C@_0BD@DOAJ@IPXListenForPacket?$AA@
+ 0003:22EA ??_C@_0BD@LKHJ@SPXAbortConnection?$AA@
+ 0003:229E ??_C@_0BE@CLFP@IPXGetMaxPacketSize?$AA@
+ 0003:2288 ??_C@_0BF@HPBB@IPXRelinquishControl?$AA@
+ 0003:2240 ??_C@_0BF@LJIE@IPXGetIntervalMarker?$AA@
+ 0003:22FE ??_C@_0BH@CGGF@SPXSendSequencedPacket?$AA@
+ 0003:234A ??_C@_0BH@HMAG@SPXTerminateConnection?$AA@
+ 0003:2332 ??_C@_0BH@HNJJ@SPXEstablishConnection?$AA@
+ 0003:22C4 ??_C@_0BI@PNGJ@IPXDisconnectFromTarget?$AA@
+ 0003:2316 ??_C@_0BM@PLEO@SPXListenForSequencedPacket?$AA@
+ 0003:12F8 ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 0003:2214 ??_C@_0N@DBEN@IPXSPXDeinit?$AA@
+ 0003:21F8 ??_C@_0N@OMIP@nwipxspx?4dll?$AA@
+ 0003:2222 ??_C@_0O@DBFD@IPXOpenSocket?$AA@
+ 0003:22DC ??_C@_0O@FECL@SPXInitialize?$AA@
+ 0003:2206 ??_C@_0O@GLEB@IPXInitialize?$AA@
+ 0003:2256 ??_C@_0O@KMBC@IPXSendPacket?$AA@
+ 0003:2278 ??_C@_0P@LEOG@IPXCancelEvent?$AA@
+ 0003:2230 ??_C@_0P@MDGB@IPXCloseSocket?$AA@
+ 0003:134A ASMIPXCANCELEVENT
+ 0003:1366 ASMIPXCLOSESOCKET
+ 0003:14F2 ASMIPXDISCONNECTFROMTARGET
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 0003:1382 ASMIPXGETINTERVALMARKER
+ 0003:150E ASMIPXGETLOCALTARGET
+ 0003:14DC ASMIPXGETMAXPACKETSIZE
+ 0003:1304 ASMIPXINITIALIZE
+ 0003:1398 ASMIPXLISTENFORPACKET
+ 0003:13B4 ASMIPXOPENSOCKET
+ 0003:13DC ASMIPXRELINQUISHCONTROL
+ 0003:13F2 ASMIPXSENDPACKET
+ 0003:140E ASMSPXABORTCONNECTION
+ 0003:145C ASMSPXESTABLISHCONNECTION
+ 0003:142A ASMSPXINITIALIZE
+ 0003:1484 ASMSPXLISTENFORSEQUENCEDPACKET
+ 0003:14A0 ASMSPXSENDSEQUENCEDPACKET
+ 0003:14BE ASMSPXTERMINATECONNECTION
+ 0000:0000 Imp FREELIBRARY (KERNEL.96)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0000:0000 Imp GETWINFLAGS (KERNEL.132)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp GLOBALHANDLE (KERNEL.21)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0002:0000 LIBENTRY
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0003:02EA SPX_CLOSE
+ 0003:03D0 SPX_OPEN
+ 0003:0794 SPX_RECEIVE
+ 0003:0668 SPX_SEND
+ 0003:08BC SPX_TOWER_CONSTRUCT
+ 0003:0992 SPX_TOWER_EXPLODE
+ 0003:0A88 SPX_WRAPUP
+ 0003:0ABC TRANSPORTLOAD
+ 0002:0014 WEP
+ 0003:2032 WRAPPERFORIPXCANCELEVENT
+ 0003:1F94 WRAPPERFORIPXCLOSESOCKET
+ 0000:0000 Unr WRAPPERFORIPXDISCONNECTFROMTARGET
+ 0003:1FBA WRAPPERFORIPXGETINTERVALMARKER
+ 0003:1F4E WRAPPERFORIPXGETLOCALTARGET
+ 0003:2072 WRAPPERFORIPXGETMAXPACKETSIZE
+ 0003:1D3C WRAPPERFORIPXINITIALIZE
+ 0003:2006 WRAPPERFORIPXLISTENFORPACKET
+ 0003:1F16 WRAPPERFORIPXOPENSOCKET
+ 0003:2060 WRAPPERFORIPXRELINQUISHCONTROL
+ 0003:1FDA WRAPPERFORIPXSENDPACKET
+ 0003:21DA WRAPPERFORIPXSPXDEINIT
+ 0003:20DE WRAPPERFORSPXABORTCONNECTION
+ 0003:215C WRAPPERFORSPXESTABLISHCONNECTION
+ 0003:2084 WRAPPERFORSPXINITIALIZE
+ 0003:2130 WRAPPERFORSPXLISTENFORSEQUENCEDPACKET
+ 0003:20FE WRAPPERFORSPXSENDSEQUENCEDPACKET
+ 0003:21A8 WRAPPERFORSPXTERMINATECONNECTION
+ 0004:0038 _ActiveFileServer
+ 0003:0C3A _AddServerToCache
+ 0003:0122 _allocate_receive_ecb
+ 0003:0074 _allocate_send_ecb
+ 0004:00EC _AsyncCallComplete
+ 0002:004C _atoi
+ 0003:0B92 _ByteSwapShort
+ 0003:0D56 _CachedServerContacted
+ 0003:0D96 _CachedServerNotContacted
+ 0003:0B9E _chtob
+ 0003:1876 _ConnectToAnyFileServer
+ 0003:1BD0 _DisconnectFromServer
+ 0004:003C _DllTermination
+ 0003:0C22 _DosGetTickCount
+ 0004:00E8 _enteripx
+ 0004:0036 _FileServerCount
+ 0003:15B4 _FindFileServers
+ 0003:0D16 _FindServerInCache
+ 0003:0000 _free_ecb
+ 0003:06F0 _get_remaining_packets
+ 0004:003A _HINSTANCEDLL
+ 0004:00B6 _IpxFns
+ 0003:1188 _IpxGetHostByName
+ 0002:006C _memcpy
+ 0002:00CA _memset
+ 0003:1986 _NcpTransaction
+ 0004:00E6 _nwipxspx
+ 0001:0000 _post_ecb
+ 0004:007E _PreferredServer
+ 0004:0030 _PreferredServerFound
+ 0003:05BA _put_packets
+ 0003:1C2A _ReadPropertyValue
+ 0004:00F0 _RpcRuntimeInfo
+ 0003:0DF6 _SearchBindery
+ 0003:0ED2 _SearchWithSap
+ 0004:00F4 _ServerCache
+ 0004:0042 _Servers
+ 0003:1568 _SetupEcb
+ 0004:009E _SpxFns
+ 0003:0252 _spx_abort
+ 0004:0040 _spx_max_userdata_size
+ 0002:0032 _strlen
+ 0004:0032 _taskid
+ 0004:0000 _TransInfo
+ 0003:01A2 _wait_for_ecb
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0002:02EC __catox
+ 0002:0342 __cltoasub
+ 0002:034F __cxtoa
+ 0002:0112 __fmemcmp
+ 0002:016E __fmemcpy
+ 0002:024C __fmemset
+ 0002:01E6 __fstrcmp
+ 0002:0210 __fstrcpy
+ 0002:01CC __fstrlen
+ 0002:0294 __fstrnicmp
+ 0002:0050 __itoa
+
+ Address Publics by Value
+
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Unr WRAPPERFORIPXDISCONNECTFROMTARGET
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Imp GLOBALHANDLE (KERNEL.21)
+ 0000:0000 Imp FREELIBRARY (KERNEL.96)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp GETWINFLAGS (KERNEL.132)
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0001:0000 _post_ecb
+ 0002:0000 LIBENTRY
+ 0002:0014 WEP
+ 0002:0032 _strlen
+ 0002:004C _atoi
+ 0002:0050 __itoa
+ 0002:006C _memcpy
+ 0002:00CA _memset
+ 0002:0112 __fmemcmp
+ 0002:016E __fmemcpy
+ 0002:01CC __fstrlen
+ 0002:01E6 __fstrcmp
+ 0002:0210 __fstrcpy
+ 0002:024C __fmemset
+ 0002:0294 __fstrnicmp
+ 0002:02EC __catox
+ 0002:0342 __cltoasub
+ 0002:034F __cxtoa
+ 0003:0000 _free_ecb
+ 0003:0074 _allocate_send_ecb
+ 0003:0122 _allocate_receive_ecb
+ 0003:01A2 _wait_for_ecb
+ 0003:0252 _spx_abort
+ 0003:02EA SPX_CLOSE
+ 0003:03D0 SPX_OPEN
+ 0003:05BA _put_packets
+ 0003:0668 SPX_SEND
+ 0003:06F0 _get_remaining_packets
+ 0003:0794 SPX_RECEIVE
+ 0003:08BC SPX_TOWER_CONSTRUCT
+ 0003:0992 SPX_TOWER_EXPLODE
+ 0003:0A88 SPX_WRAPUP
+ 0003:0ABC TRANSPORTLOAD
+ 0003:0B78 ??_C@_05LKBG@34280?$AA@
+ 0003:0B7E ??_C@_09LLEG@ncacn_spx?$AA@
+ 0003:0B88 ??_C@_08MFIO@NWIPXSPX?$AA@
+ 0003:0B92 _ByteSwapShort
+ 0003:0B9E _chtob
+ 0003:0C22 _DosGetTickCount
+ 0003:0C3A _AddServerToCache
+ 0003:0D16 _FindServerInCache
+ 0003:0D56 _CachedServerContacted
+ 0003:0D96 _CachedServerNotContacted
+ 0003:0DF6 _SearchBindery
+ 0003:0ED2 _SearchWithSap
+ 0003:1188 _IpxGetHostByName
+ 0003:12F8 ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 0003:1304 ASMIPXINITIALIZE
+ 0003:134A ASMIPXCANCELEVENT
+ 0003:1366 ASMIPXCLOSESOCKET
+ 0003:1382 ASMIPXGETINTERVALMARKER
+ 0003:1398 ASMIPXLISTENFORPACKET
+ 0003:13B4 ASMIPXOPENSOCKET
+ 0003:13DC ASMIPXRELINQUISHCONTROL
+ 0003:13F2 ASMIPXSENDPACKET
+ 0003:140E ASMSPXABORTCONNECTION
+ 0003:142A ASMSPXINITIALIZE
+ 0003:145C ASMSPXESTABLISHCONNECTION
+ 0003:1484 ASMSPXLISTENFORSEQUENCEDPACKET
+ 0003:14A0 ASMSPXSENDSEQUENCEDPACKET
+ 0003:14BE ASMSPXTERMINATECONNECTION
+ 0003:14DC ASMIPXGETMAXPACKETSIZE
+ 0003:14F2 ASMIPXDISCONNECTFROMTARGET
+ 0003:150E ASMIPXGETLOCALTARGET
+ 0003:1568 _SetupEcb
+ 0003:15B4 _FindFileServers
+ 0003:1876 _ConnectToAnyFileServer
+ 0003:1986 _NcpTransaction
+ 0003:1BD0 _DisconnectFromServer
+ 0003:1C2A _ReadPropertyValue
+ 0003:1D3C WRAPPERFORIPXINITIALIZE
+ 0003:1F16 WRAPPERFORIPXOPENSOCKET
+ 0003:1F4E WRAPPERFORIPXGETLOCALTARGET
+ 0003:1F94 WRAPPERFORIPXCLOSESOCKET
+ 0003:1FBA WRAPPERFORIPXGETINTERVALMARKER
+ 0003:1FDA WRAPPERFORIPXSENDPACKET
+ 0003:2006 WRAPPERFORIPXLISTENFORPACKET
+ 0003:2032 WRAPPERFORIPXCANCELEVENT
+ 0003:2060 WRAPPERFORIPXRELINQUISHCONTROL
+ 0003:2072 WRAPPERFORIPXGETMAXPACKETSIZE
+ 0003:2084 WRAPPERFORSPXINITIALIZE
+ 0003:20DE WRAPPERFORSPXABORTCONNECTION
+ 0003:20FE WRAPPERFORSPXSENDSEQUENCEDPACKET
+ 0003:2130 WRAPPERFORSPXLISTENFORSEQUENCEDPACKET
+ 0003:215C WRAPPERFORSPXESTABLISHCONNECTION
+ 0003:21A8 WRAPPERFORSPXTERMINATECONNECTION
+ 0003:21DA WRAPPERFORIPXSPXDEINIT
+ 0003:21F8 ??_C@_0N@OMIP@nwipxspx?4dll?$AA@
+ 0003:2206 ??_C@_0O@GLEB@IPXInitialize?$AA@
+ 0003:2214 ??_C@_0N@DBEN@IPXSPXDeinit?$AA@
+ 0003:2222 ??_C@_0O@DBFD@IPXOpenSocket?$AA@
+ 0003:2230 ??_C@_0P@MDGB@IPXCloseSocket?$AA@
+ 0003:2240 ??_C@_0BF@LJIE@IPXGetIntervalMarker?$AA@
+ 0003:2256 ??_C@_0O@KMBC@IPXSendPacket?$AA@
+ 0003:2264 ??_C@_0BD@DOAJ@IPXListenForPacket?$AA@
+ 0003:2278 ??_C@_0P@LEOG@IPXCancelEvent?$AA@
+ 0003:2288 ??_C@_0BF@HPBB@IPXRelinquishControl?$AA@
+ 0003:229E ??_C@_0BE@CLFP@IPXGetMaxPacketSize?$AA@
+ 0003:22B2 ??_C@_0BC@GPKG@IPXGetLocalTarget?$AA@
+ 0003:22C4 ??_C@_0BI@PNGJ@IPXDisconnectFromTarget?$AA@
+ 0003:22DC ??_C@_0O@FECL@SPXInitialize?$AA@
+ 0003:22EA ??_C@_0BD@LKHJ@SPXAbortConnection?$AA@
+ 0003:22FE ??_C@_0BH@CGGF@SPXSendSequencedPacket?$AA@
+ 0003:2316 ??_C@_0BM@PLEO@SPXListenForSequencedPacket?$AA@
+ 0003:2332 ??_C@_0BH@HNJJ@SPXEstablishConnection?$AA@
+ 0003:234A ??_C@_0BH@HMAG@SPXTerminateConnection?$AA@
+ 0004:0000 _TransInfo
+ 0004:0030 _PreferredServerFound
+ 0004:0032 _taskid
+ 0004:0036 _FileServerCount
+ 0004:0038 _ActiveFileServer
+ 0004:003A _HINSTANCEDLL
+ 0004:003C _DllTermination
+ 0004:0040 _spx_max_userdata_size
+ 0004:0042 _Servers
+ 0004:007E _PreferredServer
+ 0004:009E _SpxFns
+ 0004:00B6 _IpxFns
+ 0004:00E6 _nwipxspx
+ 0004:00E8 _enteripx
+ 0004:00EC _AsyncCallComplete
+ 0004:00F0 _RpcRuntimeInfo
+ 0004:00F4 _ServerCache
+
+Program entry point at 0002:0000
diff --git a/public/sdk/rpc16/win/dll/rpc16c6.sym b/public/sdk/rpc16/win/dll/rpc16c6.sym
new file mode 100644
index 000000000..f7a028b11
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c6.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16c8.map b/public/sdk/rpc16/win/dll/rpc16c8.map
new file mode 100644
index 000000000..74b5b99db
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c8.map
@@ -0,0 +1,176 @@
+
+ RPC16C8
+
+ Start Length Name Class
+ 0001:0000 00000H CLNTVNS_TEXT CODE
+ 0001:0000 00000H LTSTART_TEXT CODE
+ 0001:0000 001CBH _TEXT CODE
+ 0001:01D0 00CC4H COMDAT_SEG1 CODE
+ 0002:0000 00038H _DATA DATA
+ 0002:0038 00000H CONST CONST
+ 0002:0038 00000H _BSS BSS
+ 0002:0040 00012H c_common BSS
+
+ Origin Group
+ 0002:0 DGROUP
+
+ Address Export Alias
+
+ 0001:07B2 CLIENTCLOSE CLIENTCLOSE
+ 0001:062A CLIENTOPEN CLIENTOPEN
+ 0001:097A CLIENTRECV CLIENTRECV
+ 0001:08D2 CLIENTSEND CLIENTSEND
+ 0001:0B28 CLIENTTOWERCONSTRUCT CLIENTTOWERCONSTRUCT
+ 0001:0C66 CLIENTTOWEREXPLODE CLIENTTOWEREXPLODE
+ 0001:0274 INSERTCONN INSERTCONN
+ 0001:01D0 INSERTTASK INSERTTASK
+ 0001:02C4 REMOVECONN REMOVECONN
+ 0001:0220 REMOVETASK REMOVETASK
+ 0001:0D60 TRANSPORTLOAD TRANSPORTLOAD
+ 0001:0014 WEP WEP
+
+ Address Publics by Name
+
+ 0001:0E72 ??_C@_03GEHA@385?$AA@
+ 0001:0E62 ??_C@_07LDNL@RPC?5VNS?$AA@
+ 0001:0E6A ??_C@_07MKKD@CLNTVNS?$AA@
+ 0001:0E84 ??_C@_0BA@CFLE@VM_SOCKETNOTIFY?$AA@
+ 0001:0E76 ??_C@_0O@IPEE@ncacn_vns_spp?$AA@
+ 0001:0894 ASYNCEVENTPROC
+ 0001:07B2 CLIENTCLOSE
+ 0001:062A CLIENTOPEN
+ 0001:097A CLIENTRECV
+ 0001:08D2 CLIENTSEND
+ 0001:0B28 CLIENTTOWERCONSTRUCT
+ 0001:0C66 CLIENTTOWEREXPLODE
+ 0001:03CA CLNTVNSCLEANUP
+ 0000:0000 Imp CREATEWINDOW (USER.41)
+ 0000:0000 Imp DEFWINDOWPROC (USER.107)
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0000:0000 Imp GETCURRENTTASK (KERNEL.36)
+ 0000:0000 Imp GETCURRENTTIME (USER.15)
+ 0000:0000 Imp GETSTOCKOBJECT (GDI.87)
+ 0001:0274 INSERTCONN
+ 0001:01D0 INSERTTASK
+ 0001:0000 LIBENTRY
+ 0000:0000 Imp LOADCURSOR (USER.173)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0001:0E5C MYWEP
+ 0000:0000 Imp PEEKMESSAGE (USER.109)
+ 0000:0000 Imp REGISTERCLASS (USER.57)
+ 0000:0000 Imp REGISTERWINDOWMESSAGE (USER.118)
+ 0001:02C4 REMOVECONN
+ 0001:0220 REMOVETASK
+ 0000:0000 Imp SHOWWINDOW (USER.42)
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 0001:0D60 TRANSPORTLOAD
+ 0000:0000 Imp UPDATEWINDOW (USER.124)
+ 0000:0000 Imp VNSCLOSESOCKET (VNSAPI.14)
+ 0000:0000 Imp VNSDONE (VNSAPI.163)
+ 0000:0000 Imp VNSENDSTSESSION (VNSAPI.513)
+ 0000:0000 Imp VNSGETSSPPPORT (VNSAPI.417)
+ 0000:0000 Imp VNSOPENSOCKET (VNSAPI.10)
+ 0000:0000 Imp VNSSOCKETNOTIFYWINDOW (VNSAPI.20)
+ 0000:0000 Imp VNSSOCKETRECEIVE (VNSAPI.11)
+ 0000:0000 Imp VNSSOCKETSEND (VNSAPI.12)
+ 0000:0000 Imp VNSSOCKETWAIT (VNSAPI.13)
+ 0000:0000 Imp VNSSTARTSTSESSION (VNSAPI.542)
+ 0001:0014 WEP
+ 0002:0046 _AsyncCallComplete
+ 0001:004C _atoi
+ 0001:04D8 _BlockForRecv
+ 0001:0834 _CheckForCompletion
+ 0002:0034 _DllTermination
+ 0002:0042 _HeadConn
+ 0002:004E _HeadTask
+ 0002:0032 _hInstanceDLL
+ 0001:0582 _LocalBlockForSendRecv
+ 0001:0406 _MayBeCreateWindow
+ 0002:004A _RpcRuntimeInfo
+ 0001:0032 _strlen
+ 0002:0002 _TransInfo
+ 0002:0040 _VM_SocketNotify
+ 0001:031E _VnsFindConn
+ 0001:0376 _VnsFindWindowByTask
+ 0002:0000 _VNS_Verbose
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0001:0112 __catox
+ 0001:0168 __cltoasub
+ 0001:0175 __cxtoa
+ 0001:006C __fmemcpy
+ 0001:00CA __fmemset
+ 0001:0050 __itoa
+
+ Address Publics by Value
+
+ 0000:0000 Imp PEEKMESSAGE (USER.109)
+ 0000:0000 Imp VNSSOCKETNOTIFYWINDOW (VNSAPI.20)
+ 0000:0000 Imp REGISTERCLASS (USER.57)
+ 0000:0000 Imp VNSENDSTSESSION (VNSAPI.513)
+ 0000:0000 Imp REGISTERWINDOWMESSAGE (USER.118)
+ 0000:0000 Imp SHOWWINDOW (USER.42)
+ 0000:0000 Imp UPDATEWINDOW (USER.124)
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0000:0000 Imp VNSSOCKETSEND (VNSAPI.12)
+ 0000:0000 Imp GETSTOCKOBJECT (GDI.87)
+ 0000:0000 Imp VNSGETSSPPPORT (VNSAPI.417)
+ 0000:0000 Imp LOADCURSOR (USER.173)
+ 0000:0000 Imp DEFWINDOWPROC (USER.107)
+ 0000:0000 Imp VNSSOCKETRECEIVE (VNSAPI.11)
+ 0000:0000 Imp VNSDONE (VNSAPI.163)
+ 0000:0000 Imp VNSSOCKETWAIT (VNSAPI.13)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp VNSSTARTSTSESSION (VNSAPI.542)
+ 0000:0000 Imp VNSOPENSOCKET (VNSAPI.10)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp VNSCLOSESOCKET (VNSAPI.14)
+ 0000:0000 Imp CREATEWINDOW (USER.41)
+ 0000:0000 Imp GETCURRENTTIME (USER.15)
+ 0000:0000 Imp GETCURRENTTASK (KERNEL.36)
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 0001:0000 LIBENTRY
+ 0001:0014 WEP
+ 0001:0032 _strlen
+ 0001:004C _atoi
+ 0001:0050 __itoa
+ 0001:006C __fmemcpy
+ 0001:00CA __fmemset
+ 0001:0112 __catox
+ 0001:0168 __cltoasub
+ 0001:0175 __cxtoa
+ 0001:01D0 INSERTTASK
+ 0001:0220 REMOVETASK
+ 0001:0274 INSERTCONN
+ 0001:02C4 REMOVECONN
+ 0001:031E _VnsFindConn
+ 0001:0376 _VnsFindWindowByTask
+ 0001:03CA CLNTVNSCLEANUP
+ 0001:0406 _MayBeCreateWindow
+ 0001:04D8 _BlockForRecv
+ 0001:0582 _LocalBlockForSendRecv
+ 0001:062A CLIENTOPEN
+ 0001:07B2 CLIENTCLOSE
+ 0001:0834 _CheckForCompletion
+ 0001:0894 ASYNCEVENTPROC
+ 0001:08D2 CLIENTSEND
+ 0001:097A CLIENTRECV
+ 0001:0B28 CLIENTTOWERCONSTRUCT
+ 0001:0C66 CLIENTTOWEREXPLODE
+ 0001:0D60 TRANSPORTLOAD
+ 0001:0E5C MYWEP
+ 0001:0E62 ??_C@_07LDNL@RPC?5VNS?$AA@
+ 0001:0E6A ??_C@_07MKKD@CLNTVNS?$AA@
+ 0001:0E72 ??_C@_03GEHA@385?$AA@
+ 0001:0E76 ??_C@_0O@IPEE@ncacn_vns_spp?$AA@
+ 0001:0E84 ??_C@_0BA@CFLE@VM_SOCKETNOTIFY?$AA@
+ 0002:0000 _VNS_Verbose
+ 0002:0002 _TransInfo
+ 0002:0032 _hInstanceDLL
+ 0002:0034 _DllTermination
+ 0002:0040 _VM_SocketNotify
+ 0002:0042 _HeadConn
+ 0002:0046 _AsyncCallComplete
+ 0002:004A _RpcRuntimeInfo
+ 0002:004E _HeadTask
+
+Program entry point at 0001:0000
diff --git a/public/sdk/rpc16/win/dll/rpc16c8.sym b/public/sdk/rpc16/win/dll/rpc16c8.sym
new file mode 100644
index 000000000..f7457df2a
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16c8.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16dg3.map b/public/sdk/rpc16/win/dll/rpc16dg3.map
new file mode 100644
index 000000000..056e3ffa7
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16dg3.map
@@ -0,0 +1,156 @@
+
+ RPC16DG3
+
+ Start Length Name Class
+ 0001:0000 00000H DGUDPC_TEXT CODE
+ 0001:0000 00000H LTSTART_TEXT CODE
+ 0001:0000 00233H _TEXT CODE
+ 0001:0240 00758H COMDAT_SEG1 CODE
+ 0002:0000 00056H _DATA DATA
+ 0002:0056 00000H CONST CONST
+ 0002:0056 00000H _BSS BSS
+ 0002:0060 0000AH c_common BSS
+
+ Origin Group
+ 0002:0 DGROUP
+
+ Address Export Alias
+
+ 0001:0240 ASSIGNLOCALENDPOINT ASSIGNLOCALENDPOINT
+ 0001:0870 BEGINCALL BEGINCALL
+ 0001:05E4 CLEANUP CLEANUP
+ 0001:05F2 CLIENTTOWERCONSTRUCT CLIENTTOWERCONSTRUCT
+ 0001:06F8 CLIENTTOWEREXPLODE CLIENTTOWEREXPLODE
+ 0001:0424 DEREGISTERSERVERADDRESS DEREGISTERSERVERADDRESS
+ 0001:0880 ENDCALL ENDCALL
+ 0001:0308 FREELOCALENDPOINT FREELOCALENDPOINT
+ 0001:0836 INQBUFFERLENGTH INQBUFFERLENGTH
+ 0001:07D6 QUERYCLIENTENDPOINT QUERYCLIENTENDPOINT
+ 0001:04FE RECEIVEPACKET RECEIVEPACKET
+ 0001:0328 REGISTERSERVERADDRESS REGISTERSERVERADDRESS
+ 0001:043A SENDTOSERVER SENDTOSERVER
+ 0001:0806 SETBUFFERLENGTH SETBUFFERLENGTH
+ 0001:088E TRANSPORTLOAD TRANSPORTLOAD
+ 0001:0014 WEP WEP
+
+ Address Publics by Name
+
+ 0001:097E ??_C@_03EOPG@135?$AA@
+ 0001:0990 ??_C@_07EHGE@WINSOCK?$AA@
+ 0001:0974 ??_C@_09FCOK@127?40?40?41?$AA@
+ 0001:0982 ??_C@_0N@OGGG@ncadg_ip_udp?$AA@
+ 0001:0240 ASSIGNLOCALENDPOINT
+ 0001:0870 BEGINCALL
+ 0000:0000 Imp BIND (WINSOCK.2)
+ 0001:05E4 CLEANUP
+ 0001:05F2 CLIENTTOWERCONSTRUCT
+ 0001:06F8 CLIENTTOWEREXPLODE
+ 0000:0000 Imp CLOSESOCKET (WINSOCK.3)
+ 0001:0424 DEREGISTERSERVERADDRESS
+ 0001:0880 ENDCALL
+ 0001:0308 FREELOCALENDPOINT
+ 0000:0000 Imp GETHOSTBYNAME (WINSOCK.52)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp GETSOCKOPT (WINSOCK.7)
+ 0000:0000 Imp HTONS (WINSOCK.9)
+ 0000:0000 Imp INET_ADDR (WINSOCK.10)
+ 0001:0836 INQBUFFERLENGTH
+ 0001:0000 LIBENTRY
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0001:092A MYWEP
+ 0000:0000 Imp NTOHS (WINSOCK.15)
+ 0001:07D6 QUERYCLIENTENDPOINT
+ 0001:04FE RECEIVEPACKET
+ 0000:0000 Imp RECVFROM (WINSOCK.17)
+ 0001:0328 REGISTERSERVERADDRESS
+ 0000:0000 Imp SELECT (WINSOCK.18)
+ 0000:0000 Imp SENDTO (WINSOCK.20)
+ 0001:043A SENDTOSERVER
+ 0001:0806 SETBUFFERLENGTH
+ 0000:0000 Imp SETSOCKOPT (WINSOCK.21)
+ 0000:0000 Imp SOCKET (WINSOCK.23)
+ 0001:088E TRANSPORTLOAD
+ 0001:0014 WEP
+ 0000:0000 Imp WSACLEANUP (WINSOCK.116)
+ 0000:0000 Imp WSAGETLASTERROR (WINSOCK.111)
+ 0000:0000 Imp WSASTARTUP (WINSOCK.115)
+ 0002:0062 _AsyncCallComplete
+ 0001:004C _atoi
+ 0002:0052 _DllTermination
+ 0002:0050 _HINSTANCEDLL
+ 0001:0940 _MapStatus
+ 0001:0076 _memcpy
+ 0001:00D4 _memset
+ 0002:0066 _RpcRuntimeInfo
+ 0001:0032 _strlen
+ 0002:0000 _TransInfo
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0001:017A __catox
+ 0001:01D0 __cltoasub
+ 0001:01DD __cxtoa
+ 0002:0060 __FakeErrno
+ 0001:011C __fmemcpy
+ 0001:0050 __itoa
+ 0001:006C __ultoa
+
+ Address Publics by Value
+
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp WSASTARTUP (WINSOCK.115)
+ 0000:0000 Imp INET_ADDR (WINSOCK.10)
+ 0000:0000 Imp WSAGETLASTERROR (WINSOCK.111)
+ 0000:0000 Imp NTOHS (WINSOCK.15)
+ 0000:0000 Imp SELECT (WINSOCK.18)
+ 0000:0000 Imp SETSOCKOPT (WINSOCK.21)
+ 0000:0000 Imp SENDTO (WINSOCK.20)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp RECVFROM (WINSOCK.17)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp BIND (WINSOCK.2)
+ 0000:0000 Imp HTONS (WINSOCK.9)
+ 0000:0000 Imp SOCKET (WINSOCK.23)
+ 0000:0000 Imp GETSOCKOPT (WINSOCK.7)
+ 0000:0000 Imp CLOSESOCKET (WINSOCK.3)
+ 0000:0000 Imp WSACLEANUP (WINSOCK.116)
+ 0000:0000 Imp GETHOSTBYNAME (WINSOCK.52)
+ 0001:0000 LIBENTRY
+ 0001:0014 WEP
+ 0001:0032 _strlen
+ 0001:004C _atoi
+ 0001:0050 __itoa
+ 0001:006C __ultoa
+ 0001:0076 _memcpy
+ 0001:00D4 _memset
+ 0001:011C __fmemcpy
+ 0001:017A __catox
+ 0001:01D0 __cltoasub
+ 0001:01DD __cxtoa
+ 0001:0240 ASSIGNLOCALENDPOINT
+ 0001:0308 FREELOCALENDPOINT
+ 0001:0328 REGISTERSERVERADDRESS
+ 0001:0424 DEREGISTERSERVERADDRESS
+ 0001:043A SENDTOSERVER
+ 0001:04FE RECEIVEPACKET
+ 0001:05E4 CLEANUP
+ 0001:05F2 CLIENTTOWERCONSTRUCT
+ 0001:06F8 CLIENTTOWEREXPLODE
+ 0001:07D6 QUERYCLIENTENDPOINT
+ 0001:0806 SETBUFFERLENGTH
+ 0001:0836 INQBUFFERLENGTH
+ 0001:0870 BEGINCALL
+ 0001:0880 ENDCALL
+ 0001:088E TRANSPORTLOAD
+ 0001:092A MYWEP
+ 0001:0940 _MapStatus
+ 0001:0974 ??_C@_09FCOK@127?40?40?41?$AA@
+ 0001:097E ??_C@_03EOPG@135?$AA@
+ 0001:0982 ??_C@_0N@OGGG@ncadg_ip_udp?$AA@
+ 0001:0990 ??_C@_07EHGE@WINSOCK?$AA@
+ 0002:0000 _TransInfo
+ 0002:0050 _HINSTANCEDLL
+ 0002:0052 _DllTermination
+ 0002:0060 __FakeErrno
+ 0002:0062 _AsyncCallComplete
+ 0002:0066 _RpcRuntimeInfo
+
+Program entry point at 0001:0000
diff --git a/public/sdk/rpc16/win/dll/rpc16dg3.sym b/public/sdk/rpc16/win/dll/rpc16dg3.sym
new file mode 100644
index 000000000..c92dd6aef
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16dg3.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpc16dg6.map b/public/sdk/rpc16/win/dll/rpc16dg6.map
new file mode 100644
index 000000000..edb1ff4a5
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16dg6.map
@@ -0,0 +1,319 @@
+
+ RPC16DG6
+
+ Start Length Name Class
+ 0001:0000 00031H RPC16DG6_FIXED CODE
+ 0002:0000 00000H IPXCLNT_TEXT CODE
+ 0002:0000 00000H GETHOST_TEXT CODE
+ 0002:0000 00000H NOVELL_TEXT CODE
+ 0002:0000 00000H LTSTART_TEXT CODE
+ 0002:0000 003C5H _TEXT CODE
+ 0003:0000 02127H COMDAT_SEG1 CODE
+ 0004:0000 00064H _DATA DATA
+ 0004:0064 00000H CONST CONST
+ 0004:0064 00000H _BSS BSS
+ 0004:0070 002C8H c_common BSS
+
+ Origin Group
+ 0004:0 DGROUP
+
+ Address Export Alias
+
+ 0003:01A8 ASSIGNLOCALENDPOINT ASSIGNLOCALENDPOINT
+ 0003:00BC BEGINCALL BEGINCALL
+ 0003:0888 CLIENTTOWERCONSTRUCT CLIENTTOWERCONSTRUCT
+ 0003:097A CLIENTTOWEREXPLODE CLIENTTOWEREXPLODE
+ 0003:0412 DEREGISTERSERVERADDRESS DEREGISTERSERVERADDRESS
+ 0003:0122 ENDCALL ENDCALL
+ 0003:032E FREELOCALENDPOINT FREELOCALENDPOINT
+ 0003:0A60 QUERYCLIENTENDPOINT QUERYCLIENTENDPOINT
+ 0003:0544 RECEIVEPACKET RECEIVEPACKET
+ 0003:039C REGISTERSERVERADDRESS REGISTERSERVERADDRESS
+ 0003:0436 SENDTOSERVER SENDTOSERVER
+ 0003:0A8A TRANSPORTLOAD TRANSPORTLOAD
+ 0003:0848 TRANSPORTUNLOAD TRANSPORTUNLOAD
+ 0002:0014 WEP WEP
+
+ Address Publics by Name
+
+ 0003:0B1E ??_C@_05LKBG@34280?$AA@
+ 0003:0B14 ??_C@_08MFIO@NWIPXSPX?$AA@
+ 0003:0B24 ??_C@_09OHNL@ncadg_ipx?$AA@
+ 0003:2078 ??_C@_0BC@GPKG@IPXGetLocalTarget?$AA@
+ 0003:202A ??_C@_0BD@DOAJ@IPXListenForPacket?$AA@
+ 0003:20B0 ??_C@_0BD@LKHJ@SPXAbortConnection?$AA@
+ 0003:2064 ??_C@_0BE@CLFP@IPXGetMaxPacketSize?$AA@
+ 0003:204E ??_C@_0BF@HPBB@IPXRelinquishControl?$AA@
+ 0003:2006 ??_C@_0BF@LJIE@IPXGetIntervalMarker?$AA@
+ 0003:20C4 ??_C@_0BH@CGGF@SPXSendSequencedPacket?$AA@
+ 0003:2110 ??_C@_0BH@HMAG@SPXTerminateConnection?$AA@
+ 0003:20F8 ??_C@_0BH@HNJJ@SPXEstablishConnection?$AA@
+ 0003:208A ??_C@_0BI@PNGJ@IPXDisconnectFromTarget?$AA@
+ 0003:20DC ??_C@_0BM@PLEO@SPXListenForSequencedPacket?$AA@
+ 0003:11E8 ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 0003:1FDA ??_C@_0N@DBEN@IPXSPXDeinit?$AA@
+ 0003:1FBE ??_C@_0N@OMIP@nwipxspx?4dll?$AA@
+ 0003:1FE8 ??_C@_0O@DBFD@IPXOpenSocket?$AA@
+ 0003:20A2 ??_C@_0O@FECL@SPXInitialize?$AA@
+ 0003:1FCC ??_C@_0O@GLEB@IPXInitialize?$AA@
+ 0003:201C ??_C@_0O@KMBC@IPXSendPacket?$AA@
+ 0003:203E ??_C@_0P@LEOG@IPXCancelEvent?$AA@
+ 0003:1FF6 ??_C@_0P@MDGB@IPXCloseSocket?$AA@
+ 0003:123A ASMIPXCANCELEVENT
+ 0003:1256 ASMIPXCLOSESOCKET
+ 0003:13E2 ASMIPXDISCONNECTFROMTARGET
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 0003:1272 ASMIPXGETINTERVALMARKER
+ 0003:13FE ASMIPXGETLOCALTARGET
+ 0003:13CC ASMIPXGETMAXPACKETSIZE
+ 0003:11F4 ASMIPXINITIALIZE
+ 0003:1288 ASMIPXLISTENFORPACKET
+ 0003:12A4 ASMIPXOPENSOCKET
+ 0003:12CC ASMIPXRELINQUISHCONTROL
+ 0003:12E2 ASMIPXSENDPACKET
+ 0003:12FE ASMSPXABORTCONNECTION
+ 0003:134C ASMSPXESTABLISHCONNECTION
+ 0003:131A ASMSPXINITIALIZE
+ 0003:1374 ASMSPXLISTENFORSEQUENCEDPACKET
+ 0003:1390 ASMSPXSENDSEQUENCEDPACKET
+ 0003:13AE ASMSPXTERMINATECONNECTION
+ 0003:01A8 ASSIGNLOCALENDPOINT
+ 0003:00BC BEGINCALL
+ 0003:0888 CLIENTTOWERCONSTRUCT
+ 0003:097A CLIENTTOWEREXPLODE
+ 0003:0412 DEREGISTERSERVERADDRESS
+ 0003:0122 ENDCALL
+ 0000:0000 Imp FREELIBRARY (KERNEL.96)
+ 0003:032E FREELOCALENDPOINT
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0002:0000 LIBENTRY
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0003:0A60 QUERYCLIENTENDPOINT
+ 0003:0544 RECEIVEPACKET
+ 0003:039C REGISTERSERVERADDRESS
+ 0003:0436 SENDTOSERVER
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0003:0A8A TRANSPORTLOAD
+ 0003:0848 TRANSPORTUNLOAD
+ 0002:0014 WEP
+ 0003:1F4E WRAPPERFORIPXCANCELEVENT
+ 0003:1EB0 WRAPPERFORIPXCLOSESOCKET
+ 0003:1E3E WRAPPERFORIPXDISCONNECTFROMTARGET
+ 0003:1ED6 WRAPPERFORIPXGETINTERVALMARKER
+ 0003:1E6A WRAPPERFORIPXGETLOCALTARGET
+ 0003:1F8E WRAPPERFORIPXGETMAXPACKETSIZE
+ 0003:1C2C WRAPPERFORIPXINITIALIZE
+ 0003:1F22 WRAPPERFORIPXLISTENFORPACKET
+ 0003:1E06 WRAPPERFORIPXOPENSOCKET
+ 0003:1F7C WRAPPERFORIPXRELINQUISHCONTROL
+ 0003:1EF6 WRAPPERFORIPXSENDPACKET
+ 0003:1FA0 WRAPPERFORIPXSPXDEINIT
+ 0000:0000 Unr WRAPPERFORSPXABORTCONNECTION
+ 0000:0000 Unr WRAPPERFORSPXESTABLISHCONNECTION
+ 0000:0000 Unr WRAPPERFORSPXINITIALIZE
+ 0000:0000 Unr WRAPPERFORSPXLISTENFORSEQUENCEDPACKET
+ 0000:0000 Unr WRAPPERFORSPXSENDSEQUENCEDPACKET
+ 0000:0000 Unr WRAPPERFORSPXTERMINATECONNECTION
+ 0004:005C _ActiveFileServer
+ 0003:0BCA _AddServerToCache
+ 0004:011C _AsyncCallComplete
+ 0002:004C _atoi
+ 0003:0000 _ByteSwapShort
+ 0000:0000 Unr _CachedServerContacted
+ 0000:0000 Unr _CachedServerNotContacted
+ 0003:0B2E _chtob
+ 0003:0092 _ClientCleanup
+ 0003:1766 _ConnectToAnyFileServer
+ 0004:0002 _consecutive_timeout_count
+ 0003:1AC0 _DisconnectFromServer
+ 0004:0060 _DllTermination
+ 0003:0BB2 _DosGetTickCount
+ 0004:0118 _enteripx
+ 0004:0122 _ep_list
+ 0004:005A _FileServerCount
+ 0003:14A4 _FindFileServers
+ 0003:0CA6 _FindServerInCache
+ 0004:005E _HINSTANCEDLL
+ 0004:00E6 _IpxFns
+ 0003:1078 _IpxGetHostByName
+ 0004:0136 _max_num_send
+ 0002:005A _memcpy
+ 0002:00B8 _memset
+ 0003:1876 _NcpTransaction
+ 0004:0070 _num_endpoints
+ 0004:0116 _nwipxspx
+ 0004:0120 _packet_size
+ 0001:0000 _post_ecb
+ 0004:00AE _PreferredServer
+ 0004:0054 _PreferredServerFound
+ 0003:1B1A _ReadPropertyValue
+ 0004:0132 _RpcRuntimeInfo
+ 0003:0CE6 _SearchBindery
+ 0003:0DC2 _SearchWithSap
+ 0004:0000 _Sequence
+ 0004:0138 _ServerCache
+ 0004:0072 _Servers
+ 0003:1458 _SetupEcb
+ 0004:00CE _SpxFns
+ 0002:0032 _strlen
+ 0004:0056 _taskid
+ 0004:0004 _TransInfo
+ 0002:0100 __aFlmul
+ 0002:0100 __aFulmul
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0002:030C __catox
+ 0002:0362 __cltoasub
+ 0002:036F __cxtoa
+ 0002:0132 __fmemcmp
+ 0002:018E __fmemcpy
+ 0002:026C __fmemset
+ 0002:0206 __fstrcmp
+ 0002:0230 __fstrcpy
+ 0002:01EC __fstrlen
+ 0002:02B4 __fstrnicmp
+ 0002:0050 __ultoa
+
+ Address Publics by Value
+
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0000:0000 Unr WRAPPERFORSPXINITIALIZE
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Unr WRAPPERFORSPXLISTENFORSEQUENCEDPACKET
+ 0000:0000 Unr _CachedServerNotContacted
+ 0000:0000 Imp FREELIBRARY (KERNEL.96)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Unr WRAPPERFORSPXESTABLISHCONNECTION
+ 0000:0000 Unr WRAPPERFORSPXABORTCONNECTION
+ 0000:0000 Unr WRAPPERFORSPXSENDSEQUENCEDPACKET
+ 0000:0000 Unr ASMIPXGETINTERNETWORKADDRESS
+ 0000:0000 Unr _CachedServerContacted
+ 0000:0000 Unr WRAPPERFORSPXTERMINATECONNECTION
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0001:0000 _post_ecb
+ 0002:0000 LIBENTRY
+ 0002:0014 WEP
+ 0002:0032 _strlen
+ 0002:004C _atoi
+ 0002:0050 __ultoa
+ 0002:005A _memcpy
+ 0002:00B8 _memset
+ 0002:0100 __aFlmul
+ 0002:0100 __aFulmul
+ 0002:0132 __fmemcmp
+ 0002:018E __fmemcpy
+ 0002:01EC __fstrlen
+ 0002:0206 __fstrcmp
+ 0002:0230 __fstrcpy
+ 0002:026C __fmemset
+ 0002:02B4 __fstrnicmp
+ 0002:030C __catox
+ 0002:0362 __cltoasub
+ 0002:036F __cxtoa
+ 0003:0000 _ByteSwapShort
+ 0003:0092 _ClientCleanup
+ 0003:00BC BEGINCALL
+ 0003:0122 ENDCALL
+ 0003:01A8 ASSIGNLOCALENDPOINT
+ 0003:032E FREELOCALENDPOINT
+ 0003:039C REGISTERSERVERADDRESS
+ 0003:0412 DEREGISTERSERVERADDRESS
+ 0003:0436 SENDTOSERVER
+ 0003:0544 RECEIVEPACKET
+ 0003:0848 TRANSPORTUNLOAD
+ 0003:0888 CLIENTTOWERCONSTRUCT
+ 0003:097A CLIENTTOWEREXPLODE
+ 0003:0A60 QUERYCLIENTENDPOINT
+ 0003:0A8A TRANSPORTLOAD
+ 0003:0B14 ??_C@_08MFIO@NWIPXSPX?$AA@
+ 0003:0B1E ??_C@_05LKBG@34280?$AA@
+ 0003:0B24 ??_C@_09OHNL@ncadg_ipx?$AA@
+ 0003:0B2E _chtob
+ 0003:0BB2 _DosGetTickCount
+ 0003:0BCA _AddServerToCache
+ 0003:0CA6 _FindServerInCache
+ 0003:0CE6 _SearchBindery
+ 0003:0DC2 _SearchWithSap
+ 0003:1078 _IpxGetHostByName
+ 0003:11E8 ??_C@_0M@KHAG@NET_ADDRESS?$AA@
+ 0003:11F4 ASMIPXINITIALIZE
+ 0003:123A ASMIPXCANCELEVENT
+ 0003:1256 ASMIPXCLOSESOCKET
+ 0003:1272 ASMIPXGETINTERVALMARKER
+ 0003:1288 ASMIPXLISTENFORPACKET
+ 0003:12A4 ASMIPXOPENSOCKET
+ 0003:12CC ASMIPXRELINQUISHCONTROL
+ 0003:12E2 ASMIPXSENDPACKET
+ 0003:12FE ASMSPXABORTCONNECTION
+ 0003:131A ASMSPXINITIALIZE
+ 0003:134C ASMSPXESTABLISHCONNECTION
+ 0003:1374 ASMSPXLISTENFORSEQUENCEDPACKET
+ 0003:1390 ASMSPXSENDSEQUENCEDPACKET
+ 0003:13AE ASMSPXTERMINATECONNECTION
+ 0003:13CC ASMIPXGETMAXPACKETSIZE
+ 0003:13E2 ASMIPXDISCONNECTFROMTARGET
+ 0003:13FE ASMIPXGETLOCALTARGET
+ 0003:1458 _SetupEcb
+ 0003:14A4 _FindFileServers
+ 0003:1766 _ConnectToAnyFileServer
+ 0003:1876 _NcpTransaction
+ 0003:1AC0 _DisconnectFromServer
+ 0003:1B1A _ReadPropertyValue
+ 0003:1C2C WRAPPERFORIPXINITIALIZE
+ 0003:1E06 WRAPPERFORIPXOPENSOCKET
+ 0003:1E3E WRAPPERFORIPXDISCONNECTFROMTARGET
+ 0003:1E6A WRAPPERFORIPXGETLOCALTARGET
+ 0003:1EB0 WRAPPERFORIPXCLOSESOCKET
+ 0003:1ED6 WRAPPERFORIPXGETINTERVALMARKER
+ 0003:1EF6 WRAPPERFORIPXSENDPACKET
+ 0003:1F22 WRAPPERFORIPXLISTENFORPACKET
+ 0003:1F4E WRAPPERFORIPXCANCELEVENT
+ 0003:1F7C WRAPPERFORIPXRELINQUISHCONTROL
+ 0003:1F8E WRAPPERFORIPXGETMAXPACKETSIZE
+ 0003:1FA0 WRAPPERFORIPXSPXDEINIT
+ 0003:1FBE ??_C@_0N@OMIP@nwipxspx?4dll?$AA@
+ 0003:1FCC ??_C@_0O@GLEB@IPXInitialize?$AA@
+ 0003:1FDA ??_C@_0N@DBEN@IPXSPXDeinit?$AA@
+ 0003:1FE8 ??_C@_0O@DBFD@IPXOpenSocket?$AA@
+ 0003:1FF6 ??_C@_0P@MDGB@IPXCloseSocket?$AA@
+ 0003:2006 ??_C@_0BF@LJIE@IPXGetIntervalMarker?$AA@
+ 0003:201C ??_C@_0O@KMBC@IPXSendPacket?$AA@
+ 0003:202A ??_C@_0BD@DOAJ@IPXListenForPacket?$AA@
+ 0003:203E ??_C@_0P@LEOG@IPXCancelEvent?$AA@
+ 0003:204E ??_C@_0BF@HPBB@IPXRelinquishControl?$AA@
+ 0003:2064 ??_C@_0BE@CLFP@IPXGetMaxPacketSize?$AA@
+ 0003:2078 ??_C@_0BC@GPKG@IPXGetLocalTarget?$AA@
+ 0003:208A ??_C@_0BI@PNGJ@IPXDisconnectFromTarget?$AA@
+ 0003:20A2 ??_C@_0O@FECL@SPXInitialize?$AA@
+ 0003:20B0 ??_C@_0BD@LKHJ@SPXAbortConnection?$AA@
+ 0003:20C4 ??_C@_0BH@CGGF@SPXSendSequencedPacket?$AA@
+ 0003:20DC ??_C@_0BM@PLEO@SPXListenForSequencedPacket?$AA@
+ 0003:20F8 ??_C@_0BH@HNJJ@SPXEstablishConnection?$AA@
+ 0003:2110 ??_C@_0BH@HMAG@SPXTerminateConnection?$AA@
+ 0004:0000 _Sequence
+ 0004:0002 _consecutive_timeout_count
+ 0004:0004 _TransInfo
+ 0004:0054 _PreferredServerFound
+ 0004:0056 _taskid
+ 0004:005A _FileServerCount
+ 0004:005C _ActiveFileServer
+ 0004:005E _HINSTANCEDLL
+ 0004:0060 _DllTermination
+ 0004:0070 _num_endpoints
+ 0004:0072 _Servers
+ 0004:00AE _PreferredServer
+ 0004:00CE _SpxFns
+ 0004:00E6 _IpxFns
+ 0004:0116 _nwipxspx
+ 0004:0118 _enteripx
+ 0004:011C _AsyncCallComplete
+ 0004:0120 _packet_size
+ 0004:0122 _ep_list
+ 0004:0132 _RpcRuntimeInfo
+ 0004:0136 _max_num_send
+ 0004:0138 _ServerCache
+
+Program entry point at 0002:0000
diff --git a/public/sdk/rpc16/win/dll/rpc16dg6.sym b/public/sdk/rpc16/win/dll/rpc16dg6.sym
new file mode 100644
index 000000000..c70da9ede
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpc16dg6.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpcns1.map b/public/sdk/rpc16/win/dll/rpcns1.map
new file mode 100644
index 000000000..b95eb2f6d
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpcns1.map
@@ -0,0 +1,437 @@
+
+ RPCNS1
+
+ Start Length Name Class
+ 0001:0000 00000H NSICLNT_TEXT CODE
+ 0001:0000 00000H NSIMGMT_TEXT CODE
+ 0001:0000 00000H NSICLT_C_TEXT CODE
+ 0001:0000 00000H NSIMGM_C_TEXT CODE
+ 0001:0000 00000H CBIND_TEXT CODE
+ 0001:0000 00000H UTIL_TEXT CODE
+ 0001:0000 00000H MEM_TEXT CODE
+ 0001:0000 00000H AUTOHAND_TEXT CODE
+ 0001:0000 00000H START_TEXT CODE
+ 0001:0000 0001CH LOAD CODE
+ 0001:001C 001C0H _TEXT CODE
+ 0001:01E0 04819H COMDAT_SEG1 CODE
+ 0002:0000 00426H _DATA DATA
+ 0002:0426 00004H CONST CONST
+ 0002:042A 00032H _BSS BSS
+ 0002:0460 00000H c_common BSS
+
+ Origin Group
+ 0002:0 DGROUP
+
+ Address Export Alias
+
+ 0001:1120 ?RNMBUW@@ZCGKPEGPEU_RPC_IF_ID@@KPEU_UUID_VECTOR@@@Z ?RNMBUW@@ZCGKPEGPEU_RPC_IF_ID@@KPEU_UUID_VECTOR@@@Z
+ 0001:055A ?RpcNsBindingImportBeginW@@ZCGKPEGPEXPEU_GUID@@PEPEX@Z ?RpcNsBindingImportBeginW@@ZCGKPEGPEXPEU_GUID@@PEPEX@Z
+ 0001:01E0 ?RpcNsBindingLookupBeginW@@ZCGKPEGPEXPEU_GUID@@KPEPEX@Z ?RpcNsBindingLookupBeginW@@ZCGKPEGPEXPEU_GUID@@KPEPEX@Z
+ 0001:108C ?RpcNsEntryExpandNameW@@ZCGKPEGPEPEG@Z ?RpcNsEntryExpandNameW@@ZCGKPEGPEPEG@Z
+ 0001:0E3A ?RpcNsEntryObjectInqBeginW@@ZCGKPEGPEPEX@Z ?RpcNsEntryObjectInqBeginW@@ZCGKPEGPEPEX@Z
+ 0001:0AB4 ?RpcNsGroupDeleteW@@ZCGKPEG@Z ?RpcNsGroupDeleteW@@ZCGKPEG@Z
+ 0001:0B42 ?RpcNsGroupMbrAddW@@ZCGKPEGK0@Z ?RpcNsGroupMbrAddW@@ZCGKPEGK0@Z
+ 0001:0CA6 ?RpcNsGroupMbrInqBeginW@@ZCGKPEGKPEPEX@Z ?RpcNsGroupMbrInqBeginW@@ZCGKPEGKPEPEX@Z
+ 0001:0D64 ?RpcNsGroupMbrInqNextW@@ZCGPEXPEPEG@Z ?RpcNsGroupMbrInqNextW@@ZCGPEXPEPEG@Z
+ 0001:0BF4 ?RpcNsGroupMbrRemoveW@@ZCGKPEGK0@Z ?RpcNsGroupMbrRemoveW@@ZCGKPEGK0@Z
+ 0001:11C4 ?RpcNsMgmtEntryCreateW@@ZCGKPEG@Z ?RpcNsMgmtEntryCreateW@@ZCGKPEG@Z
+ 0001:1252 ?RpcNsMgmtEntryDeleteW@@ZCGKPEG@Z ?RpcNsMgmtEntryDeleteW@@ZCGKPEG@Z
+ 0001:12E0 ?RpcNsMgmtEntryInqIfIdsW@@ZCGKPEGPEPEURPC_IF_ID_VECTOR@@@Z ?RpcNsMgmtEntryInqIfIdsW@@ZCGKPEGPEPEURPC_IF_ID_VECTOR@@@Z
+ 0001:1420 ?RpcNsProfileDeleteW@@ZCGKPEG@Z ?RpcNsProfileDeleteW@@ZCGKPEG@Z
+ 0001:14AE ?RpcNsProfileEltAddW@@ZCGKPEGPEU_RPC_IF_ID@@K0K0@Z ?RpcNsProfileEltAddW@@ZCGKPEGPEU_RPC_IF_ID@@K0K0@Z
+ 0001:162A ?RpcNsProfileEltInqBeginW@@ZCGKPEGKPEU_RPC_IF_ID@@KK0PEPEX@Z ?RpcNsProfileEltInqBeginW@@ZCGKPEGKPEU_RPC_IF_ID@@KK0PEPEX@Z
+ 0001:16F4 ?RpcNsProfileEltInqNextW@@ZCGPEXPEU_RPC_IF_ID@@PEPEGPEK2@Z ?RpcNsProfileEltInqNextW@@ZCGPEXPEU_RPC_IF_ID@@PEPEGPEK2@Z
+ 0001:1572 ?RpcNsProfileEltRemoveW@@ZCGKPEGPEU_RPC_IF_ID@@K0@Z ?RpcNsProfileEltRemoveW@@ZCGKPEGPEU_RPC_IF_ID@@K0@Z
+ 0001:43D4 I_GETDEFAULTENTRYSYNTAX I_GETDEFAULTENTRYSYNTAX
+ 0001:4308 I_NSCLIENTBINDDONE I_NSCLIENTBINDDONE
+ 0001:3F8C I_NSCLIENTBINDSEARCH I_NSCLIENTBINDSEARCH
+ 0001:47EE I_RPCNSGETBUFFER I_RPCNSGETBUFFER
+ 0001:49BC I_RPCNSRAISEEXCEPTION I_RPCNSRAISEEXCEPTION
+ 0001:4902 I_RPCNSSENDRECEIVE I_RPCNSSENDRECEIVE
+ 0001:49E2 I_RPCREBINDBUFFER I_RPCREBINDBUFFER
+ 0001:1384 RPCIFIDVECTORFREE RPCIFIDVECTORFREE
+ 0001:0A28 RPCNSBINDINGIMPORTBEGINA RPCNSBINDINGIMPORTBEGINA
+ 0001:067E RPCNSBINDINGIMPORTDONE RPCNSBINDINGIMPORTDONE
+ 0001:05E4 RPCNSBINDINGIMPORTNEXT RPCNSBINDINGIMPORTNEXT
+ 0001:09A8 RPCNSBINDINGLOOKUPBEGINA RPCNSBINDINGLOOKUPBEGINA
+ 0001:04DC RPCNSBINDINGLOOKUPDONE RPCNSBINDINGLOOKUPDONE
+ 0001:0304 RPCNSBINDINGLOOKUPNEXT RPCNSBINDINGLOOKUPNEXT
+ 0001:08CA RPCNSBINDINGSELECT RPCNSBINDINGSELECT
+ 0001:1AAC RPCNSENTRYEXPANDNAMEA RPCNSENTRYEXPANDNAMEA
+ 0001:1A3E RPCNSENTRYOBJECTINQBEGINA RPCNSENTRYOBJECTINQBEGINA
+ 0001:0F42 RPCNSENTRYOBJECTINQDONE RPCNSENTRYOBJECTINQDONE
+ 0001:0EDA RPCNSENTRYOBJECTINQNEXT RPCNSENTRYOBJECTINQNEXT
+ 0001:17D0 RPCNSGROUPDELETEA RPCNSGROUPDELETEA
+ 0001:1838 RPCNSGROUPMBRADDA RPCNSGROUPMBRADDA
+ 0001:1990 RPCNSGROUPMBRINQBEGINA RPCNSGROUPMBRINQBEGINA
+ 0001:0DD8 RPCNSGROUPMBRINQDONE RPCNSGROUPMBRINQDONE
+ 0001:1A04 RPCNSGROUPMBRINQNEXTA RPCNSGROUPMBRINQNEXTA
+ 0001:18E4 RPCNSGROUPMBRREMOVEA RPCNSGROUPMBRREMOVEA
+ 0001:1B34 RPCNSMGMTBINDINGUNEXPORTA RPCNSMGMTBINDINGUNEXPORTA
+ 0001:1BAE RPCNSMGMTENTRYCREATEA RPCNSMGMTENTRYCREATEA
+ 0001:1C16 RPCNSMGMTENTRYDELETEA RPCNSMGMTENTRYDELETEA
+ 0001:1C7E RPCNSMGMTENTRYINQIFIDSA RPCNSMGMTENTRYINQIFIDSA
+ 0001:06EA RPCNSMGMTHANDLESETEXPAGE RPCNSMGMTHANDLESETEXPAGE
+ 0001:0FA4 RPCNSMGMTINQEXPAGE RPCNSMGMTINQEXPAGE
+ 0001:1018 RPCNSMGMTSETEXPAGE RPCNSMGMTSETEXPAGE
+ 0001:1CEC RPCNSPROFILEDELETEA RPCNSPROFILEDELETEA
+ 0001:1D54 RPCNSPROFILEELTADDA RPCNSPROFILEELTADDA
+ 0001:1EFC RPCNSPROFILEELTINQBEGINA RPCNSPROFILEELTINQBEGINA
+ 0001:176E RPCNSPROFILEELTINQDONE RPCNSPROFILEELTINQDONE
+ 0001:1FC0 RPCNSPROFILEELTINQNEXTA RPCNSPROFILEELTINQNEXTA
+ 0001:1E4A RPCNSPROFILEELTREMOVEA RPCNSPROFILEELTREMOVEA
+ 0001:0012 WEP WEP
+
+ Address Publics by Name
+
+ 0001:45C2 ??0WIDE_STRING@@REC@PEE@Z
+ 0001:46A6 ??2@ZAPEXI@Z
+ 0001:46B4 ??3@ZAXPEX@Z
+ 0001:0AA2 ??_C@_07DFNK@ncalrpc?$AA@
+ 0001:0AAA ??_C@_08DNBJ@ncacn_np?$AA@
+ 0001:457C ??_C@_08GAHO@Endpoint?$AA@
+ 0001:4562 ??_C@_08OBCM@Protocol?$AA@
+ 0001:452C ??_C@_0BB@EHCE@?2mailslot?2Resp_c?$AA@
+ 0001:4518 ??_C@_0BE@JFMA@?2?2?$CK?2mailslot?2Resp_s?$AA@
+ 0001:453E ??_C@_0CD@LHG@Software?2Microsoft?2Rpc?2NameServi@
+ 0001:47BE ??_C@_0N@NHGH@DefaultEntry?$AA@
+ 0001:47B0 ??_C@_0O@JCMN@DefaultSyntax?$AA@
+ 0001:4586 ??_C@_0O@MCEM@?2pipe?2locator?$AA@
+ 0001:456C ??_C@_0P@NOEJ@NetworkAddress?$AA@
+ 0002:03F0 ?LocalMS@@3PEDE
+ 0002:03EC ?MailslotName@@3PEDE
+ 0002:043A ?NsiStringBinding@@3PEEE
+ 0001:0896 ?RandomNumber@@ZAHXZ
+ 0001:1120 ?RNMBUW@@ZCGKPEGPEU_RPC_IF_ID@@KPEU_UUID_VECTOR@@@Z
+ 0001:055A ?RpcNsBindingImportBeginW@@ZCGKPEGPEXPEU_GUID@@PEPEX@Z
+ 0001:01E0 ?RpcNsBindingLookupBeginW@@ZCGKPEGPEXPEU_GUID@@KPEPEX@Z
+ 0001:108C ?RpcNsEntryExpandNameW@@ZCGKPEGPEPEG@Z
+ 0001:0E3A ?RpcNsEntryObjectInqBeginW@@ZCGKPEGPEPEX@Z
+ 0001:0AB4 ?RpcNsGroupDeleteW@@ZCGKPEG@Z
+ 0001:0B42 ?RpcNsGroupMbrAddW@@ZCGKPEGK0@Z
+ 0001:0CA6 ?RpcNsGroupMbrInqBeginW@@ZCGKPEGKPEPEX@Z
+ 0001:0D64 ?RpcNsGroupMbrInqNextW@@ZCGPEXPEPEG@Z
+ 0001:0BF4 ?RpcNsGroupMbrRemoveW@@ZCGKPEGK0@Z
+ 0001:11C4 ?RpcNsMgmtEntryCreateW@@ZCGKPEG@Z
+ 0001:1252 ?RpcNsMgmtEntryDeleteW@@ZCGKPEG@Z
+ 0001:12E0 ?RpcNsMgmtEntryInqIfIdsW@@ZCGKPEGPEPEURPC_IF_ID_VECTOR@@@Z
+ 0001:1420 ?RpcNsProfileDeleteW@@ZCGKPEG@Z
+ 0001:14AE ?RpcNsProfileEltAddW@@ZCGKPEGPEU_RPC_IF_ID@@K0K0@Z
+ 0001:162A ?RpcNsProfileEltInqBeginW@@ZCGKPEGKPEU_RPC_IF_ID@@KK0PEPEX@Z
+ 0001:16F4 ?RpcNsProfileEltInqNextW@@ZCGPEXPEU_RPC_IF_ID@@PEPEGPEK2@Z
+ 0001:1572 ?RpcNsProfileEltRemoveW@@ZCGKPEGPEU_RPC_IF_ID@@K0@Z
+ 0000:0000 Imp DOSDELETEMAILSLOT (NETAPI.DOSDELETEMAILSLOT)
+ 0000:0000 Imp DOSMAKEMAILSLOT (NETAPI.DOSMAKEMAILSLOT)
+ 0000:0000 Imp DOSREADMAILSLOT (NETAPI.DOSREADMAILSLOT)
+ 0000:0000 Imp DOSWRITEMAILSLOT (NETAPI.DOSWRITEMAILSLOT)
+ 0001:43D4 I_GETDEFAULTENTRYSYNTAX
+ 0001:4308 I_NSCLIENTBINDDONE
+ 0001:3F8C I_NSCLIENTBINDSEARCH
+ 0000:0000 Imp I_RPCALLOCATE (RPCRT1.50)
+ 0000:0000 Imp I_RPCFREE (RPCRT1.51)
+ 0000:0000 Imp I_RPCFREEBUFFER (RPCRT1.301)
+ 0000:0000 Imp I_RPCGETBUFFER (RPCRT1.300)
+ 0000:0000 Imp I_RPCNSBINDINGSETENTRYNAME (RPCRT1.303)
+ 0001:47EE I_RPCNSGETBUFFER
+ 0001:49BC I_RPCNSRAISEEXCEPTION
+ 0001:4902 I_RPCNSSENDRECEIVE
+ 0001:49E2 I_RPCREBINDBUFFER
+ 0000:0000 Imp I_RPCSENDRECEIVE (RPCRT1.302)
+ 0001:0000 LIBENTRY
+ 0000:0000 Imp LOCALALLOC (KERNEL.5)
+ 0000:0000 Imp LOCALFREE (KERNEL.7)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0001:47CC MIDL_USER_ALLOCATE
+ 0001:47DC MIDL_USER_FREE
+ 0000:0000 Imp NDRCCONTEXTBINDING (RPCRT1.307)
+ 0000:0000 Imp NDRCLIENTCONTEXTMARSHALL (RPCRT1.438)
+ 0000:0000 Imp NDRCLIENTCONTEXTUNMARSHALL (RPCRT1.458)
+ 0000:0000 Imp NDRCLIENTINITIALIZENEW (RPCRT1.525)
+ 0000:0000 Imp NDRCONVERT (RPCRT1.509)
+ 0000:0000 Imp NDRFREEBUFFER (RPCRT1.533)
+ 0000:0000 Imp NDRGETBUFFER (RPCRT1.529)
+ 0000:0000 Imp NDRPOINTERBUFFERSIZE (RPCRT1.461)
+ 0000:0000 Imp NDRPOINTERMARSHALL (RPCRT1.422)
+ 0000:0000 Imp NDRPOINTERUNMARSHALL (RPCRT1.442)
+ 0000:0000 Imp NDRSENDRECEIVE (RPCRT1.531)
+ 0000:0000 Imp NDRSIMPLESTRUCTBUFFERSIZE (RPCRT1.462)
+ 0000:0000 Imp NDRSIMPLESTRUCTMARSHALL (RPCRT1.423)
+ 0000:0000 Imp NETGETDCNAME (NETAPI.NETGETDCNAME)
+ 0000:0000 Imp NETSERVERENUM2 (NETAPI.NETSERVERENUM2)
+ 0000:0000 Imp NETWKSTAGETINFO (NETAPI.NETWKSTAGETINFO)
+ 0000:0000 Imp RPCBINDINGFREE (RPCRT1.201)
+ 0000:0000 Imp RPCBINDINGFROMSTRINGBINDING (RPCRT1.202)
+ 0000:0000 Imp RPCBINDINGTOSTRINGBINDING (RPCRT1.205)
+ 0000:0000 Imp RPCBINDINGVECTORFREE (RPCRT1.206)
+ 0001:1384 RPCIFIDVECTORFREE
+ 0000:0000 Imp RPCLEAVEEXCEPTION (RPCRT1.21)
+ 0001:0A28 RPCNSBINDINGIMPORTBEGINA
+ 0001:067E RPCNSBINDINGIMPORTDONE
+ 0001:05E4 RPCNSBINDINGIMPORTNEXT
+ 0001:09A8 RPCNSBINDINGLOOKUPBEGINA
+ 0001:04DC RPCNSBINDINGLOOKUPDONE
+ 0001:0304 RPCNSBINDINGLOOKUPNEXT
+ 0001:08CA RPCNSBINDINGSELECT
+ 0001:1AAC RPCNSENTRYEXPANDNAMEA
+ 0001:1A3E RPCNSENTRYOBJECTINQBEGINA
+ 0001:0F42 RPCNSENTRYOBJECTINQDONE
+ 0001:0EDA RPCNSENTRYOBJECTINQNEXT
+ 0001:17D0 RPCNSGROUPDELETEA
+ 0001:1838 RPCNSGROUPMBRADDA
+ 0001:1990 RPCNSGROUPMBRINQBEGINA
+ 0001:0DD8 RPCNSGROUPMBRINQDONE
+ 0001:1A04 RPCNSGROUPMBRINQNEXTA
+ 0001:18E4 RPCNSGROUPMBRREMOVEA
+ 0001:1B34 RPCNSMGMTBINDINGUNEXPORTA
+ 0001:1BAE RPCNSMGMTENTRYCREATEA
+ 0001:1C16 RPCNSMGMTENTRYDELETEA
+ 0001:1C7E RPCNSMGMTENTRYINQIFIDSA
+ 0001:06EA RPCNSMGMTHANDLESETEXPAGE
+ 0001:0FA4 RPCNSMGMTINQEXPAGE
+ 0001:1018 RPCNSMGMTSETEXPAGE
+ 0001:1CEC RPCNSPROFILEDELETEA
+ 0001:1D54 RPCNSPROFILEELTADDA
+ 0001:1EFC RPCNSPROFILEELTINQBEGINA
+ 0001:176E RPCNSPROFILEELTINQDONE
+ 0001:1FC0 RPCNSPROFILEELTINQNEXTA
+ 0001:1E4A RPCNSPROFILEELTREMOVEA
+ 0000:0000 Imp RPCRAISEEXCEPTION (RPCRT1.19)
+ 0000:0000 Imp RPCREGCLOSEKEY (RPCRT1.222)
+ 0000:0000 Imp RPCREGOPENKEY (RPCRT1.220)
+ 0000:0000 Imp RPCREGQUERYVALUE (RPCRT1.224)
+ 0000:0000 Imp RPCREGSETVALUE (RPCRT1.223)
+ 0000:0000 Imp RPCSETEXCEPTION (RPCRT1.20)
+ 0000:0000 Imp RPCSTRINGBINDINGCOMPOSE (RPCRT1.207)
+ 0000:0000 Imp RPCSTRINGBINDINGPARSE (RPCRT1.208)
+ 0000:0000 Imp RPCSTRINGFREE (RPCRT1.209)
+ 0001:0012 WEP
+ 0001:009E _atoi
+ 0001:43E8 _BroadcastAQuery
+ 0000:0000 Unr _CallExportInit
+ 0001:46C4 _CopyString
+ 0002:0434 _DefaultName
+ 0002:03E8 _DefaultSyntax
+ 0002:0438 _fSyntaxDefaultsLoaded
+ 0001:4706 _GetDefaultEntrys
+ 0002:0424 _HINSTANCEDLL
+ 0001:001C _int3
+ 0001:4594 _MapException
+ 0001:00A2 _memset
+ 0002:0432 _NsiClntBinding
+ 0002:004C _NsiC_ClientIfHandle
+ 0002:01CE _NsiM_ClientIfHandle
+ 0002:03F4 _NsiToRpcStatus
+ 0001:2026 _nsi_binding_lookup_begin
+ 0001:21DA _nsi_binding_lookup_done
+ 0001:22BC _nsi_binding_lookup_next
+ 0001:3760 _nsi_entry_expand_name
+ 0001:343C _nsi_entry_object_inq_begin
+ 0001:367E _nsi_entry_object_inq_done
+ 0001:354C _nsi_entry_object_inq_next
+ 0001:24D6 _nsi_group_delete
+ 0001:25D2 _nsi_group_mbr_add
+ 0001:287A _nsi_group_mbr_inq_begin
+ 0001:2ABA _nsi_group_mbr_inq_done
+ 0001:29B8 _nsi_group_mbr_inq_next
+ 0001:2726 _nsi_group_mbr_remove
+ 0001:388C _nsi_mgmt_binding_unexport
+ 0001:3B06 _nsi_mgmt_entry_create
+ 0001:3A0A _nsi_mgmt_entry_delete
+ 0001:3C02 _nsi_mgmt_entry_inq_if_ids
+ 0001:23EE _nsi_mgmt_handle_set_exp_age
+ 0001:3D2E _nsi_mgmt_inq_exp_age
+ 0001:3DEE _nsi_mgmt_inq_set_age
+ 0001:2B9C _nsi_profile_delete
+ 0001:2C98 _nsi_profile_elt_add
+ 0001:2FEA _nsi_profile_elt_inq_begin
+ 0001:335A _nsi_profile_elt_inq_done
+ 0001:31CA _nsi_profile_elt_inq_next
+ 0001:2E6C _nsi_profile_elt_remove
+ 0001:3EA6 _RegGetString
+ 0001:005A _strcmp
+ 0001:001E _strcpy
+ 0001:0084 _strlen
+ 0001:465E _UnicodeToAscii
+ 0001:00EA __aFlmul
+ 0001:00EA __aFulmul
+ 0001:011C __aFulrem
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0001:0186 __catox
+
+ Address Publics by Value
+
+ 0000:0000 Imp LOCALALLOC (KERNEL.5)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp NDRSENDRECEIVE (RPCRT1.531)
+ 0000:0000 Imp NDRSIMPLESTRUCTMARSHALL (RPCRT1.423)
+ 0000:0000 Imp LOCALFREE (KERNEL.7)
+ 0000:0000 Imp RPCREGCLOSEKEY (RPCRT1.222)
+ 0000:0000 Imp NETGETDCNAME (NETAPI.NETGETDCNAME)
+ 0000:0000 Imp RPCBINDINGTOSTRINGBINDING (RPCRT1.205)
+ 0000:0000 Imp DOSWRITEMAILSLOT (NETAPI.DOSWRITEMAILSLOT)
+ 0000:0000 Imp I_RPCGETBUFFER (RPCRT1.300)
+ 0000:0000 Imp RPCBINDINGVECTORFREE (RPCRT1.206)
+ 0000:0000 Imp I_RPCFREEBUFFER (RPCRT1.301)
+ 0000:0000 Imp RPCSETEXCEPTION (RPCRT1.20)
+ 0000:0000 Imp RPCSTRINGBINDINGPARSE (RPCRT1.208)
+ 0000:0000 Unr _CallExportInit
+ 0000:0000 Imp I_RPCSENDRECEIVE (RPCRT1.302)
+ 0000:0000 Imp NDRCLIENTCONTEXTMARSHALL (RPCRT1.438)
+ 0000:0000 Imp RPCREGOPENKEY (RPCRT1.220)
+ 0000:0000 Imp I_RPCNSBINDINGSETENTRYNAME (RPCRT1.303)
+ 0000:0000 Imp DOSREADMAILSLOT (NETAPI.DOSREADMAILSLOT)
+ 0000:0000 Imp NDRFREEBUFFER (RPCRT1.533)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp RPCREGSETVALUE (RPCRT1.223)
+ 0000:0000 Imp NETWKSTAGETINFO (NETAPI.NETWKSTAGETINFO)
+ 0000:0000 Imp RPCSTRINGBINDINGCOMPOSE (RPCRT1.207)
+ 0000:0000 Imp NDRCCONTEXTBINDING (RPCRT1.307)
+ 0000:0000 Imp DOSMAKEMAILSLOT (NETAPI.DOSMAKEMAILSLOT)
+ 0000:0000 Imp NDRCLIENTINITIALIZENEW (RPCRT1.525)
+ 0000:0000 Imp NDRPOINTERUNMARSHALL (RPCRT1.442)
+ 0000:0000 Imp RPCBINDINGFREE (RPCRT1.201)
+ 0000:0000 Imp NDRCONVERT (RPCRT1.509)
+ 0000:0000 Imp RPCREGQUERYVALUE (RPCRT1.224)
+ 0000:0000 Imp I_RPCFREE (RPCRT1.51)
+ 0000:0000 Imp NDRSIMPLESTRUCTBUFFERSIZE (RPCRT1.462)
+ 0000:0000 Imp RPCLEAVEEXCEPTION (RPCRT1.21)
+ 0000:0000 Imp NDRCLIENTCONTEXTUNMARSHALL (RPCRT1.458)
+ 0000:0000 Imp I_RPCALLOCATE (RPCRT1.50)
+ 0000:0000 Imp NDRPOINTERMARSHALL (RPCRT1.422)
+ 0000:0000 Imp NDRGETBUFFER (RPCRT1.529)
+ 0000:0000 Imp NDRPOINTERBUFFERSIZE (RPCRT1.461)
+ 0000:0000 Imp NETSERVERENUM2 (NETAPI.NETSERVERENUM2)
+ 0000:0000 Imp DOSDELETEMAILSLOT (NETAPI.DOSDELETEMAILSLOT)
+ 0000:0000 Imp RPCRAISEEXCEPTION (RPCRT1.19)
+ 0000:0000 Imp RPCBINDINGFROMSTRINGBINDING (RPCRT1.202)
+ 0000:0000 Imp RPCSTRINGFREE (RPCRT1.209)
+ 0001:0000 LIBENTRY
+ 0001:0012 WEP
+ 0001:001C _int3
+ 0001:001E _strcpy
+ 0001:005A _strcmp
+ 0001:0084 _strlen
+ 0001:009E _atoi
+ 0001:00A2 _memset
+ 0001:00EA __aFlmul
+ 0001:00EA __aFulmul
+ 0001:011C __aFulrem
+ 0001:0186 __catox
+ 0001:01E0 ?RpcNsBindingLookupBeginW@@ZCGKPEGPEXPEU_GUID@@KPEPEX@Z
+ 0001:0304 RPCNSBINDINGLOOKUPNEXT
+ 0001:04DC RPCNSBINDINGLOOKUPDONE
+ 0001:055A ?RpcNsBindingImportBeginW@@ZCGKPEGPEXPEU_GUID@@PEPEX@Z
+ 0001:05E4 RPCNSBINDINGIMPORTNEXT
+ 0001:067E RPCNSBINDINGIMPORTDONE
+ 0001:06EA RPCNSMGMTHANDLESETEXPAGE
+ 0001:0896 ?RandomNumber@@ZAHXZ
+ 0001:08CA RPCNSBINDINGSELECT
+ 0001:09A8 RPCNSBINDINGLOOKUPBEGINA
+ 0001:0A28 RPCNSBINDINGIMPORTBEGINA
+ 0001:0AA2 ??_C@_07DFNK@ncalrpc?$AA@
+ 0001:0AAA ??_C@_08DNBJ@ncacn_np?$AA@
+ 0001:0AB4 ?RpcNsGroupDeleteW@@ZCGKPEG@Z
+ 0001:0B42 ?RpcNsGroupMbrAddW@@ZCGKPEGK0@Z
+ 0001:0BF4 ?RpcNsGroupMbrRemoveW@@ZCGKPEGK0@Z
+ 0001:0CA6 ?RpcNsGroupMbrInqBeginW@@ZCGKPEGKPEPEX@Z
+ 0001:0D64 ?RpcNsGroupMbrInqNextW@@ZCGPEXPEPEG@Z
+ 0001:0DD8 RPCNSGROUPMBRINQDONE
+ 0001:0E3A ?RpcNsEntryObjectInqBeginW@@ZCGKPEGPEPEX@Z
+ 0001:0EDA RPCNSENTRYOBJECTINQNEXT
+ 0001:0F42 RPCNSENTRYOBJECTINQDONE
+ 0001:0FA4 RPCNSMGMTINQEXPAGE
+ 0001:1018 RPCNSMGMTSETEXPAGE
+ 0001:108C ?RpcNsEntryExpandNameW@@ZCGKPEGPEPEG@Z
+ 0001:1120 ?RNMBUW@@ZCGKPEGPEU_RPC_IF_ID@@KPEU_UUID_VECTOR@@@Z
+ 0001:11C4 ?RpcNsMgmtEntryCreateW@@ZCGKPEG@Z
+ 0001:1252 ?RpcNsMgmtEntryDeleteW@@ZCGKPEG@Z
+ 0001:12E0 ?RpcNsMgmtEntryInqIfIdsW@@ZCGKPEGPEPEURPC_IF_ID_VECTOR@@@Z
+ 0001:1384 RPCIFIDVECTORFREE
+ 0001:1420 ?RpcNsProfileDeleteW@@ZCGKPEG@Z
+ 0001:14AE ?RpcNsProfileEltAddW@@ZCGKPEGPEU_RPC_IF_ID@@K0K0@Z
+ 0001:1572 ?RpcNsProfileEltRemoveW@@ZCGKPEGPEU_RPC_IF_ID@@K0@Z
+ 0001:162A ?RpcNsProfileEltInqBeginW@@ZCGKPEGKPEU_RPC_IF_ID@@KK0PEPEX@Z
+ 0001:16F4 ?RpcNsProfileEltInqNextW@@ZCGPEXPEU_RPC_IF_ID@@PEPEGPEK2@Z
+ 0001:176E RPCNSPROFILEELTINQDONE
+ 0001:17D0 RPCNSGROUPDELETEA
+ 0001:1838 RPCNSGROUPMBRADDA
+ 0001:18E4 RPCNSGROUPMBRREMOVEA
+ 0001:1990 RPCNSGROUPMBRINQBEGINA
+ 0001:1A04 RPCNSGROUPMBRINQNEXTA
+ 0001:1A3E RPCNSENTRYOBJECTINQBEGINA
+ 0001:1AAC RPCNSENTRYEXPANDNAMEA
+ 0001:1B34 RPCNSMGMTBINDINGUNEXPORTA
+ 0001:1BAE RPCNSMGMTENTRYCREATEA
+ 0001:1C16 RPCNSMGMTENTRYDELETEA
+ 0001:1C7E RPCNSMGMTENTRYINQIFIDSA
+ 0001:1CEC RPCNSPROFILEDELETEA
+ 0001:1D54 RPCNSPROFILEELTADDA
+ 0001:1E4A RPCNSPROFILEELTREMOVEA
+ 0001:1EFC RPCNSPROFILEELTINQBEGINA
+ 0001:1FC0 RPCNSPROFILEELTINQNEXTA
+ 0001:2026 _nsi_binding_lookup_begin
+ 0001:21DA _nsi_binding_lookup_done
+ 0001:22BC _nsi_binding_lookup_next
+ 0001:23EE _nsi_mgmt_handle_set_exp_age
+ 0001:24D6 _nsi_group_delete
+ 0001:25D2 _nsi_group_mbr_add
+ 0001:2726 _nsi_group_mbr_remove
+ 0001:287A _nsi_group_mbr_inq_begin
+ 0001:29B8 _nsi_group_mbr_inq_next
+ 0001:2ABA _nsi_group_mbr_inq_done
+ 0001:2B9C _nsi_profile_delete
+ 0001:2C98 _nsi_profile_elt_add
+ 0001:2E6C _nsi_profile_elt_remove
+ 0001:2FEA _nsi_profile_elt_inq_begin
+ 0001:31CA _nsi_profile_elt_inq_next
+ 0001:335A _nsi_profile_elt_inq_done
+ 0001:343C _nsi_entry_object_inq_begin
+ 0001:354C _nsi_entry_object_inq_next
+ 0001:367E _nsi_entry_object_inq_done
+ 0001:3760 _nsi_entry_expand_name
+ 0001:388C _nsi_mgmt_binding_unexport
+ 0001:3A0A _nsi_mgmt_entry_delete
+ 0001:3B06 _nsi_mgmt_entry_create
+ 0001:3C02 _nsi_mgmt_entry_inq_if_ids
+ 0001:3D2E _nsi_mgmt_inq_exp_age
+ 0001:3DEE _nsi_mgmt_inq_set_age
+ 0001:3EA6 _RegGetString
+ 0001:3F8C I_NSCLIENTBINDSEARCH
+ 0001:4308 I_NSCLIENTBINDDONE
+ 0001:43D4 I_GETDEFAULTENTRYSYNTAX
+ 0001:43E8 _BroadcastAQuery
+ 0001:4518 ??_C@_0BE@JFMA@?2?2?$CK?2mailslot?2Resp_s?$AA@
+ 0001:452C ??_C@_0BB@EHCE@?2mailslot?2Resp_c?$AA@
+ 0001:453E ??_C@_0CD@LHG@Software?2Microsoft?2Rpc?2NameServi@
+ 0001:4562 ??_C@_08OBCM@Protocol?$AA@
+ 0001:456C ??_C@_0P@NOEJ@NetworkAddress?$AA@
+ 0001:457C ??_C@_08GAHO@Endpoint?$AA@
+ 0001:4586 ??_C@_0O@MCEM@?2pipe?2locator?$AA@
+ 0001:4594 _MapException
+ 0001:45C2 ??0WIDE_STRING@@REC@PEE@Z
+ 0001:465E _UnicodeToAscii
+ 0001:46A6 ??2@ZAPEXI@Z
+ 0001:46B4 ??3@ZAXPEX@Z
+ 0001:46C4 _CopyString
+ 0001:4706 _GetDefaultEntrys
+ 0001:47B0 ??_C@_0O@JCMN@DefaultSyntax?$AA@
+ 0001:47BE ??_C@_0N@NHGH@DefaultEntry?$AA@
+ 0001:47CC MIDL_USER_ALLOCATE
+ 0001:47DC MIDL_USER_FREE
+ 0001:47EE I_RPCNSGETBUFFER
+ 0001:4902 I_RPCNSSENDRECEIVE
+ 0001:49BC I_RPCNSRAISEEXCEPTION
+ 0001:49E2 I_RPCREBINDBUFFER
+ 0002:004C _NsiC_ClientIfHandle
+ 0002:01CE _NsiM_ClientIfHandle
+ 0002:03E8 _DefaultSyntax
+ 0002:03EC ?MailslotName@@3PEDE
+ 0002:03F0 ?LocalMS@@3PEDE
+ 0002:03F4 _NsiToRpcStatus
+ 0002:0424 _HINSTANCEDLL
+ 0002:0432 _NsiClntBinding
+ 0002:0434 _DefaultName
+ 0002:0438 _fSyntaxDefaultsLoaded
+ 0002:043A ?NsiStringBinding@@3PEEE
+
+Program entry point at 0001:0000
diff --git a/public/sdk/rpc16/win/dll/rpcns1.sym b/public/sdk/rpc16/win/dll/rpcns1.sym
new file mode 100644
index 000000000..ee6f106b1
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpcns1.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/rpcrt1.map b/public/sdk/rpc16/win/dll/rpcrt1.map
new file mode 100644
index 000000000..b5e1b29b9
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpcrt1.map
@@ -0,0 +1,2840 @@
+
+ RpcRt1
+
+ Start Length Name Class
+ 0001:0000 00054H WEP_TEXT CODE
+ 0002:0000 00000H BINDING_TEXT CODE
+ 0002:0000 00000H BITSET_TEXT CODE
+ 0002:0000 00000H BUFAPI_TEXT CODE
+ 0002:0000 00000H CLNTAPIP_TEXT CODE
+ 0002:0000 00000H CONV_S_TEXT CODE
+ 0002:0000 00000H DCEBIND_TEXT CODE
+ 0002:0000 00000H DCECCLNT_TEXT CODE
+ 0002:0000 00A5FH MISC_SEG CODE
+ 0003:0000 00000H DCECMISC_TEXT CODE
+ 0003:0000 00000H DCESTRNG_TEXT CODE
+ 0003:0000 00000H DCEUUID_TEXT CODE
+ 0003:0000 00000H DGCLNT_TEXT CODE
+ 0003:0000 00000H DGPKT_TEXT CODE
+ 0003:0000 00000H DLLMGMT_TEXT CODE
+ 0003:0000 00000H DTHREADS_TEXT CODE
+ 0003:0000 00000H EPCLNT_TEXT CODE
+ 0003:0000 00000H EPMP_C_TEXT CODE
+ 0003:0000 00087H EXCEPT86_TEXT CODE
+ 0004:0000 00000H HANDLE_TEXT CODE
+ 0004:0000 00000H MEMORY_TEXT CODE
+ 0004:0000 00000H MISCWIN_TEXT CODE
+ 0004:0000 00000H MSGAPI_TEXT CODE
+ 0004:0000 00000H OSFCLNT_TEXT CODE
+ 0004:0000 00000H OSFPCKET_TEXT CODE
+ 0004:0000 00000H RPCUUID_TEXT CODE
+ 0004:0000 00000H SDICT_TEXT CODE
+ 0004:0000 00000H SECCLNT_TEXT CODE
+ 0004:0000 00000H TOWER_TEXT CODE
+ 0004:0000 00000H TRANCLNT_TEXT CODE
+ 0004:0000 00000H ULONG64_TEXT CODE
+ 0004:0000 00000H UTIL_TEXT CODE
+ 0004:0000 00000H UUID16_TEXT CODE
+ 0004:0000 00000H WDATEXIT_TEXT CODE
+ 0004:0000 00000H WINEXCPT_TEXT CODE
+ 0004:0000 00000H WINUTIL_TEXT CODE
+ 0004:0000 00000H WINYIELD_TEXT CODE
+ 0004:0000 03E19H _TEXT CODE
+ 0005:0000 00000H CLOSE_TEXT CODE
+ 0005:0000 00000H CREATE_TEXT CODE
+ 0005:0000 00000H OPEN_TEXT CODE
+ 0005:0000 00000H SETVAL_TEXT CODE
+ 0005:0000 00000H QUERYVAL_TEXT CODE
+ 0005:0000 00000H GLOBALS_TEXT CODE
+ 0005:0000 00000H REGUTIL_TEXT CODE
+ 0005:0000 00000H CCONTEXT_TEXT CODE
+ 0005:0000 00000H CHARCONV_TEXT CODE
+ 0005:0000 00018H HELPX86_TEXT CODE
+ 0006:0000 00000H FLOATC_TEXT CODE
+ 0006:0000 00000H DATACONV_TEXT CODE
+ 0006:0000 00000H INTCONV_TEXT CODE
+ 0006:0000 00000H MRSHL_TEXT CODE
+ 0006:0000 007C3H NDR20_9 CODE
+ 0007:0000 00000H MEMSIZE_TEXT CODE
+ 0007:0000 021EAH NDR20_10 CODE
+ 0008:0000 00000H UNMRSHL_TEXT CODE
+ 0008:0000 037A8H NDR20_4 CODE
+ 0009:0000 00000H ENDIAN_TEXT CODE
+ 0009:0000 027A0H NDR_1 CODE
+ 000A:0000 00000H AUXILARY_TEXT CODE
+ 000A:0000 00000H SH_TEXT CODE
+ 000A:0000 00000H FREE_TEXT CODE
+ 000A:0000 00000H BUFSIZE_TEXT CODE
+ 000A:0000 00000H CLTCALL_TEXT CODE
+ 000A:0000 00000H RPCSSM_TEXT CODE
+ 000A:0000 00000H FULLPTR_TEXT CODE
+ 000A:0000 00000H PICKLE_TEXT CODE
+ 000A:0000 00000H CVTF_TEXT CODE
+ 000A:0000 00000H CVTG_TEXT CODE
+ 000A:0000 00000H GLOBAL_TEXT CODE
+ 000A:0000 00000H MRSHLP_TEXT CODE
+ 000A:0000 00000H UNMRSHLP_TEXT CODE
+ 000A:0000 00000H HNDL_TEXT CODE
+ 000A:0000 00000H MISC_TEXT CODE
+ 000A:0000 00000H SDICT2_TEXT CODE
+ 000A:0000 00000H CVTGLO_TEXT CODE
+ 000A:0000 0FC1EH COMDAT_SEG1 CODE
+ 000B:0000 0C2C7H COMDAT_SEG2 CODE
+ 000C:0000 0009CH RPC_FIXED FIXED_CODE
+ 000D:0000 00008H RPCSSM5_DATA FAR_DATA
+ 000E:0000 00010H NULL BEGDATA
+ 000E:0010 01690H _DATA DATA
+ 000E:16A0 00000H XIFCB DATA
+ 000E:16A0 00004H XIFU DATA
+ 000E:16A4 00000H XIFL DATA
+ 000E:16A4 00000H XIFM DATA
+ 000E:16A4 00000H XIFCE DATA
+ 000E:16A4 0000EH CDATA DATA
+ 000E:16B2 00000H XIFB DATA
+ 000E:16B2 00000H XIF DATA
+ 000E:16B2 00000H XIFE DATA
+ 000E:16B2 00000H XIB DATA
+ 000E:16B2 00004H XI DATA
+ 000E:16B6 00000H XIE DATA
+ 000E:16B6 00000H XPB DATA
+ 000E:16B6 00000H XP DATA
+ 000E:16B6 00000H XPE DATA
+ 000E:16B6 00000H XCB DATA
+ 000E:16B6 00000H XC DATA
+ 000E:16B6 00000H XCE DATA
+ 000E:16B6 00000H XCFB DATA
+ 000E:16B6 00000H XCFCRT DATA
+ 000E:16B6 00000H XCF DATA
+ 000E:16B6 00000H XCFE DATA
+ 000E:16B6 00000H DBDATA DATA
+ 000E:16B6 00098H IOB DATA
+ 000E:174E 00000H IOBX DATA
+ 000E:174E 00008H IOBE DATA
+ 000E:1756 00098H IOB2 DATA
+ 000E:17EE 00000H IOB2X DATA
+ 000E:17EE 00008H IOB2E DATA
+ 000E:17F6 0007CH CONST CONST
+ 000E:1872 00008H HDR MSG
+ 000E:187A 0037CH MSG MSG
+ 000E:1BF6 00002H PAD MSG
+ 000E:1BF8 00001H EPAD MSG
+ 000E:1BFA 00FACH _BSS BSS
+ 000E:2BA6 00000H XOB BSS
+ 000E:2BA6 00000H XO BSS
+ 000E:2BA6 00000H XOE BSS
+ 000E:2BA6 00000H XOFB BSS
+ 000E:2BA6 00000H XOF BSS
+ 000E:2BA6 00000H XOFE BSS
+ 000E:2BB0 00119H c_common BSS
+
+ Origin Group
+ 000E:0 DGROUP
+
+ Address Export Alias
+
+ 000B:A5F4 ?NdrMesTypeFree@@ZCXPAXPFU_MIDL_STUB_DESC@@PFEPEX@Z ?NdrMesTypeFree@@ZCXPAXPFU_MIDL_STUB_DESC@@PFEPEX@Z
+ 000A:F7D0 ?NdrpLongByteSwap@@ZCXPEX0@Z ?NdrpLongByteSwap@@ZCXPEX0@Z
+ 000A:7010 BINDTOEPMAPPER BINDTOEPMAPPER
+ 000A:F73E CHAR_ARRAY_FROM_NDR CHAR_ARRAY_FROM_NDR
+ 000A:F6FA CHAR_FROM_NDR CHAR_FROM_NDR
+ 000A:1458 CONV_CONV_ARE_YOU_THERE CONV_CONV_ARE_YOU_THERE
+ 000A:11C0 CONV_CONV_WHO_ARE_YOU CONV_CONV_WHO_ARE_YOU
+ 000A:12F2 CONV_CONV_WHO_ARE_YOU2 CONV_CONV_WHO_ARE_YOU2
+ 000A:1570 CONV_CONV_WHO_ARE_YOU_AUTH CONV_CONV_WHO_ARE_YOU_AUTH
+ 000B:0000 DATA_FROM_NDR DATA_FROM_NDR
+ 000B:0768 DATA_INTO_NDR DATA_INTO_NDR
+ 000B:0E68 DATA_SIZE_NDR DATA_SIZE_NDR
+ 000A:FAF6 DOUBLE_ARRAY_FROM_NDR DOUBLE_ARRAY_FROM_NDR
+ 000A:FA0A DOUBLE_FROM_NDR DOUBLE_FROM_NDR
+ 000B:1AD0 ENUM_FROM_NDR ENUM_FROM_NDR
+ 000A:70E6 EPFREELOOKUPHANDLE EPFREELOOKUPHANDLE
+ 000A:6F96 EPGETEPMAPPERENDPOINT EPGETEPMAPPERENDPOINT
+ 000A:6B8E EPRESOLVEENDPOINT EPRESOLVEENDPOINT
+ 0002:03E8 EXPLODEPREDEFINEDTOWERS EXPLODEPREDEFINEDTOWERS
+ 000A:F8F4 FLOAT_ARRAY_FROM_NDR FLOAT_ARRAY_FROM_NDR
+ 000A:F83E FLOAT_FROM_NDR FLOAT_FROM_NDR
+ 000A:7C98 GARBAGECOLLECTIONTIMER GARBAGECOLLECTIONTIMER
+ 0002:0362 GETNWSTYLENAME GETNWSTYLENAME
+ 000B:1C78 HYPER_ARRAY_FROM_NDR HYPER_ARRAY_FROM_NDR
+ 000B:1B42 HYPER_FROM_NDR HYPER_FROM_NDR
+ 000B:1DDA HYPER_FROM_NDR_TEMP HYPER_FROM_NDR_TEMP
+ 000B:8F00 I_NDRMESMESSAGEINIT I_NDRMESMESSAGEINIT
+ 000A:1144 I_RPCALLOCATE I_RPCALLOCATE
+ 000A:189A I_RPCBINDINGCOPY I_RPCBINDINGCOPY
+ 000A:1D70 I_RPCBINDINGINQTRANSPORTTYPE I_RPCBINDINGINQTRANSPORTTYPE
+ 000A:115A I_RPCFREE I_RPCFREE
+ 000A:10CE I_RPCFREEBUFFER I_RPCFREEBUFFER
+ 000A:10F4 I_RPCFREEPIPEBUFFER I_RPCFREEPIPEBUFFER
+ 000A:106C I_RPCGETBUFFER I_RPCGETBUFFER
+ 000A:1E6E I_RPCIFINQTRANSFERSYNTAXES I_RPCIFINQTRANSFERSYNTAXES
+ 000A:1B16 I_RPCNSBINDINGSETENTRYNAME I_RPCNSBINDINGSETENTRYNAME
+ 000A:1174 I_RPCPAUSEEXECUTION I_RPCPAUSEEXECUTION
+ 000A:111A I_RPCREALLOCPIPEBUFFER I_RPCREALLOCPIPEBUFFER
+ 000A:7D76 I_RPCRECEIVE I_RPCRECEIVE
+ 000A:7D52 I_RPCSEND I_RPCSEND
+ 000A:7D2E I_RPCSENDRECEIVE I_RPCSENDRECEIVE
+ 000A:119C I_RPCTIMECHARGE I_RPCTIMECHARGE
+ 000A:11AA I_RPCTIMEGET I_RPCTIMEGET
+ 000A:1190 I_RPCTIMERESET I_RPCTIMERESET
+ 000A:CD94 I_RPCTRANSCLIENTMAXFRAG I_RPCTRANSCLIENTMAXFRAG
+ 000A:CD12 I_RPCTRANSCLIENTREALLOCBUFFER I_RPCTRANSCLIENTREALLOCBUFFER
+ 000A:CDAA I_RPCTRANSPINGSERVER I_RPCTRANSPINGSERVER
+ 000A:E6FE I_RPCWINASYNCCALLBEGIN I_RPCWINASYNCCALLBEGIN
+ 000C:0000 I_RPCWINASYNCCALLCOMPLETE I_RPCWINASYNCCALLCOMPLETE
+ 000A:EB04 I_RPCWINASYNCCALLEND I_RPCWINASYNCCALLEND
+ 000A:E794 I_RPCWINASYNCCALLWAIT I_RPCWINASYNCCALLWAIT
+ 000A:EB72 I_RPCWINISTASKYIELDING I_RPCWINISTASKYIELDING
+ 000A:E68A I_RPCWINSETTASKYIELDING I_RPCWINSETTASKYIELDING
+ 000A:E434 I_RPCYIELDDIALOGFUNCTION I_RPCYIELDDIALOGFUNCTION
+ 000A:21DE I_UUIDCREATE I_UUIDCREATE
+ 000B:1926 LONG_ARRAY_FROM_NDR LONG_ARRAY_FROM_NDR
+ 000B:1878 LONG_FROM_NDR LONG_FROM_NDR
+ 000B:1A26 LONG_FROM_NDR_TEMP LONG_FROM_NDR_TEMP
+ 000B:92CE MESBUFFERHANDLERESET MESBUFFERHANDLERESET
+ 000B:922C MESDECODEBUFFERHANDLECREATE MESDECODEBUFFERHANDLECREATE
+ 000B:8FA0 MESDECODEINCREMENTALHANDLECREATE MESDECODEINCREMENTALHANDLECREATE
+ 000B:91B0 MESENCODEDYNBUFFERHANDLECREATE MESENCODEDYNBUFFERHANDLECREATE
+ 000B:9126 MESENCODEFIXEDBUFFERHANDLECREATE MESENCODEFIXEDBUFFERHANDLECREATE
+ 000B:8F32 MESENCODEINCREMENTALHANDLECREATE MESENCODEINCREMENTALHANDLECREATE
+ 000B:8EE2 MESHANDLEFREE MESHANDLEFREE
+ 000B:900C MESINCREMENTALHANDLERESET MESINCREMENTALHANDLERESET
+ 000B:9462 MESINQPROCENCODINGID MESINQPROCENCODINGID
+ 000A:71A4 MIDL_USER_ALLOCATE MIDL_USER_ALLOCATE
+ 000A:71BA MIDL_USER_FREE MIDL_USER_FREE
+ 000A:F6C4 MIDL_WCHAR_STRCPY MIDL_WCHAR_STRCPY
+ 000A:F698 MIDL_WCHAR_STRLEN MIDL_WCHAR_STRLEN
+ 000B:4782 NDRALLOCATE NDRALLOCATE
+ 000B:6E58 NDRBYTECOUNTPOINTERBUFFERSIZE NDRBYTECOUNTPOINTERBUFFERSIZE
+ 000B:5450 NDRBYTECOUNTPOINTERFREE NDRBYTECOUNTPOINTERFREE
+ 000B:32CE NDRBYTECOUNTPOINTERMARSHALL NDRBYTECOUNTPOINTERMARSHALL
+ 0008:21E8 NDRBYTECOUNTPOINTERUNMARSHALL NDRBYTECOUNTPOINTERUNMARSHALL
+ 000A:F378 NDRCCONTEXTBINDING NDRCCONTEXTBINDING
+ 000A:F3B4 NDRCCONTEXTMARSHALL NDRCCONTEXTMARSHALL
+ 000A:F4F6 NDRCCONTEXTUNMARSHALL NDRCCONTEXTUNMARSHALL
+ 000B:7C2C NDRCLEAROUTPARAMETERS NDRCLEAROUTPARAMETERS
+ 000B:362A NDRCLIENTCONTEXTMARSHALL NDRCLIENTCONTEXTMARSHALL
+ 0008:28F2 NDRCLIENTCONTEXTUNMARSHALL NDRCLIENTCONTEXTUNMARSHALL
+ 000B:4056 NDRCLIENTINITIALIZE NDRCLIENTINITIALIZE
+ 000B:3FCC NDRCLIENTINITIALIZENEW NDRCLIENTINITIALIZENEW
+ 000B:63CA NDRCOMPLEXARRAYBUFFERSIZE NDRCOMPLEXARRAYBUFFERSIZE
+ 000B:4F6A NDRCOMPLEXARRAYFREE NDRCOMPLEXARRAYFREE
+ 000B:29A4 NDRCOMPLEXARRAYMARSHALL NDRCOMPLEXARRAYMARSHALL
+ 0007:10CA NDRCOMPLEXARRAYMEMORYSIZE NDRCOMPLEXARRAYMEMORYSIZE
+ 0008:16C0 NDRCOMPLEXARRAYUNMARSHALL NDRCOMPLEXARRAYUNMARSHALL
+ 000B:5B78 NDRCOMPLEXSTRUCTBUFFERSIZE NDRCOMPLEXSTRUCTBUFFERSIZE
+ 000B:4B3A NDRCOMPLEXSTRUCTFREE NDRCOMPLEXSTRUCTFREE
+ 0006:01F0 NDRCOMPLEXSTRUCTMARSHALL NDRCOMPLEXSTRUCTMARSHALL
+ 0007:0638 NDRCOMPLEXSTRUCTMEMORYSIZE NDRCOMPLEXSTRUCTMEMORYSIZE
+ 0008:04AC NDRCOMPLEXSTRUCTUNMARSHALL NDRCOMPLEXSTRUCTUNMARSHALL
+ 000B:5FF4 NDRCONFORMANTARRAYBUFFERSIZE NDRCONFORMANTARRAYBUFFERSIZE
+ 000B:4E02 NDRCONFORMANTARRAYFREE NDRCONFORMANTARRAYFREE
+ 000B:2590 NDRCONFORMANTARRAYMARSHALL NDRCONFORMANTARRAYMARSHALL
+ 0007:0B58 NDRCONFORMANTARRAYMEMORYSIZE NDRCONFORMANTARRAYMEMORYSIZE
+ 0008:0F0A NDRCONFORMANTARRAYUNMARSHALL NDRCONFORMANTARRAYUNMARSHALL
+ 000B:69A8 NDRCONFORMANTSTRINGBUFFERSIZE NDRCONFORMANTSTRINGBUFFERSIZE
+ 0006:074A NDRCONFORMANTSTRINGMARSHALL NDRCONFORMANTSTRINGMARSHALL
+ 0007:1834 NDRCONFORMANTSTRINGMEMORYSIZE NDRCONFORMANTSTRINGMEMORYSIZE
+ 0008:0AE0 NDRCONFORMANTSTRINGUNMARSHALL NDRCONFORMANTSTRINGUNMARSHALL
+ 000B:594C NDRCONFORMANTSTRUCTBUFFERSIZE NDRCONFORMANTSTRUCTBUFFERSIZE
+ 000B:49FC NDRCONFORMANTSTRUCTFREE NDRCONFORMANTSTRUCTFREE
+ 000B:2262 NDRCONFORMANTSTRUCTMARSHALL NDRCONFORMANTSTRUCTMARSHALL
+ 0007:02E6 NDRCONFORMANTSTRUCTMEMORYSIZE NDRCONFORMANTSTRUCTMEMORYSIZE
+ 000B:3DF4 NDRCONFORMANTSTRUCTUNMARSHALL NDRCONFORMANTSTRUCTUNMARSHALL
+ 000B:60EE NDRCONFORMANTVARYINGARRAYBUFFERSIZE NDRCONFORMANTVARYINGARRAYBUFFERSIZE
+ 000B:4E64 NDRCONFORMANTVARYINGARRAYFREE NDRCONFORMANTVARYINGARRAYFREE
+ 000B:26B2 NDRCONFORMANTVARYINGARRAYMARSHALL NDRCONFORMANTVARYINGARRAYMARSHALL
+ 0007:0CB6 NDRCONFORMANTVARYINGARRAYMEMORYSIZE NDRCONFORMANTVARYINGARRAYMEMORYSIZE
+ 0008:1160 NDRCONFORMANTVARYINGARRAYUNMARSHALL NDRCONFORMANTVARYINGARRAYUNMARSHALL
+ 000B:5A04 NDRCONFORMANTVARYINGSTRUCTBUFFERSIZE NDRCONFORMANTVARYINGSTRUCTBUFFERSIZE
+ 000B:4A5E NDRCONFORMANTVARYINGSTRUCTFREE NDRCONFORMANTVARYINGSTRUCTFREE
+ 0006:0000 NDRCONFORMANTVARYINGSTRUCTMARSHALL NDRCONFORMANTVARYINGSTRUCTMARSHALL
+ 0007:0442 NDRCONFORMANTVARYINGSTRUCTMEMORYSIZE NDRCONFORMANTVARYINGSTRUCTMEMORYSIZE
+ 0008:0000 NDRCONFORMANTVARYINGSTRUCTUNMARSHALL NDRCONFORMANTVARYINGSTRUCTUNMARSHALL
+ 000B:73EC NDRCONTEXTHANDLESIZE NDRCONTEXTHANDLESIZE
+ 0009:0124 NDRCONVERT NDRCONVERT
+ 0009:0000 NDRCONVERT2 NDRCONVERT2
+ 0005:0000 NDRCOPY NDRCOPY
+ 000B:6B66 NDRENCAPSULATEDUNIONBUFFERSIZE NDRENCAPSULATEDUNIONBUFFERSIZE
+ 000B:526C NDRENCAPSULATEDUNIONFREE NDRENCAPSULATEDUNIONFREE
+ 000B:2FEA NDRENCAPSULATEDUNIONMARSHALL NDRENCAPSULATEDUNIONMARSHALL
+ 0007:19F4 NDRENCAPSULATEDUNIONMEMORYSIZE NDRENCAPSULATEDUNIONMEMORYSIZE
+ 0008:1D32 NDRENCAPSULATEDUNIONUNMARSHALL NDRENCAPSULATEDUNIONUNMARSHALL
+ 000B:5F54 NDRFIXEDARRAYBUFFERSIZE NDRFIXEDARRAYBUFFERSIZE
+ 000B:4DBA NDRFIXEDARRAYFREE NDRFIXEDARRAYFREE
+ 000B:24C4 NDRFIXEDARRAYMARSHALL NDRFIXEDARRAYMARSHALL
+ 0007:0A60 NDRFIXEDARRAYMEMORYSIZE NDRFIXEDARRAYMEMORYSIZE
+ 0008:0DAC NDRFIXEDARRAYUNMARSHALL NDRFIXEDARRAYUNMARSHALL
+ 000B:4736 NDRFREEBUFFER NDRFREEBUFFER
+ 0008:2FDA NDRFULLPOINTERFREE NDRFULLPOINTERFREE
+ 0008:2F0E NDRFULLPOINTERINSERTREFID NDRFULLPOINTERINSERTREFID
+ 0008:2C10 NDRFULLPOINTERQUERYPOINTER NDRFULLPOINTERQUERYPOINTER
+ 0008:2E44 NDRFULLPOINTERQUERYREFID NDRFULLPOINTERQUERYREFID
+ 0008:2B10 NDRFULLPOINTERXLATFREE NDRFULLPOINTERXLATFREE
+ 0008:2956 NDRFULLPOINTERXLATINIT NDRFULLPOINTERXLATINIT
+ 000B:449E NDRGETBUFFER NDRGETBUFFER
+ 000B:5AE2 NDRHARDSTRUCTBUFFERSIZE NDRHARDSTRUCTBUFFERSIZE
+ 000B:4AE6 NDRHARDSTRUCTFREE NDRHARDSTRUCTFREE
+ 0006:011E NDRHARDSTRUCTMARSHALL NDRHARDSTRUCTMARSHALL
+ 0007:0574 NDRHARDSTRUCTMEMORYSIZE NDRHARDSTRUCTMEMORYSIZE
+ 0008:02F6 NDRHARDSTRUCTUNMARSHALL NDRHARDSTRUCTUNMARSHALL
+ 000B:718E NDRINTERFACEPOINTERBUFFERSIZE NDRINTERFACEPOINTERBUFFERSIZE
+ 000B:554C NDRINTERFACEPOINTERFREE NDRINTERFACEPOINTERFREE
+ 000B:3618 NDRINTERFACEPOINTERMARSHALL NDRINTERFACEPOINTERMARSHALL
+ 0007:1F66 NDRINTERFACEPOINTERMEMORYSIZE NDRINTERFACEPOINTERMEMORYSIZE
+ 0008:28E0 NDRINTERFACEPOINTERUNMARSHALL NDRINTERFACEPOINTERUNMARSHALL
+ 000B:484C NDRMAPCOMMANDFAULTSTATUS NDRMAPCOMMANDFAULTSTATUS
+ 000B:B788 NDRMARSHALLHANDLE NDRMARSHALLHANDLE
+ 000B:A6B8 NDRMESSIMPLETYPEALIGNSIZE NDRMESSIMPLETYPEALIGNSIZE
+ 000B:A812 NDRMESSIMPLETYPEDECODE NDRMESSIMPLETYPEDECODE
+ 000B:A70A NDRMESSIMPLETYPEENCODE NDRMESSIMPLETYPEENCODE
+ 000B:9FF4 NDRMESTYPEALIGNSIZE NDRMESTYPEALIGNSIZE
+ 000B:A3B0 NDRMESTYPEDECODE NDRMESTYPEDECODE
+ 000B:A162 NDRMESTYPEENCODE NDRMESTYPEENCODE
+ 000B:6878 NDRNONCONFORMANTSTRINGBUFFERSIZE NDRNONCONFORMANTSTRINGBUFFERSIZE
+ 0006:0652 NDRNONCONFORMANTSTRINGMARSHALL NDRNONCONFORMANTSTRINGMARSHALL
+ 0007:1750 NDRNONCONFORMANTSTRINGMEMORYSIZE NDRNONCONFORMANTSTRINGMEMORYSIZE
+ 0008:099E NDRNONCONFORMANTSTRINGUNMARSHALL NDRNONCONFORMANTSTRINGUNMARSHALL
+ 000B:6C28 NDRNONENCAPSULATEDUNIONBUFFERSIZE NDRNONENCAPSULATEDUNIONBUFFERSIZE
+ 000B:531E NDRNONENCAPSULATEDUNIONFREE NDRNONENCAPSULATEDUNIONFREE
+ 000B:30AE NDRNONENCAPSULATEDUNIONMARSHALL NDRNONENCAPSULATEDUNIONMARSHALL
+ 0007:1A42 NDRNONENCAPSULATEDUNIONMEMORYSIZE NDRNONENCAPSULATEDUNIONMEMORYSIZE
+ 0008:1E50 NDRNONENCAPSULATEDUNIONUNMARSHALL NDRNONENCAPSULATEDUNIONUNMARSHALL
+ 000B:4592 NDRNSGETBUFFER NDRNSGETBUFFER
+ 000B:46A6 NDRNSSENDRECEIVE NDRNSSENDRECEIVE
+ 000B:5784 NDRPOINTERBUFFERSIZE NDRPOINTERBUFFERSIZE
+ 000B:48DA NDRPOINTERFREE NDRPOINTERFREE
+ 000B:2046 NDRPOINTERMARSHALL NDRPOINTERMARSHALL
+ 0007:0000 NDRPOINTERMEMORYSIZE NDRPOINTERMEMORYSIZE
+ 000B:37BC NDRPOINTERUNMARSHALL NDRPOINTERUNMARSHALL
+ 0008:233E NDRPXMITORREPASPTRUNMARSHALL NDRPXMITORREPASPTRUNMARSHALL
+ 000B:8E48 NDRRPCSMCLIENTALLOCATE NDRRPCSMCLIENTALLOCATE
+ 000B:8E7A NDRRPCSMCLIENTFREE NDRRPCSMCLIENTFREE
+ 000B:8DEC NDRRPCSMSETCLIENTTOOSF NDRRPCSMSETCLIENTTOOSF
+ 000B:8E18 NDRRPCSSDEFAULTALLOCATE NDRRPCSSDEFAULTALLOCATE
+ 000B:8E2E NDRRPCSSDEFAULTFREE NDRRPCSSDEFAULTFREE
+ 000B:8DB8 NDRRPCSSDISABLEALLOCATE NDRRPCSSDISABLEALLOCATE
+ 000B:8D84 NDRRPCSSENABLEALLOCATE NDRRPCSSENABLEALLOCATE
+ 000B:461E NDRSENDRECEIVE NDRSENDRECEIVE
+ 000B:367C NDRSERVERCONTEXTMARSHALL NDRSERVERCONTEXTMARSHALL
+ 0008:2948 NDRSERVERCONTEXTUNMARSHALL NDRSERVERCONTEXTUNMARSHALL
+ 000B:42DC NDRSERVERINITIALIZE NDRSERVERINITIALIZE
+ 000B:480C NDRSERVERINITIALIZEMARSHALL NDRSERVERINITIALIZEMARSHALL
+ 000B:41E6 NDRSERVERINITIALIZENEW NDRSERVERINITIALIZENEW
+ 000B:4400 NDRSERVERINITIALIZEPARTIAL NDRSERVERINITIALIZEPARTIAL
+ 000B:47E6 NDRSERVERINITIALIZEUNMARSHALL NDRSERVERINITIALIZEUNMARSHALL
+ 000B:58D4 NDRSIMPLESTRUCTBUFFERSIZE NDRSIMPLESTRUCTBUFFERSIZE
+ 000B:49CC NDRSIMPLESTRUCTFREE NDRSIMPLESTRUCTFREE
+ 000B:21CA NDRSIMPLESTRUCTMARSHALL NDRSIMPLESTRUCTMARSHALL
+ 0007:0218 NDRSIMPLESTRUCTMEMORYSIZE NDRSIMPLESTRUCTMEMORYSIZE
+ 000B:3CBE NDRSIMPLESTRUCTUNMARSHALL NDRSIMPLESTRUCTUNMARSHALL
+ 000B:1F0C NDRSIMPLETYPEMARSHALL NDRSIMPLETYPEMARSHALL
+ 000B:368A NDRSIMPLETYPEUNMARSHALL NDRSIMPLETYPEUNMARSHALL
+ 000B:B81E NDRUNMARSHALLHANDLE NDRUNMARSHALLHANDLE
+ 000B:7070 NDRUSERMARSHALBUFFERSIZE NDRUSERMARSHALBUFFERSIZE
+ 000B:54E8 NDRUSERMARSHALFREE NDRUSERMARSHALFREE
+ 000B:3480 NDRUSERMARSHALMARSHALL NDRUSERMARSHALMARSHALL
+ 0007:1E5E NDRUSERMARSHALMEMORYSIZE NDRUSERMARSHALMEMORYSIZE
+ 0009:1F50 NDRUSERMARSHALSIMPLETYPECONVERT NDRUSERMARSHALSIMPLETYPECONVERT
+ 0008:2714 NDRUSERMARSHALUNMARSHALL NDRUSERMARSHALUNMARSHALL
+ 000B:6272 NDRVARYINGARRAYBUFFERSIZE NDRVARYINGARRAYBUFFERSIZE
+ 000B:4EEC NDRVARYINGARRAYFREE NDRVARYINGARRAYFREE
+ 000B:2850 NDRVARYINGARRAYMARSHALL NDRVARYINGARRAYMARSHALL
+ 0007:0ECC NDRVARYINGARRAYMEMORYSIZE NDRVARYINGARRAYMEMORYSIZE
+ 0008:145C NDRVARYINGARRAYUNMARSHALL NDRVARYINGARRAYUNMARSHALL
+ 000B:6EFA NDRXMITORREPASBUFFERSIZE NDRXMITORREPASBUFFERSIZE
+ 000B:5484 NDRXMITORREPASFREE NDRXMITORREPASFREE
+ 000B:3332 NDRXMITORREPASMARSHALL NDRXMITORREPASMARSHALL
+ 0007:1D92 NDRXMITORREPASMEMORYSIZE NDRXMITORREPASMEMORYSIZE
+ 0008:24C6 NDRXMITORREPASUNMARSHALL NDRXMITORREPASUNMARSHALL
+ 000A:B41E OSFTOWERCONSTRUCT OSFTOWERCONSTRUCT
+ 000A:B48A OSFTOWEREXPLODE OSFTOWEREXPLODE
+ 000A:1858 RPCBINDINGCOPY RPCBINDINGCOPY
+ 000A:18DC RPCBINDINGFREE RPCBINDINGFREE
+ 000A:195A RPCBINDINGFROMSTRINGBINDING RPCBINDINGFROMSTRINGBINDING
+ 000A:1B5C RPCBINDINGINQAUTHINFO RPCBINDINGINQAUTHINFO
+ 000A:1CDE RPCBINDINGINQOBJECT RPCBINDINGINQOBJECT
+ 000A:1920 RPCBINDINGRESET RPCBINDINGRESET
+ 000A:1C44 RPCBINDINGSETAUTHINFO RPCBINDINGSETAUTHINFO
+ 000A:19D0 RPCBINDINGSETOBJECT RPCBINDINGSETOBJECT
+ 000A:1D10 RPCBINDINGTOSTRINGBINDING RPCBINDINGTOSTRINGBINDING
+ 000A:1A12 RPCBINDINGVECTORFREE RPCBINDINGVECTORFREE
+ 000A:1A90 RPCEPRESOLVEBINDING RPCEPRESOLVEBINDING
+ 000A:E272 RpcGetExceptionHandler RpcGetExceptionHandler
+ 000A:1DA0 RPCIFINQID RPCIFINQID
+ 000A:E29C RPCLEAVEEXCEPTION RPCLEAVEEXCEPTION
+ 000A:1F1C RPCMGMTBINDINGINQPARAMETER RPCMGMTBINDINGINQPARAMETER
+ 000A:1EE8 RPCMGMTBINDINGSETPARAMETER RPCMGMTBINDINGSETPARAMETER
+ 000A:1ED6 RPCMGMTENABLEIDLECLEANUP RPCMGMTENABLEIDLECLEANUP
+ 000A:1E10 RPCMGMTINQCOMTIMEOUT RPCMGMTINQCOMTIMEOUT
+ 000A:1D40 RPCMGMTINQDEFAULTPROTECTLEVEL RPCMGMTINQDEFAULTPROTECTLEVEL
+ 000A:1F96 RPCMGMTINQPARAMETER RPCMGMTINQPARAMETER
+ 000A:1E40 RPCMGMTSETCOMTIMEOUT RPCMGMTSETCOMTIMEOUT
+ 000A:1F54 RPCMGMTSETPARAMETER RPCMGMTSETPARAMETER
+ 000A:1DF4 RPCNETWORKISPROTSEQVALID RPCNETWORKISPROTSEQVALID
+ 000A:1AD0 RPCNSBINDINGINQENTRYNAME RPCNSBINDINGINQENTRYNAME
+ 0003:003F RPCRAISEEXCEPTION RPCRAISEEXCEPTION
+ 000A:EBA2 RPCREGCLOSEKEY RPCREGCLOSEKEY
+ 000A:EC00 RPCREGCREATEKEY RPCREGCREATEKEY
+ 000A:ED4A RPCREGOPENKEY RPCREGOPENKEY
+ 000A:F106 RPCREGQUERYVALUE RPCREGQUERYVALUE
+ 000A:EE76 RPCREGSETVALUE RPCREGSETVALUE
+ 0003:0000 RPCSETEXCEPTION RPCSETEXCEPTION
+ 000A:E15C RpcSetExceptionHandler RpcSetExceptionHandler
+ 000B:89C0 RPCSMALLOCATE RPCSMALLOCATE
+ 000B:8A12 RPCSMCLIENTFREE RPCSMCLIENTFREE
+ 000B:8A82 RPCSMDESTROYCLIENTCONTEXT RPCSMDESTROYCLIENTCONTEXT
+ 000B:8A4E RPCSMDISABLEALLOCATE RPCSMDISABLEALLOCATE
+ 000B:8ABE RPCSMENABLEALLOCATE RPCSMENABLEALLOCATE
+ 000B:8AF2 RPCSMFREE RPCSMFREE
+ 000B:8B2E RPCSMGETTHREADHANDLE RPCSMGETTHREADHANDLE
+ 000B:8B80 RPCSMSETCLIENTALLOCFREE RPCSMSETCLIENTALLOCFREE
+ 000B:8BC6 RPCSMSETTHREADHANDLE RPCSMSETTHREADHANDLE
+ 000B:8C02 RPCSMSWAPCLIENTALLOCFREE RPCSMSWAPCLIENTALLOCFREE
+ 000B:86BC RPCSSALLOCATE RPCSSALLOCATE
+ 000A:F64C RPCSSDESTROYCLIENTCONTEXT RPCSSDESTROYCLIENTCONTEXT
+ 000B:875E RPCSSDISABLEALLOCATE RPCSSDISABLEALLOCATE
+ 000B:87F8 RPCSSENABLEALLOCATE RPCSSENABLEALLOCATE
+ 000B:883A RPCSSFREE RPCSSFREE
+ 000B:88CC RPCSSGETTHREADHANDLE RPCSSGETTHREADHANDLE
+ 000B:890C RPCSSSETCLIENTALLOCFREE RPCSSSETCLIENTALLOCFREE
+ 000B:8940 RPCSSSETTHREADHANDLE RPCSSSETTHREADHANDLE
+ 000B:8962 RPCSSSWAPCLIENTALLOCFREE RPCSSSWAPCLIENTALLOCFREE
+ 000A:1FC6 RPCSTRINGBINDINGCOMPOSE RPCSTRINGBINDINGCOMPOSE
+ 000A:207A RPCSTRINGBINDINGPARSE RPCSTRINGBINDINGPARSE
+ 000A:21A4 RPCSTRINGFREE RPCSTRINGFREE
+ 000A:E59A RPCWINSETYIELDINFO RPCWINSETYIELDINFO
+ 000A:E65A RPCWINSETYIELDTIMEOUT RPCWINSETYIELDTIMEOUT
+ 000B:1768 SHORT_ARRAY_FROM_NDR SHORT_ARRAY_FROM_NDR
+ 000B:1704 SHORT_FROM_NDR SHORT_FROM_NDR
+ 000B:1818 SHORT_FROM_NDR_TEMP SHORT_FROM_NDR_TEMP
+ 0002:08E4 TOWERCONSTRUCT TOWERCONSTRUCT
+ 0002:0846 TOWEREXPLODE TOWEREXPLODE
+ 000B:0B48 TREE_INTO_NDR TREE_INTO_NDR
+ 000B:144C TREE_PEEK_NDR TREE_PEEK_NDR
+ 000B:11D0 TREE_SIZE_NDR TREE_SIZE_NDR
+ 000A:23E8 UUIDCOMPARE UUIDCOMPARE
+ 000A:2202 UUIDCREATE UUIDCREATE
+ 000A:24E0 UUIDCREATENIL UUIDCREATENIL
+ 000A:24FC UUIDEQUAL UUIDEQUAL
+ 000A:2394 UUIDFROMSTRING UUIDFROMSTRING
+ 000A:2570 UUIDHASH UUIDHASH
+ 000A:25A0 UUIDISNIL UUIDISNIL
+ 000A:2346 UUIDTOSTRING UUIDTOSTRING
+ 0001:0000 WEP WEP
+ 000A:DF62 WINDLLATEXIT WINDLLATEXIT
+ 000A:E762 YIELDTIMERCALLBACK YIELDTIMERCALLBACK
+ 000A:D19C _I_Trace _I_Trace
+ 000B:7422 _NdrClientCall _NdrClientCall
+ 000B:7E1C _NdrClientCall2 _NdrClientCall2
+ 000B:9A30 _NdrMesProcEncodeDecode _NdrMesProcEncodeDecode
+ 0004:1578 ___ExportedStub ___ExportedStub
+
+ Address Publics by Name
+
+ 0004:321E $i8_output
+ 0004:3540 $i8_tpwr10
+ 000A:752A ??0BINDING_HANDLE@@JAC@XZ
+ 000A:73E4 ??0CLIENT_AUTH_INFO@@RAC@PAU0@PEG@Z
+ 000A:CDC4 ??0CLIENT_LOADABLE_TRANSPORT@@RAC@PAU_RPC_CLIENT_TRANSPORT_INFO@@PAE@Z
+ 000A:5576 ??0CONNECTION@@RAC@PAUCLIENT_AUTH_INFO@@PEG@Z
+ 000A:0066 ??0DCE_BINDING@@RAC@PEE0000PEG@Z
+ 000A:0298 ??0DCE_BINDING@@RAC@PEEPEG@Z
+ 000A:272C ??0DG_BINDING_HANDLE@@RAC@PEG@Z
+ 000A:2CC6 ??0DG_CASSOCIATION@@RAC@PEU_DG_RPC_CLIENT_TRANSPORT_INFO@@PAVDG_BINDING_HANDLE@@KPAVDCE_BINDING@@PEG@Z
+ 000A:3100 ??0DG_CCALL@@RAC@PAVDG_CASSOCIATION@@IPAUCLIENT_AUTH_INFO@@PEG@Z
+ 000A:3762 ??0DG_ENDPOINT_MANAGER@@RAC@PEU_DG_RPC_CLIENT_TRANSPORT_INFO@@PEG@Z
+ 000A:56D2 ??0DG_PACKET_ENGINE@@RAC@GGGGIPEG@Z
+ 000A:7B3C ??0DLL@@RAC@PAEPAG@Z
+ 000A:7D9E ??0OSF_BINDING_HANDLE@@RAC@PEG@Z
+ 000A:A6BE ??0OSF_CASSOCIATION@@RAC@PAVDCE_BINDING@@PAU_RPC_CLIENT_TRANSPORT_INFO@@PEG@Z
+ 000A:A208 ??0OSF_CCONNECTION@@JAC@PAUCLIENT_AUTH_INFO@@PEG@Z
+ 000A:C5C4 ??0SECURITY_CONTEXT@@RAC@PAUCLIENT_AUTH_INFO@@IHPEG@Z
+ 000A:C486 ??0SECURITY_CREDENTIALS@@RAC@PEG@Z
+ 000B:C010 ??0SIMPLE_DICT2@@REC@XZ
+ 000A:BF7C ??0SIMPLE_DICT@@RAC@XZ
+ 000A:C8D4 ??0TRANS_CCONNECTION@@RAC@PAU_RPC_CLIENT_TRANSPORT_INFO@@PAE111PEGIPAUCLIENT_AUTH_INFO@@@Z
+ 000A:75AC ??1BINDING_HANDLE@@VAC@XZ
+ 000A:0F78 ??1BITSET@@RAC@XZ
+ 000A:745E ??1CLIENT_AUTH_INFO@@RAC@XZ
+ 000A:06B0 ??1DCE_BINDING@@RAC@XZ
+ 000A:2754 ??1DG_BINDING_HANDLE@@VAC@XZ
+ 000A:2DE2 ??1DG_CASSOCIATION@@RAC@XZ
+ 000A:3264 ??1DG_CCALL@@VAC@XZ
+ 000A:57BA ??1DG_PACKET_ENGINE@@RAC@XZ
+ 000A:5520 ??1INTERFACE_AND_OBJECT_LIST@@RAC@XZ
+ 000A:7EC4 ??1OSF_BINDING_HANDLE@@VAC@XZ
+ 000A:A72A ??1OSF_CASSOCIATION@@RAC@XZ
+ 000A:A30A ??1OSF_CCONNECTION@@VAC@XZ
+ 000A:55D0 ??1SECURITY_CONTEXT@@RAC@XZ
+ 0000:0000 Unr ??1SIMPLE_DICT2@@REC@XZ
+ 000A:BFAC ??1SIMPLE_DICT@@RAC@XZ
+ 000A:C948 ??1TRANS_CCONNECTION@@VAC@XZ
+ 000A:7CEC ??2@ZAPAXI@Z
+ 000B:8C50 ??2@ZAPEXI@Z
+ 000A:7CFC ??3@ZAXPAX@Z
+ 0004:191A ??3@ZAXPEX@Z
+ 000A:D6F2 ??N@ZAHAEVULong64@@0@Z
+ 000A:D68A ??P@ZAHAEVULong64@@0@Z
+ 000A:D3A6 ??X@ZAXAEVULong64@@K@Z
+ 000A:D2CC ??Y@ZAXAEVULong64@@0@Z
+ 000A:D330 ??Y@ZAXAEVULong64@@K@Z
+ 0000:0000 Unr ??Z@ZAXAEVULong64@@0@Z
+ 000A:D36E ??Z@ZAXAEVULong64@@K@Z
+ 000A:D5EE ??_2@ZAXAEVULong64@@I@Z
+ 000A:D546 ??_3@ZAXAEVULong64@@I@Z
+ 000E:133E ??_7BINDING_HANDLE@@6B@
+ 000E:121E ??_7CCONNECTION@@6B@
+ 000E:11C6 ??_7CONNECTION@@6B@
+ 000E:116A ??_7DG_BINDING_HANDLE@@6B@
+ 000E:11EA ??_7DG_CASSOCIATION@@6B@
+ 000E:11EE ??_7DG_CCALL@@6BCCONNECTION@@@
+ 000E:1216 ??_7DG_CCALL@@6BDG_PACKET_ENGINE@@@
+ 000E:1242 ??_7DG_PACKET_ENGINE@@6B@
+ 000E:121A ??_7GENERIC_OBJECT@@6B@
+ 000E:1146 ??_7MESSAGE_OBJECT@@6B@
+ 000E:145C ??_7OSF_BINDING_HANDLE@@6B@
+ 000E:1458 ??_7OSF_CASSOCIATION@@6B@
+ 000E:1410 ??_7OSF_CCONNECTION@@6B@
+ 000E:14EA ??_7TRANS_CCONNECTION@@6B@
+ 000E:1656 ??_C@_01BJG@?6?$AA@
+ 000E:1650 ??_C@_01KPOD@?$DN?$AA@
+ 000E:169E ??_C@_01PCFE@?2?$AA@
+ 000E:164C ??_C@_02EHDJ@?$DN?6?$AA@
+ 000E:1652 ??_C@_02IAAH@wt?$AA@
+ 000E:1278 ??_C@_03EOPG@135?$AA@
+ 000E:131A ??_C@_03GEHA@385?$AA@
+ 000E:129A ??_C@_03HJFF@?$CD69?$AA@
+ 000E:1696 ??_C@_03ONMN@r?$CLt?$AA@
+ 000E:169A ??_C@_03PHIB@w?$CLt?$AA@
+ 000E:1658 ??_C@_05HHOP@?2Root?$AA@
+ 000E:12DE ??_C@_05LKBG@34280?$AA@
+ 000E:131E ??_C@_06HKKF@RPCNS1?$AA@
+ 000E:112E ??_C@_06KGKC@ncadg_?$AA@
+ 000E:1136 ??_C@_06LLDN@ncacn_?$AA@
+ 000E:113E ??_C@_06MNFC@mswmsg?$AA@
+ 000E:13C2 ??_C@_07BGOK@rpc16c8?$AA@
+ 000E:1126 ??_C@_07DFNK@ncalrpc?$AA@
+ 000E:13B2 ??_C@_07ECJJ@rpc16c5?$AA@
+ 000E:13BA ??_C@_07LNCA@rpc16c6?$AA@
+ 000E:13A2 ??_C@_07LNOL@rpc16c3?$AA@
+ 000E:13AA ??_C@_07OIAO@rpc16c4?$AA@
+ 000E:139A ??_C@_07OIMF@rpc16c1?$AA@
+ 000E:1246 ??_C@_08DNBJ@ncacn_np?$AA@
+ 000E:111C ??_C@_08GFKM@endpoint?$AA@
+ 000E:1260 ??_C@_08JCOI@epmapper?$AA@
+ 000E:1642 ??_C@_08KHKC@RPCYIELD?$AA@
+ 000E:1406 ??_C@_08PBBB@security?$AA@
+ 000E:13CA ??_C@_08PDFD@rpc16dg3?$AA@
+ 000E:13D4 ??_C@_08PDJI@rpc16dg6?$AA@
+ 000E:12D4 ??_C@_09LLEG@ncacn_spx?$AA@
+ 000E:12E4 ??_C@_09OHNL@ncadg_ipx?$AA@
+ 000E:12FC ??_C@_0BA@LJDB@Endpoint?5Mapper?$AA@
+ 000B:4826 ??_C@_0BB@DMFF@I_RPCNSGETBUFFER?$AA@
+ 000E:1532 ??_C@_0BB@PCNE@0123456789abcdef?$AA@
+ 000E:1588 ??_C@_0BC@GBOB@LastTimeAllocated?$AA@
+ 000E:166C ??_C@_0BC@GCIN@RPC_REG_DATA_FILE?$AA@
+ 000B:4838 ??_C@_0BD@CMGM@I_RPCNSSENDRECEIVE?$AA@
+ 000E:15DE ??_C@_0BG@DOMJ@Remote?5Procedure?5Call?$AA@
+ 000E:14B8 ??_C@_0BH@NHJB@INITSECURITYINTERFACEA?$AA@
+ 000E:167E ??_C@_0BI@BCIP@RPC?5Runtime?5Preferences?$AA@
+ 000E:1326 ??_C@_0BI@FLG@I_GETDEFAULTENTRYSYNTAX?$AA@
+ 000E:15C4 ??_C@_0BK@HJNG@IPXGetInternetworkAddress?$AA@
+ 000E:13DE ??_C@_0CH@FABF@Software?2Microsoft?2Rpc?2ClientPro@
+ 000E:1544 ??_C@_0DG@FPPK@Software?2Description?2Microsoft?2R@
+ 000E:15F4 ??_C@_0EO@DPEN@Application?5encountered?5unhandle@
+ 000B:481A ??_C@_0L@OGFF@RPCNS1?4DLL?$AA@
+ 000E:14D0 ??_C@_0M@IBML@?$CFd?4?$CFd?4?$CFd?4?$CFd?$AA@
+ 000E:129E ??_C@_0M@PAMB@ncacn_nb_nb?$AA@
+ 000E:159A ??_C@_0N@BDMF@NWIPXSPX?4DLL?$AA@
+ 000E:15B6 ??_C@_0N@DBEN@IPXSPXDeinit?$AA@
+ 000E:12B8 ??_C@_0N@DJPI@ncacn_nb_tcp?$AA@
+ 000E:126A ??_C@_0N@JDIH@ncacn_ip_tcp?$AA@
+ 000E:12C6 ??_C@_0N@JHIF@ncacn_nb_ipx?$AA@
+ 000E:127C ??_C@_0N@OGGG@ncadg_ip_udp?$AA@
+ 000E:12AA ??_C@_0N@OHPK@ncacn_nb_xns?$AA@
+ 000E:12EE ??_C@_0N@PFNA@ncacn_at_dsp?$AA@
+ 000E:157A ??_C@_0O@FLAE@ClockSequence?$AA@
+ 000E:15A8 ??_C@_0O@GLEB@IPXInitialize?$AA@
+ 000E:130C ??_C@_0O@IPEE@ncacn_vns_spp?$AA@
+ 000E:14DC ??_C@_0O@JAOA@TRANSPORTLOAD?$AA@
+ 000E:165E ??_C@_0O@LDIE@c?3?2RpcReg?4dat?$AA@
+ 000E:128A ??_C@_0P@MCIL@ncacn_dnet_nsp?$AA@
+ 000E:1250 ??_C@_0P@OKDC@?2pipe?2epmapper?$AA@
+ 000A:7AF8 ??_GBINDING_HANDLE@@VACPAXI@Z
+ 000A:568E ??_GDG_BINDING_HANDLE@@VACPAXI@Z
+ 000A:554A ??_GDG_CASSOCIATION@@RACPAXI@Z
+ 000A:56B0 ??_GDG_CCALL@@VACPAXI@Z
+ 000A:B5E2 ??_GOSF_BINDING_HANDLE@@VACPAXI@Z
+ 000A:B604 ??_GOSF_CCONNECTION@@VACPAXI@Z
+ 000A:7ADE ??_GSECURITY_CREDENTIALS@@RACPAXI@Z
+ 000A:D19E ??_GTRANS_CCONNECTION@@VACPAXI@Z
+ 000A:830C ?AbortConnection@OSF_BINDING_HANDLE@@RACXPAVOSF_CCONNECTION@@@Z
+ 000A:A1B8 ?AbortConnection@OSF_CCONNECTION@@RACXH@Z
+ 000A:C498 ?AcquireCredentialsForClient@SECURITY_CREDENTIALS@@RACGPEXKK@Z
+ 0000:0000 Unr ?AcquireCredentialsForServer@SECURITY_CREDENTIALS@@RACGP7CXPEXPEEKPEPEXPEG@Z0KK1@Z
+ 000A:AB04 ?ActuallyDoBinding@OSF_CASSOCIATION@@BACGPEU_RPC_SYNTAX_IDENTIFIER@@0IPEPAVOSF_CCONNECTION@@HIPAUCLIENT_AUTH_INFO@@K@Z
+ 000A:8250 ?AddActiveEntry@OSF_BINDING_HANDLE@@RACGPAVOSF_CCONNECTION@@PEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:0C76 ?AddEndpoint@DCE_BINDING@@RACXPAE@Z
+ 000A:30C0 ?AddInterface@DG_CASSOCIATION@@RACHPEXPEVRPC_UUID@@@Z
+ 000A:3A3C ?AfterSendReceive@DG_CCALL@@BACGPEU_RPC_MESSAGE@@G@Z
+ 000A:2E82 ?AllocateCCall@DG_CASSOCIATION@@RACGPEPAVDG_CCALL@@PAUCLIENT_AUTH_INFO@@@Z
+ 000A:8178 ?AllocateConnection@OSF_BINDING_HANDLE@@RACGPEPAVOSF_CCONNECTION@@PEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:AF40 ?AllocateConnection@OSF_CASSOCIATION@@RACGPEU_RPC_CLIENT_INTERFACE@@PEPAVOSF_CCONNECTION@@IPAUCLIENT_AUTH_INFO@@@Z
+ 000A:0282 ?AllocateEmptyString@@ZAPAEXZ
+ 000A:09C2 ?AllocateEmptyStringPAPI@@ZAPEEXZ
+ 000A:379A ?AllocateEndpoint@DG_ENDPOINT_MANAGER@@RACPAUENDPOINT@@XZ
+ 000A:6AFA ?AllocateLargeBuffer@@ZAPEDI@Z
+ 000A:69AA ?AllocatePacket@DG_PACKET@@TAPEV1@I@Z
+ 000A:622E ?AssembleBufferFromPackets@DG_PACKET_ENGINE@@RACGPEU_RPC_MESSAGE@@PAVCONNECTION@@@Z
+ 000E:038A ?AvailableProviders@@3KA
+ 000A:3942 ?BeforeSendReceive@DG_CCALL@@BACGPEU_RPC_MESSAGE@@@Z
+ 000A:2B1A ?BindingCopy@DG_BINDING_HANDLE@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:73C8 ?BindingCopy@MESSAGE_OBJECT@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:7F34 ?BindingCopy@OSF_BINDING_HANDLE@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:9C10 ?BindingCopy@OSF_CCONNECTION@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:29C8 ?BindingFree@DG_BINDING_HANDLE@@VACGXZ
+ 000A:8034 ?BindingFree@OSF_BINDING_HANDLE@@VACGXZ
+ 000A:2AD8 ?BindingReset@DG_BINDING_HANDLE@@VACGXZ
+ 000A:80C4 ?BindingReset@OSF_BINDING_HANDLE@@VACGXZ
+ 000A:34D4 ?BuildNcaPacketHeader@DG_CCALL@@BACXPEU_NCA_PACKET_HEADER@@PEU_RPC_MESSAGE@@@Z
+ 000A:6846 ?ByteSwapFackBody0@@ZAXPEUFACK_BODY_VER_0@@@Z
+ 000A:66E6 ?ByteSwapPacketHeader@@ZAXPEVDG_PACKET@@@Z
+ 000A:B7A2 ?ByteSwapSyntaxId@@ZAXPEUp_syntax_id_t@@@Z
+ 000B:8646 ?CheckIfMtrtHeapInitialized@@ZAGXZ
+ 000A:391E ?CleanupDgTransports@@ZAXXZ
+ 000A:38CE ?CleanupForThisTask@DG_ENDPOINT_MANAGER@@RACXXZ
+ 000A:597A ?CleanupReceiveWindow@DG_PACKET_ENGINE@@RACXXZ
+ 000E:018E ?ClientGlobalsInitialized@@3HA
+ 000A:0DAE ?Compare@DCE_BINDING@@RACHPAV1@@Z
+ 000A:303A ?ComparePartialBinding@DG_CASSOCIATION@@RACHPAVDG_BINDING_HANDLE@@PEX@Z
+ 000A:52A6 ?CompareWithBinding@DG_CASSOCIATION@@RACHPAVDG_BINDING_HANDLE@@@Z
+ 000A:B24A ?CompareWithDceBinding@OSF_CASSOCIATION@@RACHPAVDCE_BINDING@@@Z
+ 000A:C5F6 ?CompleteSecurityToken@SECURITY_CONTEXT@@RACGPEU_SecBufferDesc@@@Z
+ 000A:B626 ?ConstructPacket@@ZAXPEUrpcconn_common@@EI@Z
+ 000A:9D08 ?ConstructPContextList@@ZAXPEUp_cont_list_t@@PEU_RPC_SYNTAX_IDENTIFIER@@1IE@Z
+ 000A:BA30 ?ConvertFromString@RPC_UUID@@RECHPEE@Z
+ 000A:B85A ?ConvertStringEbcdicToAscii@@ZAXPAE@Z
+ 000A:BD50 ?ConvertToString@RPC_UUID@@RECPEEPEE@Z
+ 000A:D940 ?CookupNodeId@@ZCGPEE@Z
+ 000A:0B70 ?CreateBindingHandle@DCE_BINDING@@RACPAVBINDING_HANDLE@@PEG@Z
+ 000A:7CE2 ?CurrentTimeInSeconds@@ZAKXZ
+ 000A:4E64 ?DealWithAuthCallback@DG_CCALL@@BACGPEXJ0JPEJ@Z
+ 000A:45D6 ?DealWithFack@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:47F6 ?DealWithFault@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:479C ?DealWithNocall@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:4960 ?DealWithQuack@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:43DA ?DealWithRequest@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:4678 ?DealWithResponse@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:46FA ?DealWithWorking@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:3880 ?DecrementReferenceCount@DG_ENDPOINT_MANAGER@@RACXXZ
+ 000E:0338 ?DefaultConnectionBufferLength@@3IA
+ 000E:0336 ?DefaultMaxDatagramLength@@3IA
+ 000A:54AE ?Delete@INTERFACE_AND_OBJECT_LIST@@RACHPEXPEVRPC_UUID@@@Z
+ 000B:C21A ?Delete@SIMPLE_DICT2@@RECPEXPEX@Z
+ 000A:C06C ?Delete@SIMPLE_DICT@@RACPAXH@Z
+ 0000:0000 Unr ?DeleteItemByBruteForce@SIMPLE_DICT@@RACPAXPAX@Z
+ 000A:2672 ?DgCreateBindingHandle@@ZAPAVBINDING_HANDLE@@XZ
+ 000A:2C4A ?DisassociateFromServer@DG_BINDING_HANDLE@@RACXXZ
+ 000A:782C ?DispatchCallback@@ZAGPEURPC_DISPATCH_TABLE@@PEU_RPC_MESSAGE@@PEG@Z
+ 000A:B550 ?DoConnectionCleanup@OSF_CCONNECTION@@BACXPEU_RPC_MESSAGE@@PEXGHH@Z
+ 000A:0E72 ?DuplicateDceBinding@DCE_BINDING@@RACPAV1@XZ
+ 000A:0000 ?DuplicateString@@ZAPAEPEE@Z
+ 000A:09E4 ?DuplicateStringPAPI@@ZAPEEPAE@Z
+ 000A:9332 ?EatAuthInfoFromPacket@OSF_CCONNECTION@@BACGPEUrpcconn_request@@PEI@Z
+ 000E:04B0 ?ebcdic_to_ascii@@3QEEE
+ 000A:7CD8 ?EnableGarbageCollection@@ZAGXZ
+ 000E:036A ?EnableGc@@3IA
+ 000A:0B04 ?EndpointCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000E:1C14 ?EpmDict@@3PAVDG_ENDPOINT_MANAGER_DICT@@A
+ 000E:0380 ?FailedToLoad@@3HA
+ 000A:5442 ?Find@INTERFACE_AND_OBJECT_LIST@@RACHPEXPEVRPC_UUID@@@Z
+ 000B:C278 ?Find@SIMPLE_DICT2@@RECPEXPEX@Z
+ 0000:0000 Unr ?Find@SIMPLE_DICT@@RACPAXH@Z
+ 000A:B27C ?FindIdleConnection@OSF_CASSOCIATION@@RACPAVOSF_CCONNECTION@@KK@Z
+ 000A:B18E ?FindOrCreateAssociation@@ZAPAVOSF_CASSOCIATION@@PAVDCE_BINDING@@PAU_RPC_CLIENT_TRANSPORT_INFO@@@Z
+ 000A:AEA0 ?FindOrCreateOsfBinding@OSF_CASSOCIATION@@RACPAVOSF_BINDING@@PEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:C17A ?FindSecurityPackage@@ZAGKKPEI0@Z
+ 0000:0000 Unr ?FlushPacketLists@DG_PACKET@@TAXXZ
+ 000A:7810 ?FreeBuffer@BINDING_HANDLE@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:334E ?FreeBuffer@DG_CCALL@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:9B0C ?FreeBuffer@OSF_CCONNECTION@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:2F68 ?FreeCall@DG_CASSOCIATION@@RACXPAVDG_CCALL@@@Z
+ 000A:82B4 ?FreeConnection@OSF_BINDING_HANDLE@@RACXPAVOSF_CCONNECTION@@@Z
+ 000A:B0C8 ?FreeConnection@OSF_CASSOCIATION@@RACHPAVOSF_CCONNECTION@@@Z
+ 000A:A19A ?FreeConnection@OSF_CCONNECTION@@RACXXZ
+ 000A:C55A ?FreeCredentials@SECURITY_CREDENTIALS@@RACXXZ
+ 000A:34B6 ?FreeEndpoint@DG_CCALL@@BACXXZ
+ 000A:33A6 ?FreeInParms@DG_CCALL@@BACXPEU_RPC_MESSAGE@@@Z
+ 000A:55F4 ?FreeLargeBuffer@@ZAXPEX@Z
+ 000A:6A48 ?FreePacket@DG_PACKET@@TAXPEV1@@Z
+ 000A:3390 ?FreePipeBuffer@DG_CCALL@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:556C ?FreePipeBuffer@MESSAGE_OBJECT@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:9B48 ?FreePipeBuffer@OSF_CCONNECTION@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:D224 ?FromHexString@ULong64@@RECXPED@Z
+ 000A:7CA2 ?GarbageCollectionNeeded@@ZAXK@Z
+ 000E:0368 ?GcTimerStarted@@3IA
+ 000B:8C62 ?GetAllocContext@@ZAPEU_ALLOCATION_CONTEXT@@XZ
+ 000B:8CD4 ?GetAllocContextNoCreate@@ZAPEU_ALLOCATION_CONTEXT@@XZ
+ 000A:27C6 ?GetBuffer@DG_BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:32EA ?GetBuffer@DG_CCALL@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:7DD2 ?GetBuffer@OSF_BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:9A78 ?GetBuffer@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:9ADA ?GetBufferDo@OSF_CCONNECTION@@RACGIPEPEX@Z
+ 000B:864A ?GetCreateAllocationContext@@ZAPEU_ALLOCATION_CONTEXT@@XZ
+ 000A:D0FA ?GetLoadedClientTransportInfoFromId@@ZAPEU_RPC_CLIENT_TRANSPORT_INFO@@G@Z
+ 000A:D9E8 ?GetNodeId@@ZCGPEE@Z
+ 000A:BEE0 ?HashUuid@RPC_UUID@@RECGXZ
+ 000A:386E ?IncrementReferenceCount@DG_ENDPOINT_MANAGER@@RACXXZ
+ 000A:4CB2 ?InitErrorPacket@DG_CCALL@@BACXPEU_NCA_PACKET_HEADER@@EG@Z
+ 000A:6978 ?Initialize@DG_PACKET@@TAGXZ
+ 000A:C700 ?InitializeFirstTime@CSECURITY_CONTEXT@@RACGPAVSECURITY_CREDENTIALS@@PAEKPEU_SecBufferDesc@@@Z
+ 000A:4F82 ?InitializeFirstTime@DG_SECURITY_CONTEXT@@RACGPAVSECURITY_CREDENTIALS@@PAEKPEU_SecBufferDesc@@@Z
+ 000A:D136 ?InitializeLoadableTransportClient@@ZAHXZ
+ 000A:5096 ?InitializeOnCallback@DG_SECURITY_CONTEXT@@RACGKPEU_SecBufferDesc@@0@Z
+ 000A:25D0 ?InitializeRpcProtocolDgClient@@ZAHXZ
+ 000A:B34C ?InitializeRpcProtocolOfsClient@@ZAHXZ
+ 000A:4D0A ?InitializeSecurityContextA@DG_CCALL@@BACGXZ
+ 000A:C830 ?InitializeThirdLeg@CSECURITY_CONTEXT@@RACGKPEU_SecBufferDesc@@0@Z
+ 000A:781A ?InqConnectionParameter@BINDING_HANDLE@@VACGIPEK@Z
+ 000A:5276 ?InqConnectionParameter@DG_BINDING_HANDLE@@VACGIPEK@Z
+ 000A:55B2 ?InquireAuthInformation@BINDING_HANDLE@@VACPAUCLIENT_AUTH_INFO@@XZ
+ 000A:77A8 ?InquireDynamicEndpoint@BINDING_HANDLE@@VACGPEPEE@Z
+ 000A:76BE ?InquireEntryName@BINDING_HANDLE@@RACGKPEPEE@Z
+ 000A:7632 ?InquireObjectUuid@BINDING_HANDLE@@RACXPEVRPC_UUID@@@Z
+ 000A:5610 ?InquireTransportType@DG_BINDING_HANDLE@@VACGPEI@Z
+ 000A:B53E ?InquireTransportType@OSF_BINDING_HANDLE@@VACGPEI@Z
+ 000A:0F94 ?Insert@BITSET@@RACHH@Z
+ 000A:53BE ?Insert@INTERFACE_AND_OBJECT_LIST@@RACHPEXPEVRPC_UUID@@@Z
+ 000B:C062 ?Insert@SIMPLE_DICT2@@RECHPEX0@Z
+ 000A:BFCC ?Insert@SIMPLE_DICT@@RACHPAX@Z
+ 000A:C134 ?InsureSecuritySupportLoaded@@ZAGXZ
+ 000A:7396 ?InvalidHandle@GENERIC_OBJECT@@RACIG@Z
+ 0000:0000 Unr ?IsAuthenticationServiceSupported@@ZAGK@Z
+ 000A:BEA2 ?IsNullUuid@RPC_UUID@@RECHXZ
+ 000A:0EEE ?IsRpcProtocolSequenceSupported@@ZAGPEE@Z
+ 000A:7496 ?IsSupportedAuthInfo@CLIENT_AUTH_INFO@@RACHPAU1@@Z
+ 000E:0010 ?LeaveSomeRoom@@3QADA
+ 000A:CDF0 ?LoadableTransportClientInfo@@ZAPAU_RPC_CLIENT_TRANSPORT_INFO@@PAEPEEPEG@Z
+ 000E:1C78 ?LoadedLoadableTransports@@3PAVCLIENT_LOADABLE_TRANSPORT_DICT@@A
+ 000E:0386 ?LoadedProviders@@3KA
+ 000A:DB4A ?LoadUuidValues@@ZCGPEVULong64@@PEK@Z
+ 000A:0ECE ?MakePartiallyBound@DCE_BINDING@@RACXXZ
+ 000A:77EA ?MapAuthenticationLevel@BINDING_HANDLE@@VACKK@Z
+ 000A:2C9A ?MapAuthenticationLevel@DG_BINDING_HANDLE@@VACKK@Z
+ 000A:8124 ?MapAuthenticationLevel@OSF_BINDING_HANDLE@@VACKK@Z
+ 0002:00B4 ?MapFromNcaStatusCode@@ZAGK@Z
+ 0002:0000 ?MapToNcaStatusCode@@ZAKG@Z
+ 000A:A39C ?MaybeDo3rdLegAuth@OSF_CCONNECTION@@RACGPEXI@Z
+ 000A:3F82 ?MaybeSendReceive@DG_CCALL@@BACGPEU_RPC_MESSAGE@@@Z
+ 000A:102E ?MemberP@BITSET@@RACHH@Z
+ 000B:A5F4 ?NdrMesTypeFree@@ZCXPAXPFU_MIDL_STUB_DESC@@PFEPEX@Z
+ 000B:952A ?NdrpAllocPicklingBuffer@@ZAXPEU_MIDL_ES_MESSAGE@@I@Z
+ 000B:A0F8 ?NdrpCommonTypeHeaderMarshall@@ZAIPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:9FBA ?NdrpCommonTypeHeaderSize@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:A2F0 ?NdrpCommonTypeHeaderUnmarshall@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:998E ?NdrpDataBufferInit@@ZAXPEU_MIDL_ES_MESSAGE@@PFE@Z
+ 000B:8EB4 ?NdrpHandleAllocate@@ZAGPEPAX@Z
+ 000A:F7D0 ?NdrpLongByteSwap@@ZCXPEX0@Z
+ 000B:970A ?NdrpProcHeaderMarshall@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:9840 ?NdrpProcHeaderUnmarshall@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:965C ?NdrpReadPicklingBuffer@@ZAXPEU_MIDL_ES_MESSAGE@@I@Z
+ 000B:96BA ?NdrpWritePicklingBuffer@@ZAXPEU_MIDL_ES_MESSAGE@@PEEI@Z
+ 000A:0ACE ?NetworkAddressCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:57E6 ?NewCall@DG_PACKET_ENGINE@@RACXXZ
+ 000A:C09E ?Next@SIMPLE_DICT@@RACPAXXZ
+ 000A:A7BE ?NotifyConnectionClosed@OSF_CASSOCIATION@@RACXXZ
+ 000E:0382 ?NumberOfProviders@@3KA
+ 000A:0A44 ?ObjectUuidCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:2FF4 ?OptionalStringsEqual@@ZAHPEE0@Z
+ 000A:0B3A ?OptionsCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:B378 ?OsfClientMapRpcProtocolSequence@@ZAPAXPEEPEG@Z
+ 000A:B3D6 ?OsfCreateBindingHandle@@ZAPAVBINDING_HANDLE@@XZ
+ 000A:B2EA ?OsfDeleteIdleConnections@@ZAXXZ
+ 000E:1C28 ?PacketListMutex@DG_PACKET@@0PAVMUTEX@@A
+ 000E:1C2A ?PacketLists@DG_PACKET@@0QAUPACKET_LIST@1@A
+ 000E:01A0 ?PacketToRpcFlagsArray@@3QBIB
+ 000A:01C6 ?ParseAndCopyEndpointField@@ZAGPAPAEPEE@Z
+ 000E:021A ?PartialRetries@@3KA
+ 000A:78E0 ?PerformGarbageCollection@@ZAXXZ
+ 000A:AA7A ?PingServer@OSF_CASSOCIATION@@RACGXZ
+ 000A:9D76 ?PingServer@OSF_CCONNECTION@@RACGXZ
+ 000A:29EA ?PrepareBindingHandle@DG_BINDING_HANDLE@@VACXPAXPAVDCE_BINDING@@@Z
+ 000A:8056 ?PrepareBindingHandle@OSF_BINDING_HANDLE@@VACXPAXPAVDCE_BINDING@@@Z
+ 000A:A7D6 ?ProcessBindAckOrNak@OSF_CASSOCIATION@@BACGPEUrpcconn_common@@IPAVOSF_CCONNECTION@@@Z
+ 000E:038E ?ProviderList@@3PEUSECURITY_PROVIDER_INFO@@E
+ 0000:0000 Unr ?PurgeAmbiguousActivities@DG_CASSOCIATION@@RACXXZ
+ 000A:3404 ?ReallocPipeBuffer@DG_CCALL@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:5570 ?ReallocPipeBuffer@MESSAGE_OBJECT@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:9B6A ?ReallocPipeBuffer@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000E:021E ?ReallyTooBusy@@3KA
+ 000A:58BC ?RecalcPduSize@DG_PACKET_ENGINE@@RACXXZ
+ 000A:780A ?Receive@BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:7826 ?Receive@CONNECTION@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:4062 ?Receive@DG_CCALL@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:8576 ?Receive@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:89B2 ?ReceiveMessage@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@PEII1@Z
+ 000A:9660 ?ReceiveNextChunk@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@IH@Z
+ 000A:94D8 ?ReceiveRequestOrResponse@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@I@Z
+ 000A:73CE ?ReferenceCredentials@CLIENT_AUTH_INFO@@RACXXZ
+ 000A:832C ?RemoveActiveConnection@OSF_BINDING_HANDLE@@RACXPAVOSF_CCONNECTION@@@Z
+ 000A:30E0 ?RemoveInterface@DG_CASSOCIATION@@RACHPEXPEVRPC_UUID@@@Z
+ 000A:2AA4 ?ResolveBinding@DG_BINDING_HANDLE@@VACGPEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:8144 ?ResolveBinding@OSF_BINDING_HANDLE@@VACGPEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:0C98 ?ResolveEndpointIfNecessary@DCE_BINDING@@RACGPEU_RPC_CLIENT_INTERFACE@@PEVRPC_UUID@@PEPEXHI@Z
+ 000E:0340 ?RpcClientNcacnMap@@3QAU_PROTSEQ_MAP@@A
+ 0000:0000 Unr ?RpcConfigInquireProtocolSequences@@ZAGPEPEU_RPC_PROTSEQ_VECTOR@@@Z
+ 000A:7BF8 ?RpcConfigMapRpcProtocolSequence@@ZAGIPEEPEPAE@Z
+ 000A:7D0E ?RpcGetAdditionalTransportInfo@@ZAGKPEPEE@Z
+ 000A:7D12 ?RpcGetSecurityProviderInfo@@ZAGKPEPAEPEK@Z
+ 000A:0A98 ?RpcProtocolSequenceCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000D:0000 ?RpcSsDefaults@@3U_MALLOC_FREE_STRUCT@@E
+ 000E:0190 ?RpcToPacketFlagsArray@@3QBIB
+ 000A:DC50 ?SaveUuidValues@@ZCGPEVULong64@@PEK@Z
+ 000A:4974 ?SealAndSendPacket@DG_CCALL@@FACGPEU_NCA_PACKET_HEADER@@@Z
+ 000E:1C6C ?SecurityCritSect@@3PAVMUTEX@@A
+ 000E:037E ?SecuritySupportLoaded@@3HA
+ 000A:7804 ?Send@BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:7820 ?Send@CONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:3D68 ?Send@DG_CCALL@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:8358 ?Send@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:3576 ?SendAck@DG_CCALL@@RACXXZ
+ 0000:0000 Unr ?SendAlert@OSF_CCONNECTION@@RACXXZ
+ 000A:9D88 ?SendBindPacket@OSF_CCONNECTION@@RACGPEU_RPC_SYNTAX_IDENTIFIER@@0IEKEPEPEXPEI@Z
+ 000A:60C4 ?SendFack@DG_PACKET_ENGINE@@RACGPEVDG_PACKET@@@Z
+ 000A:9A18 ?SendFault@OSF_CCONNECTION@@BACXGH@Z
+ 000A:5AE4 ?SendFragment@DG_PACKET_ENGINE@@RACGIEH@Z
+ 000A:9040 ?SendFragment@OSF_CCONNECTION@@BACGPEUrpcconn_common@@IIIIIPEEPEPEXPEI@Z
+ 000A:83A6 ?SendNextChunk@OSF_CCONNECTION@@RACGPEU_RPC_MESSAGE@@@Z
+ 0000:0000 Unr ?SendOrphan@OSF_CCONNECTION@@RACXXZ
+ 000A:5622 ?SendPing@DG_CCALL@@BACGXZ
+ 000A:48D0 ?SendQuit@DG_CCALL@@BACGXZ
+ 000A:77FE ?SendReceive@BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:3BC0 ?SendReceive@DG_CCALL@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:8652 ?SendReceive@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:3BD8 ?SendReceiveRecur@DG_CCALL@@BACGPEU_RPC_MESSAGE@@E@Z
+ 000A:868A ?SendReceiveRecur@OSF_CCONNECTION@@RACGPEU_RPC_MESSAGE@@I@Z
+ 000A:3D80 ?SendRecur@DG_CCALL@@BACGPEU_RPC_MESSAGE@@E@Z
+ 000A:83EC ?SendRecur@OSF_CCONNECTION@@RACGPEU_RPC_MESSAGE@@I@Z
+ 000A:8D5A ?SendRequestOrResponse@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@EPEVRPC_UUID@@H@Z
+ 000A:59CA ?SendSomeFragments@DG_PACKET_ENGINE@@RACGE@Z
+ 000A:52C4 ?SendSomething@DG_CCALL@@BACGXZ
+ 000B:8D04 ?SetAllocContext@@ZAXPEU_ALLOCATION_CONTEXT@@@Z
+ 000A:793C ?SetAuthInformation@BINDING_HANDLE@@VACGPEEKKPEXKPAVSECURITY_CREDENTIALS@@@Z
+ 0000:0000 Unr ?SetAuthInformation@OSF_CCONNECTION@@RACGPAUCLIENT_AUTH_INFO@@@Z
+ 000A:76A0 ?SetComTimeout@BINDING_HANDLE@@RACGI@Z
+ 000A:7814 ?SetConnectionParameter@BINDING_HANDLE@@VACGIK@Z
+ 000A:51EE ?SetConnectionParameter@DG_BINDING_HANDLE@@VACGIK@Z
+ 000A:7760 ?SetEntryName@BINDING_HANDLE@@RACGKPEE@Z
+ 000A:6664 ?SetFragmentLengths@DG_PACKET_ENGINE@@RACXPAVSECURITY_CONTEXT@@@Z
+ 000A:A172 ?SetMaxFrag@OSF_CCONNECTION@@RACXGG@Z
+ 000A:C57A ?SetMaximumLengths@SECURITY_CONTEXT@@RACXXZ
+ 000A:764E ?SetObjectUuid@BINDING_HANDLE@@RACXPEVRPC_UUID@@@Z
+ 000A:77BC ?SetServerPrincipalName@BINDING_HANDLE@@VACHPEE@Z
+ 000A:BBC6 ?SetToNullUuid@RPC_UUID@@RECXXZ
+ 000A:5848 ?SetupSendWindow@DG_PACKET_ENGINE@@RACXPEU_RPC_MESSAGE@@@Z
+ 000A:B11A ?ShutdownRequested@OSF_CASSOCIATION@@RACXXZ
+ 000A:512C ?SignOrSeal@DG_SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 000A:C646 ?SignOrSeal@SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 000A:40DC ?SingleSendReceive@DG_CCALL@@BACGXZ
+ 000A:07AC ?StringBindingCompose@DCE_BINDING@@RACPEEPEVRPC_UUID@@@Z
+ 000A:0162 ?StringCharSearchWithEscape@@ZAPEEPEEI@Z
+ 000A:0742 ?StringCopyEscapeCharacters@@ZAPEEPEE0@Z
+ 000A:018E ?StringCopyWithEscape@@ZAXPEE0@Z
+ 000A:0700 ?StringLengthWithEscape@@ZAHPEE@Z
+ 000E:1BFA ?ThreadStatic@@3VTHREAD@@A
+ 000A:D1C0 ?ToHexString@ULong64@@RECPEDPED@Z
+ 000A:2A52 ?ToStringBinding@DG_BINDING_HANDLE@@VACGPEPEE@Z
+ 000A:2FC4 ?ToStringBinding@DG_CASSOCIATION@@VACGPEPEEPEVRPC_UUID@@@Z
+ 000A:8072 ?ToStringBinding@OSF_BINDING_HANDLE@@VACGPEPEE@Z
+ 000A:B15E ?ToStringBinding@OSF_CASSOCIATION@@VACGPEPEEPEVRPC_UUID@@@Z
+ 000A:9CC0 ?TransFreeBuffer@OSF_CCONNECTION@@VACXPEX@Z
+ 000A:9C3A ?TransGetBuffer@OSF_CCONNECTION@@VACGPEPEXI@Z
+ 000A:CD00 ?TransMaximumSend@TRANS_CCONNECTION@@VACIXZ
+ 000A:C978 ?TransReceive@TRANS_CCONNECTION@@VACGPEPEXPEI@Z
+ 000A:CA4A ?TransSend@TRANS_CCONNECTION@@VACGPEXI@Z
+ 000A:CA92 ?TransSendReceive@TRANS_CCONNECTION@@VACGPEXIPEPEXPEI@Z
+ 000A:B5DC ?TransSendReceiveWithTimeout@OSF_CCONNECTION@@VACGPEXIPEPEXPEIK@Z
+ 000A:CB8A ?TransSendReceiveWithTimeout@TRANS_CCONNECTION@@VACGPEXIPEPEXPEIK@Z
+ 000A:CA10 ?TransSetTimeout@TRANS_CCONNECTION@@VACGJ@Z
+ 000A:77F8 ?Type@BINDING_HANDLE@@VACGXZ
+ 000A:7524 ?Type@CCONNECTION@@VACGXZ
+ 000A:AE6E ?UnBind@OSF_CASSOCIATION@@RACXXZ
+ 000A:26BA ?UpdateAssociationWithAddress@DG_CASSOCIATION@@RACPEXPEX@Z
+ 000A:5DAE ?UpdateReceiveWindow@DG_PACKET_ENGINE@@RACHPEVDG_PACKET@@@Z
+ 000A:5C60 ?UpdateSendWindow@DG_PACKET_ENGINE@@RACXPEVDG_PACKET@@PAVSECURITY_CONTEXT@@PAVDG_ASSOCIATION@@@Z
+ 000E:1BFC ?UuidCachedValues@@3U_UUID_CACHED_VALUES_STRUCT@@A
+ 000A:DCFA ?UuidGetValues@@ZCGPEU_UUID_CACHED_VALUES_STRUCT@@@Z
+ 000A:DAB2 ?UuidTime@@ZCXPEVULong64@@@Z
+ 000A:B668 ?ValidatePacket@@ZAGPEUrpcconn_common@@I@Z
+ 000A:C69A ?VerifyOrUnseal@SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 0000:0000 Unr ?VerifyOrUnSealPacket@DG_SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 000A:5180 ?VerifyPacket@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:648C ?VerifySecurePacket@@ZAGPEVDG_PACKET@@PAVSECURITY_CONTEXT@@@Z
+ 000E:182E ?__MIDLFormatString@@3U_MIDL_FORMAT_STRING@@F
+ 000A:7010 BINDTOEPMAPPER
+ 000A:F73E CHAR_ARRAY_FROM_NDR
+ 000A:F6FA CHAR_FROM_NDR
+ 000A:75F2 CLOSEBINDINGS
+ 000A:1458 CONV_CONV_ARE_YOU_THERE
+ 000A:11C0 CONV_CONV_WHO_ARE_YOU
+ 000A:12F2 CONV_CONV_WHO_ARE_YOU2
+ 000A:1570 CONV_CONV_WHO_ARE_YOU_AUTH
+ 0000:0000 Imp CREATEDIALOG (USER.89)
+ 0000:0000 Imp CREATEDIALOGINDIRECT (USER.219)
+ 000A:E2FC CREATEYIELDINFO
+ 000B:0000 DATA_FROM_NDR
+ 000B:0768 DATA_INTO_NDR
+ 000B:0E68 DATA_SIZE_NDR
+ 000A:E322 DELETEYIELDINFO
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 000A:FAF6 DOUBLE_ARRAY_FROM_NDR
+ 000A:FA0A DOUBLE_FROM_NDR
+ 000B:1AD0 ENUM_FROM_NDR
+ 000A:70E6 EPFREELOOKUPHANDLE
+ 000A:6F96 EPGETEPMAPPERENDPOINT
+ 000A:6B8E EPRESOLVEENDPOINT
+ 000A:E126 EXCEPTIONCLEANUP
+ 0002:03E8 EXPLODEPREDEFINEDTOWERS
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0000:FE32 Abs FIARQQ
+ 0000:0E32 Abs FICRQQ
+ 0000:5C32 Abs FIDRQQ
+ 0000:1632 Abs FIERQQ
+ 0000:0632 Abs FISRQQ
+ 0000:A23D Abs FIWRQQ
+ 0000:4000 Abs FJARQQ
+ 0000:C000 Abs FJCRQQ
+ 0000:8000 Abs FJSRQQ
+ 000A:F8F4 FLOAT_ARRAY_FROM_NDR
+ 000A:F83E FLOAT_FROM_NDR
+ 0000:0000 Imp FREELIBRARY (KERNEL.96)
+ 000A:7C98 GARBAGECOLLECTIONTIMER
+ 0000:0000 Imp GETCURRENTTASK (KERNEL.36)
+ 0000:0000 Imp GETCURRENTTIME (USER.15)
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0002:0362 GETNWSTYLENAME
+ 0000:0000 Imp GETPARENT (USER.46)
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0000:0000 Imp GETPROFILESTRING (KERNEL.58)
+ 0000:0000 Imp GETSYSTEMMETRICS (USER.179)
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp GETWINDOWRECT (USER.32)
+ 0000:0000 Imp GETWINDOWWORD (USER.133)
+ 0000:0000 Imp GETWINFLAGS (KERNEL.132)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp GLOBALHANDLETOSEL (TOOLHELP.50)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 000B:1C78 HYPER_ARRAY_FROM_NDR
+ 000B:1B42 HYPER_FROM_NDR
+ 000B:1DDA HYPER_FROM_NDR_TEMP
+ 000A:78E6 INITIALIZECLIENTDLL
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0000:0000 Imp ISDIALOGMESSAGE (USER.90)
+ 0000:0000 Imp ISWINDOWVISIBLE (USER.49)
+ 000B:8F00 I_NDRMESMESSAGEINIT
+ 000A:1144 I_RPCALLOCATE
+ 000A:189A I_RPCBINDINGCOPY
+ 000A:1D70 I_RPCBINDINGINQTRANSPORTTYPE
+ 000A:115A I_RPCFREE
+ 000A:10CE I_RPCFREEBUFFER
+ 000A:10F4 I_RPCFREEPIPEBUFFER
+ 000A:106C I_RPCGETBUFFER
+ 000A:1E6E I_RPCIFINQTRANSFERSYNTAXES
+ 000A:1B16 I_RPCNSBINDINGSETENTRYNAME
+ 000A:1174 I_RPCPAUSEEXECUTION
+ 000A:111A I_RPCREALLOCPIPEBUFFER
+ 000A:7D76 I_RPCRECEIVE
+ 000A:7D52 I_RPCSEND
+ 000A:7D2E I_RPCSENDRECEIVE
+ 000A:119C I_RPCTIMECHARGE
+ 000A:11AA I_RPCTIMEGET
+ 000A:1190 I_RPCTIMERESET
+ 000A:CD94 I_RPCTRANSCLIENTMAXFRAG
+ 000A:CD12 I_RPCTRANSCLIENTREALLOCBUFFER
+ 000A:CDAA I_RPCTRANSPINGSERVER
+ 000A:E6FE I_RPCWINASYNCCALLBEGIN
+ 000C:0000 I_RPCWINASYNCCALLCOMPLETE
+ 000A:EB04 I_RPCWINASYNCCALLEND
+ 000A:E794 I_RPCWINASYNCCALLWAIT
+ 000A:E522 I_RPCWINCALLINPROGRESS
+ 000A:EB72 I_RPCWINISTASKYIELDING
+ 000A:E68A I_RPCWINSETTASKYIELDING
+ 000A:E434 I_RPCYIELDDIALOGFUNCTION
+ 000A:21DE I_UUIDCREATE
+ 0000:0000 Imp KILLTIMER (USER.12)
+ 000A:6B36 LIBMAIN
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Imp LOCALALLOC (KERNEL.5)
+ 0000:0000 Imp LOCALFREE (KERNEL.7)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp LOCALREALLOC (KERNEL.6)
+ 0000:0000 Imp LOCALSIZE (KERNEL.10)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 000B:1926 LONG_ARRAY_FROM_NDR
+ 000B:1878 LONG_FROM_NDR
+ 000B:1A26 LONG_FROM_NDR_TEMP
+ 0000:0000 Imp LSTRCMPI (USER.471)
+ 0000:0000 Imp LSTRLEN (KERNEL.90)
+ 000B:92CE MESBUFFERHANDLERESET
+ 000B:922C MESDECODEBUFFERHANDLECREATE
+ 000B:8FA0 MESDECODEINCREMENTALHANDLECREATE
+ 000B:91B0 MESENCODEDYNBUFFERHANDLECREATE
+ 000B:9126 MESENCODEFIXEDBUFFERHANDLECREATE
+ 000B:8F32 MESENCODEINCREMENTALHANDLECREATE
+ 000B:8EE2 MESHANDLEFREE
+ 000B:900C MESINCREMENTALHANDLERESET
+ 000B:9462 MESINQPROCENCODINGID
+ 0000:0000 Imp MESSAGEBOX (USER.1)
+ 000A:71A4 MIDL_USER_ALLOCATE
+ 000A:71BA MIDL_USER_FREE
+ 000A:F6C4 MIDL_WCHAR_STRCPY
+ 000A:F698 MIDL_WCHAR_STRLEN
+ 000B:4782 NDRALLOCATE
+ 000B:6E58 NDRBYTECOUNTPOINTERBUFFERSIZE
+ 000B:5450 NDRBYTECOUNTPOINTERFREE
+ 000B:32CE NDRBYTECOUNTPOINTERMARSHALL
+ 0008:21E8 NDRBYTECOUNTPOINTERUNMARSHALL
+ 000A:F378 NDRCCONTEXTBINDING
+ 000A:F3B4 NDRCCONTEXTMARSHALL
+ 000A:F4F6 NDRCCONTEXTUNMARSHALL
+ 000B:7C2C NDRCLEAROUTPARAMETERS
+ 000B:362A NDRCLIENTCONTEXTMARSHALL
+ 0008:28F2 NDRCLIENTCONTEXTUNMARSHALL
+ 000B:4056 NDRCLIENTINITIALIZE
+ 000B:3FCC NDRCLIENTINITIALIZENEW
+ 000B:63CA NDRCOMPLEXARRAYBUFFERSIZE
+ 000B:4F6A NDRCOMPLEXARRAYFREE
+ 000B:29A4 NDRCOMPLEXARRAYMARSHALL
+ 0007:10CA NDRCOMPLEXARRAYMEMORYSIZE
+ 0008:16C0 NDRCOMPLEXARRAYUNMARSHALL
+ 000B:5B78 NDRCOMPLEXSTRUCTBUFFERSIZE
+ 000B:4B3A NDRCOMPLEXSTRUCTFREE
+ 0006:01F0 NDRCOMPLEXSTRUCTMARSHALL
+ 0007:0638 NDRCOMPLEXSTRUCTMEMORYSIZE
+ 0008:04AC NDRCOMPLEXSTRUCTUNMARSHALL
+ 000B:5FF4 NDRCONFORMANTARRAYBUFFERSIZE
+ 000B:4E02 NDRCONFORMANTARRAYFREE
+ 000B:2590 NDRCONFORMANTARRAYMARSHALL
+ 0007:0B58 NDRCONFORMANTARRAYMEMORYSIZE
+ 0008:0F0A NDRCONFORMANTARRAYUNMARSHALL
+ 000B:69A8 NDRCONFORMANTSTRINGBUFFERSIZE
+ 0006:074A NDRCONFORMANTSTRINGMARSHALL
+ 0007:1834 NDRCONFORMANTSTRINGMEMORYSIZE
+ 0008:0AE0 NDRCONFORMANTSTRINGUNMARSHALL
+ 000B:594C NDRCONFORMANTSTRUCTBUFFERSIZE
+ 000B:49FC NDRCONFORMANTSTRUCTFREE
+ 000B:2262 NDRCONFORMANTSTRUCTMARSHALL
+ 0007:02E6 NDRCONFORMANTSTRUCTMEMORYSIZE
+ 000B:3DF4 NDRCONFORMANTSTRUCTUNMARSHALL
+ 000B:60EE NDRCONFORMANTVARYINGARRAYBUFFERSIZE
+ 000B:4E64 NDRCONFORMANTVARYINGARRAYFREE
+ 000B:26B2 NDRCONFORMANTVARYINGARRAYMARSHALL
+ 0007:0CB6 NDRCONFORMANTVARYINGARRAYMEMORYSIZE
+ 0008:1160 NDRCONFORMANTVARYINGARRAYUNMARSHALL
+ 000B:5A04 NDRCONFORMANTVARYINGSTRUCTBUFFERSIZE
+ 000B:4A5E NDRCONFORMANTVARYINGSTRUCTFREE
+ 0006:0000 NDRCONFORMANTVARYINGSTRUCTMARSHALL
+ 0007:0442 NDRCONFORMANTVARYINGSTRUCTMEMORYSIZE
+ 0008:0000 NDRCONFORMANTVARYINGSTRUCTUNMARSHALL
+ 000B:73EC NDRCONTEXTHANDLESIZE
+ 0009:0124 NDRCONVERT
+ 0009:0000 NDRCONVERT2
+ 0005:0000 NDRCOPY
+ 000B:6B66 NDRENCAPSULATEDUNIONBUFFERSIZE
+ 000B:526C NDRENCAPSULATEDUNIONFREE
+ 000B:2FEA NDRENCAPSULATEDUNIONMARSHALL
+ 0007:19F4 NDRENCAPSULATEDUNIONMEMORYSIZE
+ 0008:1D32 NDRENCAPSULATEDUNIONUNMARSHALL
+ 000B:5F54 NDRFIXEDARRAYBUFFERSIZE
+ 000B:4DBA NDRFIXEDARRAYFREE
+ 000B:24C4 NDRFIXEDARRAYMARSHALL
+ 0007:0A60 NDRFIXEDARRAYMEMORYSIZE
+ 0008:0DAC NDRFIXEDARRAYUNMARSHALL
+ 000B:4736 NDRFREEBUFFER
+ 0008:2FDA NDRFULLPOINTERFREE
+ 0008:2F0E NDRFULLPOINTERINSERTREFID
+ 0008:2C10 NDRFULLPOINTERQUERYPOINTER
+ 0008:2E44 NDRFULLPOINTERQUERYREFID
+ 0008:2B10 NDRFULLPOINTERXLATFREE
+ 0008:2956 NDRFULLPOINTERXLATINIT
+ 000B:449E NDRGETBUFFER
+ 000B:5AE2 NDRHARDSTRUCTBUFFERSIZE
+ 000B:4AE6 NDRHARDSTRUCTFREE
+ 0006:011E NDRHARDSTRUCTMARSHALL
+ 0007:0574 NDRHARDSTRUCTMEMORYSIZE
+ 0008:02F6 NDRHARDSTRUCTUNMARSHALL
+ 000B:718E NDRINTERFACEPOINTERBUFFERSIZE
+ 000B:554C NDRINTERFACEPOINTERFREE
+ 000B:3618 NDRINTERFACEPOINTERMARSHALL
+ 0007:1F66 NDRINTERFACEPOINTERMEMORYSIZE
+ 0008:28E0 NDRINTERFACEPOINTERUNMARSHALL
+ 000B:484C NDRMAPCOMMANDFAULTSTATUS
+ 000B:B788 NDRMARSHALLHANDLE
+ 000B:A6B8 NDRMESSIMPLETYPEALIGNSIZE
+ 000B:A812 NDRMESSIMPLETYPEDECODE
+ 000B:A70A NDRMESSIMPLETYPEENCODE
+ 000B:9FF4 NDRMESTYPEALIGNSIZE
+ 000B:A3B0 NDRMESTYPEDECODE
+ 000B:A162 NDRMESTYPEENCODE
+ 000B:6878 NDRNONCONFORMANTSTRINGBUFFERSIZE
+ 0006:0652 NDRNONCONFORMANTSTRINGMARSHALL
+ 0007:1750 NDRNONCONFORMANTSTRINGMEMORYSIZE
+ 0008:099E NDRNONCONFORMANTSTRINGUNMARSHALL
+ 000B:6C28 NDRNONENCAPSULATEDUNIONBUFFERSIZE
+ 000B:531E NDRNONENCAPSULATEDUNIONFREE
+ 000B:30AE NDRNONENCAPSULATEDUNIONMARSHALL
+ 0007:1A42 NDRNONENCAPSULATEDUNIONMEMORYSIZE
+ 0008:1E50 NDRNONENCAPSULATEDUNIONUNMARSHALL
+ 000B:4592 NDRNSGETBUFFER
+ 000B:46A6 NDRNSSENDRECEIVE
+ 000B:5784 NDRPOINTERBUFFERSIZE
+ 000B:48DA NDRPOINTERFREE
+ 000B:2046 NDRPOINTERMARSHALL
+ 0007:0000 NDRPOINTERMEMORYSIZE
+ 000B:37BC NDRPOINTERUNMARSHALL
+ 0008:233E NDRPXMITORREPASPTRUNMARSHALL
+ 000B:8E48 NDRRPCSMCLIENTALLOCATE
+ 000B:8E7A NDRRPCSMCLIENTFREE
+ 000B:8DEC NDRRPCSMSETCLIENTTOOSF
+ 000B:8E18 NDRRPCSSDEFAULTALLOCATE
+ 000B:8E2E NDRRPCSSDEFAULTFREE
+ 000B:8DB8 NDRRPCSSDISABLEALLOCATE
+ 000B:8D84 NDRRPCSSENABLEALLOCATE
+ 000B:461E NDRSENDRECEIVE
+ 000B:367C NDRSERVERCONTEXTMARSHALL
+ 0008:2948 NDRSERVERCONTEXTUNMARSHALL
+ 000B:42DC NDRSERVERINITIALIZE
+ 000B:480C NDRSERVERINITIALIZEMARSHALL
+ 000B:41E6 NDRSERVERINITIALIZENEW
+ 000B:4400 NDRSERVERINITIALIZEPARTIAL
+ 000B:47E6 NDRSERVERINITIALIZEUNMARSHALL
+ 000B:58D4 NDRSIMPLESTRUCTBUFFERSIZE
+ 000B:49CC NDRSIMPLESTRUCTFREE
+ 000B:21CA NDRSIMPLESTRUCTMARSHALL
+ 0007:0218 NDRSIMPLESTRUCTMEMORYSIZE
+ 000B:3CBE NDRSIMPLESTRUCTUNMARSHALL
+ 000B:1F0C NDRSIMPLETYPEMARSHALL
+ 000B:368A NDRSIMPLETYPEUNMARSHALL
+ 000B:B81E NDRUNMARSHALLHANDLE
+ 000B:7070 NDRUSERMARSHALBUFFERSIZE
+ 000B:54E8 NDRUSERMARSHALFREE
+ 000B:3480 NDRUSERMARSHALMARSHALL
+ 0007:1E5E NDRUSERMARSHALMEMORYSIZE
+ 0009:1F50 NDRUSERMARSHALSIMPLETYPECONVERT
+ 0008:2714 NDRUSERMARSHALUNMARSHALL
+ 000B:6272 NDRVARYINGARRAYBUFFERSIZE
+ 000B:4EEC NDRVARYINGARRAYFREE
+ 000B:2850 NDRVARYINGARRAYMARSHALL
+ 0007:0ECC NDRVARYINGARRAYMEMORYSIZE
+ 0008:145C NDRVARYINGARRAYUNMARSHALL
+ 000B:6EFA NDRXMITORREPASBUFFERSIZE
+ 000B:5484 NDRXMITORREPASFREE
+ 000B:3332 NDRXMITORREPASMARSHALL
+ 0007:1D92 NDRXMITORREPASMEMORYSIZE
+ 0008:24C6 NDRXMITORREPASUNMARSHALL
+ 0000:0000 Imp NETBIOSCALL (KERNEL.103)
+ 0000:0000 Unr NETBIOSSUBMIT
+ 000A:DFAA NOTIFICATIONSTART
+ 000A:DFDA NOTIFICATIONSTOP
+ 0000:0000 Imp NOTIFYREGISTER (TOOLHELP.73)
+ 0000:0000 Imp NOTIFYUNREGISTER (TOOLHELP.74)
+ 000A:B41E OSFTOWERCONSTRUCT
+ 000A:B48A OSFTOWEREXPLODE
+ 0000:0008 Abs pAtomTable
+ 0000:0000 Imp PEEKMESSAGE (USER.109)
+ 0000:0006 Abs pLocalHeap
+ 0000:0000 Imp POSTMESSAGE (USER.110)
+ 0000:000E Abs pStackBot
+ 0000:000C Abs pStackMin
+ 0000:000A Abs pStackTop
+ 000A:1858 RPCBINDINGCOPY
+ 000A:18DC RPCBINDINGFREE
+ 000A:195A RPCBINDINGFROMSTRINGBINDING
+ 000A:1B5C RPCBINDINGINQAUTHINFO
+ 000A:1CDE RPCBINDINGINQOBJECT
+ 000A:1920 RPCBINDINGRESET
+ 000A:1C44 RPCBINDINGSETAUTHINFO
+ 000A:19D0 RPCBINDINGSETOBJECT
+ 000A:1D10 RPCBINDINGTOSTRINGBINDING
+ 000A:1A12 RPCBINDINGVECTORFREE
+ 0000:0000 Unr RPCDEBUG
+ 000A:1A90 RPCEPRESOLVEBINDING
+ 000A:E272 RpcGetExceptionHandler
+ 000A:1DA0 RPCIFINQID
+ 000A:E29C RPCLEAVEEXCEPTION
+ 000A:1F1C RPCMGMTBINDINGINQPARAMETER
+ 000A:1EE8 RPCMGMTBINDINGSETPARAMETER
+ 000A:1ED6 RPCMGMTENABLEIDLECLEANUP
+ 000A:1E10 RPCMGMTINQCOMTIMEOUT
+ 000A:1D40 RPCMGMTINQDEFAULTPROTECTLEVEL
+ 000A:1F96 RPCMGMTINQPARAMETER
+ 000A:1E40 RPCMGMTSETCOMTIMEOUT
+ 000A:1F54 RPCMGMTSETPARAMETER
+ 000A:1DF4 RPCNETWORKISPROTSEQVALID
+ 000A:1AD0 RPCNSBINDINGINQENTRYNAME
+ 000A:7B1A RPCPWINFARALLOCATE
+ 000A:7B2A RPCPWINFARFREE
+ 0003:003F RPCRAISEEXCEPTION
+ 000A:EBA2 RPCREGCLOSEKEY
+ 000A:EC00 RPCREGCREATEKEY
+ 000A:ED4A RPCREGOPENKEY
+ 000A:F106 RPCREGQUERYVALUE
+ 000A:EE76 RPCREGSETVALUE
+ 0003:0000 RPCSETEXCEPTION
+ 000A:E15C RpcSetExceptionHandler
+ 000B:89C0 RPCSMALLOCATE
+ 000B:8A12 RPCSMCLIENTFREE
+ 000B:8A82 RPCSMDESTROYCLIENTCONTEXT
+ 000B:8A4E RPCSMDISABLEALLOCATE
+ 000B:8ABE RPCSMENABLEALLOCATE
+ 000B:8AF2 RPCSMFREE
+ 000B:8B2E RPCSMGETTHREADHANDLE
+ 000B:8B80 RPCSMSETCLIENTALLOCFREE
+ 000B:8BC6 RPCSMSETTHREADHANDLE
+ 000B:8C02 RPCSMSWAPCLIENTALLOCFREE
+ 000B:86BC RPCSSALLOCATE
+ 000A:F64C RPCSSDESTROYCLIENTCONTEXT
+ 000B:875E RPCSSDISABLEALLOCATE
+ 000B:87F8 RPCSSENABLEALLOCATE
+ 000B:883A RPCSSFREE
+ 000B:88CC RPCSSGETTHREADHANDLE
+ 000B:890C RPCSSSETCLIENTALLOCFREE
+ 000B:8940 RPCSSSETTHREADHANDLE
+ 000B:8962 RPCSSSWAPCLIENTALLOCFREE
+ 000A:1FC6 RPCSTRINGBINDINGCOMPOSE
+ 000A:207A RPCSTRINGBINDINGPARSE
+ 000A:21A4 RPCSTRINGFREE
+ 000A:E59A RPCWINSETYIELDINFO
+ 000A:E65A RPCWINSETYIELDTIMEOUT
+ 000E:0004 rsrvptrs
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0000:0000 Imp SETTIMER (USER.10)
+ 0000:0000 Imp SETWINDOWPOS (USER.232)
+ 000B:1768 SHORT_ARRAY_FROM_NDR
+ 000B:1704 SHORT_FROM_NDR
+ 000B:1818 SHORT_FROM_NDR_TEMP
+ 0000:0000 Imp SHOWWINDOW (USER.42)
+ 0002:08E4 TOWERCONSTRUCT
+ 0002:0846 TOWEREXPLODE
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 000B:0B48 TREE_INTO_NDR
+ 000B:144C TREE_PEEK_NDR
+ 000B:11D0 TREE_SIZE_NDR
+ 0000:0000 Imp UNLOCKSEGMENT (KERNEL.24)
+ 000A:23E8 UUIDCOMPARE
+ 000A:2202 UUIDCREATE
+ 000A:24E0 UUIDCREATENIL
+ 000A:24FC UUIDEQUAL
+ 000A:2394 UUIDFROMSTRING
+ 000A:2570 UUIDHASH
+ 000A:25A0 UUIDISNIL
+ 000A:2346 UUIDTOSTRING
+ 0001:0000 WEP
+ 000A:DF62 WINDLLATEXIT
+ 000A:DFFE WINDLLEXITHANDLERCALLBACK
+ 000A:E41A WINYIELDCLEANUP
+ 0000:0000 Imp YIELD (KERNEL.29)
+ 000A:E762 YIELDTIMERCALLBACK
+ 0000:0000 Unr _AnotherShortValue
+ 000E:03F7 _aseghi
+ 000E:03F5 _aseglo
+ 0004:3076 _atof
+ 0004:02F6 _atol
+ 000A:F312 _BuildFullKeyName
+ 000A:BF0C _ByteSwapUuid
+ 0000:0000 Unr _CheckCrtHeap
+ 000A:F300 _CloseRegistryFile
+ 000E:076C _ConvertRoutinesTable
+ 000A:35B4 _conv_are_you_there
+ 000E:00E4 _conv_DispatchTable
+ 000E:007E _conv_ServerIfHandle
+ 000A:3646 _conv_who_are_you
+ 000A:368C _conv_who_are_you2
+ 000A:36DA _conv_who_are_you_auth
+ 0002:027E _CopyIdToFloor
+ 000E:0EC8 _cray
+ 0009:22E2 _cvt_vax_f_to_ieee_single
+ 0008:3208 _cvt_vax_g_to_ieee_double
+ 000E:0800 _EbcdicToAscii
+ 000E:1BFA _edata
+ 000E:2CC9 _end
+ 000B:4526 _EnsureNSLoaded
+ 000E:0260 _epmp_ClientIfHandle
+ 000A:71D4 _ept_map
+ 000E:0410 _errno
+ 000E:2BB0 _ExceptTable
+ 000B:B6CA _ExplicitBindHandleMgr
+ 0004:16BE _fclose
+ 0004:17CE _fflush
+ 0004:192C _fgets
+ 000A:7142 _FixupForUniquePointerServers
+ 0002:0226 _Floor0or1ToId
+ 0004:17B4 _fopen
+ 000B:8D82 _ForceNdrCleanupSegIntoMemory
+ 0004:19AC _fputs
+ 000E:0932 _FreeRoutinesTable
+ 0004:1A04 _fseek
+ 0004:22F8 _ftell
+ 0004:1F00 _fwrite
+ 000E:036C _GcTimerIdentifier
+ 000B:B4D4 _GenericHandleMgr
+ 000B:B5FA _GenericHandleUnbind
+ 0004:12EE _getenv
+ 0002:02DA _GetProtseqAndEndpointFromFloor3
+ 000E:2BBC _hInstanceDLL
+ 000E:04A8 _HkeyClassesRoot
+ 000E:0E90 _ibm_l
+ 000E:0E74 _ibm_s
+ 000E:0DCC _ieee_s
+ 000E:0E04 _ieee_t
+ 000E:2BB6 _impH
+ 000B:B664 _ImplicitBindHandleMgr
+ 000A:E062 _InitializeWinExceptions
+ 000E:0F00 _int_c
+ 000A:D19C _I_Trace
+ 000B:415C _MakeSureWeHaveNonPipeArgs
+ 000E:05B0 _MarshallRoutinesTable
+ 0004:0418 _memcmp
+ 0004:0440 _memcpy
+ 0004:046C _memset
+ 000E:0644 _MemSizeRoutinesTable
+ 0009:1D28 _NdrByteCountPointerConvert
+ 000B:7422 _NdrClientCall
+ 000B:7E1C _NdrClientCall2
+ 000B:7D38 _NdrClientMapCommFault
+ 000B:7BAC _NdrClientZeroOut
+ 0009:12C2 _NdrComplexArrayConvert
+ 0009:0990 _NdrComplexStructConvert
+ 0009:0EB8 _NdrConformantArrayConvert
+ 0009:1896 _NdrConformantStringConvert
+ 0009:0792 _NdrConformantStructConvert
+ 0009:1008 _NdrConformantVaryingArrayConvert
+ 0009:2096 _NdrContextHandleConvert
+ 0009:1A44 _NdrEncapsulatedUnionConvert
+ 0009:0DD4 _NdrFixedArrayConvert
+ 0009:08E2 _NdrHardStructConvert
+ 0009:1FA2 _NdrInterfacePointerConvert
+ 000B:9A30 _NdrMesProcEncodeDecode
+ 0009:18F2 _NdrNonConformantStringConvert
+ 0009:1A70 _NdrNonEncapsulatedUnionConvert
+ 0009:1650 _NdrpArrayConvert
+ 000B:BC9C _NdrpArrayDimensions
+ 000B:BD34 _NdrpArrayElements
+ 000B:BE40 _NdrpArrayVariance
+ 000B:BF9E _NdrpCheckBound
+ 000B:644E _NdrpComplexArrayBufferSize
+ 0009:137A _NdrpComplexArrayConvert
+ 000B:2B14 _NdrpComplexArrayMarshall
+ 0007:1208 _NdrpComplexArrayMemorySize
+ 0008:186E _NdrpComplexArrayUnmarshall
+ 000B:AC3C _NdrpComputeConformance
+ 000B:AEE2 _NdrpComputeVariance
+ 000B:603E _NdrpConformantArrayBufferSize
+ 0009:0F28 _NdrpConformantArrayConvert
+ 000B:25E2 _NdrpConformantArrayMarshall
+ 0007:0BAC _NdrpConformantArrayMemorySize
+ 0008:108C _NdrpConformantArrayUnmarshall
+ 000B:6A00 _NdrpConformantStringBufferSize
+ 000B:237C _NdrpConformantStringMarshall
+ 0007:18C4 _NdrpConformantStringMemorySize
+ 0008:0D02 _NdrpConformantStringUnmarshall
+ 000B:6138 _NdrpConformantVaryingArrayBufferSize
+ 0009:105A _NdrpConformantVaryingArrayConvert
+ 000B:2704 _NdrpConformantVaryingArrayMarshall
+ 0007:0D0A _NdrpConformantVaryingArrayMemorySize
+ 0008:131A _NdrpConformantVaryingArrayUnmarshall
+ 000B:719C _NdrpEmbeddedPointerBufferSize
+ 0009:20BC _NdrpEmbeddedPointerConvert
+ 000B:555A _NdrpEmbeddedPointerFree
+ 000B:A946 _NdrpEmbeddedPointerMarshall
+ 0007:1FBE _NdrpEmbeddedPointerMemorySize
+ 000B:B1F4 _NdrpEmbeddedPointerUnmarshall
+ 000B:727A _NdrpEmbeddedRepeatPointerBufferSize
+ 0009:21C6 _NdrpEmbeddedRepeatPointerConvert
+ 000B:5636 _NdrpEmbeddedRepeatPointerFree
+ 000B:AABC _NdrpEmbeddedRepeatPointerMarshall
+ 0007:20C2 _NdrpEmbeddedRepeatPointerMemorySize
+ 000B:B35A _NdrpEmbeddedRepeatPointerUnmarshall
+ 000B:B8B8 _NdrpMemoryIncrement
+ 0009:05CC _NdrPointerConvert
+ 000B:57DE _NdrpPointerBufferSize
+ 0009:0640 _NdrpPointerConvert
+ 000B:20B8 _NdrpPointerMarshall
+ 0007:0066 _NdrpPointerMemorySize
+ 000B:3874 _NdrpPointerUnmarshall
+ 000B:85C6 _NdrpSetRpcSsDefaults
+ 000B:BEEC _NdrpSkipPointerLayout
+ 000B:BF4A _NdrpStringStructLen
+ 0009:0C00 _NdrpStructConvert
+ 000B:6C92 _NdrpUnionBufferSize
+ 0009:1AA8 _NdrpUnionConvert
+ 000B:5378 _NdrpUnionFree
+ 000B:311C _NdrpUnionMarshall
+ 0007:1A76 _NdrpUnionMemorySize
+ 0008:1F10 _NdrpUnionUnmarshall
+ 000B:8D36 _NdrRpcDeleteAllocationContext
+ 0009:06FA _NdrSimpleStructConvert
+ 0009:0238 _NdrSimpleTypeConvert
+ 000E:0A98 _NdrTypeFlags
+ 0009:1DEC _NdrUserMarshalConvert
+ 0009:1186 _NdrVaryingArrayConvert
+ 0009:1D7A _NdrXmitOrRepAsConvert
+ 000E:0900 _NsDllLoaded
+ 000E:03AC _OODebug
+ 000A:F282 _OpenRegistryFileIfNecessary
+ 000A:E2D4 _PauseExecution
+ 000E:07FC _pfnConvertRoutines
+ 000E:09C2 _pfnFreeRoutines
+ 000E:0640 _pfnMarshallRoutines
+ 000E:06D4 _pfnMemSizeRoutines
+ 000E:0A56 _pfnSizeRoutines
+ 000E:0768 _pfnUnmarshallRoutines
+ 000E:2BB2 _pRpcNsGetBuffer
+ 000E:2BB8 _pRpcNsSendReceive
+ 000E:0A5A _pRpcSsDefaults
+ 000E:04AE _RegistryDataFile
+ 000E:2BC8 _RegistryDataFileName
+ 0004:1B42 _remove
+ 0004:1B16 _rename
+ 000E:03B4 _RpcClientRuntimeInfo
+ 0000:0000 Unr _RpcpCheckHeap
+ 000A:E58E _SafeDecrement
+ 000A:E582 _SafeIncrement
+ 000E:0A62 _SimpleTypeAlignment
+ 000E:0A74 _SimpleTypeBufferSize
+ 000E:0A86 _SimpleTypeMemorySize
+ 000E:09C6 _SizeRoutinesTable
+ 0000:0000 Unr _SomeCharacterValue
+ 0000:0000 Unr _SomeLongValue
+ 0000:0000 Unr _SomeShortValue
+ 000E:03E8 _STKHQQ
+ 0004:2286 _strcat
+ 0004:22C6 _strcpy
+ 0004:02DA _strlen
+ 0004:158C _strncmp
+ 0004:12C6 _strncpy
+ 0004:1A86 _strtok
+ 000E:2BC6 _TableSize
+ 000E:03AA _TaskExiting
+ 0004:0386 _time
+ 000A:D162 _UnloadLoadableTransports
+ 000A:C0D8 _UnloadSecurityDll
+ 000E:06D8 _UnmarshallRoutinesTable
+ 000E:0D8C _vax_c
+ 000A:6B5A _WEP
+ 0000:0000 Imp _wsprintf (USER.420)
+ 000E:0F94 __aaltstkovr
+ 0000:9876 Abs __acrtmsg
+ 0000:9876 Abs __acrtused
+ 0000:D6D6 Abs __aDBdoswp
+ 000E:0442 __adbgmsg
+ 0000:D6D6 Abs __aDBused
+ 0004:0FBA __aFahdiff
+ 0004:2AEA __aFchkstk
+ 0004:1B66 __aFFaldiv
+ 0004:04A0 __aFFalmul
+ 0004:04C2 __aFFalshl
+ 0004:04A0 __aFFaulmul
+ 0004:04E2 __aFFaulshr
+ 0004:1104 __aFldiv
+ 0004:0502 __aFlmul
+ 0004:1458 __aFlrem
+ 0004:0534 __aFlshl
+ 0004:1B88 __aFlshr
+ 0004:0502 __aFulmul
+ 0004:0540 __aFulshr
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp __AHSHIFT (KERNEL.113)
+ 000E:0402 __aintdiv
+ 0004:034E __alloca
+ 000E:0454 __amblksiz
+ 0004:09A4 __amsg_exit
+ 0004:2ACA __aNchkstk
+ 000E:0F86 __asizeC
+ 000E:0F87 __asizeD
+ 0004:0054 __astart
+ 0004:0F66 __catox
+ 0004:0862 __cexit
+ 0004:2A04 __cfltcvt
+ 000E:0F66 __cfltcvt_tab
+ 000E:0F98 __cflush
+ 0004:25F6 __cftoe
+ 0004:27AC __cftof
+ 0004:292E __cftog
+ 000E:043F __child
+ 0004:2AEA __chkstk
+ 0004:081A __cinit
+ 0004:099A __cintDIV
+ 0004:224E __close
+ 0004:1034 __cltoasub
+ 0004:1BD2 __commit
+ 000E:0F9C __commode
+ 000E:041B __cpumode
+ 0004:24F2 __cropzeros
+ 0004:08C1 __ctermsub
+ 000E:0FA0 __ctype
+ 000E:0FA0 __ctype_
+ 0004:3051 __cXENIXtoDOSmode
+ 0004:1040 __cxtoa
+ 0004:0873 __c_exit
+ 000E:0496 __daylight
+ 000E:0478 __days
+ 000E:03F4 __dllinit
+ 000E:041C __doserrno
+ 0004:1EA2 __dosret0
+ 0004:1EC1 __dosretax
+ 0004:1EAF __dosreturn
+ 0004:0B8E __dostotime_t
+ 0000:0000 Unr __dos_close
+ 0004:315C __dos_commit
+ 0004:1094 __dos_getdate
+ 0004:10CC __dos_gettime
+ 0000:0000 Unr __dos_open
+ 000E:1BFA __edata
+ 000E:2CC9 __end
+ 000E:0438 __environ
+ 000E:0441 __exitflag
+ 000E:0406 __fac
+ 0004:25AC __fassign
+ 0004:0212 __ffree
+ 0004:08FE __FF_MSGBANNER
+ 000E:0446 __fheap
+ 0004:032A __fheapwalk
+ 0004:2010 __filbuf
+ 0004:0B6D __findlast
+ 0004:1354 __findseg
+ 0004:2C62 __flsbuf
+ 0004:3364 __fltin
+ 0004:3180 __fltout
+ 0000:9876 Abs __fltused
+ 0004:1824 __flush
+ 0004:189C __flushall
+ 0004:0233 __fmalloc
+ 0004:054C __fmemcmp
+ 0004:05A8 __fmemcpy
+ 0004:0724 __fmemmove
+ 0004:06DC __fmemset
+ 000E:10C6 __fmode
+ 0004:247C __forcdecpt
+ 000E:16A6 __fpinit
+ 0000:0000 Imp __fpmath (WIN87EM.1)
+ 0004:2AA6 __fpsignal
+ 0000:9876 Abs __fptaskdata
+ 0004:30C2 __fptostr
+ 0004:1216 __fptrap
+ 0004:049A __fpurecall
+ 0004:20B4 __freebuf
+ 0004:0A68 __freefarheap
+ 0004:11EC __freelist
+ 0004:1784 __fsopen
+ 0004:0688 __fstrcat
+ 0004:1B94 __fstrcmp
+ 0004:064C __fstrcpy
+ 0004:0606 __fstricmp
+ 0004:155E __fstrlen
+ 0004:14F8 __fstrncmp
+ 0004:1534 __fstrncpy
+ 0004:1E75 __ftbuf
+ 0004:00FE __ftime
+ 0004:2D42 __getbuf
+ 0004:124A __GetDGROUP
+ 0004:2212 __getstream
+ 0004:0A76 __growseg
+ 0004:137E __headchk
+ 000E:03EA __hModule
+ 0004:0B07 __incseg
+ 0004:125C __initseg
+ 000E:16B6 __iob
+ 000E:1756 __iob2
+ 000E:10C6 __iomode
+ 0004:0E1E __isindst
+ 0004:02FA __itoa
+ 000E:0F4A __lastiob
+ 0004:3BDB __LD12MULT
+ 0004:3B06 __LD12MULTTENPOWER
+ 0004:1290 __linkseg
+ 0004:13D3 __listchk
+ 000E:045E __lpdays
+ 000E:03F0 __lpszCmdLine
+ 0004:1C30 __lseek
+ 000E:0F9E __lseekchk
+ 0004:0316 __ltoa
+ 0004:3D60 __MANTOLD12
+ 0004:1ED3 __maperror
+ 000E:2BBE __mbac
+ 0004:121C __myalloc
+ 0004:125A __nearstub
+ 0004:09E6 __newseg
+ 000E:041E __nfile
+ 0004:1622 __nfree
+ 0004:15C6 __nmalloc
+ 0004:119E __NMSG_TEXT
+ 0004:11D5 __NMSG_WRITE
+ 0004:16AA __nmsize
+ 0004:00E5 __nomain
+ 0004:049A __npurecall
+ 0004:163C __nrealloc
+ 0004:2D9E __open
+ 0004:20E0 __openfile
+ 000E:041C __oserr
+ 000E:0420 __osfile
+ 000E:0417 __osmajor
+ 000E:0416 __osminor
+ 000E:041A __osmode
+ 000E:0416 __osver
+ 000E:0418 __osversion
+ 000E:043A __pgmptr
+ 000E:03FE __pnhFarHeap
+ 000E:04A4 __pnhNearHeap
+ 0004:2576 __positive
+ 0004:049A __purecall
+ 0004:2B24 __read
+ 0004:0EEA __searchseg
+ 0004:0922 __setenvp
+ 000E:0F84 __sigintoff
+ 000E:0F82 __sigintseg
+ 0000:0001 Abs __sizec
+ 0000:0000 Abs __sized
+ 0004:2D86 __sopen
+ 0004:3062 __stackavail
+ 0004:1E6A __stbuf
+ 0004:357E __STRINGTOD
+ 0004:35E6 __STRINGTOLD
+ 0004:07EE __stubmain
+ 0001:003C __STUBWEP
+ 000E:0492 __timezone
+ 000E:04A0 __tzname
+ 0004:0CA6 __tzset
+ 0004:0320 __ultoa
+ 000E:0412 __umaskval
+ 0004:1B42 __unlink
+ 0004:0FDA __walklist
+ 0004:1400 __walkone
+ 000E:03EC __wDataSeg
+ 0004:0010 __wflags
+ 000E:03EE __wHeapSize
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 000E:0415 __winmajor
+ 000E:0414 __winminor
+ 000E:0414 __winver
+ 0004:1CF8 __write
+ 000E:03FB ___aDBrterr
+ 000E:03F9 ___aDBswpflg
+ 000E:0434 ___argc
+ 000E:0436 ___argv
+ 0004:1578 ___ExportedStub
+ 0004:0C8A ___tzset
+
+ Address Publics by Value
+
+ 0000:0000 Unr _RpcpCheckHeap
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0000:0000 Unr ?SendOrphan@OSF_CCONNECTION@@RACXXZ
+ 0000:0000 Imp GETSYSTEMMETRICS (USER.179)
+ 0000:0000 Unr _SomeLongValue
+ 0000:0000 Imp LOCALALLOC (KERNEL.5)
+ 0000:0000 Imp NETBIOSCALL (KERNEL.103)
+ 0000:0000 Imp LOCALINIT (KERNEL.4)
+ 0000:0000 Imp SHOWWINDOW (USER.42)
+ 0000:0000 Imp NOTIFYUNREGISTER (TOOLHELP.74)
+ 0000:0000 Unr ?FlushPacketLists@DG_PACKET@@TAXXZ
+ 0000:0000 Unr __dos_close
+ 0000:0000 Imp POSTMESSAGE (USER.110)
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0000:0000 Imp LOCALREALLOC (KERNEL.6)
+ 0000:0000 Imp __fpmath (WIN87EM.1)
+ 0000:0000 Imp UNLOCKSEGMENT (KERNEL.24)
+ 0000:0000 Unr _AnotherShortValue
+ 0000:0000 Imp __AHSHIFT (KERNEL.113)
+ 0000:0000 Imp GETPROFILESTRING (KERNEL.58)
+ 0000:0000 Imp LOCALFREE (KERNEL.7)
+ 0000:0000 Imp GETWINDOWWORD (USER.133)
+ 0000:0000 Imp GETWINDOWRECT (USER.32)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0000:0000 Imp GETWINFLAGS (KERNEL.132)
+ 0000:0000 Imp PEEKMESSAGE (USER.109)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Unr __dos_open
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp GETCURRENTTIME (USER.15)
+ 0000:0000 Unr ?SetAuthInformation@OSF_CCONNECTION@@RACGPAUCLIENT_AUTH_INFO@@@Z
+ 0000:0000 Imp GETCURRENTTASK (KERNEL.36)
+ 0000:0000 Imp LSTRLEN (KERNEL.90)
+ 0000:0000 Unr ??Z@ZAXAEVULong64@@0@Z
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 0000:0000 Imp ISWINDOWVISIBLE (USER.49)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 0000:0000 Unr ??1SIMPLE_DICT2@@REC@XZ
+ 0000:0000 Unr ?VerifyOrUnSealPacket@DG_SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp GETMODULEHANDLE (KERNEL.47)
+ 0000:0000 Imp SETTIMER (USER.10)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp MESSAGEBOX (USER.1)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Unr ?SendAlert@OSF_CCONNECTION@@RACXXZ
+ 0000:0000 Unr ?DeleteItemByBruteForce@SIMPLE_DICT@@RACPAXPAX@Z
+ 0000:0000 Imp ISDIALOGMESSAGE (USER.90)
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 0000:0000 Unr _CheckCrtHeap
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0000:0000 Unr NETBIOSSUBMIT
+ 0000:0000 Unr ?PurgeAmbiguousActivities@DG_CASSOCIATION@@RACXXZ
+ 0000:0000 Unr ?RpcConfigInquireProtocolSequences@@ZAGPEPEU_RPC_PROTSEQ_VECTOR@@@Z
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Imp LSTRCMPI (USER.471)
+ 0000:0000 Unr ?AcquireCredentialsForServer@SECURITY_CREDENTIALS@@RACGP7CXPEXPEEKPEPEXPEG@Z0KK1@Z
+ 0000:0000 Imp CREATEDIALOGINDIRECT (USER.219)
+ 0000:0000 Abs __sized
+ 0000:0000 Imp YIELD (KERNEL.29)
+ 0000:0000 Unr _SomeShortValue
+ 0000:0000 Imp GETPARENT (USER.46)
+ 0000:0000 Imp KILLTIMER (USER.12)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0000 Unr ?Find@SIMPLE_DICT@@RACPAXH@Z
+ 0000:0000 Imp _wsprintf (USER.420)
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0000:0000 Unr ?IsAuthenticationServiceSupported@@ZAGK@Z
+ 0000:0000 Imp NOTIFYREGISTER (TOOLHELP.73)
+ 0000:0000 Imp SETWINDOWPOS (USER.232)
+ 0000:0000 Imp FREELIBRARY (KERNEL.96)
+ 0000:0000 Unr RPCDEBUG
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0000:0000 Imp GLOBALHANDLETOSEL (TOOLHELP.50)
+ 0000:0000 Imp LOCALSIZE (KERNEL.10)
+ 0000:0000 Unr _SomeCharacterValue
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:0000 Imp CREATEDIALOG (USER.89)
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0000:0001 Abs __sizec
+ 0000:0006 Abs pLocalHeap
+ 0000:0008 Abs pAtomTable
+ 0000:000A Abs pStackTop
+ 0000:000C Abs pStackMin
+ 0000:000E Abs pStackBot
+ 0000:0632 Abs FISRQQ
+ 0000:0E32 Abs FICRQQ
+ 0000:1632 Abs FIERQQ
+ 0000:9876 Abs __fltused
+ 0000:9876 Abs __acrtused
+ 0000:9876 Abs __acrtmsg
+ 0000:9876 Abs __fptaskdata
+ 0000:D6D6 Abs __aDBdoswp
+ 0000:D6D6 Abs __aDBused
+ 0001:0000 WEP
+ 0001:003C __STUBWEP
+ 0002:0000 ?MapToNcaStatusCode@@ZAKG@Z
+ 0002:00B4 ?MapFromNcaStatusCode@@ZAGK@Z
+ 0002:0226 _Floor0or1ToId
+ 0002:027E _CopyIdToFloor
+ 0002:02DA _GetProtseqAndEndpointFromFloor3
+ 0002:0362 GETNWSTYLENAME
+ 0002:03E8 EXPLODEPREDEFINEDTOWERS
+ 0002:0846 TOWEREXPLODE
+ 0002:08E4 TOWERCONSTRUCT
+ 0003:0000 RPCSETEXCEPTION
+ 0003:003F RPCRAISEEXCEPTION
+ 0004:0010 __wflags
+ 0004:0054 __astart
+ 0004:00E5 __nomain
+ 0004:00FE __ftime
+ 0004:0212 __ffree
+ 0004:0233 __fmalloc
+ 0004:02DA _strlen
+ 0004:02F6 _atol
+ 0004:02FA __itoa
+ 0004:0316 __ltoa
+ 0004:0320 __ultoa
+ 0004:032A __fheapwalk
+ 0004:034E __alloca
+ 0004:0386 _time
+ 0004:0418 _memcmp
+ 0004:0440 _memcpy
+ 0004:046C _memset
+ 0004:049A __npurecall
+ 0004:049A __fpurecall
+ 0004:049A __purecall
+ 0004:04A0 __aFFalmul
+ 0004:04A0 __aFFaulmul
+ 0004:04C2 __aFFalshl
+ 0004:04E2 __aFFaulshr
+ 0004:0502 __aFlmul
+ 0004:0502 __aFulmul
+ 0004:0534 __aFlshl
+ 0004:0540 __aFulshr
+ 0004:054C __fmemcmp
+ 0004:05A8 __fmemcpy
+ 0004:0606 __fstricmp
+ 0004:064C __fstrcpy
+ 0004:0688 __fstrcat
+ 0004:06DC __fmemset
+ 0004:0724 __fmemmove
+ 0004:07EE __stubmain
+ 0004:081A __cinit
+ 0004:0862 __cexit
+ 0004:0873 __c_exit
+ 0004:08C1 __ctermsub
+ 0004:08FE __FF_MSGBANNER
+ 0004:0922 __setenvp
+ 0004:099A __cintDIV
+ 0004:09A4 __amsg_exit
+ 0004:09E6 __newseg
+ 0004:0A68 __freefarheap
+ 0004:0A76 __growseg
+ 0004:0B07 __incseg
+ 0004:0B6D __findlast
+ 0004:0B8E __dostotime_t
+ 0004:0C8A ___tzset
+ 0004:0CA6 __tzset
+ 0004:0E1E __isindst
+ 0004:0EEA __searchseg
+ 0004:0F66 __catox
+ 0004:0FBA __aFahdiff
+ 0004:0FDA __walklist
+ 0004:1034 __cltoasub
+ 0004:1040 __cxtoa
+ 0004:1094 __dos_getdate
+ 0004:10CC __dos_gettime
+ 0004:1104 __aFldiv
+ 0004:119E __NMSG_TEXT
+ 0004:11D5 __NMSG_WRITE
+ 0004:11EC __freelist
+ 0004:1216 __fptrap
+ 0004:121C __myalloc
+ 0004:124A __GetDGROUP
+ 0004:125A __nearstub
+ 0004:125C __initseg
+ 0004:1290 __linkseg
+ 0004:12C6 _strncpy
+ 0004:12EE _getenv
+ 0004:1354 __findseg
+ 0004:137E __headchk
+ 0004:13D3 __listchk
+ 0004:1400 __walkone
+ 0004:1458 __aFlrem
+ 0004:14F8 __fstrncmp
+ 0004:1534 __fstrncpy
+ 0004:155E __fstrlen
+ 0004:1578 ___ExportedStub
+ 0004:158C _strncmp
+ 0004:15C6 __nmalloc
+ 0004:1622 __nfree
+ 0004:163C __nrealloc
+ 0004:16AA __nmsize
+ 0004:16BE _fclose
+ 0004:1784 __fsopen
+ 0004:17B4 _fopen
+ 0004:17CE _fflush
+ 0004:1824 __flush
+ 0004:189C __flushall
+ 0004:191A ??3@ZAXPEX@Z
+ 0004:192C _fgets
+ 0004:19AC _fputs
+ 0004:1A04 _fseek
+ 0004:1A86 _strtok
+ 0004:1B16 _rename
+ 0004:1B42 _remove
+ 0004:1B42 __unlink
+ 0004:1B66 __aFFaldiv
+ 0004:1B88 __aFlshr
+ 0004:1B94 __fstrcmp
+ 0004:1BD2 __commit
+ 0004:1C30 __lseek
+ 0004:1CF8 __write
+ 0004:1E6A __stbuf
+ 0004:1E75 __ftbuf
+ 0004:1EA2 __dosret0
+ 0004:1EAF __dosreturn
+ 0004:1EC1 __dosretax
+ 0004:1ED3 __maperror
+ 0004:1F00 _fwrite
+ 0004:2010 __filbuf
+ 0004:20B4 __freebuf
+ 0004:20E0 __openfile
+ 0004:2212 __getstream
+ 0004:224E __close
+ 0004:2286 _strcat
+ 0004:22C6 _strcpy
+ 0004:22F8 _ftell
+ 0004:247C __forcdecpt
+ 0004:24F2 __cropzeros
+ 0004:2576 __positive
+ 0004:25AC __fassign
+ 0004:25F6 __cftoe
+ 0004:27AC __cftof
+ 0004:292E __cftog
+ 0004:2A04 __cfltcvt
+ 0004:2AA6 __fpsignal
+ 0004:2ACA __aNchkstk
+ 0004:2AEA __chkstk
+ 0004:2AEA __aFchkstk
+ 0004:2B24 __read
+ 0004:2C62 __flsbuf
+ 0004:2D42 __getbuf
+ 0004:2D86 __sopen
+ 0004:2D9E __open
+ 0004:3051 __cXENIXtoDOSmode
+ 0004:3062 __stackavail
+ 0004:3076 _atof
+ 0004:30C2 __fptostr
+ 0004:315C __dos_commit
+ 0004:3180 __fltout
+ 0004:321E $i8_output
+ 0004:3364 __fltin
+ 0004:3540 $i8_tpwr10
+ 0004:357E __STRINGTOD
+ 0004:35E6 __STRINGTOLD
+ 0004:3B06 __LD12MULTTENPOWER
+ 0004:3BDB __LD12MULT
+ 0004:3D60 __MANTOLD12
+ 0005:0000 NDRCOPY
+ 0006:0000 NDRCONFORMANTVARYINGSTRUCTMARSHALL
+ 0006:011E NDRHARDSTRUCTMARSHALL
+ 0006:01F0 NDRCOMPLEXSTRUCTMARSHALL
+ 0006:0652 NDRNONCONFORMANTSTRINGMARSHALL
+ 0006:074A NDRCONFORMANTSTRINGMARSHALL
+ 0007:0000 NDRPOINTERMEMORYSIZE
+ 0007:0066 _NdrpPointerMemorySize
+ 0007:0218 NDRSIMPLESTRUCTMEMORYSIZE
+ 0007:02E6 NDRCONFORMANTSTRUCTMEMORYSIZE
+ 0007:0442 NDRCONFORMANTVARYINGSTRUCTMEMORYSIZE
+ 0007:0574 NDRHARDSTRUCTMEMORYSIZE
+ 0007:0638 NDRCOMPLEXSTRUCTMEMORYSIZE
+ 0007:0A60 NDRFIXEDARRAYMEMORYSIZE
+ 0007:0B58 NDRCONFORMANTARRAYMEMORYSIZE
+ 0007:0BAC _NdrpConformantArrayMemorySize
+ 0007:0CB6 NDRCONFORMANTVARYINGARRAYMEMORYSIZE
+ 0007:0D0A _NdrpConformantVaryingArrayMemorySize
+ 0007:0ECC NDRVARYINGARRAYMEMORYSIZE
+ 0007:10CA NDRCOMPLEXARRAYMEMORYSIZE
+ 0007:1208 _NdrpComplexArrayMemorySize
+ 0007:1750 NDRNONCONFORMANTSTRINGMEMORYSIZE
+ 0007:1834 NDRCONFORMANTSTRINGMEMORYSIZE
+ 0007:18C4 _NdrpConformantStringMemorySize
+ 0007:19F4 NDRENCAPSULATEDUNIONMEMORYSIZE
+ 0007:1A42 NDRNONENCAPSULATEDUNIONMEMORYSIZE
+ 0007:1A76 _NdrpUnionMemorySize
+ 0007:1D92 NDRXMITORREPASMEMORYSIZE
+ 0007:1E5E NDRUSERMARSHALMEMORYSIZE
+ 0007:1F66 NDRINTERFACEPOINTERMEMORYSIZE
+ 0007:1FBE _NdrpEmbeddedPointerMemorySize
+ 0007:20C2 _NdrpEmbeddedRepeatPointerMemorySize
+ 0008:0000 NDRCONFORMANTVARYINGSTRUCTUNMARSHALL
+ 0008:02F6 NDRHARDSTRUCTUNMARSHALL
+ 0008:04AC NDRCOMPLEXSTRUCTUNMARSHALL
+ 0008:099E NDRNONCONFORMANTSTRINGUNMARSHALL
+ 0008:0AE0 NDRCONFORMANTSTRINGUNMARSHALL
+ 0008:0D02 _NdrpConformantStringUnmarshall
+ 0008:0DAC NDRFIXEDARRAYUNMARSHALL
+ 0008:0F0A NDRCONFORMANTARRAYUNMARSHALL
+ 0008:108C _NdrpConformantArrayUnmarshall
+ 0008:1160 NDRCONFORMANTVARYINGARRAYUNMARSHALL
+ 0008:131A _NdrpConformantVaryingArrayUnmarshall
+ 0008:145C NDRVARYINGARRAYUNMARSHALL
+ 0008:16C0 NDRCOMPLEXARRAYUNMARSHALL
+ 0008:186E _NdrpComplexArrayUnmarshall
+ 0008:1D32 NDRENCAPSULATEDUNIONUNMARSHALL
+ 0008:1E50 NDRNONENCAPSULATEDUNIONUNMARSHALL
+ 0008:1F10 _NdrpUnionUnmarshall
+ 0008:21E8 NDRBYTECOUNTPOINTERUNMARSHALL
+ 0008:233E NDRPXMITORREPASPTRUNMARSHALL
+ 0008:24C6 NDRXMITORREPASUNMARSHALL
+ 0008:2714 NDRUSERMARSHALUNMARSHALL
+ 0008:28E0 NDRINTERFACEPOINTERUNMARSHALL
+ 0008:28F2 NDRCLIENTCONTEXTUNMARSHALL
+ 0008:2948 NDRSERVERCONTEXTUNMARSHALL
+ 0008:2956 NDRFULLPOINTERXLATINIT
+ 0008:2B10 NDRFULLPOINTERXLATFREE
+ 0008:2C10 NDRFULLPOINTERQUERYPOINTER
+ 0008:2E44 NDRFULLPOINTERQUERYREFID
+ 0008:2F0E NDRFULLPOINTERINSERTREFID
+ 0008:2FDA NDRFULLPOINTERFREE
+ 0008:3208 _cvt_vax_g_to_ieee_double
+ 0009:0000 NDRCONVERT2
+ 0009:0124 NDRCONVERT
+ 0009:0238 _NdrSimpleTypeConvert
+ 0009:05CC _NdrPointerConvert
+ 0009:0640 _NdrpPointerConvert
+ 0009:06FA _NdrSimpleStructConvert
+ 0009:0792 _NdrConformantStructConvert
+ 0009:08E2 _NdrHardStructConvert
+ 0009:0990 _NdrComplexStructConvert
+ 0009:0C00 _NdrpStructConvert
+ 0009:0DD4 _NdrFixedArrayConvert
+ 0009:0EB8 _NdrConformantArrayConvert
+ 0009:0F28 _NdrpConformantArrayConvert
+ 0009:1008 _NdrConformantVaryingArrayConvert
+ 0009:105A _NdrpConformantVaryingArrayConvert
+ 0009:1186 _NdrVaryingArrayConvert
+ 0009:12C2 _NdrComplexArrayConvert
+ 0009:137A _NdrpComplexArrayConvert
+ 0009:1650 _NdrpArrayConvert
+ 0009:1896 _NdrConformantStringConvert
+ 0009:18F2 _NdrNonConformantStringConvert
+ 0009:1A44 _NdrEncapsulatedUnionConvert
+ 0009:1A70 _NdrNonEncapsulatedUnionConvert
+ 0009:1AA8 _NdrpUnionConvert
+ 0009:1D28 _NdrByteCountPointerConvert
+ 0009:1D7A _NdrXmitOrRepAsConvert
+ 0009:1DEC _NdrUserMarshalConvert
+ 0009:1F50 NDRUSERMARSHALSIMPLETYPECONVERT
+ 0009:1FA2 _NdrInterfacePointerConvert
+ 0009:2096 _NdrContextHandleConvert
+ 0009:20BC _NdrpEmbeddedPointerConvert
+ 0009:21C6 _NdrpEmbeddedRepeatPointerConvert
+ 0009:22E2 _cvt_vax_f_to_ieee_single
+ 000A:0000 ?DuplicateString@@ZAPAEPEE@Z
+ 000A:0066 ??0DCE_BINDING@@RAC@PEE0000PEG@Z
+ 000A:0162 ?StringCharSearchWithEscape@@ZAPEEPEEI@Z
+ 000A:018E ?StringCopyWithEscape@@ZAXPEE0@Z
+ 000A:01C6 ?ParseAndCopyEndpointField@@ZAGPAPAEPEE@Z
+ 000A:0282 ?AllocateEmptyString@@ZAPAEXZ
+ 000A:0298 ??0DCE_BINDING@@RAC@PEEPEG@Z
+ 000A:06B0 ??1DCE_BINDING@@RAC@XZ
+ 000A:0700 ?StringLengthWithEscape@@ZAHPEE@Z
+ 000A:0742 ?StringCopyEscapeCharacters@@ZAPEEPEE0@Z
+ 000A:07AC ?StringBindingCompose@DCE_BINDING@@RACPEEPEVRPC_UUID@@@Z
+ 000A:09C2 ?AllocateEmptyStringPAPI@@ZAPEEXZ
+ 000A:09E4 ?DuplicateStringPAPI@@ZAPEEPAE@Z
+ 000A:0A44 ?ObjectUuidCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:0A98 ?RpcProtocolSequenceCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:0ACE ?NetworkAddressCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:0B04 ?EndpointCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:0B3A ?OptionsCompose@DCE_BINDING@@RACPEEPEG@Z
+ 000A:0B70 ?CreateBindingHandle@DCE_BINDING@@RACPAVBINDING_HANDLE@@PEG@Z
+ 000A:0C76 ?AddEndpoint@DCE_BINDING@@RACXPAE@Z
+ 000A:0C98 ?ResolveEndpointIfNecessary@DCE_BINDING@@RACGPEU_RPC_CLIENT_INTERFACE@@PEVRPC_UUID@@PEPEXHI@Z
+ 000A:0DAE ?Compare@DCE_BINDING@@RACHPAV1@@Z
+ 000A:0E72 ?DuplicateDceBinding@DCE_BINDING@@RACPAV1@XZ
+ 000A:0ECE ?MakePartiallyBound@DCE_BINDING@@RACXXZ
+ 000A:0EEE ?IsRpcProtocolSequenceSupported@@ZAGPEE@Z
+ 000A:0F78 ??1BITSET@@RAC@XZ
+ 000A:0F94 ?Insert@BITSET@@RACHH@Z
+ 000A:102E ?MemberP@BITSET@@RACHH@Z
+ 000A:106C I_RPCGETBUFFER
+ 000A:10CE I_RPCFREEBUFFER
+ 000A:10F4 I_RPCFREEPIPEBUFFER
+ 000A:111A I_RPCREALLOCPIPEBUFFER
+ 000A:1144 I_RPCALLOCATE
+ 000A:115A I_RPCFREE
+ 000A:1174 I_RPCPAUSEEXECUTION
+ 000A:1190 I_RPCTIMERESET
+ 000A:119C I_RPCTIMECHARGE
+ 000A:11AA I_RPCTIMEGET
+ 000A:11C0 CONV_CONV_WHO_ARE_YOU
+ 000A:12F2 CONV_CONV_WHO_ARE_YOU2
+ 000A:1458 CONV_CONV_ARE_YOU_THERE
+ 000A:1570 CONV_CONV_WHO_ARE_YOU_AUTH
+ 000A:1858 RPCBINDINGCOPY
+ 000A:189A I_RPCBINDINGCOPY
+ 000A:18DC RPCBINDINGFREE
+ 000A:1920 RPCBINDINGRESET
+ 000A:195A RPCBINDINGFROMSTRINGBINDING
+ 000A:19D0 RPCBINDINGSETOBJECT
+ 000A:1A12 RPCBINDINGVECTORFREE
+ 000A:1A90 RPCEPRESOLVEBINDING
+ 000A:1AD0 RPCNSBINDINGINQENTRYNAME
+ 000A:1B16 I_RPCNSBINDINGSETENTRYNAME
+ 000A:1B5C RPCBINDINGINQAUTHINFO
+ 000A:1C44 RPCBINDINGSETAUTHINFO
+ 000A:1CDE RPCBINDINGINQOBJECT
+ 000A:1D10 RPCBINDINGTOSTRINGBINDING
+ 000A:1D40 RPCMGMTINQDEFAULTPROTECTLEVEL
+ 000A:1D70 I_RPCBINDINGINQTRANSPORTTYPE
+ 000A:1DA0 RPCIFINQID
+ 000A:1DF4 RPCNETWORKISPROTSEQVALID
+ 000A:1E10 RPCMGMTINQCOMTIMEOUT
+ 000A:1E40 RPCMGMTSETCOMTIMEOUT
+ 000A:1E6E I_RPCIFINQTRANSFERSYNTAXES
+ 000A:1ED6 RPCMGMTENABLEIDLECLEANUP
+ 000A:1EE8 RPCMGMTBINDINGSETPARAMETER
+ 000A:1F1C RPCMGMTBINDINGINQPARAMETER
+ 000A:1F54 RPCMGMTSETPARAMETER
+ 000A:1F96 RPCMGMTINQPARAMETER
+ 000A:1FC6 RPCSTRINGBINDINGCOMPOSE
+ 000A:207A RPCSTRINGBINDINGPARSE
+ 000A:21A4 RPCSTRINGFREE
+ 000A:21DE I_UUIDCREATE
+ 000A:2202 UUIDCREATE
+ 000A:2346 UUIDTOSTRING
+ 000A:2394 UUIDFROMSTRING
+ 000A:23E8 UUIDCOMPARE
+ 000A:24E0 UUIDCREATENIL
+ 000A:24FC UUIDEQUAL
+ 000A:2570 UUIDHASH
+ 000A:25A0 UUIDISNIL
+ 000A:25D0 ?InitializeRpcProtocolDgClient@@ZAHXZ
+ 000A:2672 ?DgCreateBindingHandle@@ZAPAVBINDING_HANDLE@@XZ
+ 000A:26BA ?UpdateAssociationWithAddress@DG_CASSOCIATION@@RACPEXPEX@Z
+ 000A:272C ??0DG_BINDING_HANDLE@@RAC@PEG@Z
+ 000A:2754 ??1DG_BINDING_HANDLE@@VAC@XZ
+ 000A:27C6 ?GetBuffer@DG_BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:29C8 ?BindingFree@DG_BINDING_HANDLE@@VACGXZ
+ 000A:29EA ?PrepareBindingHandle@DG_BINDING_HANDLE@@VACXPAXPAVDCE_BINDING@@@Z
+ 000A:2A52 ?ToStringBinding@DG_BINDING_HANDLE@@VACGPEPEE@Z
+ 000A:2AA4 ?ResolveBinding@DG_BINDING_HANDLE@@VACGPEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:2AD8 ?BindingReset@DG_BINDING_HANDLE@@VACGXZ
+ 000A:2B1A ?BindingCopy@DG_BINDING_HANDLE@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:2C4A ?DisassociateFromServer@DG_BINDING_HANDLE@@RACXXZ
+ 000A:2C9A ?MapAuthenticationLevel@DG_BINDING_HANDLE@@VACKK@Z
+ 000A:2CC6 ??0DG_CASSOCIATION@@RAC@PEU_DG_RPC_CLIENT_TRANSPORT_INFO@@PAVDG_BINDING_HANDLE@@KPAVDCE_BINDING@@PEG@Z
+ 000A:2DE2 ??1DG_CASSOCIATION@@RAC@XZ
+ 000A:2E82 ?AllocateCCall@DG_CASSOCIATION@@RACGPEPAVDG_CCALL@@PAUCLIENT_AUTH_INFO@@@Z
+ 000A:2F68 ?FreeCall@DG_CASSOCIATION@@RACXPAVDG_CCALL@@@Z
+ 000A:2FC4 ?ToStringBinding@DG_CASSOCIATION@@VACGPEPEEPEVRPC_UUID@@@Z
+ 000A:2FF4 ?OptionalStringsEqual@@ZAHPEE0@Z
+ 000A:303A ?ComparePartialBinding@DG_CASSOCIATION@@RACHPAVDG_BINDING_HANDLE@@PEX@Z
+ 000A:30C0 ?AddInterface@DG_CASSOCIATION@@RACHPEXPEVRPC_UUID@@@Z
+ 000A:30E0 ?RemoveInterface@DG_CASSOCIATION@@RACHPEXPEVRPC_UUID@@@Z
+ 000A:3100 ??0DG_CCALL@@RAC@PAVDG_CASSOCIATION@@IPAUCLIENT_AUTH_INFO@@PEG@Z
+ 000A:3264 ??1DG_CCALL@@VAC@XZ
+ 000A:32EA ?GetBuffer@DG_CCALL@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:334E ?FreeBuffer@DG_CCALL@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:3390 ?FreePipeBuffer@DG_CCALL@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:33A6 ?FreeInParms@DG_CCALL@@BACXPEU_RPC_MESSAGE@@@Z
+ 000A:3404 ?ReallocPipeBuffer@DG_CCALL@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:34B6 ?FreeEndpoint@DG_CCALL@@BACXXZ
+ 000A:34D4 ?BuildNcaPacketHeader@DG_CCALL@@BACXPEU_NCA_PACKET_HEADER@@PEU_RPC_MESSAGE@@@Z
+ 000A:3576 ?SendAck@DG_CCALL@@RACXXZ
+ 000A:35B4 _conv_are_you_there
+ 000A:3646 _conv_who_are_you
+ 000A:368C _conv_who_are_you2
+ 000A:36DA _conv_who_are_you_auth
+ 000A:3762 ??0DG_ENDPOINT_MANAGER@@RAC@PEU_DG_RPC_CLIENT_TRANSPORT_INFO@@PEG@Z
+ 000A:379A ?AllocateEndpoint@DG_ENDPOINT_MANAGER@@RACPAUENDPOINT@@XZ
+ 000A:386E ?IncrementReferenceCount@DG_ENDPOINT_MANAGER@@RACXXZ
+ 000A:3880 ?DecrementReferenceCount@DG_ENDPOINT_MANAGER@@RACXXZ
+ 000A:38CE ?CleanupForThisTask@DG_ENDPOINT_MANAGER@@RACXXZ
+ 000A:391E ?CleanupDgTransports@@ZAXXZ
+ 000A:3942 ?BeforeSendReceive@DG_CCALL@@BACGPEU_RPC_MESSAGE@@@Z
+ 000A:3A3C ?AfterSendReceive@DG_CCALL@@BACGPEU_RPC_MESSAGE@@G@Z
+ 000A:3BC0 ?SendReceive@DG_CCALL@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:3BD8 ?SendReceiveRecur@DG_CCALL@@BACGPEU_RPC_MESSAGE@@E@Z
+ 000A:3D68 ?Send@DG_CCALL@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:3D80 ?SendRecur@DG_CCALL@@BACGPEU_RPC_MESSAGE@@E@Z
+ 000A:3F82 ?MaybeSendReceive@DG_CCALL@@BACGPEU_RPC_MESSAGE@@@Z
+ 000A:4062 ?Receive@DG_CCALL@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:40DC ?SingleSendReceive@DG_CCALL@@BACGXZ
+ 000A:43DA ?DealWithRequest@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:45D6 ?DealWithFack@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:4678 ?DealWithResponse@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:46FA ?DealWithWorking@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:479C ?DealWithNocall@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:47F6 ?DealWithFault@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:48D0 ?SendQuit@DG_CCALL@@BACGXZ
+ 000A:4960 ?DealWithQuack@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:4974 ?SealAndSendPacket@DG_CCALL@@FACGPEU_NCA_PACKET_HEADER@@@Z
+ 000A:4CB2 ?InitErrorPacket@DG_CCALL@@BACXPEU_NCA_PACKET_HEADER@@EG@Z
+ 000A:4D0A ?InitializeSecurityContextA@DG_CCALL@@BACGXZ
+ 000A:4E64 ?DealWithAuthCallback@DG_CCALL@@BACGPEXJ0JPEJ@Z
+ 000A:4F82 ?InitializeFirstTime@DG_SECURITY_CONTEXT@@RACGPAVSECURITY_CREDENTIALS@@PAEKPEU_SecBufferDesc@@@Z
+ 000A:5096 ?InitializeOnCallback@DG_SECURITY_CONTEXT@@RACGKPEU_SecBufferDesc@@0@Z
+ 000A:512C ?SignOrSeal@DG_SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 000A:5180 ?VerifyPacket@DG_CCALL@@BACGPEVDG_PACKET@@@Z
+ 000A:51EE ?SetConnectionParameter@DG_BINDING_HANDLE@@VACGIK@Z
+ 000A:5276 ?InqConnectionParameter@DG_BINDING_HANDLE@@VACGIPEK@Z
+ 000A:52A6 ?CompareWithBinding@DG_CASSOCIATION@@RACHPAVDG_BINDING_HANDLE@@@Z
+ 000A:52C4 ?SendSomething@DG_CCALL@@BACGXZ
+ 000A:53BE ?Insert@INTERFACE_AND_OBJECT_LIST@@RACHPEXPEVRPC_UUID@@@Z
+ 000A:5442 ?Find@INTERFACE_AND_OBJECT_LIST@@RACHPEXPEVRPC_UUID@@@Z
+ 000A:54AE ?Delete@INTERFACE_AND_OBJECT_LIST@@RACHPEXPEVRPC_UUID@@@Z
+ 000A:5520 ??1INTERFACE_AND_OBJECT_LIST@@RAC@XZ
+ 000A:554A ??_GDG_CASSOCIATION@@RACPAXI@Z
+ 000A:556C ?FreePipeBuffer@MESSAGE_OBJECT@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:5570 ?ReallocPipeBuffer@MESSAGE_OBJECT@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:5576 ??0CONNECTION@@RAC@PAUCLIENT_AUTH_INFO@@PEG@Z
+ 000A:55B2 ?InquireAuthInformation@BINDING_HANDLE@@VACPAUCLIENT_AUTH_INFO@@XZ
+ 000A:55D0 ??1SECURITY_CONTEXT@@RAC@XZ
+ 000A:55F4 ?FreeLargeBuffer@@ZAXPEX@Z
+ 000A:5610 ?InquireTransportType@DG_BINDING_HANDLE@@VACGPEI@Z
+ 000A:5622 ?SendPing@DG_CCALL@@BACGXZ
+ 000A:568E ??_GDG_BINDING_HANDLE@@VACPAXI@Z
+ 000A:56B0 ??_GDG_CCALL@@VACPAXI@Z
+ 000A:56D2 ??0DG_PACKET_ENGINE@@RAC@GGGGIPEG@Z
+ 000A:57BA ??1DG_PACKET_ENGINE@@RAC@XZ
+ 000A:57E6 ?NewCall@DG_PACKET_ENGINE@@RACXXZ
+ 000A:5848 ?SetupSendWindow@DG_PACKET_ENGINE@@RACXPEU_RPC_MESSAGE@@@Z
+ 000A:58BC ?RecalcPduSize@DG_PACKET_ENGINE@@RACXXZ
+ 000A:597A ?CleanupReceiveWindow@DG_PACKET_ENGINE@@RACXXZ
+ 000A:59CA ?SendSomeFragments@DG_PACKET_ENGINE@@RACGE@Z
+ 000A:5AE4 ?SendFragment@DG_PACKET_ENGINE@@RACGIEH@Z
+ 000A:5C60 ?UpdateSendWindow@DG_PACKET_ENGINE@@RACXPEVDG_PACKET@@PAVSECURITY_CONTEXT@@PAVDG_ASSOCIATION@@@Z
+ 000A:5DAE ?UpdateReceiveWindow@DG_PACKET_ENGINE@@RACHPEVDG_PACKET@@@Z
+ 000A:60C4 ?SendFack@DG_PACKET_ENGINE@@RACGPEVDG_PACKET@@@Z
+ 000A:622E ?AssembleBufferFromPackets@DG_PACKET_ENGINE@@RACGPEU_RPC_MESSAGE@@PAVCONNECTION@@@Z
+ 000A:648C ?VerifySecurePacket@@ZAGPEVDG_PACKET@@PAVSECURITY_CONTEXT@@@Z
+ 000A:6664 ?SetFragmentLengths@DG_PACKET_ENGINE@@RACXPAVSECURITY_CONTEXT@@@Z
+ 000A:66E6 ?ByteSwapPacketHeader@@ZAXPEVDG_PACKET@@@Z
+ 000A:6846 ?ByteSwapFackBody0@@ZAXPEUFACK_BODY_VER_0@@@Z
+ 000A:6978 ?Initialize@DG_PACKET@@TAGXZ
+ 000A:69AA ?AllocatePacket@DG_PACKET@@TAPEV1@I@Z
+ 000A:6A48 ?FreePacket@DG_PACKET@@TAXPEV1@@Z
+ 000A:6AFA ?AllocateLargeBuffer@@ZAPEDI@Z
+ 000A:6B36 LIBMAIN
+ 000A:6B5A _WEP
+ 000A:6B8E EPRESOLVEENDPOINT
+ 000A:6F96 EPGETEPMAPPERENDPOINT
+ 000A:7010 BINDTOEPMAPPER
+ 000A:70E6 EPFREELOOKUPHANDLE
+ 000A:7142 _FixupForUniquePointerServers
+ 000A:71A4 MIDL_USER_ALLOCATE
+ 000A:71BA MIDL_USER_FREE
+ 000A:71D4 _ept_map
+ 000A:7396 ?InvalidHandle@GENERIC_OBJECT@@RACIG@Z
+ 000A:73C8 ?BindingCopy@MESSAGE_OBJECT@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:73CE ?ReferenceCredentials@CLIENT_AUTH_INFO@@RACXXZ
+ 000A:73E4 ??0CLIENT_AUTH_INFO@@RAC@PAU0@PEG@Z
+ 000A:745E ??1CLIENT_AUTH_INFO@@RAC@XZ
+ 000A:7496 ?IsSupportedAuthInfo@CLIENT_AUTH_INFO@@RACHPAU1@@Z
+ 000A:7524 ?Type@CCONNECTION@@VACGXZ
+ 000A:752A ??0BINDING_HANDLE@@JAC@XZ
+ 000A:75AC ??1BINDING_HANDLE@@VAC@XZ
+ 000A:75F2 CLOSEBINDINGS
+ 000A:7632 ?InquireObjectUuid@BINDING_HANDLE@@RACXPEVRPC_UUID@@@Z
+ 000A:764E ?SetObjectUuid@BINDING_HANDLE@@RACXPEVRPC_UUID@@@Z
+ 000A:76A0 ?SetComTimeout@BINDING_HANDLE@@RACGI@Z
+ 000A:76BE ?InquireEntryName@BINDING_HANDLE@@RACGKPEPEE@Z
+ 000A:7760 ?SetEntryName@BINDING_HANDLE@@RACGKPEE@Z
+ 000A:77A8 ?InquireDynamicEndpoint@BINDING_HANDLE@@VACGPEPEE@Z
+ 000A:77BC ?SetServerPrincipalName@BINDING_HANDLE@@VACHPEE@Z
+ 000A:77EA ?MapAuthenticationLevel@BINDING_HANDLE@@VACKK@Z
+ 000A:77F8 ?Type@BINDING_HANDLE@@VACGXZ
+ 000A:77FE ?SendReceive@BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:7804 ?Send@BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:780A ?Receive@BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:7810 ?FreeBuffer@BINDING_HANDLE@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:7814 ?SetConnectionParameter@BINDING_HANDLE@@VACGIK@Z
+ 000A:781A ?InqConnectionParameter@BINDING_HANDLE@@VACGIPEK@Z
+ 000A:7820 ?Send@CONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:7826 ?Receive@CONNECTION@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:782C ?DispatchCallback@@ZAGPEURPC_DISPATCH_TABLE@@PEU_RPC_MESSAGE@@PEG@Z
+ 000A:78E0 ?PerformGarbageCollection@@ZAXXZ
+ 000A:78E6 INITIALIZECLIENTDLL
+ 000A:793C ?SetAuthInformation@BINDING_HANDLE@@VACGPEEKKPEXKPAVSECURITY_CREDENTIALS@@@Z
+ 000A:7ADE ??_GSECURITY_CREDENTIALS@@RACPAXI@Z
+ 000A:7AF8 ??_GBINDING_HANDLE@@VACPAXI@Z
+ 000A:7B1A RPCPWINFARALLOCATE
+ 000A:7B2A RPCPWINFARFREE
+ 000A:7B3C ??0DLL@@RAC@PAEPAG@Z
+ 000A:7BF8 ?RpcConfigMapRpcProtocolSequence@@ZAGIPEEPEPAE@Z
+ 000A:7C98 GARBAGECOLLECTIONTIMER
+ 000A:7CA2 ?GarbageCollectionNeeded@@ZAXK@Z
+ 000A:7CD8 ?EnableGarbageCollection@@ZAGXZ
+ 000A:7CE2 ?CurrentTimeInSeconds@@ZAKXZ
+ 000A:7CEC ??2@ZAPAXI@Z
+ 000A:7CFC ??3@ZAXPAX@Z
+ 000A:7D0E ?RpcGetAdditionalTransportInfo@@ZAGKPEPEE@Z
+ 000A:7D12 ?RpcGetSecurityProviderInfo@@ZAGKPEPAEPEK@Z
+ 000A:7D2E I_RPCSENDRECEIVE
+ 000A:7D52 I_RPCSEND
+ 000A:7D76 I_RPCRECEIVE
+ 000A:7D9E ??0OSF_BINDING_HANDLE@@RAC@PEG@Z
+ 000A:7DD2 ?GetBuffer@OSF_BINDING_HANDLE@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:7EC4 ??1OSF_BINDING_HANDLE@@VAC@XZ
+ 000A:7F34 ?BindingCopy@OSF_BINDING_HANDLE@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:8034 ?BindingFree@OSF_BINDING_HANDLE@@VACGXZ
+ 000A:8056 ?PrepareBindingHandle@OSF_BINDING_HANDLE@@VACXPAXPAVDCE_BINDING@@@Z
+ 000A:8072 ?ToStringBinding@OSF_BINDING_HANDLE@@VACGPEPEE@Z
+ 000A:80C4 ?BindingReset@OSF_BINDING_HANDLE@@VACGXZ
+ 000A:8124 ?MapAuthenticationLevel@OSF_BINDING_HANDLE@@VACKK@Z
+ 000A:8144 ?ResolveBinding@OSF_BINDING_HANDLE@@VACGPEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:8178 ?AllocateConnection@OSF_BINDING_HANDLE@@RACGPEPAVOSF_CCONNECTION@@PEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:8250 ?AddActiveEntry@OSF_BINDING_HANDLE@@RACGPAVOSF_CCONNECTION@@PEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:82B4 ?FreeConnection@OSF_BINDING_HANDLE@@RACXPAVOSF_CCONNECTION@@@Z
+ 000A:830C ?AbortConnection@OSF_BINDING_HANDLE@@RACXPAVOSF_CCONNECTION@@@Z
+ 000A:832C ?RemoveActiveConnection@OSF_BINDING_HANDLE@@RACXPAVOSF_CCONNECTION@@@Z
+ 000A:8358 ?Send@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:83A6 ?SendNextChunk@OSF_CCONNECTION@@RACGPEU_RPC_MESSAGE@@@Z
+ 000A:83EC ?SendRecur@OSF_CCONNECTION@@RACGPEU_RPC_MESSAGE@@I@Z
+ 000A:8576 ?Receive@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:8652 ?SendReceive@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:868A ?SendReceiveRecur@OSF_CCONNECTION@@RACGPEU_RPC_MESSAGE@@I@Z
+ 000A:89B2 ?ReceiveMessage@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@PEII1@Z
+ 000A:8D5A ?SendRequestOrResponse@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@EPEVRPC_UUID@@H@Z
+ 000A:9040 ?SendFragment@OSF_CCONNECTION@@BACGPEUrpcconn_common@@IIIIIPEEPEPEXPEI@Z
+ 000A:9332 ?EatAuthInfoFromPacket@OSF_CCONNECTION@@BACGPEUrpcconn_request@@PEI@Z
+ 000A:94D8 ?ReceiveRequestOrResponse@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@I@Z
+ 000A:9660 ?ReceiveNextChunk@OSF_CCONNECTION@@BACGPEU_RPC_MESSAGE@@IH@Z
+ 000A:9A18 ?SendFault@OSF_CCONNECTION@@BACXGH@Z
+ 000A:9A78 ?GetBuffer@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@@Z
+ 000A:9ADA ?GetBufferDo@OSF_CCONNECTION@@RACGIPEPEX@Z
+ 000A:9B0C ?FreeBuffer@OSF_CCONNECTION@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:9B48 ?FreePipeBuffer@OSF_CCONNECTION@@VACXPEU_RPC_MESSAGE@@@Z
+ 000A:9B6A ?ReallocPipeBuffer@OSF_CCONNECTION@@VACGPEU_RPC_MESSAGE@@I@Z
+ 000A:9C10 ?BindingCopy@OSF_CCONNECTION@@VACGPEPAVBINDING_HANDLE@@I@Z
+ 000A:9C3A ?TransGetBuffer@OSF_CCONNECTION@@VACGPEPEXI@Z
+ 000A:9CC0 ?TransFreeBuffer@OSF_CCONNECTION@@VACXPEX@Z
+ 000A:9D08 ?ConstructPContextList@@ZAXPEUp_cont_list_t@@PEU_RPC_SYNTAX_IDENTIFIER@@1IE@Z
+ 000A:9D76 ?PingServer@OSF_CCONNECTION@@RACGXZ
+ 000A:9D88 ?SendBindPacket@OSF_CCONNECTION@@RACGPEU_RPC_SYNTAX_IDENTIFIER@@0IEKEPEPEXPEI@Z
+ 000A:A172 ?SetMaxFrag@OSF_CCONNECTION@@RACXGG@Z
+ 000A:A19A ?FreeConnection@OSF_CCONNECTION@@RACXXZ
+ 000A:A1B8 ?AbortConnection@OSF_CCONNECTION@@RACXH@Z
+ 000A:A208 ??0OSF_CCONNECTION@@JAC@PAUCLIENT_AUTH_INFO@@PEG@Z
+ 000A:A30A ??1OSF_CCONNECTION@@VAC@XZ
+ 000A:A39C ?MaybeDo3rdLegAuth@OSF_CCONNECTION@@RACGPEXI@Z
+ 000A:A6BE ??0OSF_CASSOCIATION@@RAC@PAVDCE_BINDING@@PAU_RPC_CLIENT_TRANSPORT_INFO@@PEG@Z
+ 000A:A72A ??1OSF_CASSOCIATION@@RAC@XZ
+ 000A:A7BE ?NotifyConnectionClosed@OSF_CASSOCIATION@@RACXXZ
+ 000A:A7D6 ?ProcessBindAckOrNak@OSF_CASSOCIATION@@BACGPEUrpcconn_common@@IPAVOSF_CCONNECTION@@@Z
+ 000A:AA7A ?PingServer@OSF_CASSOCIATION@@RACGXZ
+ 000A:AB04 ?ActuallyDoBinding@OSF_CASSOCIATION@@BACGPEU_RPC_SYNTAX_IDENTIFIER@@0IPEPAVOSF_CCONNECTION@@HIPAUCLIENT_AUTH_INFO@@K@Z
+ 000A:AE6E ?UnBind@OSF_CASSOCIATION@@RACXXZ
+ 000A:AEA0 ?FindOrCreateOsfBinding@OSF_CASSOCIATION@@RACPAVOSF_BINDING@@PEU_RPC_CLIENT_INTERFACE@@@Z
+ 000A:AF40 ?AllocateConnection@OSF_CASSOCIATION@@RACGPEU_RPC_CLIENT_INTERFACE@@PEPAVOSF_CCONNECTION@@IPAUCLIENT_AUTH_INFO@@@Z
+ 000A:B0C8 ?FreeConnection@OSF_CASSOCIATION@@RACHPAVOSF_CCONNECTION@@@Z
+ 000A:B11A ?ShutdownRequested@OSF_CASSOCIATION@@RACXXZ
+ 000A:B15E ?ToStringBinding@OSF_CASSOCIATION@@VACGPEPEEPEVRPC_UUID@@@Z
+ 000A:B18E ?FindOrCreateAssociation@@ZAPAVOSF_CASSOCIATION@@PAVDCE_BINDING@@PAU_RPC_CLIENT_TRANSPORT_INFO@@@Z
+ 000A:B24A ?CompareWithDceBinding@OSF_CASSOCIATION@@RACHPAVDCE_BINDING@@@Z
+ 000A:B27C ?FindIdleConnection@OSF_CASSOCIATION@@RACPAVOSF_CCONNECTION@@KK@Z
+ 000A:B2EA ?OsfDeleteIdleConnections@@ZAXXZ
+ 000A:B34C ?InitializeRpcProtocolOfsClient@@ZAHXZ
+ 000A:B378 ?OsfClientMapRpcProtocolSequence@@ZAPAXPEEPEG@Z
+ 000A:B3D6 ?OsfCreateBindingHandle@@ZAPAVBINDING_HANDLE@@XZ
+ 000A:B41E OSFTOWERCONSTRUCT
+ 000A:B48A OSFTOWEREXPLODE
+ 000A:B53E ?InquireTransportType@OSF_BINDING_HANDLE@@VACGPEI@Z
+ 000A:B550 ?DoConnectionCleanup@OSF_CCONNECTION@@BACXPEU_RPC_MESSAGE@@PEXGHH@Z
+ 000A:B5DC ?TransSendReceiveWithTimeout@OSF_CCONNECTION@@VACGPEXIPEPEXPEIK@Z
+ 000A:B5E2 ??_GOSF_BINDING_HANDLE@@VACPAXI@Z
+ 000A:B604 ??_GOSF_CCONNECTION@@VACPAXI@Z
+ 000A:B626 ?ConstructPacket@@ZAXPEUrpcconn_common@@EI@Z
+ 000A:B668 ?ValidatePacket@@ZAGPEUrpcconn_common@@I@Z
+ 000A:B7A2 ?ByteSwapSyntaxId@@ZAXPEUp_syntax_id_t@@@Z
+ 000A:B85A ?ConvertStringEbcdicToAscii@@ZAXPAE@Z
+ 000A:BA30 ?ConvertFromString@RPC_UUID@@RECHPEE@Z
+ 000A:BBC6 ?SetToNullUuid@RPC_UUID@@RECXXZ
+ 000A:BD50 ?ConvertToString@RPC_UUID@@RECPEEPEE@Z
+ 000A:BEA2 ?IsNullUuid@RPC_UUID@@RECHXZ
+ 000A:BEE0 ?HashUuid@RPC_UUID@@RECGXZ
+ 000A:BF0C _ByteSwapUuid
+ 000A:BF7C ??0SIMPLE_DICT@@RAC@XZ
+ 000A:BFAC ??1SIMPLE_DICT@@RAC@XZ
+ 000A:BFCC ?Insert@SIMPLE_DICT@@RACHPAX@Z
+ 000A:C06C ?Delete@SIMPLE_DICT@@RACPAXH@Z
+ 000A:C09E ?Next@SIMPLE_DICT@@RACPAXXZ
+ 000A:C0D8 _UnloadSecurityDll
+ 000A:C134 ?InsureSecuritySupportLoaded@@ZAGXZ
+ 000A:C17A ?FindSecurityPackage@@ZAGKKPEI0@Z
+ 000A:C486 ??0SECURITY_CREDENTIALS@@RAC@PEG@Z
+ 000A:C498 ?AcquireCredentialsForClient@SECURITY_CREDENTIALS@@RACGPEXKK@Z
+ 000A:C55A ?FreeCredentials@SECURITY_CREDENTIALS@@RACXXZ
+ 000A:C57A ?SetMaximumLengths@SECURITY_CONTEXT@@RACXXZ
+ 000A:C5C4 ??0SECURITY_CONTEXT@@RAC@PAUCLIENT_AUTH_INFO@@IHPEG@Z
+ 000A:C5F6 ?CompleteSecurityToken@SECURITY_CONTEXT@@RACGPEU_SecBufferDesc@@@Z
+ 000A:C646 ?SignOrSeal@SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 000A:C69A ?VerifyOrUnseal@SECURITY_CONTEXT@@RACGKIPEU_SecBufferDesc@@@Z
+ 000A:C700 ?InitializeFirstTime@CSECURITY_CONTEXT@@RACGPAVSECURITY_CREDENTIALS@@PAEKPEU_SecBufferDesc@@@Z
+ 000A:C830 ?InitializeThirdLeg@CSECURITY_CONTEXT@@RACGKPEU_SecBufferDesc@@0@Z
+ 000A:C8D4 ??0TRANS_CCONNECTION@@RAC@PAU_RPC_CLIENT_TRANSPORT_INFO@@PAE111PEGIPAUCLIENT_AUTH_INFO@@@Z
+ 000A:C948 ??1TRANS_CCONNECTION@@VAC@XZ
+ 000A:C978 ?TransReceive@TRANS_CCONNECTION@@VACGPEPEXPEI@Z
+ 000A:CA10 ?TransSetTimeout@TRANS_CCONNECTION@@VACGJ@Z
+ 000A:CA4A ?TransSend@TRANS_CCONNECTION@@VACGPEXI@Z
+ 000A:CA92 ?TransSendReceive@TRANS_CCONNECTION@@VACGPEXIPEPEXPEI@Z
+ 000A:CB8A ?TransSendReceiveWithTimeout@TRANS_CCONNECTION@@VACGPEXIPEPEXPEIK@Z
+ 000A:CD00 ?TransMaximumSend@TRANS_CCONNECTION@@VACIXZ
+ 000A:CD12 I_RPCTRANSCLIENTREALLOCBUFFER
+ 000A:CD94 I_RPCTRANSCLIENTMAXFRAG
+ 000A:CDAA I_RPCTRANSPINGSERVER
+ 000A:CDC4 ??0CLIENT_LOADABLE_TRANSPORT@@RAC@PAU_RPC_CLIENT_TRANSPORT_INFO@@PAE@Z
+ 000A:CDF0 ?LoadableTransportClientInfo@@ZAPAU_RPC_CLIENT_TRANSPORT_INFO@@PAEPEEPEG@Z
+ 000A:D0FA ?GetLoadedClientTransportInfoFromId@@ZAPEU_RPC_CLIENT_TRANSPORT_INFO@@G@Z
+ 000A:D136 ?InitializeLoadableTransportClient@@ZAHXZ
+ 000A:D162 _UnloadLoadableTransports
+ 000A:D19C _I_Trace
+ 000A:D19E ??_GTRANS_CCONNECTION@@VACPAXI@Z
+ 000A:D1C0 ?ToHexString@ULong64@@RECPEDPED@Z
+ 000A:D224 ?FromHexString@ULong64@@RECXPED@Z
+ 000A:D2CC ??Y@ZAXAEVULong64@@0@Z
+ 000A:D330 ??Y@ZAXAEVULong64@@K@Z
+ 000A:D36E ??Z@ZAXAEVULong64@@K@Z
+ 000A:D3A6 ??X@ZAXAEVULong64@@K@Z
+ 000A:D546 ??_3@ZAXAEVULong64@@I@Z
+ 000A:D5EE ??_2@ZAXAEVULong64@@I@Z
+ 000A:D68A ??P@ZAHAEVULong64@@0@Z
+ 000A:D6F2 ??N@ZAHAEVULong64@@0@Z
+ 000A:D940 ?CookupNodeId@@ZCGPEE@Z
+ 000A:D9E8 ?GetNodeId@@ZCGPEE@Z
+ 000A:DAB2 ?UuidTime@@ZCXPEVULong64@@@Z
+ 000A:DB4A ?LoadUuidValues@@ZCGPEVULong64@@PEK@Z
+ 000A:DC50 ?SaveUuidValues@@ZCGPEVULong64@@PEK@Z
+ 000A:DCFA ?UuidGetValues@@ZCGPEU_UUID_CACHED_VALUES_STRUCT@@@Z
+ 000A:DF62 WINDLLATEXIT
+ 000A:DFAA NOTIFICATIONSTART
+ 000A:DFDA NOTIFICATIONSTOP
+ 000A:DFFE WINDLLEXITHANDLERCALLBACK
+ 000A:E062 _InitializeWinExceptions
+ 000A:E126 EXCEPTIONCLEANUP
+ 000A:E15C RpcSetExceptionHandler
+ 000A:E272 RpcGetExceptionHandler
+ 000A:E29C RPCLEAVEEXCEPTION
+ 000A:E2D4 _PauseExecution
+ 000A:E2FC CREATEYIELDINFO
+ 000A:E322 DELETEYIELDINFO
+ 000A:E41A WINYIELDCLEANUP
+ 000A:E434 I_RPCYIELDDIALOGFUNCTION
+ 000A:E522 I_RPCWINCALLINPROGRESS
+ 000A:E582 _SafeIncrement
+ 000A:E58E _SafeDecrement
+ 000A:E59A RPCWINSETYIELDINFO
+ 000A:E65A RPCWINSETYIELDTIMEOUT
+ 000A:E68A I_RPCWINSETTASKYIELDING
+ 000A:E6FE I_RPCWINASYNCCALLBEGIN
+ 000A:E762 YIELDTIMERCALLBACK
+ 000A:E794 I_RPCWINASYNCCALLWAIT
+ 000A:EB04 I_RPCWINASYNCCALLEND
+ 000A:EB72 I_RPCWINISTASKYIELDING
+ 000A:EBA2 RPCREGCLOSEKEY
+ 000A:EC00 RPCREGCREATEKEY
+ 000A:ED4A RPCREGOPENKEY
+ 000A:EE76 RPCREGSETVALUE
+ 000A:F106 RPCREGQUERYVALUE
+ 000A:F282 _OpenRegistryFileIfNecessary
+ 000A:F300 _CloseRegistryFile
+ 000A:F312 _BuildFullKeyName
+ 000A:F378 NDRCCONTEXTBINDING
+ 000A:F3B4 NDRCCONTEXTMARSHALL
+ 000A:F4F6 NDRCCONTEXTUNMARSHALL
+ 000A:F64C RPCSSDESTROYCLIENTCONTEXT
+ 000A:F698 MIDL_WCHAR_STRLEN
+ 000A:F6C4 MIDL_WCHAR_STRCPY
+ 000A:F6FA CHAR_FROM_NDR
+ 000A:F73E CHAR_ARRAY_FROM_NDR
+ 000A:F7D0 ?NdrpLongByteSwap@@ZCXPEX0@Z
+ 000A:F83E FLOAT_FROM_NDR
+ 000A:F8F4 FLOAT_ARRAY_FROM_NDR
+ 000A:FA0A DOUBLE_FROM_NDR
+ 000A:FAF6 DOUBLE_ARRAY_FROM_NDR
+ 000B:0000 DATA_FROM_NDR
+ 000B:0768 DATA_INTO_NDR
+ 000B:0B48 TREE_INTO_NDR
+ 000B:0E68 DATA_SIZE_NDR
+ 000B:11D0 TREE_SIZE_NDR
+ 000B:144C TREE_PEEK_NDR
+ 000B:1704 SHORT_FROM_NDR
+ 000B:1768 SHORT_ARRAY_FROM_NDR
+ 000B:1818 SHORT_FROM_NDR_TEMP
+ 000B:1878 LONG_FROM_NDR
+ 000B:1926 LONG_ARRAY_FROM_NDR
+ 000B:1A26 LONG_FROM_NDR_TEMP
+ 000B:1AD0 ENUM_FROM_NDR
+ 000B:1B42 HYPER_FROM_NDR
+ 000B:1C78 HYPER_ARRAY_FROM_NDR
+ 000B:1DDA HYPER_FROM_NDR_TEMP
+ 000B:1F0C NDRSIMPLETYPEMARSHALL
+ 000B:2046 NDRPOINTERMARSHALL
+ 000B:20B8 _NdrpPointerMarshall
+ 000B:21CA NDRSIMPLESTRUCTMARSHALL
+ 000B:2262 NDRCONFORMANTSTRUCTMARSHALL
+ 000B:237C _NdrpConformantStringMarshall
+ 000B:24C4 NDRFIXEDARRAYMARSHALL
+ 000B:2590 NDRCONFORMANTARRAYMARSHALL
+ 000B:25E2 _NdrpConformantArrayMarshall
+ 000B:26B2 NDRCONFORMANTVARYINGARRAYMARSHALL
+ 000B:2704 _NdrpConformantVaryingArrayMarshall
+ 000B:2850 NDRVARYINGARRAYMARSHALL
+ 000B:29A4 NDRCOMPLEXARRAYMARSHALL
+ 000B:2B14 _NdrpComplexArrayMarshall
+ 000B:2FEA NDRENCAPSULATEDUNIONMARSHALL
+ 000B:30AE NDRNONENCAPSULATEDUNIONMARSHALL
+ 000B:311C _NdrpUnionMarshall
+ 000B:32CE NDRBYTECOUNTPOINTERMARSHALL
+ 000B:3332 NDRXMITORREPASMARSHALL
+ 000B:3480 NDRUSERMARSHALMARSHALL
+ 000B:3618 NDRINTERFACEPOINTERMARSHALL
+ 000B:362A NDRCLIENTCONTEXTMARSHALL
+ 000B:367C NDRSERVERCONTEXTMARSHALL
+ 000B:368A NDRSIMPLETYPEUNMARSHALL
+ 000B:37BC NDRPOINTERUNMARSHALL
+ 000B:3874 _NdrpPointerUnmarshall
+ 000B:3CBE NDRSIMPLESTRUCTUNMARSHALL
+ 000B:3DF4 NDRCONFORMANTSTRUCTUNMARSHALL
+ 000B:3FCC NDRCLIENTINITIALIZENEW
+ 000B:4056 NDRCLIENTINITIALIZE
+ 000B:415C _MakeSureWeHaveNonPipeArgs
+ 000B:41E6 NDRSERVERINITIALIZENEW
+ 000B:42DC NDRSERVERINITIALIZE
+ 000B:4400 NDRSERVERINITIALIZEPARTIAL
+ 000B:449E NDRGETBUFFER
+ 000B:4526 _EnsureNSLoaded
+ 000B:4592 NDRNSGETBUFFER
+ 000B:461E NDRSENDRECEIVE
+ 000B:46A6 NDRNSSENDRECEIVE
+ 000B:4736 NDRFREEBUFFER
+ 000B:4782 NDRALLOCATE
+ 000B:47E6 NDRSERVERINITIALIZEUNMARSHALL
+ 000B:480C NDRSERVERINITIALIZEMARSHALL
+ 000B:481A ??_C@_0L@OGFF@RPCNS1?4DLL?$AA@
+ 000B:4826 ??_C@_0BB@DMFF@I_RPCNSGETBUFFER?$AA@
+ 000B:4838 ??_C@_0BD@CMGM@I_RPCNSSENDRECEIVE?$AA@
+ 000B:484C NDRMAPCOMMANDFAULTSTATUS
+ 000B:48DA NDRPOINTERFREE
+ 000B:49CC NDRSIMPLESTRUCTFREE
+ 000B:49FC NDRCONFORMANTSTRUCTFREE
+ 000B:4A5E NDRCONFORMANTVARYINGSTRUCTFREE
+ 000B:4AE6 NDRHARDSTRUCTFREE
+ 000B:4B3A NDRCOMPLEXSTRUCTFREE
+ 000B:4DBA NDRFIXEDARRAYFREE
+ 000B:4E02 NDRCONFORMANTARRAYFREE
+ 000B:4E64 NDRCONFORMANTVARYINGARRAYFREE
+ 000B:4EEC NDRVARYINGARRAYFREE
+ 000B:4F6A NDRCOMPLEXARRAYFREE
+ 000B:526C NDRENCAPSULATEDUNIONFREE
+ 000B:531E NDRNONENCAPSULATEDUNIONFREE
+ 000B:5378 _NdrpUnionFree
+ 000B:5450 NDRBYTECOUNTPOINTERFREE
+ 000B:5484 NDRXMITORREPASFREE
+ 000B:54E8 NDRUSERMARSHALFREE
+ 000B:554C NDRINTERFACEPOINTERFREE
+ 000B:555A _NdrpEmbeddedPointerFree
+ 000B:5636 _NdrpEmbeddedRepeatPointerFree
+ 000B:5784 NDRPOINTERBUFFERSIZE
+ 000B:57DE _NdrpPointerBufferSize
+ 000B:58D4 NDRSIMPLESTRUCTBUFFERSIZE
+ 000B:594C NDRCONFORMANTSTRUCTBUFFERSIZE
+ 000B:5A04 NDRCONFORMANTVARYINGSTRUCTBUFFERSIZE
+ 000B:5AE2 NDRHARDSTRUCTBUFFERSIZE
+ 000B:5B78 NDRCOMPLEXSTRUCTBUFFERSIZE
+ 000B:5F54 NDRFIXEDARRAYBUFFERSIZE
+ 000B:5FF4 NDRCONFORMANTARRAYBUFFERSIZE
+ 000B:603E _NdrpConformantArrayBufferSize
+ 000B:60EE NDRCONFORMANTVARYINGARRAYBUFFERSIZE
+ 000B:6138 _NdrpConformantVaryingArrayBufferSize
+ 000B:6272 NDRVARYINGARRAYBUFFERSIZE
+ 000B:63CA NDRCOMPLEXARRAYBUFFERSIZE
+ 000B:644E _NdrpComplexArrayBufferSize
+ 000B:6878 NDRNONCONFORMANTSTRINGBUFFERSIZE
+ 000B:69A8 NDRCONFORMANTSTRINGBUFFERSIZE
+ 000B:6A00 _NdrpConformantStringBufferSize
+ 000B:6B66 NDRENCAPSULATEDUNIONBUFFERSIZE
+ 000B:6C28 NDRNONENCAPSULATEDUNIONBUFFERSIZE
+ 000B:6C92 _NdrpUnionBufferSize
+ 000B:6E58 NDRBYTECOUNTPOINTERBUFFERSIZE
+ 000B:6EFA NDRXMITORREPASBUFFERSIZE
+ 000B:7070 NDRUSERMARSHALBUFFERSIZE
+ 000B:718E NDRINTERFACEPOINTERBUFFERSIZE
+ 000B:719C _NdrpEmbeddedPointerBufferSize
+ 000B:727A _NdrpEmbeddedRepeatPointerBufferSize
+ 000B:73EC NDRCONTEXTHANDLESIZE
+ 000B:7422 _NdrClientCall
+ 000B:7BAC _NdrClientZeroOut
+ 000B:7C2C NDRCLEAROUTPARAMETERS
+ 000B:7D38 _NdrClientMapCommFault
+ 000B:7E1C _NdrClientCall2
+ 000B:85C6 _NdrpSetRpcSsDefaults
+ 000B:8646 ?CheckIfMtrtHeapInitialized@@ZAGXZ
+ 000B:864A ?GetCreateAllocationContext@@ZAPEU_ALLOCATION_CONTEXT@@XZ
+ 000B:86BC RPCSSALLOCATE
+ 000B:875E RPCSSDISABLEALLOCATE
+ 000B:87F8 RPCSSENABLEALLOCATE
+ 000B:883A RPCSSFREE
+ 000B:88CC RPCSSGETTHREADHANDLE
+ 000B:890C RPCSSSETCLIENTALLOCFREE
+ 000B:8940 RPCSSSETTHREADHANDLE
+ 000B:8962 RPCSSSWAPCLIENTALLOCFREE
+ 000B:89C0 RPCSMALLOCATE
+ 000B:8A12 RPCSMCLIENTFREE
+ 000B:8A4E RPCSMDISABLEALLOCATE
+ 000B:8A82 RPCSMDESTROYCLIENTCONTEXT
+ 000B:8ABE RPCSMENABLEALLOCATE
+ 000B:8AF2 RPCSMFREE
+ 000B:8B2E RPCSMGETTHREADHANDLE
+ 000B:8B80 RPCSMSETCLIENTALLOCFREE
+ 000B:8BC6 RPCSMSETTHREADHANDLE
+ 000B:8C02 RPCSMSWAPCLIENTALLOCFREE
+ 000B:8C50 ??2@ZAPEXI@Z
+ 000B:8C62 ?GetAllocContext@@ZAPEU_ALLOCATION_CONTEXT@@XZ
+ 000B:8CD4 ?GetAllocContextNoCreate@@ZAPEU_ALLOCATION_CONTEXT@@XZ
+ 000B:8D04 ?SetAllocContext@@ZAXPEU_ALLOCATION_CONTEXT@@@Z
+ 000B:8D36 _NdrRpcDeleteAllocationContext
+ 000B:8D82 _ForceNdrCleanupSegIntoMemory
+ 000B:8D84 NDRRPCSSENABLEALLOCATE
+ 000B:8DB8 NDRRPCSSDISABLEALLOCATE
+ 000B:8DEC NDRRPCSMSETCLIENTTOOSF
+ 000B:8E18 NDRRPCSSDEFAULTALLOCATE
+ 000B:8E2E NDRRPCSSDEFAULTFREE
+ 000B:8E48 NDRRPCSMCLIENTALLOCATE
+ 000B:8E7A NDRRPCSMCLIENTFREE
+ 000B:8EB4 ?NdrpHandleAllocate@@ZAGPEPAX@Z
+ 000B:8EE2 MESHANDLEFREE
+ 000B:8F00 I_NDRMESMESSAGEINIT
+ 000B:8F32 MESENCODEINCREMENTALHANDLECREATE
+ 000B:8FA0 MESDECODEINCREMENTALHANDLECREATE
+ 000B:900C MESINCREMENTALHANDLERESET
+ 000B:9126 MESENCODEFIXEDBUFFERHANDLECREATE
+ 000B:91B0 MESENCODEDYNBUFFERHANDLECREATE
+ 000B:922C MESDECODEBUFFERHANDLECREATE
+ 000B:92CE MESBUFFERHANDLERESET
+ 000B:9462 MESINQPROCENCODINGID
+ 000B:952A ?NdrpAllocPicklingBuffer@@ZAXPEU_MIDL_ES_MESSAGE@@I@Z
+ 000B:965C ?NdrpReadPicklingBuffer@@ZAXPEU_MIDL_ES_MESSAGE@@I@Z
+ 000B:96BA ?NdrpWritePicklingBuffer@@ZAXPEU_MIDL_ES_MESSAGE@@PEEI@Z
+ 000B:970A ?NdrpProcHeaderMarshall@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:9840 ?NdrpProcHeaderUnmarshall@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:998E ?NdrpDataBufferInit@@ZAXPEU_MIDL_ES_MESSAGE@@PFE@Z
+ 000B:9A30 _NdrMesProcEncodeDecode
+ 000B:9FBA ?NdrpCommonTypeHeaderSize@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:9FF4 NDRMESTYPEALIGNSIZE
+ 000B:A0F8 ?NdrpCommonTypeHeaderMarshall@@ZAIPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:A162 NDRMESTYPEENCODE
+ 000B:A2F0 ?NdrpCommonTypeHeaderUnmarshall@@ZAXPEU_MIDL_ES_MESSAGE@@@Z
+ 000B:A3B0 NDRMESTYPEDECODE
+ 000B:A5F4 ?NdrMesTypeFree@@ZCXPAXPFU_MIDL_STUB_DESC@@PFEPEX@Z
+ 000B:A6B8 NDRMESSIMPLETYPEALIGNSIZE
+ 000B:A70A NDRMESSIMPLETYPEENCODE
+ 000B:A812 NDRMESSIMPLETYPEDECODE
+ 000B:A946 _NdrpEmbeddedPointerMarshall
+ 000B:AABC _NdrpEmbeddedRepeatPointerMarshall
+ 000B:AC3C _NdrpComputeConformance
+ 000B:AEE2 _NdrpComputeVariance
+ 000B:B1F4 _NdrpEmbeddedPointerUnmarshall
+ 000B:B35A _NdrpEmbeddedRepeatPointerUnmarshall
+ 000B:B4D4 _GenericHandleMgr
+ 000B:B5FA _GenericHandleUnbind
+ 000B:B664 _ImplicitBindHandleMgr
+ 000B:B6CA _ExplicitBindHandleMgr
+ 000B:B788 NDRMARSHALLHANDLE
+ 000B:B81E NDRUNMARSHALLHANDLE
+ 000B:B8B8 _NdrpMemoryIncrement
+ 000B:BC9C _NdrpArrayDimensions
+ 000B:BD34 _NdrpArrayElements
+ 000B:BE40 _NdrpArrayVariance
+ 000B:BEEC _NdrpSkipPointerLayout
+ 000B:BF4A _NdrpStringStructLen
+ 000B:BF9E _NdrpCheckBound
+ 000B:C010 ??0SIMPLE_DICT2@@REC@XZ
+ 000B:C062 ?Insert@SIMPLE_DICT2@@RECHPEX0@Z
+ 000B:C21A ?Delete@SIMPLE_DICT2@@RECPEXPEX@Z
+ 000B:C278 ?Find@SIMPLE_DICT2@@RECPEXPEX@Z
+ 000C:0000 I_RPCWINASYNCCALLCOMPLETE
+ 000D:0000 ?RpcSsDefaults@@3U_MALLOC_FREE_STRUCT@@E
+ 000E:0004 rsrvptrs
+ 000E:0010 ?LeaveSomeRoom@@3QADA
+ 000E:007E _conv_ServerIfHandle
+ 000E:00E4 _conv_DispatchTable
+ 000E:018E ?ClientGlobalsInitialized@@3HA
+ 000E:0190 ?RpcToPacketFlagsArray@@3QBIB
+ 000E:01A0 ?PacketToRpcFlagsArray@@3QBIB
+ 000E:021A ?PartialRetries@@3KA
+ 000E:021E ?ReallyTooBusy@@3KA
+ 000E:0260 _epmp_ClientIfHandle
+ 000E:0336 ?DefaultMaxDatagramLength@@3IA
+ 000E:0338 ?DefaultConnectionBufferLength@@3IA
+ 000E:0340 ?RpcClientNcacnMap@@3QAU_PROTSEQ_MAP@@A
+ 000E:0368 ?GcTimerStarted@@3IA
+ 000E:036A ?EnableGc@@3IA
+ 000E:036C _GcTimerIdentifier
+ 000E:037E ?SecuritySupportLoaded@@3HA
+ 000E:0380 ?FailedToLoad@@3HA
+ 000E:0382 ?NumberOfProviders@@3KA
+ 000E:0386 ?LoadedProviders@@3KA
+ 000E:038A ?AvailableProviders@@3KA
+ 000E:038E ?ProviderList@@3PEUSECURITY_PROVIDER_INFO@@E
+ 000E:03AA _TaskExiting
+ 000E:03AC _OODebug
+ 000E:03B4 _RpcClientRuntimeInfo
+ 000E:03E8 _STKHQQ
+ 000E:03EA __hModule
+ 000E:03EC __wDataSeg
+ 000E:03EE __wHeapSize
+ 000E:03F0 __lpszCmdLine
+ 000E:03F4 __dllinit
+ 000E:03F5 _aseglo
+ 000E:03F7 _aseghi
+ 000E:03F9 ___aDBswpflg
+ 000E:03FB ___aDBrterr
+ 000E:03FE __pnhFarHeap
+ 000E:0402 __aintdiv
+ 000E:0406 __fac
+ 000E:0410 _errno
+ 000E:0412 __umaskval
+ 000E:0414 __winminor
+ 000E:0414 __winver
+ 000E:0415 __winmajor
+ 000E:0416 __osver
+ 000E:0416 __osminor
+ 000E:0417 __osmajor
+ 000E:0418 __osversion
+ 000E:041A __osmode
+ 000E:041B __cpumode
+ 000E:041C __doserrno
+ 000E:041C __oserr
+ 000E:041E __nfile
+ 000E:0420 __osfile
+ 000E:0434 ___argc
+ 000E:0436 ___argv
+ 000E:0438 __environ
+ 000E:043A __pgmptr
+ 000E:043F __child
+ 000E:0441 __exitflag
+ 000E:0442 __adbgmsg
+ 000E:0446 __fheap
+ 000E:0454 __amblksiz
+ 000E:045E __lpdays
+ 000E:0478 __days
+ 000E:0492 __timezone
+ 000E:0496 __daylight
+ 000E:04A0 __tzname
+ 000E:04A4 __pnhNearHeap
+ 000E:04A8 _HkeyClassesRoot
+ 000E:04AE _RegistryDataFile
+ 000E:04B0 ?ebcdic_to_ascii@@3QEEE
+ 000E:05B0 _MarshallRoutinesTable
+ 000E:0640 _pfnMarshallRoutines
+ 000E:0644 _MemSizeRoutinesTable
+ 000E:06D4 _pfnMemSizeRoutines
+ 000E:06D8 _UnmarshallRoutinesTable
+ 000E:0768 _pfnUnmarshallRoutines
+ 000E:076C _ConvertRoutinesTable
+ 000E:07FC _pfnConvertRoutines
+ 000E:0800 _EbcdicToAscii
+ 000E:0900 _NsDllLoaded
+ 000E:0932 _FreeRoutinesTable
+ 000E:09C2 _pfnFreeRoutines
+ 000E:09C6 _SizeRoutinesTable
+ 000E:0A56 _pfnSizeRoutines
+ 000E:0A5A _pRpcSsDefaults
+ 000E:0A62 _SimpleTypeAlignment
+ 000E:0A74 _SimpleTypeBufferSize
+ 000E:0A86 _SimpleTypeMemorySize
+ 000E:0A98 _NdrTypeFlags
+ 000E:0D8C _vax_c
+ 000E:0DCC _ieee_s
+ 000E:0E04 _ieee_t
+ 000E:0E74 _ibm_s
+ 000E:0E90 _ibm_l
+ 000E:0EC8 _cray
+ 000E:0F00 _int_c
+ 000E:0F4A __lastiob
+ 000E:0F66 __cfltcvt_tab
+ 000E:0F82 __sigintseg
+ 000E:0F84 __sigintoff
+ 000E:0F86 __asizeC
+ 000E:0F87 __asizeD
+ 000E:0F94 __aaltstkovr
+ 000E:0F98 __cflush
+ 000E:0F9C __commode
+ 000E:0F9E __lseekchk
+ 000E:0FA0 __ctype_
+ 000E:0FA0 __ctype
+ 000E:10C6 __iomode
+ 000E:10C6 __fmode
+ 000E:111C ??_C@_08GFKM@endpoint?$AA@
+ 000E:1126 ??_C@_07DFNK@ncalrpc?$AA@
+ 000E:112E ??_C@_06KGKC@ncadg_?$AA@
+ 000E:1136 ??_C@_06LLDN@ncacn_?$AA@
+ 000E:113E ??_C@_06MNFC@mswmsg?$AA@
+ 000E:1146 ??_7MESSAGE_OBJECT@@6B@
+ 000E:116A ??_7DG_BINDING_HANDLE@@6B@
+ 000E:11C6 ??_7CONNECTION@@6B@
+ 000E:11EA ??_7DG_CASSOCIATION@@6B@
+ 000E:11EE ??_7DG_CCALL@@6BCCONNECTION@@@
+ 000E:1216 ??_7DG_CCALL@@6BDG_PACKET_ENGINE@@@
+ 000E:121A ??_7GENERIC_OBJECT@@6B@
+ 000E:121E ??_7CCONNECTION@@6B@
+ 000E:1242 ??_7DG_PACKET_ENGINE@@6B@
+ 000E:1246 ??_C@_08DNBJ@ncacn_np?$AA@
+ 000E:1250 ??_C@_0P@OKDC@?2pipe?2epmapper?$AA@
+ 000E:1260 ??_C@_08JCOI@epmapper?$AA@
+ 000E:126A ??_C@_0N@JDIH@ncacn_ip_tcp?$AA@
+ 000E:1278 ??_C@_03EOPG@135?$AA@
+ 000E:127C ??_C@_0N@OGGG@ncadg_ip_udp?$AA@
+ 000E:128A ??_C@_0P@MCIL@ncacn_dnet_nsp?$AA@
+ 000E:129A ??_C@_03HJFF@?$CD69?$AA@
+ 000E:129E ??_C@_0M@PAMB@ncacn_nb_nb?$AA@
+ 000E:12AA ??_C@_0N@OHPK@ncacn_nb_xns?$AA@
+ 000E:12B8 ??_C@_0N@DJPI@ncacn_nb_tcp?$AA@
+ 000E:12C6 ??_C@_0N@JHIF@ncacn_nb_ipx?$AA@
+ 000E:12D4 ??_C@_09LLEG@ncacn_spx?$AA@
+ 000E:12DE ??_C@_05LKBG@34280?$AA@
+ 000E:12E4 ??_C@_09OHNL@ncadg_ipx?$AA@
+ 000E:12EE ??_C@_0N@PFNA@ncacn_at_dsp?$AA@
+ 000E:12FC ??_C@_0BA@LJDB@Endpoint?5Mapper?$AA@
+ 000E:130C ??_C@_0O@IPEE@ncacn_vns_spp?$AA@
+ 000E:131A ??_C@_03GEHA@385?$AA@
+ 000E:131E ??_C@_06HKKF@RPCNS1?$AA@
+ 000E:1326 ??_C@_0BI@FLG@I_GETDEFAULTENTRYSYNTAX?$AA@
+ 000E:133E ??_7BINDING_HANDLE@@6B@
+ 000E:139A ??_C@_07OIMF@rpc16c1?$AA@
+ 000E:13A2 ??_C@_07LNOL@rpc16c3?$AA@
+ 000E:13AA ??_C@_07OIAO@rpc16c4?$AA@
+ 000E:13B2 ??_C@_07ECJJ@rpc16c5?$AA@
+ 000E:13BA ??_C@_07LNCA@rpc16c6?$AA@
+ 000E:13C2 ??_C@_07BGOK@rpc16c8?$AA@
+ 000E:13CA ??_C@_08PDFD@rpc16dg3?$AA@
+ 000E:13D4 ??_C@_08PDJI@rpc16dg6?$AA@
+ 000E:13DE ??_C@_0CH@FABF@Software?2Microsoft?2Rpc?2ClientPro@
+ 000E:1406 ??_C@_08PBBB@security?$AA@
+ 000E:1410 ??_7OSF_CCONNECTION@@6B@
+ 000E:1458 ??_7OSF_CASSOCIATION@@6B@
+ 000E:145C ??_7OSF_BINDING_HANDLE@@6B@
+ 000E:14B8 ??_C@_0BH@NHJB@INITSECURITYINTERFACEA?$AA@
+ 000E:14D0 ??_C@_0M@IBML@?$CFd?4?$CFd?4?$CFd?4?$CFd?$AA@
+ 000E:14DC ??_C@_0O@JAOA@TRANSPORTLOAD?$AA@
+ 000E:14EA ??_7TRANS_CCONNECTION@@6B@
+ 000E:1532 ??_C@_0BB@PCNE@0123456789abcdef?$AA@
+ 000E:1544 ??_C@_0DG@FPPK@Software?2Description?2Microsoft?2R@
+ 000E:157A ??_C@_0O@FLAE@ClockSequence?$AA@
+ 000E:1588 ??_C@_0BC@GBOB@LastTimeAllocated?$AA@
+ 000E:159A ??_C@_0N@BDMF@NWIPXSPX?4DLL?$AA@
+ 000E:15A8 ??_C@_0O@GLEB@IPXInitialize?$AA@
+ 000E:15B6 ??_C@_0N@DBEN@IPXSPXDeinit?$AA@
+ 000E:15C4 ??_C@_0BK@HJNG@IPXGetInternetworkAddress?$AA@
+ 000E:15DE ??_C@_0BG@DOMJ@Remote?5Procedure?5Call?$AA@
+ 000E:15F4 ??_C@_0EO@DPEN@Application?5encountered?5unhandle@
+ 000E:1642 ??_C@_08KHKC@RPCYIELD?$AA@
+ 000E:164C ??_C@_02EHDJ@?$DN?6?$AA@
+ 000E:1650 ??_C@_01KPOD@?$DN?$AA@
+ 000E:1652 ??_C@_02IAAH@wt?$AA@
+ 000E:1656 ??_C@_01BJG@?6?$AA@
+ 000E:1658 ??_C@_05HHOP@?2Root?$AA@
+ 000E:165E ??_C@_0O@LDIE@c?3?2RpcReg?4dat?$AA@
+ 000E:166C ??_C@_0BC@GCIN@RPC_REG_DATA_FILE?$AA@
+ 000E:167E ??_C@_0BI@BCIP@RPC?5Runtime?5Preferences?$AA@
+ 000E:1696 ??_C@_03ONMN@r?$CLt?$AA@
+ 000E:169A ??_C@_03PHIB@w?$CLt?$AA@
+ 000E:169E ??_C@_01PCFE@?2?$AA@
+ 000E:16A6 __fpinit
+ 000E:16B6 __iob
+ 000E:1756 __iob2
+ 000E:182E ?__MIDLFormatString@@3U_MIDL_FORMAT_STRING@@F
+ 000E:1BFA _edata
+ 000E:1BFA __edata
+ 000E:1BFA ?ThreadStatic@@3VTHREAD@@A
+ 000E:1BFC ?UuidCachedValues@@3U_UUID_CACHED_VALUES_STRUCT@@A
+ 000E:1C14 ?EpmDict@@3PAVDG_ENDPOINT_MANAGER_DICT@@A
+ 000E:1C28 ?PacketListMutex@DG_PACKET@@0PAVMUTEX@@A
+ 000E:1C2A ?PacketLists@DG_PACKET@@0QAUPACKET_LIST@1@A
+ 000E:1C6C ?SecurityCritSect@@3PAVMUTEX@@A
+ 000E:1C78 ?LoadedLoadableTransports@@3PAVCLIENT_LOADABLE_TRANSPORT_DICT@@A
+ 000E:2BB0 _ExceptTable
+ 000E:2BB2 _pRpcNsGetBuffer
+ 000E:2BB6 _impH
+ 000E:2BB8 _pRpcNsSendReceive
+ 000E:2BBC _hInstanceDLL
+ 000E:2BBE __mbac
+ 000E:2BC6 _TableSize
+ 000E:2BC8 _RegistryDataFileName
+ 000E:2CC9 _end
+ 000E:2CC9 __end
+ 0000:4000 Abs FJARQQ
+ 0000:5C32 Abs FIDRQQ
+ 0000:8000 Abs FJSRQQ
+ 0000:A23D Abs FIWRQQ
+ 0000:C000 Abs FJCRQQ
+ 0000:FE32 Abs FIARQQ
+
+Program entry point at 0004:0054
diff --git a/public/sdk/rpc16/win/dll/rpcrt1.sym b/public/sdk/rpc16/win/dll/rpcrt1.sym
new file mode 100644
index 000000000..e974f3d1e
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/rpcrt1.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/dll/security.map b/public/sdk/rpc16/win/dll/security.map
new file mode 100644
index 000000000..36101ffbf
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/security.map
@@ -0,0 +1,536 @@
+
+ security
+
+ Start Length Name Class
+ 0001:0000 030EDH _TEXT CODE
+ 0001:30ED 00074H INIT_TEXT CODE
+ 0001:3162 000D0H ECB_TEXT CODE
+ 0001:3232 00570H DES_TEXT CODE
+ 0001:37A2 00054H WEP_TEXT CODE
+ 0001:3800 000AFH COMDAT_SEG1 CODE
+ 0002:0000 00428H FAR_BSS FAR_BSS
+ 0003:0000 00010H NULL BEGDATA
+ 0003:0010 00912H _DATA DATA
+ 0003:0922 0000EH CDATA DATA
+ 0003:0930 00000H XIFB DATA
+ 0003:0930 00000H XIF DATA
+ 0003:0930 00000H XIFE DATA
+ 0003:0930 00000H XIB DATA
+ 0003:0930 00000H XI DATA
+ 0003:0930 00000H XIE DATA
+ 0003:0930 00000H XPB DATA
+ 0003:0930 00000H XP DATA
+ 0003:0930 00000H XPE DATA
+ 0003:0930 00000H XCB DATA
+ 0003:0930 00000H XC DATA
+ 0003:0930 00000H XCE DATA
+ 0003:0930 00000H XCFB DATA
+ 0003:0930 00000H XCFCRT DATA
+ 0003:0930 00000H XCF DATA
+ 0003:0930 00000H XCFE DATA
+ 0003:0930 00000H XIFCB DATA
+ 0003:0930 00000H XIFU DATA
+ 0003:0930 00000H XIFL DATA
+ 0003:0930 00000H XIFM DATA
+ 0003:0930 00000H XIFCE DATA
+ 0003:0930 00000H DBDATA DATA
+ 0003:0930 00010H CONST CONST
+ 0003:0940 00008H HDR MSG
+ 0003:0948 000D4H MSG MSG
+ 0003:0A1C 00002H PAD MSG
+ 0003:0A1E 00001H EPAD MSG
+ 0003:0A20 00050H _BSS BSS
+ 0003:0A70 00000H XOB BSS
+ 0003:0A70 00000H XO BSS
+ 0003:0A70 00000H XOE BSS
+ 0003:0A70 00000H XOFB BSS
+ 0003:0A70 00000H XOF BSS
+ 0003:0A70 00000H XOFE BSS
+ 0003:0A70 00004H c_common BSS
+
+ Origin Group
+ 0003:0 DGROUP
+
+ Address Export Alias
+
+ 0001:0DD6 ACQUIRECREDENTIALSHANDLEA ACQUIRECREDENTIALSHANDLEA
+ 0001:19DE APPLYCONTROLTOKEN APPLYCONTROLTOKEN
+ 0001:2258 COMPLETEAUTHTOKEN COMPLETEAUTHTOKEN
+ 0001:196A DELETESECURITYCONTEXT DELETESECURITYCONTEXT
+ 0001:2C28 DlgCredProc DlgCredProc
+ 0001:0DA0 ENUMERATESECURITYPACKAGESA ENUMERATESECURITYPACKAGESA
+ 0001:19C0 FREECONTEXTBUFFER FREECONTEXTBUFFER
+ 0001:0EEE FREECREDENTIALSHANDLE FREECREDENTIALSHANDLE
+ 0001:1716 INITIALIZESECURITYCONTEXTA INITIALIZESECURITYCONTEXTA
+ 0001:0924 INITSECURITYINTERFACEA INITSECURITYINTERFACEA
+ 0001:1A2C MAKESIGNATURE MAKESIGNATURE
+ 0001:1838 QUERYCONTEXTATTRIBUTESA QUERYCONTEXTATTRIBUTESA
+ 0001:0CA4 QUERYSECURITYPACKAGEINFOA QUERYSECURITYPACKAGEINFOA
+ 0001:1E44 SEALMESSAGE SEALMESSAGE
+ 0001:2050 UNSEALMESSAGE UNSEALMESSAGE
+ 0001:1C24 VERIFYSIGNATURE VERIFYSIGNATURE
+ 0001:08FA ___ExportedStub ___ExportedStub
+
+ Address Publics by Name
+
+ 0001:3800 ??_C@_04KIKH@none?$AA@
+ 0001:3806 ??_C@_04PJIL@NTLM?$AA@
+ 0001:384C ??_C@_05CKBG@Error?$AA@
+ 0001:382A ??_C@_06EJJP@NETAPI?$AA@
+ 0001:3822 ??_C@_07LBGP@NTLMSSP?$AA@
+ 0001:38A6 ??_C@_08OLPO@KGS?$CB?$EA?$CD$?$CF?$AA@
+ 0001:3842 ??_C@_09CIPE@WORKGROUP?$AA@
+ 0001:3832 ??_C@_0BA@JFAM@NETWKSTAGETINFO?$AA@
+ 0001:380C ??_C@_0BG@FFCA@NTLM?5Security?5Package?$AA@
+ 0001:386A ??_C@_0BG@MGJ@Can?8t?5allocate?5domain?$AA@
+ 0001:3880 ??_C@_0BI@IHLA@Can?8t?5allocate?5password?$AA@
+ 0001:3852 ??_C@_0BI@OOKM@Can?8t?5allocate?5username?$AA@
+ 0001:3898 ??_C@_0O@KMIK@CredentialBox?$AA@
+ 0001:0DD6 ACQUIRECREDENTIALSHANDLEA
+ 0001:19DE APPLYCONTROLTOKEN
+ 0001:2258 COMPLETEAUTHTOKEN
+ 0001:196A DELETESECURITYCONTEXT
+ 0000:0000 Imp DIALOGBOXPARAM (USER.239)
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0001:2C28 DlgCredProc
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 0000:0000 Imp ENDDIALOG (USER.88)
+ 0001:0DA0 ENUMERATESECURITYPACKAGESA
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0001:19C0 FREECONTEXTBUFFER
+ 0001:0EEE FREECREDENTIALSHANDLE
+ 0000:0000 Imp FREEMODULE (KERNEL.46)
+ 0000:0000 Imp FREEPROCINSTANCE (KERNEL.52)
+ 0000:0000 Imp GETDLGITEM (USER.91)
+ 0000:0000 Imp GETDLGITEMTEXT (USER.93)
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Imp GETMESSAGE (USER.108)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0000:0000 Imp GETTICKCOUNT (USER.13)
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp GETWINDOWLONG (USER.135)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp GLOBALHANDLE (KERNEL.21)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0001:1716 INITIALIZESECURITYCONTEXTA
+ 0001:0924 INITSECURITYINTERFACEA
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0001:312F LibEntry
+ 0001:090E LibMain
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Imp LOCALALLOC (KERNEL.5)
+ 0000:0000 Imp LOCALFREE (KERNEL.7)
+ 0000:0000 Imp LocalInit (KERNEL.4)
+ 0000:0000 Imp LOCALREALLOC (KERNEL.6)
+ 0000:0000 Imp LOCALSIZE (KERNEL.10)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 0000:0000 Imp MAKEPROCINSTANCE (KERNEL.51)
+ 0001:1A2C MAKESIGNATURE
+ 0000:0000 Imp MESSAGEBOX (USER.1)
+ 0001:1838 QUERYCONTEXTATTRIBUTESA
+ 0001:0CA4 QUERYSECURITYPACKAGEINFOA
+ 0003:0004 rsrvptrs
+ 0001:1E44 SEALMESSAGE
+ 0000:0000 Imp SETDLGITEMTEXT (USER.92)
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0000:0000 Imp SETFOCUS (USER.22)
+ 0000:0000 Imp SETWINDOWLONG (USER.136)
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 0000:0000 Imp UNLOCKSEGMENT (KERNEL.24)
+ 0001:2050 UNSEALMESSAGE
+ 0001:1C24 VERIFYSIGNATURE
+ 0001:37A2 WEP
+ 0000:0000 Imp WNETGETCAPS (USER.513)
+ 0003:07D3 _aseghi
+ 0003:07D1 _aseglo
+ 0002:0040 _C
+ 0001:2884 _CacheGetPassword
+ 0001:2882 _CacheInitializeCache
+ 0001:28D2 _CacheSetPassword
+ 0001:2F04 _CalculateLmOwfPassword
+ 0001:2FC2 _CalculateLmResponse
+ 0001:308A _Crc32
+ 0003:03C4 _CRCTable
+ 0002:005C _D
+ 0001:356A _des
+ 0001:360C _desf
+ 0001:3330 _des_cipher
+ 0001:3162 _DES_ECB
+ 0001:31CA _DES_ECB_LM
+ 0001:2EAE _DlgCredGetPassword
+ 0003:0174 _E
+ 0003:0A20 _edata
+ 0003:0A74 _end
+ 0003:08EA _errno
+ 0002:0078 _f
+ 0003:00BC _FP
+ 0001:093A _GetPassword
+ 0003:0A70 _hInstanceDLL
+ 0001:36AE _InitLanManKey
+ 0001:372E _InitNormalKey
+ 0003:007C _IP
+ 0002:0000 _KeyBuilder
+ 0001:3232 _key_table
+ 0002:00D8 _KS
+ 0002:0098 _L
+ 0003:0A72 _Mutex
+ 0003:03A4 _P
+ 0003:00FC _PC1_C
+ 0003:0118 _PC1_D
+ 0003:0144 _PC2_C
+ 0003:015C _PC2_D
+ 0001:2912 _PersistGetPassword
+ 0001:28F4 _PersistIsCacheSupported
+ 0002:03D8 _preS
+ 0001:011C _rc4
+ 0001:0010 _rc4_key
+ 0003:01A4 _S
+ 0001:0A08 _SetCredentialsFromAuthData
+ 0001:3504 _setkey
+ 0003:0134 _shifts
+ 0001:226A _SspAlloc
+ 0000:0000 Unr _SspAllocateString
+ 0001:22B8 _SspAllocateStringBlock
+ 0001:2A6E _SspContextAllocateContext
+ 0001:2A08 _SspContextDereferenceContext
+ 0001:2AD0 _SspContextGetTimeStamp
+ 0001:29D4 _SspContextReferenceContext
+ 0000:0000 Unr _SspCopyString
+ 0001:232C _SspCopyStringFromRaw
+ 0001:2B12 _SspCredentialAllocateCredential
+ 0001:2B92 _SspCredentialDereferenceCredential
+ 0001:2B5E _SspCredentialReferenceCredential
+ 0001:2294 _SspFree
+ 0000:0000 Unr _SspFreeString
+ 0001:237E _SspGetDefaultUser
+ 0001:0F3C _SspGetTokenBuffer
+ 0001:24D2 _SspGetUserInfo
+ 0001:2752 _SspGetWorkstation
+ 0001:1176 _SspHandleChallengeMessage
+ 0001:0FF0 _SspHandleFirstCall
+ 0001:19F0 _SsprGenCheckSum
+ 0001:2472 _SspSetDefaultUser
+ 0001:3084 _SspTicks
+ 0000:0000 Unr _SspTimeHasElapsed
+ 0003:07C4 _STKHQQ
+ 0002:0408 _tempL
+ 0000:9876 Abs __acrtmsg
+ 0000:9876 Abs __acrtused
+ 0000:D6D6 Abs __aDBdoswp
+ 0003:091C __adbgmsg
+ 0000:D6D6 Abs __aDBused
+ 0001:02F2 __aFulshr
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0003:08DC __aintdiv
+ 0003:091E __amblksiz
+ 0001:06B6 __amsg_exit
+ 0001:024E __astart
+ 0001:0510 __cexit
+ 0003:0919 __child
+ 0001:04DA __cinit
+ 0001:06AE __cintDIV
+ 0003:08F5 __cpumode
+ 0001:0563 __ctermsub
+ 0003:07DA __ctype
+ 0003:07DA __ctype_
+ 0001:051A __c_exit
+ 0003:07D0 __dllinit
+ 0003:08F6 __doserrno
+ 0003:0A20 __edata
+ 0003:0A74 __end
+ 0003:0912 __environ
+ 0003:091B __exitflag
+ 0003:08E0 __fac
+ 0001:05AE __FF_MSGBANNER
+ 0001:07EB __findlast
+ 0001:02FE __fmemcmp
+ 0001:035A __fmemcpy
+ 0001:0474 __fmemset
+ 0003:0924 __fpinit
+ 0000:9876 Abs __fptaskdata
+ 0001:067A __fptrap
+ 0001:040E __fstrcmp
+ 0001:0438 __fstrcpy
+ 0001:03F4 __fstrlen
+ 0001:03B8 __fstrncmp
+ 0001:080C __GetDGROUP
+ 0001:06F6 __growseg
+ 0003:07C6 __hModule
+ 0001:0785 __incseg
+ 0003:07CC __lpszCmdLine
+ 0001:0680 __myalloc
+ 0001:06AC __nearstub
+ 0003:08F8 __nfile
+ 0001:0870 __nfree
+ 0001:081C __nmalloc
+ 0001:0644 __NMSG_TEXT
+ 0001:066F __NMSG_WRITE
+ 0001:08EA __nmsize
+ 0001:02D9 __nomain
+ 0001:0886 __nrealloc
+ 0003:08F6 __oserr
+ 0003:08FA __osfile
+ 0003:08F1 __osmajor
+ 0003:08F0 __osminor
+ 0003:08F4 __osmode
+ 0003:08F0 __osver
+ 0003:08F2 __osversion
+ 0003:0914 __pgmptr
+ 0003:0920 __pnhNearHeap
+ 0001:05C4 __setenvp
+ 0000:0000 Abs __sizec
+ 0000:0000 Abs __sized
+ 0001:04BC __stubmain
+ 0001:37DE __STUBWEP
+ 0003:08EC __umaskval
+ 0003:07C8 __wDataSeg
+ 0001:020A __wflags
+ 0003:07CA __wHeapSize
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 0003:08EF __winmajor
+ 0003:08EE __winminor
+ 0003:08EE __winver
+ 0003:07D7 ___aDBrterr
+ 0003:07D5 ___aDBswpflg
+ 0003:090E ___argc
+ 0003:0910 ___argv
+ 0001:08FA ___ExportedStub
+
+ Address Publics by Value
+
+ 0000:0000 Imp ENDDIALOG (USER.88)
+ 0000:0000 Imp WNETGETCAPS (USER.513)
+ 0000:0000 Imp __AHINCR (KERNEL.114)
+ 0000:0000 Imp GETPROCADDRESS (KERNEL.50)
+ 0000:0000 Imp FREEMODULE (KERNEL.46)
+ 0000:0000 Imp GLOBALFREE (KERNEL.17)
+ 0000:0000 Imp SETWINDOWLONG (USER.136)
+ 0000:0000 Imp FATALEXIT (KERNEL.1)
+ 0000:0000 Imp GETWINDOWLONG (USER.135)
+ 0000:0000 Imp DISPATCHMESSAGE (USER.114)
+ 0000:0000 Imp DOS3CALL (KERNEL.102)
+ 0000:0000 Imp LOCALALLOC (KERNEL.5)
+ 0000:0000 Unr _SspTimeHasElapsed
+ 0000:0000 Imp FREEPROCINSTANCE (KERNEL.52)
+ 0000:0000 Imp GETTICKCOUNT (USER.13)
+ 0000:0000 Imp __WINFLAGS (KERNEL.178)
+ 0000:0000 Abs __sizec
+ 0000:0000 Abs __sized
+ 0000:0000 Imp GETDLGITEM (USER.91)
+ 0000:0000 Imp LOCALFREE (KERNEL.7)
+ 0000:0000 Imp GLOBALALLOC (KERNEL.15)
+ 0000:0000 Imp SETERRORMODE (KERNEL.107)
+ 0000:0000 Imp MESSAGEBOX (USER.1)
+ 0000:0000 Imp GLOBALHANDLE (KERNEL.21)
+ 0000:0000 Imp GETMESSAGE (USER.108)
+ 0000:0000 Imp LOCALSIZE (KERNEL.10)
+ 0000:0000 Imp SETDLGITEMTEXT (USER.92)
+ 0000:0000 Imp GETDLGITEMTEXT (USER.93)
+ 0000:0000 Imp LOCALREALLOC (KERNEL.6)
+ 0000:0000 Imp LOCKSEGMENT (KERNEL.23)
+ 0000:0000 Imp GLOBALREALLOC (KERNEL.16)
+ 0000:0000 Imp GETMODULEUSAGE (KERNEL.48)
+ 0000:0000 Imp GLOBALSIZE (KERNEL.20)
+ 0000:0000 Imp GLOBALUNLOCK (KERNEL.19)
+ 0000:0000 Imp GETDOSENVIRONMENT (KERNEL.131)
+ 0000:0000 Unr _SspAllocateString
+ 0000:0000 Imp UNLOCKSEGMENT (KERNEL.24)
+ 0000:0000 Imp MAKEPROCINSTANCE (KERNEL.51)
+ 0000:0000 Imp TRANSLATEMESSAGE (USER.113)
+ 0000:0000 Imp SETFOCUS (USER.22)
+ 0000:0000 Imp INITTASK (KERNEL.91)
+ 0000:0000 Imp DIALOGBOXPARAM (USER.239)
+ 0000:0000 Imp LocalInit (KERNEL.4)
+ 0000:0000 Unr _SspFreeString
+ 0000:0000 Imp GETVERSION (KERNEL.3)
+ 0000:0000 Imp GLOBALLOCK (KERNEL.18)
+ 0000:0000 Unr _SspCopyString
+ 0000:0000 Imp LOADLIBRARY (KERNEL.95)
+ 0000:0000 Imp FATALAPPEXIT (KERNEL.137)
+ 0000:9876 Abs __acrtused
+ 0000:9876 Abs __fptaskdata
+ 0000:9876 Abs __acrtmsg
+ 0000:D6D6 Abs __aDBused
+ 0000:D6D6 Abs __aDBdoswp
+ 0001:0010 _rc4_key
+ 0001:011C _rc4
+ 0001:020A __wflags
+ 0001:024E __astart
+ 0001:02D9 __nomain
+ 0001:02F2 __aFulshr
+ 0001:02FE __fmemcmp
+ 0001:035A __fmemcpy
+ 0001:03B8 __fstrncmp
+ 0001:03F4 __fstrlen
+ 0001:040E __fstrcmp
+ 0001:0438 __fstrcpy
+ 0001:0474 __fmemset
+ 0001:04BC __stubmain
+ 0001:04DA __cinit
+ 0001:0510 __cexit
+ 0001:051A __c_exit
+ 0001:0563 __ctermsub
+ 0001:05AE __FF_MSGBANNER
+ 0001:05C4 __setenvp
+ 0001:0644 __NMSG_TEXT
+ 0001:066F __NMSG_WRITE
+ 0001:067A __fptrap
+ 0001:0680 __myalloc
+ 0001:06AC __nearstub
+ 0001:06AE __cintDIV
+ 0001:06B6 __amsg_exit
+ 0001:06F6 __growseg
+ 0001:0785 __incseg
+ 0001:07EB __findlast
+ 0001:080C __GetDGROUP
+ 0001:081C __nmalloc
+ 0001:0870 __nfree
+ 0001:0886 __nrealloc
+ 0001:08EA __nmsize
+ 0001:08FA ___ExportedStub
+ 0001:090E LibMain
+ 0001:0924 INITSECURITYINTERFACEA
+ 0001:093A _GetPassword
+ 0001:0A08 _SetCredentialsFromAuthData
+ 0001:0CA4 QUERYSECURITYPACKAGEINFOA
+ 0001:0DA0 ENUMERATESECURITYPACKAGESA
+ 0001:0DD6 ACQUIRECREDENTIALSHANDLEA
+ 0001:0EEE FREECREDENTIALSHANDLE
+ 0001:0F3C _SspGetTokenBuffer
+ 0001:0FF0 _SspHandleFirstCall
+ 0001:1176 _SspHandleChallengeMessage
+ 0001:1716 INITIALIZESECURITYCONTEXTA
+ 0001:1838 QUERYCONTEXTATTRIBUTESA
+ 0001:196A DELETESECURITYCONTEXT
+ 0001:19C0 FREECONTEXTBUFFER
+ 0001:19DE APPLYCONTROLTOKEN
+ 0001:19F0 _SsprGenCheckSum
+ 0001:1A2C MAKESIGNATURE
+ 0001:1C24 VERIFYSIGNATURE
+ 0001:1E44 SEALMESSAGE
+ 0001:2050 UNSEALMESSAGE
+ 0001:2258 COMPLETEAUTHTOKEN
+ 0001:226A _SspAlloc
+ 0001:2294 _SspFree
+ 0001:22B8 _SspAllocateStringBlock
+ 0001:232C _SspCopyStringFromRaw
+ 0001:237E _SspGetDefaultUser
+ 0001:2472 _SspSetDefaultUser
+ 0001:24D2 _SspGetUserInfo
+ 0001:2752 _SspGetWorkstation
+ 0001:2882 _CacheInitializeCache
+ 0001:2884 _CacheGetPassword
+ 0001:28D2 _CacheSetPassword
+ 0001:28F4 _PersistIsCacheSupported
+ 0001:2912 _PersistGetPassword
+ 0001:29D4 _SspContextReferenceContext
+ 0001:2A08 _SspContextDereferenceContext
+ 0001:2A6E _SspContextAllocateContext
+ 0001:2AD0 _SspContextGetTimeStamp
+ 0001:2B12 _SspCredentialAllocateCredential
+ 0001:2B5E _SspCredentialReferenceCredential
+ 0001:2B92 _SspCredentialDereferenceCredential
+ 0001:2C28 DlgCredProc
+ 0001:2EAE _DlgCredGetPassword
+ 0001:2F04 _CalculateLmOwfPassword
+ 0001:2FC2 _CalculateLmResponse
+ 0001:3084 _SspTicks
+ 0001:308A _Crc32
+ 0001:312F LibEntry
+ 0001:3162 _DES_ECB
+ 0001:31CA _DES_ECB_LM
+ 0001:3232 _key_table
+ 0001:3330 _des_cipher
+ 0001:3504 _setkey
+ 0001:356A _des
+ 0001:360C _desf
+ 0001:36AE _InitLanManKey
+ 0001:372E _InitNormalKey
+ 0001:37A2 WEP
+ 0001:37DE __STUBWEP
+ 0001:3800 ??_C@_04KIKH@none?$AA@
+ 0001:3806 ??_C@_04PJIL@NTLM?$AA@
+ 0001:380C ??_C@_0BG@FFCA@NTLM?5Security?5Package?$AA@
+ 0001:3822 ??_C@_07LBGP@NTLMSSP?$AA@
+ 0001:382A ??_C@_06EJJP@NETAPI?$AA@
+ 0001:3832 ??_C@_0BA@JFAM@NETWKSTAGETINFO?$AA@
+ 0001:3842 ??_C@_09CIPE@WORKGROUP?$AA@
+ 0001:384C ??_C@_05CKBG@Error?$AA@
+ 0001:3852 ??_C@_0BI@OOKM@Can?8t?5allocate?5username?$AA@
+ 0001:386A ??_C@_0BG@MGJ@Can?8t?5allocate?5domain?$AA@
+ 0001:3880 ??_C@_0BI@IHLA@Can?8t?5allocate?5password?$AA@
+ 0001:3898 ??_C@_0O@KMIK@CredentialBox?$AA@
+ 0001:38A6 ??_C@_08OLPO@KGS?$CB?$EA?$CD$?$CF?$AA@
+ 0002:0000 _KeyBuilder
+ 0002:0040 _C
+ 0002:005C _D
+ 0002:0078 _f
+ 0002:0098 _L
+ 0002:00D8 _KS
+ 0002:03D8 _preS
+ 0002:0408 _tempL
+ 0003:0004 rsrvptrs
+ 0003:007C _IP
+ 0003:00BC _FP
+ 0003:00FC _PC1_C
+ 0003:0118 _PC1_D
+ 0003:0134 _shifts
+ 0003:0144 _PC2_C
+ 0003:015C _PC2_D
+ 0003:0174 _E
+ 0003:01A4 _S
+ 0003:03A4 _P
+ 0003:03C4 _CRCTable
+ 0003:07C4 _STKHQQ
+ 0003:07C6 __hModule
+ 0003:07C8 __wDataSeg
+ 0003:07CA __wHeapSize
+ 0003:07CC __lpszCmdLine
+ 0003:07D0 __dllinit
+ 0003:07D1 _aseglo
+ 0003:07D3 _aseghi
+ 0003:07D5 ___aDBswpflg
+ 0003:07D7 ___aDBrterr
+ 0003:07DA __ctype_
+ 0003:07DA __ctype
+ 0003:08DC __aintdiv
+ 0003:08E0 __fac
+ 0003:08EA _errno
+ 0003:08EC __umaskval
+ 0003:08EE __winminor
+ 0003:08EE __winver
+ 0003:08EF __winmajor
+ 0003:08F0 __osminor
+ 0003:08F0 __osver
+ 0003:08F1 __osmajor
+ 0003:08F2 __osversion
+ 0003:08F4 __osmode
+ 0003:08F5 __cpumode
+ 0003:08F6 __oserr
+ 0003:08F6 __doserrno
+ 0003:08F8 __nfile
+ 0003:08FA __osfile
+ 0003:090E ___argc
+ 0003:0910 ___argv
+ 0003:0912 __environ
+ 0003:0914 __pgmptr
+ 0003:0919 __child
+ 0003:091B __exitflag
+ 0003:091C __adbgmsg
+ 0003:091E __amblksiz
+ 0003:0920 __pnhNearHeap
+ 0003:0924 __fpinit
+ 0003:0A20 _edata
+ 0003:0A20 __edata
+ 0003:0A70 _hInstanceDLL
+ 0003:0A72 _Mutex
+ 0003:0A74 __end
+ 0003:0A74 _end
+
+Program entry point at 0001:312f
diff --git a/public/sdk/rpc16/win/dll/security.sym b/public/sdk/rpc16/win/dll/security.sym
new file mode 100644
index 000000000..dee36cf50
--- /dev/null
+++ b/public/sdk/rpc16/win/dll/security.sym
Binary files differ
diff --git a/public/sdk/rpc16/win/inc/midles.h b/public/sdk/rpc16/win/inc/midles.h
new file mode 100644
index 000000000..b64e4fe61
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/midles.h
@@ -0,0 +1,218 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ midles.h
+
+Abstract:
+
+ This module contains definitions needed for encoding/decoding
+ support (serializing/deserializing a.k.a. pickling).
+
+--*/
+
+#ifndef __MIDLES_H__
+#define __MIDLES_H__
+
+#include <rpcndr.h>
+
+//
+// Set the packing level for RPC structures for Dos and Windows.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Pickling support
+ */
+typedef enum
+{
+ MES_ENCODE,
+ MES_DECODE,
+} MIDL_ES_CODE;
+
+typedef enum
+{
+ MES_INCREMENTAL_HANDLE,
+ MES_FIXED_BUFFER_HANDLE,
+ MES_DYNAMIC_BUFFER_HANDLE
+} MIDL_ES_HANDLE_STYLE;
+
+
+typedef void (__RPC_USER * MIDL_ES_ALLOC )
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef void (__RPC_USER * MIDL_ES_WRITE)
+ ( IN OUT void __RPC_FAR * state,
+ IN char __RPC_FAR * buffer,
+ IN unsigned int size );
+
+typedef void (__RPC_USER * MIDL_ES_READ)
+ ( IN OUT void __RPC_FAR * state,
+ OUT char __RPC_FAR * __RPC_FAR * pbuffer,
+ IN OUT unsigned int __RPC_FAR * psize );
+
+typedef struct _MIDL_ES_MESSAGE
+{
+ MIDL_STUB_MESSAGE StubMsg;
+ MIDL_ES_CODE Operation;
+ void __RPC_FAR * UserState;
+ unsigned long MesVersion:8;
+ unsigned long HandleStyle:8;
+ unsigned long HandleFlags:8;
+ unsigned long Reserve:8;
+ MIDL_ES_ALLOC Alloc;
+ MIDL_ES_WRITE Write;
+ MIDL_ES_READ Read;
+ unsigned char __RPC_FAR * Buffer;
+ unsigned long BufferSize;
+ unsigned char __RPC_FAR * __RPC_FAR * pDynBuffer;
+ unsigned long __RPC_FAR * pEncodedSize;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ unsigned long ProcNumber;
+ unsigned long AlienDataRep;
+ unsigned long IncrDataSize;
+ unsigned long ByteCount;
+} MIDL_ES_MESSAGE, __RPC_FAR * PMIDL_ES_MESSAGE;
+
+typedef PMIDL_ES_MESSAGE MIDL_ES_HANDLE;
+
+RPC_STATUS RPC_ENTRY
+MesEncodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeIncrementalHandleCreate(
+ void __RPC_FAR * UserState,
+ MIDL_ES_READ ReadFn,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesIncrementalHandleReset(
+ handle_t Handle,
+ void __RPC_FAR * UserState,
+ MIDL_ES_ALLOC AllocFn,
+ MIDL_ES_WRITE WriteFn,
+ MIDL_ES_READ ReadFn,
+ MIDL_ES_CODE Operation );
+
+
+RPC_STATUS RPC_ENTRY
+MesEncodeFixedBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesEncodeDynBufferHandleCreate(
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long __RPC_FAR * pEncodedSize,
+ handle_t __RPC_FAR * pHandle );
+
+RPC_STATUS RPC_ENTRY
+MesDecodeBufferHandleCreate(
+ char __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ handle_t __RPC_FAR * pHandle );
+
+
+RPC_STATUS RPC_ENTRY
+MesBufferHandleReset(
+ handle_t Handle,
+ unsigned long HandleStyle,
+ MIDL_ES_CODE Operation,
+ char __RPC_FAR * __RPC_FAR * pBuffer,
+ unsigned long BufferSize,
+ unsigned long __RPC_FAR * pEncodedSize );
+
+
+RPC_STATUS RPC_ENTRY
+MesHandleFree( handle_t Handle );
+
+RPC_STATUS RPC_ENTRY
+MesInqProcEncodingId(
+ handle_t Handle,
+ PRPC_SYNTAX_IDENTIFIER pInterfaceId,
+ unsigned long __RPC_FAR * pProcNum );
+
+
+#if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
+#define __RPC_UNALIGNED __unaligned
+#else
+#define __RPC_UNALIGNED
+#endif
+
+void RPC_ENTRY I_NdrMesMessageInit( PMIDL_STUB_MESSAGE );
+
+size_t RPC_ENTRY
+NdrMesSimpleTypeAlignSize ( handle_t );
+
+void RPC_ENTRY
+NdrMesSimpleTypeDecode(
+ handle_t Handle,
+ void __RPC_FAR * pObject,
+ short Size );
+
+void RPC_ENTRY
+NdrMesSimpleTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ void __RPC_FAR * pObject,
+ short Size );
+
+
+size_t RPC_ENTRY
+NdrMesTypeAlignSize(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeEncode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_ENTRY
+NdrMesTypeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ void __RPC_FAR * pObject );
+
+void RPC_VAR_ENTRY
+NdrMesProcEncodeDecode(
+ handle_t Handle,
+ PMIDL_STUB_DESC pStubDesc,
+ PFORMAT_STRING pFormatString,
+ ... );
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __MIDLES_H__ */
diff --git a/public/sdk/rpc16/win/inc/rpc.h b/public/sdk/rpc16/win/inc/rpc.h
new file mode 100644
index 000000000..11ac876f5
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpc.h
@@ -0,0 +1,69 @@
+
+/*++
+
+Copyright (c) 1991-1993 Microsoft Corporation
+
+Module Name:
+
+ rpc.h
+
+Abstract:
+
+ Master include file for RPC applications.
+
+--*/
+
+#ifndef __RPC_H__
+#define __RPC_H__
+
+// Set the packing level for RPC structures.
+
+#pragma warning(disable:4103)
+#pragma pack(2)
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define __RPC_WIN16__
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+typedef unsigned short RPC_STATUS;
+
+#define RPCXCWORD 7
+
+#define __RPC_FAR __far
+#define __RPC_API __far __pascal
+#define __RPC_USER __far __pascal __export
+#define __RPC_STUB __far __pascal __export
+#define RPC_ENTRY __pascal __export __far
+
+typedef void _near * I_RPC_HANDLE;
+
+#include "rpcdce.h"
+#include "rpcnsi.h"
+#include "rpcerr.h"
+#include "rpcx86.h"
+
+#ifdef PASCAL
+extern RPC_STATUS RPC_ENTRY RpcWinSetYieldInfo(HWND, BOOL, WORD, DWORD);
+extern RPC_STATUS RPC_ENTRY RpcWinSetYieldTimeout(unsigned int);
+extern RPC_STATUS RPC_ENTRY I_RpcWinSetTaskYielding(unsigned);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level.
+
+#pragma pack()
+#pragma warning(default:4103)
+
+#endif // __RPC_H__
+
diff --git a/public/sdk/rpc16/win/inc/rpcdce.h b/public/sdk/rpc16/win/inc/rpcdce.h
new file mode 100644
index 000000000..099457ea4
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpcdce.h
@@ -0,0 +1,1618 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdce.h
+
+Abstract:
+
+ This module contains the DCE RPC runtime APIs.
+
+--*/
+
+#ifndef __RPCDCE_H__
+#define __RPCDCE_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define IN
+#define OUT
+#define OPTIONAL
+
+/*typedef char small;*/
+/*typedef unsigned char byte;*/
+/*typedef unsigned char boolean;*/
+
+typedef I_RPC_HANDLE RPC_BINDING_HANDLE;
+typedef RPC_BINDING_HANDLE handle_t;
+#define rpc_binding_handle_t RPC_BINDING_HANDLE
+
+#ifndef GUID_DEFINED
+#define GUID_DEFINED
+typedef struct _GUID
+{
+ unsigned long Data1;
+ unsigned short Data2;
+ unsigned short Data3;
+ unsigned char Data4[8];
+} GUID;
+#endif /* GUID_DEFINED */
+
+#ifndef UUID_DEFINED
+#define UUID_DEFINED
+typedef GUID UUID;
+#ifndef uuid_t
+#define uuid_t UUID
+#endif
+#endif
+
+typedef struct _RPC_BINDING_VECTOR
+{
+ unsigned long Count;
+ RPC_BINDING_HANDLE BindingH[1];
+} RPC_BINDING_VECTOR;
+#ifndef rpc_binding_vector_t
+#define rpc_binding_vector_t RPC_BINDING_VECTOR
+#endif
+
+typedef struct _UUID_VECTOR
+{
+ unsigned long Count;
+ UUID *Uuid[1];
+} UUID_VECTOR;
+#ifndef uuid_vector_t
+#define uuid_vector_t UUID_VECTOR
+#endif
+
+typedef void __RPC_FAR * RPC_IF_HANDLE;
+
+#ifndef IFID_DEFINED
+#define IFID_DEFINED
+typedef struct _RPC_IF_ID
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_IF_ID;
+#endif
+
+#define RPC_C_BINDING_INFINITE_TIMEOUT 10
+#define RPC_C_BINDING_MIN_TIMEOUT 0
+#define RPC_C_BINDING_DEFAULT_TIMEOUT 5
+#define RPC_C_BINDING_MAX_TIMEOUT 9
+
+#define RPC_C_CANCEL_INFINITE_TIMEOUT -1
+
+#define RPC_C_LISTEN_MAX_CALLS_DEFAULT 1234
+#define RPC_C_PROTSEQ_MAX_REQS_DEFAULT 10
+
+#define RPC_C_BIND_TO_ALL_NICS 1
+#define RPC_C_USE_INTERNET_PORT 1
+#define RPC_C_USE_INTRANET_PORT 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+typedef struct _RPC_PROTSEQ_VECTORA
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORA;
+
+typedef struct _RPC_PROTSEQ_VECTORW
+{
+ unsigned int Count;
+ unsigned short __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTORW;
+
+#ifdef UNICODE
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORW
+#else /* UNICODE */
+#define RPC_PROTSEQ_VECTOR RPC_PROTSEQ_VECTORA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+typedef struct _RPC_PROTSEQ_VECTOR
+{
+ unsigned int Count;
+ unsigned char __RPC_FAR * Protseq[1];
+} RPC_PROTSEQ_VECTOR;
+
+#endif /* RPC_UNICODE_SUPPORTED */
+typedef struct _RPC_POLICY {
+ unsigned int Length ;
+ unsigned long EndpointFlags ;
+ unsigned long NICFlags ;
+ } RPC_POLICY, __RPC_FAR *PRPC_POLICY ;
+
+typedef void __RPC_USER
+RPC_OBJECT_INQ_FN (
+ IN UUID __RPC_FAR * ObjectUuid,
+ OUT UUID __RPC_FAR * TypeUuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+typedef RPC_STATUS
+RPC_IF_CALLBACK_FN (
+ IN RPC_IF_HANDLE InterfaceUuid,
+ IN void *Context
+ ) ;
+
+#define RPC_MGR_EPV void
+
+typedef struct
+{
+ unsigned int Count;
+ unsigned long Stats[1];
+} RPC_STATS_VECTOR;
+
+#define RPC_C_STATS_CALLS_IN 0
+#define RPC_C_STATS_CALLS_OUT 1
+#define RPC_C_STATS_PKTS_IN 2
+#define RPC_C_STATS_PKTS_OUT 3
+
+typedef struct
+{
+ unsigned long Count;
+ RPC_IF_ID __RPC_FAR * IfId[1];
+} RPC_IF_ID_VECTOR;
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingFree (
+ IN OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBindingW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingW
+#else /* UNICODE */
+#define RpcBindingFromStringBinding RpcBindingFromStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingFromStringBinding (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingInqObject (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingReset (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* RpcBindingServerFromClient : UNSUPPORTED */
+/* RpcBindingSetAuthInfo */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcBindingSetObject (
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqDefaultProtectLevel(
+ IN unsigned long AuthnSvc,
+ OUT unsigned long __RPC_FAR *AuthnLevel
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBindingW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#ifdef UNICODE
+#define RpcBindingToStringBinding RpcBindingToStringBindingW
+#else /* UNICODE */
+#define RpcBindingToStringBinding RpcBindingToStringBindingA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingToStringBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcBindingVectorFree (
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeA (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingComposeW (
+ IN unsigned short __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned short __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned short __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned short __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned short __RPC_FAR * Options OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingCompose RpcStringBindingComposeW
+#else /* UNICODE */
+#define RpcStringBindingCompose RpcStringBindingComposeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingCompose (
+ IN unsigned char __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned char __RPC_FAR * Protseq OPTIONAL,
+ IN unsigned char __RPC_FAR * NetworkAddr OPTIONAL,
+ IN unsigned char __RPC_FAR * Endpoint OPTIONAL,
+ IN unsigned char __RPC_FAR * Options OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringBinding OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseA (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParseW (
+ IN unsigned short __RPC_FAR * StringBinding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcStringBindingParse RpcStringBindingParseW
+#else /* UNICODE */
+#define RpcStringBindingParse RpcStringBindingParseA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringBindingParse (
+ IN unsigned char __RPC_FAR * StringBinding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ObjUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Protseq OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkAddr OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Endpoint OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * NetworkOptions OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeA (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcStringFreeW (
+ IN OUT unsigned short __RPC_FAR * __RPC_FAR * String
+ );
+
+#ifdef UNICODE
+#define RpcStringFree RpcStringFreeW
+#else /* UNICODE */
+#define RpcStringFree RpcStringFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcStringFree (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * String
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+RpcIfInqId (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_IF_ID __RPC_FAR * RpcIfId
+ );
+
+/* client/server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidA (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValidW (
+ IN unsigned short __RPC_FAR * Protseq
+ );
+
+#ifdef UNICODE
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidW
+#else /* UNICODE */
+#define RpcNetworkIsProtseqValid RpcNetworkIsProtseqValidA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkIsProtseqValid (
+ IN unsigned char __RPC_FAR * Protseq
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetComTimeout (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned int Timeout
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetCancelTimeout(
+ long Timeout
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsA (
+ OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqsW (
+ OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsW
+#else /* UNICODE */
+#define RpcNetworkInqProtseqs RpcNetworkInqProtseqsA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNetworkInqProtseqs (
+ OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectInqType (
+ IN UUID __RPC_FAR * ObjUuid,
+ OUT UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetInqFn (
+ IN RPC_OBJECT_INQ_FN __RPC_FAR * InquiryFn
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcObjectSetType (
+ IN UUID __RPC_FAR * ObjUuid,
+ IN UUID __RPC_FAR * TypeUuid OPTIONAL
+ );
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeA (
+ IN OUT RPC_PROTSEQ_VECTORA __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFreeW (
+ IN OUT RPC_PROTSEQ_VECTORW __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#ifdef UNICODE
+#define RpcProtseqVectorFree RpcProtseqVectorFreeW
+#else /* UNICODE */
+#define RpcProtseqVectorFree RpcProtseqVectorFreeA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcProtseqVectorFree (
+ IN OUT RPC_PROTSEQ_VECTOR __RPC_FAR * __RPC_FAR * ProtseqVector
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqBindings (
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerInqIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ OUT RPC_MGR_EPV __RPC_FAR * __RPC_FAR * MgrEpv
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerListen (
+ IN unsigned int MinimumCallThreads,
+ IN unsigned int MaxCalls,
+ IN unsigned int DontWait
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid OPTIONAL,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterIfEx (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid,
+ IN RPC_MGR_EPV __RPC_FAR * MgrEpv,
+ IN unsigned int Flags,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_CALLBACK_FN __RPC_FAR *IfCallback
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUnregisterIf (
+ IN RPC_IF_HANDLE IfSpec,
+ IN UUID __RPC_FAR * MgrTypeUuid, OPTIONAL
+ IN unsigned int WaitForCallsToComplete
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqs (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsEx (
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIf (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcServerUseAllProtseqsIfEx (
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseq RpcServerUseProtseqW
+#define RpcServerUseProtseqEx RpcServerUseProtseqExW
+#else /* UNICODE */
+#define RpcServerUseProtseq RpcServerUseProtseqA
+#define RpcServerUseProtseqEx RpcServerUseProtseqExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseq (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned short __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpW
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExW
+#else /* UNICODE */
+#define RpcServerUseProtseqEp RpcServerUseProtseqEpA
+#define RpcServerUseProtseqEpEx RpcServerUseProtseqEpExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEp (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqEpEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN unsigned char __RPC_FAR * Endpoint,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExA (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfExW (
+ IN unsigned short __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#ifdef UNICODE
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfW
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExW
+#else /* UNICODE */
+#define RpcServerUseProtseqIf RpcServerUseProtseqIfA
+#define RpcServerUseProtseqIfEx RpcServerUseProtseqIfExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIf (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerUseProtseqIfEx (
+ IN unsigned char __RPC_FAR * Protseq,
+ IN unsigned int MaxCalls,
+ IN RPC_IF_HANDLE IfSpec,
+ IN void __RPC_FAR * SecurityDescriptor,
+ IN PRPC_POLICY Policy
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStatsVectorFree (
+ IN RPC_STATS_VECTOR ** StatsVector
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqStats (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_STATS_VECTOR ** Statistics
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtIsServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtStopServerListening (
+ IN RPC_BINDING_HANDLE Binding
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtWaitServerListen (
+ void
+ );
+
+/* server */
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetServerStackSize (
+ IN unsigned long ThreadStackSize
+ );
+
+/* server */
+void RPC_ENTRY
+RpcSsDontSerializeContext (
+ void
+ );
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcMgmtEnableIdleCleanup (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqIfIds (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcIfIdVectorFree (
+ IN OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#ifdef UNICODE
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameW
+#else /* UNICODE */
+#define RpcMgmtInqServerPrincName RpcMgmtInqServerPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqServerPrincName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameA (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincNameW (
+ IN unsigned long AuthnSvc,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#ifdef UNICODE
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameW
+#else /* UNICODE */
+#define RpcServerInqDefaultPrincName RpcServerInqDefaultPrincNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcServerInqDefaultPrincName (
+ IN unsigned long AuthnSvc,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * PrincName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+/* client */
+RPC_STATUS RPC_ENTRY
+RpcEpResolveBinding (
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_IF_HANDLE IfSpec
+ );
+
+/* client */
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryNameW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#ifdef UNICODE
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameW
+#else /* UNICODE */
+#define RpcNsBindingInqEntryName RpcNsBindingInqEntryNameA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingInqEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * EntryName
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef void __RPC_FAR * RPC_AUTH_IDENTITY_HANDLE;
+typedef void __RPC_FAR * RPC_AUTHZ_HANDLE;
+
+#define RPC_C_AUTHN_LEVEL_DEFAULT 0
+#define RPC_C_AUTHN_LEVEL_NONE 1
+#define RPC_C_AUTHN_LEVEL_CONNECT 2
+#define RPC_C_AUTHN_LEVEL_CALL 3
+#define RPC_C_AUTHN_LEVEL_PKT 4
+#define RPC_C_AUTHN_LEVEL_PKT_INTEGRITY 5
+#define RPC_C_AUTHN_LEVEL_PKT_PRIVACY 6
+
+#define RPC_C_IMP_LEVEL_ANONYMOUS 1
+#define RPC_C_IMP_LEVEL_IDENTIFY 2
+#define RPC_C_IMP_LEVEL_IMPERSONATE 3
+#define RPC_C_IMP_LEVEL_DELEGATE 4
+
+#define RPC_C_QOS_IDENTITY_STATIC 0
+#define RPC_C_QOS_IDENTITY_DYNAMIC 1
+
+#define RPC_C_QOS_CAPABILITIES_DEFAULT 0
+#define RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH 1
+
+#define RPC_C_PROTECT_LEVEL_DEFAULT (RPC_C_AUTHN_LEVEL_DEFAULT)
+#define RPC_C_PROTECT_LEVEL_NONE (RPC_C_AUTHN_LEVEL_NONE)
+#define RPC_C_PROTECT_LEVEL_CONNECT (RPC_C_AUTHN_LEVEL_CONNECT)
+#define RPC_C_PROTECT_LEVEL_CALL (RPC_C_AUTHN_LEVEL_CALL)
+#define RPC_C_PROTECT_LEVEL_PKT (RPC_C_AUTHN_LEVEL_PKT)
+#define RPC_C_PROTECT_LEVEL_PKT_INTEGRITY (RPC_C_AUTHN_LEVEL_PKT_INTEGRITY)
+#define RPC_C_PROTECT_LEVEL_PKT_PRIVACY (RPC_C_AUTHN_LEVEL_PKT_PRIVACY)
+
+#define RPC_C_AUTHN_NONE 0
+#define RPC_C_AUTHN_DCE_PRIVATE 1
+#define RPC_C_AUTHN_DCE_PUBLIC 2
+#define RPC_C_AUTHN_DEC_PUBLIC 4
+#define RPC_C_AUTHN_WINNT 10
+#define RPC_C_AUTHN_DEFAULT 0xFFFFFFFFL
+
+#define RPC_C_SECURITY_QOS_VERSION 1L
+
+typedef struct _RPC_SECURITY_QOS {
+ unsigned long Version;
+ unsigned long Capabilities;
+ unsigned long IdentityTracking;
+ unsigned long ImpersonationType;
+} RPC_SECURITY_QOS, *PRPC_SECURITY_QOS;
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+typedef struct _SEC_WINNT_AUTH_IDENTITY
+{
+ char __RPC_FAR *User;
+ char __RPC_FAR *Domain;
+ char __RPC_FAR *Password;
+} SEC_WINNT_AUTH_IDENTITY;
+#else
+
+
+#define SEC_WINNT_AUTH_IDENTITY_ANSI 0x1
+#define SEC_WINNT_AUTH_IDENTITY_UNICODE 0x2
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_W {
+ unsigned short __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned short __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned short __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W;
+
+typedef struct _SEC_WINNT_AUTH_IDENTITY_A {
+ unsigned char __RPC_FAR *User;
+ unsigned long UserLength;
+ unsigned char __RPC_FAR *Domain;
+ unsigned long DomainLength;
+ unsigned char __RPC_FAR *Password;
+ unsigned long PasswordLength;
+ unsigned long Flags;
+} SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A;
+
+
+#ifdef UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_W
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_W
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_W
+#else // UNICODE
+#define SEC_WINNT_AUTH_IDENTITY SEC_WINNT_AUTH_IDENTITY_A
+#define PSEC_WINNT_AUTH_IDENTITY PSEC_WINNT_AUTH_IDENTITY_A
+#define _SEC_WINNT_AUTH_IDENTITY _SEC_WINNT_AUTH_IDENTITY_A
+#endif // UNICODE
+#endif // defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+
+#define RPC_C_AUTHZ_NONE 0
+#define RPC_C_AUTHZ_NAME 1
+#define RPC_C_AUTHZ_DCE 2
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientA (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClientW (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc,
+ IN RPC_SECURITY_QOS *SecurityQos OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc, OPTIONAL
+ IN RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExA (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc, OPTIONAL
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfoExW (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL,
+ IN unsigned long RpcQosVersion,
+ OUT RPC_SECURITY_QOS *SecurityQOS
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoA (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfoW (
+ IN unsigned short __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientW
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoW
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoW
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoW
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExW
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExW
+#else /* UNICODE */
+#define RpcBindingInqAuthClient RpcBindingInqAuthClientA
+#define RpcBindingInqAuthInfo RpcBindingInqAuthInfoA
+#define RpcBindingSetAuthInfo RpcBindingSetAuthInfoA
+#define RpcServerRegisterAuthInfo RpcServerRegisterAuthInfoA
+#define RpcBindingInqAuthInfoEx RpcBindingInqAuthInfoExA
+#define RpcBindingSetAuthInfoEx RpcBindingSetAuthInfoExA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthClient (
+ IN RPC_BINDING_HANDLE ClientBinding, OPTIONAL
+ OUT RPC_AUTHZ_HANDLE __RPC_FAR * Privs,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingInqAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ServerPrincName, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnLevel, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthnSvc, OPTIONAL
+ OUT RPC_AUTH_IDENTITY_HANDLE __RPC_FAR * AuthIdentity, OPTIONAL
+ OUT unsigned long __RPC_FAR * AuthzSvc OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcBindingSetAuthInfo (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnLevel,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_IDENTITY_HANDLE AuthIdentity, OPTIONAL
+ IN unsigned long AuthzSvc
+ );
+
+typedef void
+(__RPC_USER * RPC_AUTH_KEY_RETRIEVAL_FN) (
+ IN void __RPC_FAR * Arg,
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long KeyVer,
+ OUT void __RPC_FAR * __RPC_FAR * Key,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcServerRegisterAuthInfo (
+ IN unsigned char __RPC_FAR * ServerPrincName,
+ IN unsigned long AuthnSvc,
+ IN RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn OPTIONAL,
+ IN void __RPC_FAR * Arg OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+typedef struct {
+ unsigned char __RPC_FAR * UserName;
+ unsigned char __RPC_FAR * ComputerName;
+ unsigned short Privilege;
+ unsigned long AuthFlags;
+} RPC_CLIENT_INFORMATION1, __RPC_FAR * PRPC_CLIENT_INFORMATION1;
+
+RPC_STATUS RPC_ENTRY
+RpcBindingServerFromClient (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * ServerBinding
+ );
+
+void RPC_ENTRY
+RpcRaiseException (
+ IN RPC_STATUS exception
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcTestCancel(
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcCancelThread(
+ IN void * Thread
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringA (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringA (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToStringW (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromStringW (
+ IN unsigned short __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#ifdef UNICODE
+#define UuidFromString UuidFromStringW
+#define UuidToString UuidToStringW
+#else /* UNICODE */
+#define UuidFromString UuidFromStringA
+#define UuidToString UuidToStringA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidToString (
+ IN UUID __RPC_FAR * Uuid,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * StringUuid
+ );
+
+/* client/server */
+RPC_STATUS RPC_ENTRY
+UuidFromString (
+ IN unsigned char __RPC_FAR * StringUuid,
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+signed int RPC_ENTRY
+UuidCompare (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+RPC_STATUS RPC_ENTRY
+UuidCreateNil (
+ OUT UUID __RPC_FAR * NilUuid
+ );
+
+int RPC_ENTRY
+UuidEqual (
+ IN UUID __RPC_FAR * Uuid1,
+ IN UUID __RPC_FAR * Uuid2,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+unsigned short RPC_ENTRY
+UuidHash (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+int RPC_ENTRY
+UuidIsNil (
+ IN UUID __RPC_FAR * Uuid,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplaceW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterA (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterW (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned short * Annotation
+ );
+
+#ifdef UNICODE
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceW
+#define RpcEpRegister RpcEpRegisterW
+#else /* UNICODE */
+#define RpcEpRegisterNoReplace RpcEpRegisterNoReplaceA
+#define RpcEpRegister RpcEpRegisterA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegisterNoReplace (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcEpRegister (
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector OPTIONAL,
+ IN unsigned char * Annotation
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+
+RPC_STATUS RPC_ENTRY
+RpcEpUnregister(
+ IN RPC_IF_HANDLE IfSpec,
+ IN RPC_BINDING_VECTOR * BindingVector,
+ IN UUID_VECTOR * UuidVector
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextA (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqTextW (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned short __RPC_FAR * ErrorText
+ );
+
+#ifdef UNICODE
+#define DceErrorInqText DceErrorInqTextW
+#else /* UNICODE */
+#define DceErrorInqText DceErrorInqTextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+DceErrorInqText (
+ IN RPC_STATUS RpcStatus,
+ OUT unsigned char __RPC_FAR * ErrorText
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+#define DCE_C_ERROR_STRING_LEN 256
+
+typedef I_RPC_HANDLE * RPC_EP_INQ_HANDLE;
+
+#define RPC_C_EP_ALL_ELTS 0
+#define RPC_C_EP_MATCH_BY_IF 1
+#define RPC_C_EP_MATCH_BY_OBJ 2
+#define RPC_C_EP_MATCH_BY_BOTH 3
+
+#define RPC_C_VERS_ALL 1
+#define RPC_C_VERS_COMPATIBLE 2
+#define RPC_C_VERS_EXACT 3
+#define RPC_C_VERS_MAJOR_ONLY 4
+#define RPC_C_VERS_UPTO 5
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqBegin (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption OPTIONAL,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqDone (
+ IN OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextA (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNextW (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#ifdef UNICODE
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextW
+#else /* UNICODE */
+#define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextA
+#endif /* UNICODE */
+
+#else /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpEltInqNext (
+ IN RPC_EP_INQ_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
+ );
+
+#endif /* RPC_UNICODE_SUPPORTED */
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtEpUnregister (
+ IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
+ IN RPC_IF_ID __RPC_FAR * IfId,
+ IN RPC_BINDING_HANDLE Binding,
+ IN UUID __RPC_FAR * ObjectUuid OPTIONAL
+ );
+
+typedef int
+(__RPC_API * RPC_MGMT_AUTHORIZATION_FN) (
+ IN RPC_BINDING_HANDLE ClientBinding,
+ IN unsigned long RequestedMgmtOperation,
+ OUT RPC_STATUS __RPC_FAR * Status
+ );
+
+#define RPC_C_MGMT_INQ_IF_IDS 0
+#define RPC_C_MGMT_INQ_PRINC_NAME 1
+#define RPC_C_MGMT_INQ_STATS 2
+#define RPC_C_MGMT_IS_SERVER_LISTEN 3
+#define RPC_C_MGMT_STOP_SERVER_LISTEN 4
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetAuthorizationFn (
+ IN RPC_MGMT_AUTHORIZATION_FN AuthorizationFn
+ );
+
+
+#define RPC_C_PARM_MAX_PACKET_LENGTH 1
+#define RPC_C_PARM_BUFFER_LENGTH 2
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtInqParameter (
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtSetParameter (
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingInqParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long __RPC_FAR * Value
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcMgmtBindingSetParameter (
+ IN RPC_BINDING_HANDLE Handle,
+ IN unsigned Parameter,
+ IN unsigned long Value
+ );
+
+#define RPC_IF_AUTOLISTEN 0x0001
+#define RPC_IF_OLE 0x0002
+
+#include <rpcdcep.h>
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCDCE_H__ */
diff --git a/public/sdk/rpc16/win/inc/rpcdcep.h b/public/sdk/rpc16/win/inc/rpcdcep.h
new file mode 100644
index 000000000..85ed0fd67
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpcdcep.h
@@ -0,0 +1,415 @@
+/*++
+
+Copyright (c) 1991-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcdcep.h
+
+Abstract:
+
+ This module contains the private RPC runtime APIs for use by the
+ stubs and by support libraries. Applications must not call these
+ routines.
+
+--*/
+
+#ifndef __RPCDCEP_H__
+#define __RPCDCEP_H__
+
+// Set the packing level for RPC structures for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack(2)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _RPC_VERSION {
+ unsigned short MajorVersion;
+ unsigned short MinorVersion;
+} RPC_VERSION;
+
+typedef struct _RPC_SYNTAX_IDENTIFIER {
+ GUID SyntaxGUID;
+ RPC_VERSION SyntaxVersion;
+} RPC_SYNTAX_IDENTIFIER, __RPC_FAR * PRPC_SYNTAX_IDENTIFIER;
+
+typedef struct _RPC_MESSAGE
+{
+ RPC_BINDING_HANDLE Handle;
+ unsigned long DataRepresentation;
+ void __RPC_FAR * Buffer;
+ unsigned int BufferLength;
+ unsigned int ProcNum;
+ PRPC_SYNTAX_IDENTIFIER TransferSyntax;
+ void __RPC_FAR * RpcInterfaceInformation;
+ void __RPC_FAR * ReservedForRuntime;
+ RPC_MGR_EPV __RPC_FAR * ManagerEpv;
+ void __RPC_FAR * ImportContext;
+ unsigned long RpcFlags;
+} RPC_MESSAGE, __RPC_FAR * PRPC_MESSAGE;
+
+
+typedef RPC_STATUS RPC_ENTRY RPC_FORWARD_FUNCTION(
+ IN UUID __RPC_FAR * InterfaceId,
+ IN RPC_VERSION __RPC_FAR * InterfaceVersion,
+ IN UUID __RPC_FAR * ObjectId,
+ IN unsigned char __RPC_FAR * Rpcpro,
+ IN void __RPC_FAR * __RPC_FAR * ppDestEndpoint);
+
+/*
+ * Types of function calls for datagram rpc
+ */
+
+#define RPC_NCA_FLAGS_DEFAULT 0x00000000 /* 0b000...000 */
+#define RPC_NCA_FLAGS_IDEMPOTENT 0x00000001 /* 0b000...001 */
+#define RPC_NCA_FLAGS_BROADCAST 0x00000002 /* 0b000...010 */
+#define RPC_NCA_FLAGS_MAYBE 0x00000004 /* 0b000...100 */
+
+#define RPC_BUFFER_COMPLETE 0x00001000 /* used by pipes */
+#define RPC_BUFFER_PARTIAL 0x00002000 /* used by pipes */
+#define RPC_BUFFER_EXTRA 0x00004000 /* used by pipes */
+
+#define RPCFLG_NON_NDR 0x80000000UL
+#define RPCFLG_ASYNCHRONOUS 0x40000000UL
+#define RPCFLG_INPUT_SYNCHRONOUS 0x20000000UL
+#define RPCFLG_LOCAL_CALL 0x10000000UL
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#define RPC_FLAGS_VALID_BIT 0x8000
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define RPC_FLAGS_VALID_BIT 0x00008000
+#endif
+
+typedef
+void
+(__RPC_STUB __RPC_FAR * RPC_DISPATCH_FUNCTION) (
+ IN OUT PRPC_MESSAGE Message
+ );
+
+typedef struct {
+ unsigned int DispatchTableCount;
+ RPC_DISPATCH_FUNCTION __RPC_FAR * DispatchTable;
+ int Reserved;
+} RPC_DISPATCH_TABLE, __RPC_FAR * PRPC_DISPATCH_TABLE;
+
+typedef struct _RPC_PROTSEQ_ENDPOINT
+{
+ unsigned char __RPC_FAR * RpcProtocolSequence;
+ unsigned char __RPC_FAR * Endpoint;
+} RPC_PROTSEQ_ENDPOINT, __RPC_FAR * PRPC_PROTSEQ_ENDPOINT;
+
+/*
+Both of these types MUST start with the InterfaceId and TransferSyntax.
+Look at RpcIfInqId and I_RpcIfInqTransferSyntaxes to see why.
+*/
+#define NT351_INTERFACE_SIZE 0x40
+#define RPC_INTERFACE_HAS_PIPES 0x0001
+
+typedef struct _RPC_SERVER_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ RPC_MGR_EPV __RPC_FAR *DefaultManagerEpv;
+ void const __RPC_FAR *InterpreterInfo;
+ unsigned int Flags ;
+} RPC_SERVER_INTERFACE, __RPC_FAR * PRPC_SERVER_INTERFACE;
+
+typedef struct _RPC_CLIENT_INTERFACE
+{
+ unsigned int Length;
+ RPC_SYNTAX_IDENTIFIER InterfaceId;
+ RPC_SYNTAX_IDENTIFIER TransferSyntax;
+ PRPC_DISPATCH_TABLE DispatchTable;
+ unsigned int RpcProtseqEndpointCount;
+ PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
+ unsigned long Reserved;
+ void const __RPC_FAR * InterpreterInfo;
+ unsigned int Flags ;
+} RPC_CLIENT_INTERFACE, __RPC_FAR * PRPC_CLIENT_INTERFACE;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSendReceive (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSend (
+ IN OUT PRPC_MESSAGE Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReceive (
+ IN OUT PRPC_MESSAGE Message,
+ IN unsigned int Size
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcFreePipeBuffer (
+ IN OUT RPC_MESSAGE __RPC_FAR * Message
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcReallocPipeBuffer (
+ IN PRPC_MESSAGE Message,
+ IN unsigned int NewSize
+ ) ;
+
+typedef void * I_RPC_MUTEX;
+
+void RPC_ENTRY
+I_RpcRequestMutex (
+ IN OUT I_RPC_MUTEX * Mutex
+ );
+
+void RPC_ENTRY
+I_RpcClearMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void RPC_ENTRY
+I_RpcDeleteMutex (
+ IN I_RPC_MUTEX Mutex
+ );
+
+void __RPC_FAR * RPC_ENTRY
+I_RpcAllocate (
+ IN unsigned int Size
+ );
+
+void RPC_ENTRY
+I_RpcFree (
+ IN void __RPC_FAR * Object
+ );
+
+void RPC_ENTRY
+I_RpcPauseExecution (
+ IN unsigned long Milliseconds
+ );
+
+typedef
+void
+(__RPC_USER __RPC_FAR * PRPC_RUNDOWN) (
+ void __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle,
+ IN PRPC_RUNDOWN RundownRoutine,
+ IN void * Context
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcStopMonitorAssociation (
+ IN RPC_BINDING_HANDLE Handle
+ );
+
+RPC_BINDING_HANDLE RPC_ENTRY
+I_RpcGetCurrentCallHandle(
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetAssociationContext (
+ OUT void __RPC_FAR * __RPC_FAR * AssociationContext
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetAssociationContext (
+ IN void __RPC_FAR * AssociationContext
+ );
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsBindingSetEntryName (
+ IN RPC_BINDING_HANDLE Binding,
+ IN unsigned long EntryNameSyntax,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+#endif
+
+#ifdef __RPC_NT__
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#else
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqDynamicEndpoint (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * DynamicEndpoint
+ );
+
+#endif
+
+#define TRANSPORT_TYPE_CN 0x1
+#define TRANSPORT_TYPE_DG 0x2
+#define TRANSPORT_TYPE_LPC 0x4
+#define TRANSPORT_TYPE_WMSG 0x8
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingInqTransportType (
+ IN RPC_BINDING_HANDLE Binding,
+ OUT unsigned int __RPC_FAR * Type
+ );
+
+typedef struct _RPC_TRANSFER_SYNTAX
+{
+ UUID Uuid;
+ unsigned short VersMajor;
+ unsigned short VersMinor;
+} RPC_TRANSFER_SYNTAX;
+
+RPC_STATUS RPC_ENTRY
+I_RpcIfInqTransferSyntaxes (
+ IN RPC_IF_HANDLE RpcIfHandle,
+ OUT RPC_TRANSFER_SYNTAX __RPC_FAR * TransferSyntaxes,
+ IN unsigned int TransferSyntaxSize,
+ OUT unsigned int __RPC_FAR * TransferSyntaxCount
+ );
+
+RPC_STATUS RPC_ENTRY
+I_UuidCreate (
+ OUT UUID __RPC_FAR * Uuid
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingCopy (
+ IN RPC_BINDING_HANDLE SourceBinding,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * DestinationBinding
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingIsClientLocal (
+ IN RPC_BINDING_HANDLE BindingHandle OPTIONAL,
+ OUT unsigned int __RPC_FAR * ClientLocalFlag
+ );
+
+void RPC_ENTRY
+I_RpcSsDontSerializeContext (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcLaunchDatagramReceiveThread(
+ void __RPC_FAR * pAddress
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerRegisterForwardFunction (
+ IN RPC_FORWARD_FUNCTION __RPC_FAR * pForwardFunction
+ );
+
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionInqSockBuffSize(
+ OUT unsigned long __RPC_FAR * RecvBuffSize,
+ OUT unsigned long __RPC_FAR * SendBuffSize
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcConnectionSetSockBuffSize(
+ IN unsigned long RecvBuffSize,
+ IN unsigned long SendBuffSize
+ );
+
+
+#ifdef MSWMSG
+RPC_STATUS RPC_ENTRY
+I_RpcServerStartListening(
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerStopListening(
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcGetThreadWindowHandle(
+ OUT HWND *WindowHandle
+ ) ;
+
+typedef RPC_STATUS (*RPC_BLOCKING_FN) (
+ IN void *wnd,
+ IN void *Context,
+ IN HANDLE hSyncEvent
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcAsyncSendReceive(
+ IN OUT PRPC_MESSAGE pRpcMessage,
+ IN OPTIONAL void *Context,
+ HWND hWnd
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcBindingSetAsync(
+ IN RPC_BINDING_HANDLE Binding,
+ IN RPC_BLOCKING_FN BlockingFn
+ ) ;
+
+LONG RPC_ENTRY
+I_RpcWindowProc(
+ IN HWND hWnd,
+ IN UINT Message,
+ IN WPARAM wParam,
+ IN LPARAM lParam
+ ) ;
+
+RPC_STATUS RPC_ENTRY
+I_RpcSetWMsgEndpoint (
+ IN WCHAR __RPC_FAR * Endpoint
+ ) ;
+#endif
+
+RPC_STATUS RPC_ENTRY
+I_RpcServerInqTransportType(
+ OUT unsigned int __RPC_FAR * Type
+ ) ;
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for Dos and Windows.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__)
+#pragma pack()
+#endif
+
+#endif /* __RPCDCEP_H__ */
diff --git a/public/sdk/rpc16/win/inc/rpcerr.h b/public/sdk/rpc16/win/inc/rpcerr.h
new file mode 100644
index 000000000..139df1b1b
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpcerr.h
@@ -0,0 +1,188 @@
+/*********************************************************/
+/** Microsoft LAN Manager **/
+/** Copyright(c) Microsoft Corp., 1987-1990 **/
+/** **/
+/** Rpc Error Codes from the compiler and runtime **/
+/** **/
+/*********************************************************/
+
+/*
+If you change this file, you must also change ntstatus.mc and winerror.mc
+*/
+
+#ifndef __RPCERR_H__
+#define __RPCERR_H__
+
+#define RPC_S_OK 0
+#define RPC_S_INVALID_ARG 1
+#define RPC_S_INVALID_STRING_BINDING 2
+#define RPC_S_OUT_OF_MEMORY 3
+#define RPC_S_WRONG_KIND_OF_BINDING 4
+#define RPC_S_INVALID_BINDING 5
+#define RPC_S_PROTSEQ_NOT_SUPPORTED 6
+#define RPC_S_INVALID_RPC_PROTSEQ 7
+#define RPC_S_INVALID_STRING_UUID 8
+#define RPC_S_INVALID_ENDPOINT_FORMAT 9
+
+#define RPC_S_INVALID_NET_ADDR 10
+#define RPC_S_INVALID_NAF_ID 11
+#define RPC_S_NO_ENDPOINT_FOUND 12
+#define RPC_S_INVALID_TIMEOUT 13
+#define RPC_S_OBJECT_NOT_FOUND 14
+#define RPC_S_ALREADY_REGISTERED 15
+#define RPC_S_TYPE_ALREADY_REGISTERED 16
+#define RPC_S_ALREADY_LISTENING 17
+#define RPC_S_NO_PROTSEQS_REGISTERED 18
+#define RPC_S_NOT_LISTENING 19
+
+#define RPC_S_OUT_OF_THREADS 20
+#define RPC_S_UNKNOWN_MGR_TYPE 21
+#define RPC_S_UNKNOWN_IF 22
+#define RPC_S_NO_BINDINGS 23
+#define RPC_S_NO_PROTSEQS 24
+#define RPC_S_CANT_CREATE_ENDPOINT 25
+#define RPC_S_OUT_OF_RESOURCES 26
+#define RPC_S_SERVER_UNAVAILABLE 27
+#define RPC_S_SERVER_TOO_BUSY 28
+#define RPC_S_INVALID_NETWORK_OPTIONS 29
+
+#define RPC_S_NO_CALL_ACTIVE 30
+#define RPC_S_INVALID_LEVEL 31
+#define RPC_S_CANNOT_SUPPORT 32
+#define RPC_S_CALL_FAILED 33
+#define RPC_S_CALL_FAILED_DNE 34
+#define RPC_S_PROTOCOL_ERROR 35
+
+// Unused.
+
+// Unused.
+
+#define RPC_S_UNSUPPORTED_TRANS_SYN 38
+#define RPC_S_BUFFER_TOO_SMALL 39
+
+#define RPC_S_NO_CONTEXT_AVAILABLE 40
+#define RPC_S_SERVER_OUT_OF_MEMORY 41
+#define RPC_S_UNSUPPORTED_TYPE 42
+#define RPC_S_ZERO_DIVIDE 43
+#define RPC_S_ADDRESS_ERROR 44
+#define RPC_S_FP_DIV_ZERO 45
+#define RPC_S_FP_UNDERFLOW 46
+#define RPC_S_FP_OVERFLOW 47
+#define RPC_S_INVALID_TAG 48
+#define RPC_S_INVALID_BOUND 49
+
+#define RPC_S_NO_ENTRY_NAME 50
+#define RPC_S_INVALID_NAME_SYNTAX 51
+#define RPC_S_UNSUPPORTED_NAME_SYNTAX 52
+#define RPC_S_UUID_LOCAL_ONLY 53
+#define RPC_S_UUID_NO_ADDRESS 54
+#define RPC_S_DUPLICATE_ENDPOINT 55
+#define RPC_S_INVALID_SECURITY_DESC 56
+#define RPC_S_ACCESS_DENIED 57
+#define RPC_S_UNKNOWN_AUTHN_TYPE 58
+#define RPC_S_MAX_CALLS_TOO_SMALL 59
+
+#define RPC_S_STRING_TOO_LONG 60
+#define RPC_S_PROTSEQ_NOT_FOUND 61
+#define RPC_S_PROCNUM_OUT_OF_RANGE 62
+#define RPC_S_BINDING_HAS_NO_AUTH 63
+#define RPC_S_UNKNOWN_AUTHN_SERVICE 64
+#define RPC_S_UNKNOWN_AUTHN_LEVEL 65
+#define RPC_S_INVALID_AUTH_IDENTITY 66
+#define RPC_S_UNKNOWN_AUTHZ_SERVICE 67
+#define EPT_S_INVALID_ENTRY 68
+#define EPT_S_CANT_PERFORM_OP 69
+
+#define EPT_S_NOT_REGISTERED 70
+#define RPC_S_NOTHING_TO_EXPORT 71
+#define RPC_S_INCOMPLETE_NAME 72
+#define RPC_S_UNIMPLEMENTED_API 73
+#define RPC_S_INVALID_VERS_OPTION 74
+#define RPC_S_NO_MORE_MEMBERS 75
+#define RPC_S_NOT_ALL_OBJS_UNEXPORTED 76
+#define RPC_S_INTERFACE_NOT_FOUND 77
+#define RPC_S_ENTRY_ALREADY_EXISTS 78
+#define RPC_S_ENTRY_NOT_FOUND 79
+
+#define RPC_S_NAME_SERVICE_UNAVAILABLE 80
+#define RPC_S_CALL_IN_PROGRESS 81
+#define RPC_S_NO_MORE_BINDINGS 82
+#define RPC_S_GROUP_MEMBER_NOT_FOUND 83
+#define EPT_S_CANT_CREATE 84
+#define RPC_S_INVALID_OBJECT 85
+#define RPC_S_CALL_CANCELLED 86
+#define RPC_S_BINDING_INCOMPLETE 87
+#define RPC_S_COMM_FAILURE 88
+#define RPC_S_UNSUPPORTED_AUTHN_LEVEL 89
+
+#define RPC_S_NO_PRINC_NAME 90
+#define RPC_S_NOT_RPC_ERROR 91
+#define RPC_S_SEC_PKG_ERROR 92
+#define RPC_S_NOT_CANCELLED 93
+#define RPC_S_SEND_INCOMPLETE 94
+
+
+#define RPC_S_INTERNAL_ERROR 100
+
+/* The list of servers available for auto_handle binding has been exhausted. */
+
+#define RPC_X_NO_MORE_ENTRIES 256
+
+/* Insufficient memory available to set up necessary data structures. */
+
+#define RPC_X_NO_MEMORY 257
+
+/* The specified bounds of an array are inconsistent. */
+
+#define RPC_X_INVALID_BOUND 258
+
+/* The discriminant value does not match any of the case values. */
+/* There is no default case. */
+
+#define RPC_X_INVALID_TAG 259
+
+/* The file designated by DCERPCCHARTRANS cannot be opened. */
+
+#define RPC_X_SS_CHAR_TRANS_OPEN_FAIL 260
+
+/* The file containing char translation table has fewer than 512 bytes. */
+
+#define RPC_X_SS_CHAR_TRANS_SHORT_FILE 261
+
+/* A null context handle is passed in an [in] parameter position. */
+
+#define RPC_X_SS_IN_NULL_CONTEXT 262
+
+/* Only raised on the callee side. */
+/* A uuid in an [in] handle does not correspond to any known context. */
+
+#define RPC_X_SS_CONTEXT_MISMATCH 263
+
+/* Only raised on the caller side. */
+/* A uuid in an [in, out] context handle changed during a call. */
+
+#define RPC_X_SS_CONTEXT_DAMAGED 264
+
+#define RPC_X_SS_HANDLES_MISMATCH 265
+
+#define RPC_X_SS_CANNOT_GET_CALL_HANDLE 266
+
+#define RPC_X_NULL_REF_POINTER 267
+
+#define RPC_X_ENUM_VALUE_OUT_OF_RANGE 268
+
+#define RPC_X_BYTE_COUNT_TOO_SMALL 269
+
+#define RPC_X_BAD_STUB_DATA 270
+
+#define RPC_X_INVALID_ES_ACTION 271
+#define RPC_X_WRONG_ES_VERSION 272
+#define RPC_X_WRONG_STUB_VERSION 273
+#define RPC_X_INVALID_BUFFER 274
+#define RPC_X_INVALID_PIPE_OBJECT 275
+#define RPC_X_INVALID_PIPE_OPERATION 276
+#define RPC_X_WRONG_PIPE_VERSION 277
+
+
+#endif /* __RPCERR_H__ */
+
diff --git a/public/sdk/rpc16/win/inc/rpcndr.h b/public/sdk/rpc16/win/inc/rpcndr.h
new file mode 100644
index 000000000..65d1cdbfe
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpcndr.h
@@ -0,0 +1,2630 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcndr.h
+
+Abstract:
+
+ Definitions for stub data structures and prototypes of helper functions.
+
+Author:
+
+ DonnaLi (01-01-91)
+
+Environment:
+
+ DOS, Win 3.X, and Win/NT.
+
+Revision History:
+
+ DONNALI 08-29-91 Start recording history
+ donnali 09-11-91 change conversion macros
+ donnali 09-18-91 check in files for moving
+ STEVEZ 10-15-91 Merge with NT tree
+ donnali 10-28-91 add prototype
+ donnali 11-19-91 bugfix for strings
+ MIKEMON 12-17-91 DCE runtime API conversion
+ donnali 03-24-92 change rpc public header f
+ STEVEZ 04-04-92 add nsi include
+ mikemon 04-18-92 security support and misc
+ DovhH 04-24-24 Changed signature of <int>_from_ndr
+ (to unsigned <int>)
+ Added <base_type>_array_from_ndr routines
+ RyszardK 06-17-93 Added support for hyper
+ VibhasC 09-11-93 Created rpcndrn.h
+ DKays 10-14-93 Fixed up rpcndrn.h MIDL 2.0
+ RyszardK 01-15-94 Merged in the midl 2.0 changes from rpcndrn.h
+ Stevebl 04-22-96 Hookole support changes to MIDL_*_INFO
+
+--*/
+
+#ifndef __RPCNDR_H__
+#define __RPCNDR_H__
+
+//
+// Set the packing level for RPC structures for Dos, Windows and Mac.
+//
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack(2)
+#endif
+
+#if defined(__RPC_MAC__)
+#define _MAC_
+#endif
+
+#include <rpcnsip.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/****************************************************************************
+
+ Network Computing Architecture (NCA) definition:
+
+ Network Data Representation: (NDR) Label format:
+ An unsigned long (32 bits) with the following layout:
+
+ 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
+ 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
+ +---------------+---------------+---------------+-------+-------+
+ | Reserved | Reserved |Floating point | Int | Char |
+ | | |Representation | Rep. | Rep. |
+ +---------------+---------------+---------------+-------+-------+
+
+ Where
+
+ Reserved:
+
+ Must be zero (0) for NCA 1.5 and NCA 2.0.
+
+ Floating point Representation is:
+
+ 0 - IEEE
+ 1 - VAX
+ 2 - Cray
+ 3 - IBM
+
+ Int Rep. is Integer Representation:
+
+ 0 - Big Endian
+ 1 - Little Endian
+
+ Char Rep. is Character Representation:
+
+ 0 - ASCII
+ 1 - EBCDIC
+
+ The Microsoft Local Data Representation (for all platforms which are
+ of interest currently is edefined below:
+
+ ****************************************************************************/
+
+#define NDR_CHAR_REP_MASK (unsigned long)0X0000000FL
+#define NDR_INT_REP_MASK (unsigned long)0X000000F0L
+#define NDR_FLOAT_REP_MASK (unsigned long)0X0000FF00L
+
+#define NDR_LITTLE_ENDIAN (unsigned long)0X00000010L
+#define NDR_BIG_ENDIAN (unsigned long)0X00000000L
+
+#define NDR_IEEE_FLOAT (unsigned long)0X00000000L
+#define NDR_VAX_FLOAT (unsigned long)0X00000100L
+
+#define NDR_ASCII_CHAR (unsigned long)0X00000000L
+#define NDR_EBCDIC_CHAR (unsigned long)0X00000001L
+
+#if defined(__RPC_MAC__)
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000000L
+#define NDR_LOCAL_ENDIAN NDR_BIG_ENDIAN
+#else
+#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000010L
+#define NDR_LOCAL_ENDIAN NDR_LITTLE_ENDIAN
+#endif
+
+
+/****************************************************************************
+ * Macros for targeted platforms
+ ****************************************************************************/
+
+#if (defined(_WIN32_DCOM) || 0x400 <= _WIN32_WINNT)
+#define TARGET_IS_NT40_OR_LATER 1
+#else
+#define TARGET_IS_NT40_OR_LATER 0
+#endif
+
+#if (0x400 <= WINVER)
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 1
+#else
+#define TARGET_IS_NT351_OR_WIN95_OR_LATER 0
+#endif
+
+/****************************************************************************
+ * Other MIDL base types / predefined types:
+ ****************************************************************************/
+
+#define small char
+typedef unsigned char byte;
+typedef unsigned char boolean;
+
+#ifndef _HYPER_DEFINED
+#define _HYPER_DEFINED
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__) && (!defined(_M_IX86) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64))
+#define hyper __int64
+#define MIDL_uhyper unsigned __int64
+#else
+typedef double hyper;
+typedef double MIDL_uhyper;
+#endif
+
+#endif // _HYPER_DEFINED
+
+#ifndef _WCHAR_T_DEFINED
+typedef unsigned short wchar_t;
+#define _WCHAR_T_DEFINED
+#endif
+
+#ifndef _SIZE_T_DEFINED
+typedef unsigned int size_t;
+#define _SIZE_T_DEFINED
+#endif
+
+#ifdef __RPC_DOS__
+#define __RPC_CALLEE __far __pascal
+#endif
+
+#ifdef __RPC_WIN16__
+#define __RPC_CALLEE __far __pascal __export
+#endif
+
+#ifdef __RPC_WIN32__
+#if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
+#define __RPC_CALLEE __stdcall
+#else
+#define __RPC_CALLEE
+#endif
+#endif
+
+#ifdef __RPC_MAC__
+#define __RPC_CALLEE __far
+#endif
+
+#ifndef __MIDL_USER_DEFINED
+#define midl_user_allocate MIDL_user_allocate
+#define midl_user_free MIDL_user_free
+#define __MIDL_USER_DEFINED
+#endif
+
+void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
+void __RPC_USER MIDL_user_free( void __RPC_FAR * );
+
+#ifdef __RPC_WIN16__
+#define RPC_VAR_ENTRY __export __cdecl
+#else
+#define RPC_VAR_ENTRY __cdecl
+#endif
+
+
+/* winnt only */
+#if defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA)
+#define __MIDL_DECLSPEC_DLLIMPORT __declspec(dllimport)
+#define __MIDL_DECLSPEC_DLLEXPORT __declspec(dllexport)
+#else
+#define __MIDL_DECLSPEC_DLLIMPORT
+#define __MIDL_DECLSPEC_DLLEXPORT
+#endif
+
+
+
+
+/****************************************************************************
+ * Context handle management related definitions:
+ *
+ * Client and Server Contexts.
+ *
+ ****************************************************************************/
+
+typedef void __RPC_FAR * NDR_CCONTEXT;
+
+typedef struct
+ {
+ void __RPC_FAR * pad[2];
+ void __RPC_FAR * userContext;
+ } __RPC_FAR * NDR_SCONTEXT;
+
+#define NDRSContextValue(hContext) (&(hContext)->userContext)
+
+#define cbNDRContext 20 /* size of context on WIRE */
+
+typedef void (__RPC_USER __RPC_FAR * NDR_RUNDOWN)(void __RPC_FAR * context);
+
+typedef struct _SCONTEXT_QUEUE {
+ unsigned long NumberOfObjects;
+ NDR_SCONTEXT * ArrayOfObjects;
+ } SCONTEXT_QUEUE, __RPC_FAR * PSCONTEXT_QUEUE;
+
+RPC_BINDING_HANDLE RPC_ENTRY
+NDRCContextBinding (
+ IN NDR_CCONTEXT CContext
+ );
+
+void RPC_ENTRY
+NDRCContextMarshall (
+ IN NDR_CCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff
+ );
+
+void RPC_ENTRY
+NDRCContextUnmarshall (
+ OUT NDR_CCONTEXT __RPC_FAR *pCContext,
+ IN RPC_BINDING_HANDLE hBinding,
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+NDRSContextMarshall (
+ IN NDR_SCONTEXT CContext,
+ OUT void __RPC_FAR *pBuff,
+ IN NDR_RUNDOWN userRunDownIn
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NDRSContextUnmarshall (
+ IN void __RPC_FAR *pBuff,
+ IN unsigned long DataRepresentation
+ );
+
+void RPC_ENTRY
+RpcSsDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+
+/****************************************************************************
+ NDR conversion related definitions.
+ ****************************************************************************/
+
+#define byte_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define byte_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define boolean_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define boolean_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+#define small_from_ndr(source, target) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)&(source)->Buffer)++; \
+ }
+
+#define small_from_ndr_temp(source, target, format) \
+ { \
+ *(target) = *(*(char __RPC_FAR * __RPC_FAR *)(source))++; \
+ }
+
+#define small_array_from_ndr(Source, LowerIndex, UpperIndex, Target) \
+ { \
+ NDRcopy ( \
+ (((char __RPC_FAR *)(Target))+(LowerIndex)), \
+ (Source)->Buffer, \
+ (unsigned int)((UpperIndex)-(LowerIndex))); \
+ *(unsigned long __RPC_FAR *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); \
+ }
+
+/****************************************************************************
+ Platform specific mapping of c-runtime functions.
+ ****************************************************************************/
+
+#ifdef __RPC_DOS__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#ifdef __RPC_WIN16__
+#define MIDL_ascii_strlen(string) \
+ _fstrlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ _fstrcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ _fmemset(s,c,n)
+#endif
+
+#if defined(__RPC_WIN32__) || defined(__RPC_MAC__)
+#define MIDL_ascii_strlen(string) \
+ strlen(string)
+#define MIDL_ascii_strcpy(target,source) \
+ strcpy(target,source)
+#define MIDL_memset(s,c,n) \
+ memset(s,c,n)
+#endif
+
+/****************************************************************************
+ Ndr Library helper function prototypes for MIDL 1.0 ndr functions.
+ ****************************************************************************/
+
+void RPC_ENTRY
+NDRcopy (
+ IN void __RPC_FAR *pTarget,
+ IN void __RPC_FAR *pSource,
+ IN unsigned int size
+ );
+
+size_t RPC_ENTRY
+MIDL_wchar_strlen (
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+MIDL_wchar_strcpy (
+ OUT void __RPC_FAR * t,
+ IN wchar_t __RPC_FAR * s
+ );
+
+void RPC_ENTRY
+char_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+char_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned char __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned short __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+short_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned short __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+short_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned short __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+long_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT unsigned long __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+long_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT unsigned long __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+long_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT unsigned long __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+enum_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT unsigned int __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+float_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+double_array_from_ndr (
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT void __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr (
+ IN OUT PRPC_MESSAGE source,
+ OUT hyper __RPC_FAR * target
+ );
+
+void RPC_ENTRY
+hyper_array_from_ndr(
+ IN OUT PRPC_MESSAGE SourceMessage,
+ IN unsigned long LowerIndex,
+ IN unsigned long UpperIndex,
+ OUT hyper __RPC_FAR * Target
+ );
+
+void RPC_ENTRY
+hyper_from_ndr_temp (
+ IN OUT unsigned char __RPC_FAR * __RPC_FAR * source,
+ OUT hyper __RPC_FAR * target,
+ IN unsigned long format
+ );
+
+void RPC_ENTRY
+data_from_ndr (
+ PRPC_MESSAGE source,
+ void __RPC_FAR * target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_into_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+data_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_size_ndr (
+ void __RPC_FAR * source,
+ PRPC_MESSAGE target,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void RPC_ENTRY
+tree_peek_ndr (
+ PRPC_MESSAGE source,
+ unsigned char __RPC_FAR * __RPC_FAR * buffer,
+ char __RPC_FAR * format,
+ unsigned char MscPak
+ );
+
+void __RPC_FAR * RPC_ENTRY
+midl_allocate (
+ size_t size
+ );
+
+/****************************************************************************
+ MIDL 2.0 ndr definitions.
+ ****************************************************************************/
+
+typedef unsigned long error_status_t;
+
+#define _midl_ma1( p, cast ) *(*( cast **)&p)++
+#define _midl_ma2( p, cast ) *(*( cast **)&p)++
+#define _midl_ma4( p, cast ) *(*( cast **)&p)++
+#define _midl_ma8( p, cast ) *(*( cast **)&p)++
+
+#define _midl_unma1( p, cast ) *(( cast *)p)++
+#define _midl_unma2( p, cast ) *(( cast *)p)++
+#define _midl_unma3( p, cast ) *(( cast *)p)++
+#define _midl_unma4( p, cast ) *(( cast *)p)++
+
+// Some alignment specific macros.
+
+
+#define _midl_fa2( p ) (p = (RPC_BUFPTR )((unsigned long)(p+1) & 0xfffffffe))
+#define _midl_fa4( p ) (p = (RPC_BUFPTR )((unsigned long)(p+3) & 0xfffffffc))
+#define _midl_fa8( p ) (p = (RPC_BUFPTR )((unsigned long)(p+7) & 0xfffffff8))
+
+#define _midl_addp( p, n ) (p += n)
+
+// Marshalling macros
+
+#define _midl_marsh_lhs( p, cast ) *(*( cast **)&p)++
+#define _midl_marsh_up( mp, p ) *(*(unsigned long **)&mp)++ = (unsigned long)p
+#define _midl_advmp( mp ) *(*(unsigned long **)&mp)++
+#define _midl_unmarsh_up( p ) (*(*(unsigned long **)&p)++)
+
+
+////////////////////////////////////////////////////////////////////////////
+// Ndr macros.
+////////////////////////////////////////////////////////////////////////////
+
+#define NdrMarshConfStringHdr( p, s, l ) (_midl_ma4( p, unsigned long) = s, \
+ _midl_ma4( p, unsigned long) = 0, \
+ _midl_ma4( p, unsigned long) = l)
+
+#define NdrUnMarshConfStringHdr(p, s, l) ((s=_midl_unma4(p,unsigned long),\
+ (_midl_addp(p,4)), \
+ (l=_midl_unma4(p,unsigned long))
+
+#define NdrMarshCCtxtHdl(pc,p) (NDRCContextMarshall( (NDR_CCONTEXT)pc, p ),p+20)
+
+#define NdrUnMarshCCtxtHdl(pc,p,h,drep) \
+ (NDRCContextUnmarshall((NDR_CONTEXT)pc,h,p,drep), p+20)
+
+#define NdrUnMarshSCtxtHdl(pc, p,drep) (pc = NdrSContextUnMarshall(p,drep ))
+
+
+#define NdrMarshSCtxtHdl(pc,p,rd) (NdrSContextMarshall((NDR_SCONTEXT)pc,p, (NDR_RUNDOWN)rd)
+
+#define NdrFieldOffset(s,f) (long)(& (((s __RPC_FAR *)0)->f))
+#define NdrFieldPad(s,f,p,t) (NdrFieldOffset(s,f) - NdrFieldOffset(s,p) - sizeof(t))
+
+#if defined(__RPC_MAC__)
+#define NdrFcShort(s) (unsigned char)(s >> 8), (unsigned char)(s & 0xff)
+#define NdrFcLong(s) (unsigned char)(s >> 24), (unsigned char)((s & 0x00ff0000) >> 16), \
+ (unsigned char)((s & 0x0000ff00) >> 8), (unsigned char)(s & 0xff)
+#else
+#define NdrFcShort(s) (unsigned char)(s & 0xff), (unsigned char)(s >> 8)
+#define NdrFcLong(s) (unsigned char)(s & 0xff), (unsigned char)((s & 0x0000ff00) >> 8), \
+ (unsigned char)((s & 0x00ff0000) >> 16), (unsigned char)(s >> 24)
+#endif // Mac
+
+//
+// On the server side, the following exceptions are mapped to
+// the bad stub data exception if -error stub_data is used.
+//
+
+#define RPC_BAD_STUB_DATA_EXCEPTION_FILTER \
+ ( (RpcExceptionCode() == STATUS_ACCESS_VIOLATION) || \
+ (RpcExceptionCode() == STATUS_DATATYPE_MISALIGNMENT) || \
+ (RpcExceptionCode() == RPC_X_BAD_STUB_DATA) )
+
+/////////////////////////////////////////////////////////////////////////////
+// Some stub helper functions.
+/////////////////////////////////////////////////////////////////////////////
+
+////////////////////////////////////////////////////////////////////////////
+// Stub helper structures.
+////////////////////////////////////////////////////////////////////////////
+
+struct _MIDL_STUB_MESSAGE;
+struct _MIDL_STUB_DESC;
+struct _FULL_PTR_XLAT_TABLES;
+
+typedef unsigned char __RPC_FAR * RPC_BUFPTR;
+typedef unsigned long RPC_LENGTH;
+
+// Expression evaluation callback routine prototype.
+typedef void (__RPC_USER __RPC_FAR * EXPR_EVAL)( struct _MIDL_STUB_MESSAGE __RPC_FAR * );
+
+typedef const unsigned char __RPC_FAR * PFORMAT_STRING;
+
+/*
+ * Multidimensional conformant/varying array struct.
+ */
+typedef struct
+ {
+ long Dimension;
+
+ /* These fields MUST be (unsigned long *) */
+ unsigned long __RPC_FAR * BufferConformanceMark;
+ unsigned long __RPC_FAR * BufferVarianceMark;
+
+ /* Count arrays, used for top level arrays in -Os stubs */
+ unsigned long __RPC_FAR * MaxCountArray;
+ unsigned long __RPC_FAR * OffsetArray;
+ unsigned long __RPC_FAR * ActualCountArray;
+ } ARRAY_INFO, __RPC_FAR *PARRAY_INFO;
+
+/*
+ * Pipe related definitions.
+ */
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PULL_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_PUSH_RTN)(
+ char __RPC_FAR * state,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+typedef void
+(__RPC_FAR __RPC_API * NDR_PIPE_ALLOC_RTN)(
+ char __RPC_FAR * state,
+ unsigned long bsize,
+ void __RPC_FAR * __RPC_FAR * buf,
+ unsigned long __RPC_FAR * bcount );
+
+
+typedef struct _GENERIC_PIPE_TYPE
+ {
+ NDR_PIPE_PULL_RTN pfnPull;
+ NDR_PIPE_PUSH_RTN pfnPush;
+ NDR_PIPE_ALLOC_RTN pfnAlloc;
+ char __RPC_FAR * pState;
+ } GENERIC_PIPE_TYPE;
+
+
+typedef struct {
+ int CurrentState;
+ int ElemsInChunk;
+ int ElemAlign;
+ int ElemWireSize;
+ int ElemMemSize;
+ int PartialBufferSize;
+ unsigned char __RPC_FAR * PartialElem;
+ int PartialElemSize;
+ int PartialOffset;
+ int EndOfPipe;
+ } NDR_PIPE_STATE;
+
+typedef struct _PIPE_MESSAGE
+ {
+ unsigned short Signature;
+ unsigned short PipeId;
+ GENERIC_PIPE_TYPE __RPC_FAR * pPipeType;
+ PFORMAT_STRING pTypeFormat;
+ unsigned short PipeStatus;
+ unsigned short PipeFlags;
+ struct _MIDL_STUB_MESSAGE __RPC_FAR * pStubMsg;
+ } NDR_PIPE_MESSAGE, __RPC_FAR * PNDR_PIPE_MESSAGE;
+
+typedef struct _NDR_PIPE_DESC
+ {
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg;
+ short CurrentPipe;
+ short InPipes;
+ short OutPipes;
+ short TotalPipes;
+ short PipeVersion;
+ short Flags;
+ unsigned char __RPC_FAR * DispatchBuffer;
+ unsigned char __RPC_FAR * LastPartialBuffer;
+ unsigned long LastPartialSize;
+ unsigned char __RPC_FAR * BufferSave;
+ unsigned long LengthSave;
+ NDR_PIPE_STATE RuntimeState;
+ } NDR_PIPE_DESC, __RPC_FAR * PNDR_PIPE_DESC;
+
+
+/*
+ * MIDL Stub Message
+ */
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <pshpack4.h>
+#endif
+
+typedef struct _MIDL_STUB_MESSAGE
+ {
+ /* RPC message structure. */
+ PRPC_MESSAGE RpcMsg;
+
+ /* Pointer into RPC message buffer. */
+ unsigned char __RPC_FAR * Buffer;
+
+ /*
+ * These are used internally by the Ndr routines to mark the beginning
+ * and end of an incoming RPC buffer.
+ */
+ unsigned char __RPC_FAR * BufferStart;
+ unsigned char __RPC_FAR * BufferEnd;
+
+ /*
+ * Used internally by the Ndr routines as a place holder in the buffer.
+ * On the marshalling side it's used to mark the location where conformance
+ * size should be marshalled.
+ * On the unmarshalling side it's used to mark the location in the buffer
+ * used during pointer unmarshalling to base pointer offsets off of.
+ */
+ unsigned char __RPC_FAR * BufferMark;
+
+ /* Set by the buffer sizing routines. */
+ unsigned long BufferLength;
+
+ /* Set by the memory sizing routines. */
+ unsigned long MemorySize;
+
+ /* Pointer to user memory. */
+ unsigned char __RPC_FAR * Memory;
+
+ /* Is the Ndr routine begin called from a client side stub. */
+ int IsClient;
+
+ /* Can the buffer be re-used for memory on unmarshalling. */
+ int ReuseBuffer;
+
+ /* Holds the current pointer to an allocate all nodes memory block. */
+ unsigned char __RPC_FAR * AllocAllNodesMemory;
+
+ /* Used for debugging asserts only, remove later. */
+ unsigned char __RPC_FAR * AllocAllNodesMemoryEnd;
+
+ /*
+ * Stuff needed while handling complex structures
+ */
+
+ /* Ignore imbeded pointers while computing buffer or memory sizes. */
+ int IgnoreEmbeddedPointers;
+
+ /*
+ * This marks the location in the buffer where pointees of a complex
+ * struct reside.
+ */
+ unsigned char __RPC_FAR * PointerBufferMark;
+
+ /*
+ * Used to catch errors in SendReceive.
+ */
+ unsigned char fBufferValid;
+
+ /*
+ * Obsolete unused field (formerly MaxContextHandleNumber).
+ */
+ unsigned char Unused;
+
+ /*
+ * Used internally by the Ndr routines. Holds the max counts for
+ * a conformant array.
+ */
+ unsigned long MaxCount;
+
+ /*
+ * Used internally by the Ndr routines. Holds the offsets for a varying
+ * array.
+ */
+ unsigned long Offset;
+
+ /*
+ * Used internally by the Ndr routines. Holds the actual counts for
+ * a varying array.
+ */
+ unsigned long ActualCount;
+
+ /* Allocation and Free routine to be used by the Ndr routines. */
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ /*
+ * Top of parameter stack. Used for "single call" stubs during marshalling
+ * to hold the beginning of the parameter list on the stack. Needed to
+ * extract parameters which hold attribute values for top level arrays and
+ * pointers.
+ */
+ unsigned char __RPC_FAR * StackTop;
+
+ /*
+ * Fields used for the transmit_as and represent_as objects.
+ * For represent_as the mapping is: presented=local, transmit=named.
+ */
+ unsigned char __RPC_FAR * pPresentedType;
+ unsigned char __RPC_FAR * pTransmitType;
+
+ /*
+ * When we first construct a binding on the client side, stick it
+ * in the rpcmessage and later call RpcGetBuffer, the handle field
+ * in the rpcmessage is changed. That's fine except that we need to
+ * have that original handle for use in unmarshalling context handles
+ * (the second argument in NDRCContextUnmarshall to be exact). So
+ * stash the contructed handle here and extract it when needed.
+ */
+ handle_t SavedHandle;
+
+ /*
+ * Pointer back to the stub descriptor. Use this to get all handle info.
+ */
+ const struct _MIDL_STUB_DESC __RPC_FAR * StubDesc;
+
+ /*
+ * Full pointer stuff.
+ */
+ struct _FULL_PTR_XLAT_TABLES __RPC_FAR * FullPtrXlatTables;
+
+ unsigned long FullPtrRefId;
+
+ /*
+ * flags
+ */
+
+ int fCheckBounds;
+
+ int fInDontFree :1;
+ int fDontCallFreeInst :1;
+ int fInOnlyParam :1;
+ int fHasReturn :1;
+
+ unsigned long dwDestContext;
+ void __RPC_FAR * pvDestContext;
+
+ NDR_SCONTEXT * SavedContextHandles;
+
+ long ParamNumber;
+
+ struct IRpcChannelBuffer __RPC_FAR * pRpcChannelBuffer;
+
+ PARRAY_INFO pArrayInfo;
+
+ /*
+ * This is where the Beta2 stub message ends.
+ */
+
+ unsigned long __RPC_FAR * SizePtrCountArray;
+ unsigned long __RPC_FAR * SizePtrOffsetArray;
+ unsigned long __RPC_FAR * SizePtrLengthArray;
+
+ /*
+ * Interpreter argument queue. Used on server side only.
+ */
+ void __RPC_FAR * pArgQueue;
+
+ unsigned long dwStubPhase;
+
+ /*
+ * Pipe descriptor, defined for the 4.0 release.
+ */
+
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc;
+
+ unsigned long Reserved[4];
+
+ /*
+ * Fields up to this point present since the 3.50 release.
+ */
+
+ } MIDL_STUB_MESSAGE, __RPC_FAR *PMIDL_STUB_MESSAGE;
+
+#if !defined(__RPC_DOS__) && !defined(__RPC_WIN16__) && !defined(__RPC_MAC__)
+#include <poppack.h>
+#endif
+
+/*
+ * Generic handle bind/unbind routine pair.
+ */
+typedef void __RPC_FAR *
+ (__RPC_FAR __RPC_API * GENERIC_BINDING_ROUTINE)
+ (void __RPC_FAR *);
+typedef void
+ (__RPC_FAR __RPC_API * GENERIC_UNBIND_ROUTINE)
+ (void __RPC_FAR *, unsigned char __RPC_FAR *);
+
+typedef struct _GENERIC_BINDING_ROUTINE_PAIR
+ {
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_ROUTINE_PAIR, __RPC_FAR *PGENERIC_BINDING_ROUTINE_PAIR;
+
+typedef struct __GENERIC_BINDING_INFO
+ {
+ void __RPC_FAR * pObj;
+ unsigned int Size;
+ GENERIC_BINDING_ROUTINE pfnBind;
+ GENERIC_UNBIND_ROUTINE pfnUnbind;
+ } GENERIC_BINDING_INFO, __RPC_FAR *PGENERIC_BINDING_INFO;
+
+// typedef EXPR_EVAL - see above
+// typedefs for xmit_as
+
+#if (defined(_MSC_VER)) && !defined(MIDL_PASS)
+// a Microsoft C++ compiler
+#define NDR_SHAREABLE __inline
+#else
+#define NDR_SHAREABLE static
+#endif
+
+
+typedef void (__RPC_FAR __RPC_USER * XMIT_HELPER_ROUTINE)
+ ( PMIDL_STUB_MESSAGE );
+
+typedef struct _XMIT_ROUTINE_QUINTUPLE
+ {
+ XMIT_HELPER_ROUTINE pfnTranslateToXmit;
+ XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
+ XMIT_HELPER_ROUTINE pfnFreeXmit;
+ XMIT_HELPER_ROUTINE pfnFreeInst;
+ } XMIT_ROUTINE_QUINTUPLE, __RPC_FAR *PXMIT_ROUTINE_QUINTUPLE;
+
+typedef unsigned long
+(__RPC_FAR __RPC_USER * USER_MARSHAL_SIZING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned long,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_MARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef unsigned char __RPC_FAR *
+(__RPC_FAR __RPC_USER * USER_MARSHAL_UNMARSHALLING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ unsigned char __RPC_FAR * ,
+ void __RPC_FAR * );
+
+typedef void (__RPC_FAR __RPC_USER * USER_MARSHAL_FREEING_ROUTINE)
+ (unsigned long __RPC_FAR *,
+ void __RPC_FAR * );
+
+typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE
+ {
+ USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
+ USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
+ USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
+ USER_MARSHAL_FREEING_ROUTINE pfnFree;
+ } USER_MARSHAL_ROUTINE_QUADRUPLE;
+
+typedef struct _USER_MARSHAL_CB
+{
+ unsigned long Flags;
+ PMIDL_STUB_MESSAGE pStubMsg;
+ PFORMAT_STRING pReserve;
+} USER_MARSHAL_CB;
+
+
+#define USER_CALL_CTXT_MASK(f) ((f) & 0xff)
+#define GET_USER_DATA_REP(f) ((f) >> 16)
+
+typedef struct _MALLOC_FREE_STRUCT
+ {
+ void __RPC_FAR * (__RPC_FAR __RPC_USER * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_USER * pfnFree)(void __RPC_FAR *);
+ } MALLOC_FREE_STRUCT;
+
+typedef struct _COMM_FAULT_OFFSETS
+ {
+ short CommOffset;
+ short FaultOffset;
+ } COMM_FAULT_OFFSETS;
+
+/*
+ * MIDL Stub Descriptor
+ */
+
+typedef struct _MIDL_STUB_DESC
+ {
+
+ void __RPC_FAR * RpcInterfaceInformation;
+
+ void __RPC_FAR * (__RPC_FAR __RPC_API * pfnAllocate)(size_t);
+ void (__RPC_FAR __RPC_API * pfnFree)(void __RPC_FAR *);
+
+ union
+ {
+ handle_t __RPC_FAR * pAutoHandle;
+ handle_t __RPC_FAR * pPrimitiveHandle;
+ PGENERIC_BINDING_INFO pGenericBindingInfo;
+ } IMPLICIT_HANDLE_INFO;
+
+ const NDR_RUNDOWN __RPC_FAR * apfnNdrRundownRoutines;
+ const GENERIC_BINDING_ROUTINE_PAIR __RPC_FAR * aGenericBindingRoutinePairs;
+
+ const EXPR_EVAL __RPC_FAR * apfnExprEval;
+
+ const XMIT_ROUTINE_QUINTUPLE __RPC_FAR * aXmitQuintuple;
+
+ const unsigned char __RPC_FAR * pFormatTypes;
+
+ int fCheckBounds;
+
+ /* Ndr library version. */
+ unsigned long Version;
+
+ /*
+ * Reserved for future use. (no reserves )
+ */
+
+ MALLOC_FREE_STRUCT __RPC_FAR * pMallocFreeStruct;
+
+ long MIDLVersion;
+
+ const COMM_FAULT_OFFSETS __RPC_FAR * CommFaultOffsets;
+
+ // New fields for version 3.0+
+
+ const USER_MARSHAL_ROUTINE_QUADRUPLE __RPC_FAR * aUserMarshalQuadruple;
+
+ long Reserved1;
+ long Reserved2;
+ long Reserved3;
+ long Reserved4;
+ long Reserved5;
+
+ } MIDL_STUB_DESC;
+
+typedef const MIDL_STUB_DESC __RPC_FAR * PMIDL_STUB_DESC;
+
+typedef void __RPC_FAR * PMIDL_XMIT_TYPE;
+
+/*
+ * MIDL Stub Format String. This is a const in the stub.
+ */
+#if !defined( RC_INVOKED )
+#pragma warning( disable:4200 )
+#endif
+typedef struct _MIDL_FORMAT_STRING
+ {
+ short Pad;
+ unsigned char Format[];
+ } MIDL_FORMAT_STRING;
+#if !defined( RC_INVOKED )
+#pragma warning( default:4200 )
+#endif
+
+/*
+ * Stub thunk used for some interpreted server stubs.
+ */
+typedef void (__RPC_FAR __RPC_API * STUB_THUNK)( PMIDL_STUB_MESSAGE );
+
+typedef long (__RPC_FAR __RPC_API * SERVER_ROUTINE)();
+
+/*
+ * Server Interpreter's information strucuture.
+ */
+typedef struct _MIDL_SERVER_INFO_
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ const SERVER_ROUTINE * DispatchTable;
+ PFORMAT_STRING ProcString;
+ const unsigned short * FmtStringOffset;
+ const STUB_THUNK * ThunkTable;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short * LocalFmtStringOffset;
+ } MIDL_SERVER_INFO, *PMIDL_SERVER_INFO;
+
+/*
+ * Stubless object proxy information structure.
+ */
+typedef struct _MIDL_STUBLESS_PROXY_INFO
+ {
+ PMIDL_STUB_DESC pStubDesc;
+ PFORMAT_STRING ProcFormatString;
+ const unsigned short __RPC_FAR * FormatStringOffset;
+ PFORMAT_STRING LocalFormatTypes;
+ PFORMAT_STRING LocalProcString;
+ const unsigned short __RPC_FAR * LocalFmtStringOffset;
+ } MIDL_STUBLESS_PROXY_INFO;
+
+typedef MIDL_STUBLESS_PROXY_INFO __RPC_FAR * PMIDL_STUBLESS_PROXY_INFO;
+
+/*
+ * This is the return value from NdrClientCall.
+ */
+typedef union _CLIENT_CALL_RETURN
+ {
+ void __RPC_FAR * Pointer;
+ long Simple;
+ } CLIENT_CALL_RETURN;
+
+/*
+ * Full pointer data structures.
+ */
+
+typedef enum
+ {
+ XLAT_SERVER = 1,
+ XLAT_CLIENT
+ } XLAT_SIDE;
+
+/*
+ * Stores the translation for the conversion from a full pointer into it's
+ * corresponding ref id.
+ */
+typedef struct _FULL_PTR_TO_REFID_ELEMENT
+ {
+ struct _FULL_PTR_TO_REFID_ELEMENT __RPC_FAR * Next;
+
+ void __RPC_FAR * Pointer;
+ unsigned long RefId;
+ unsigned char State;
+ } FULL_PTR_TO_REFID_ELEMENT, __RPC_FAR *PFULL_PTR_TO_REFID_ELEMENT;
+
+/*
+ * Full pointer translation tables.
+ */
+typedef struct _FULL_PTR_XLAT_TABLES
+ {
+ /*
+ * Ref id to pointer translation information.
+ */
+ struct
+ {
+ void __RPC_FAR *__RPC_FAR * XlatTable;
+ unsigned char __RPC_FAR * StateTable;
+ unsigned long NumberOfEntries;
+ } RefIdToPointer;
+
+ /*
+ * Pointer to ref id translation information.
+ */
+ struct
+ {
+ PFULL_PTR_TO_REFID_ELEMENT __RPC_FAR * XlatTable;
+ unsigned long NumberOfBuckets;
+ unsigned long HashMask;
+ } PointerToRefId;
+
+ /*
+ * Next ref id to use.
+ */
+ unsigned long NextRefId;
+
+ /*
+ * Keep track of the translation size we're handling : server or client.
+ * This tells us when we have to do reverse translations when we insert
+ * new translations. On the server we must insert a pointer-to-refid
+ * translation whenever we insert a refid-to-pointer translation, and
+ * vica versa for the client.
+ */
+ XLAT_SIDE XlatSide;
+ } FULL_PTR_XLAT_TABLES, __RPC_FAR *PFULL_PTR_XLAT_TABLES;
+
+/***************************************************************************
+ ** New MIDL 2.0 Ndr routine templates
+ ***************************************************************************/
+
+/*
+ * Marshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT ContextHandle,
+ int fCheck
+ );
+
+void RPC_ENTRY
+NdrServerContextMarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_SCONTEXT ContextHandle,
+ NDR_RUNDOWN RundownRoutine
+ );
+
+/*
+ * Unmarshall routines
+ */
+
+void RPC_ENTRY
+NdrSimpleTypeUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned char FormatChar
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Structures */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSimpleStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrHardStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexStructUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Arrays */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrFixedArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrVaryingArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrComplexArrayUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Strings */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrConformantStringUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Unions */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNonEncapsulatedUnionUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Byte count pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrByteCountPointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Transmit as and represent as*/
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrXmitOrRepAsUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* User_marshal */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Cairo interface pointer */
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrInterfacePointerUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * __RPC_FAR * ppMemory,
+ PFORMAT_STRING pFormat,
+ unsigned char fMustAlloc
+ );
+
+/* Context handles */
+
+void RPC_ENTRY
+NdrClientContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_CCONTEXT __RPC_FAR * pContextHandle,
+ RPC_BINDING_HANDLE BindHandle
+ );
+
+NDR_SCONTEXT RPC_ENTRY
+NdrServerContextUnmarshall(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+/*
+ * Buffer sizing routines
+ */
+
+void RPC_ENTRY
+NdrPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+void RPC_ENTRY
+NdrConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonConformantStringBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count pointer */
+
+void RPC_ENTRY
+NdrByteCountPointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerBufferSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+// Context Handle size
+//
+void RPC_ENTRY
+NdrContextHandleSize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Memory sizing routines
+ */
+
+unsigned long RPC_ENTRY
+NdrPointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+unsigned long RPC_ENTRY
+NdrSimpleStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrHardStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexStructMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+unsigned long RPC_ENTRY
+NdrFixedArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrConformantVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrVaryingArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrComplexArrayMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Strings */
+
+unsigned long RPC_ENTRY
+NdrConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonConformantStringMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+unsigned long RPC_ENTRY
+NdrEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+unsigned long RPC_ENTRY
+NdrNonEncapsulatedUnionMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+unsigned long RPC_ENTRY
+NdrXmitOrRepAsMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+unsigned long RPC_ENTRY
+NdrUserMarshalMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+unsigned long RPC_ENTRY
+NdrInterfacePointerMemorySize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Freeing routines
+ */
+
+void RPC_ENTRY
+NdrPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Structures */
+
+void RPC_ENTRY
+NdrSimpleStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrHardStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexStructFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Arrays */
+
+void RPC_ENTRY
+NdrFixedArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrConformantVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrVaryingArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrComplexArrayFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Unions */
+
+void RPC_ENTRY
+NdrEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+void RPC_ENTRY
+NdrNonEncapsulatedUnionFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Byte count */
+
+void RPC_ENTRY
+NdrByteCountPointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Transmit as and represent as*/
+
+void RPC_ENTRY
+NdrXmitOrRepAsFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* User_marshal */
+
+void RPC_ENTRY
+NdrUserMarshalFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/* Cairo Interface pointer */
+
+void RPC_ENTRY
+NdrInterfacePointerFree(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pMemory,
+ PFORMAT_STRING pFormat
+ );
+
+/*
+ * Endian conversion routine.
+ */
+
+void RPC_ENTRY
+NdrConvert2(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ long NumberParams
+ );
+
+void RPC_ENTRY
+NdrConvert(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+#define USER_MARSHAL_FC_BYTE 1
+#define USER_MARSHAL_FC_CHAR 2
+#define USER_MARSHAL_FC_SMALL 3
+#define USER_MARSHAL_FC_USMALL 4
+#define USER_MARSHAL_FC_WCHAR 5
+#define USER_MARSHAL_FC_SHORT 6
+#define USER_MARSHAL_FC_USHORT 7
+#define USER_MARSHAL_FC_LONG 8
+#define USER_MARSHAL_FC_ULONG 9
+#define USER_MARSHAL_FC_FLOAT 10
+#define USER_MARSHAL_FC_HYPER 11
+#define USER_MARSHAL_FC_DOUBLE 12
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrUserMarshalSimpleTypeConvert(
+ unsigned long * pFlags,
+ unsigned char * pBuffer,
+ unsigned char FormatChar
+ );
+
+/*
+ * Auxilary routines
+ */
+
+void RPC_ENTRY
+NdrClientInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeNew(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+void RPC_ENTRY
+NdrServerInitializePartial(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned long RequestedBufferSize
+ );
+
+void RPC_ENTRY
+NdrClientInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ unsigned int ProcNum
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitialize(
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrServerInitializeUnmarshall (
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PRPC_MESSAGE pRpcMsg
+ );
+
+void RPC_ENTRY
+NdrServerInitializeMarshall (
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsGetBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrGetPipeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long BufferLength,
+ RPC_BINDING_HANDLE Handle );
+
+void RPC_ENTRY
+NdrGetPartialBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR* pBufferEnd
+ );
+
+unsigned char __RPC_FAR * RPC_ENTRY
+NdrNsSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR * pBufferEnd,
+ RPC_BINDING_HANDLE __RPC_FAR * pAutoHandle
+ );
+
+void RPC_ENTRY
+NdrPipeSendReceive(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrFreeBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Pipe specific calls
+ */
+
+void RPC_ENTRY
+NdrPipesInitialize(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pParamDesc,
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ NDR_PIPE_MESSAGE __RPC_FAR * pPipeMsg,
+ char __RPC_FAR * pStackTop,
+ unsigned long NumberParams );
+
+void
+NdrMarkNextActivePipe(
+ NDR_PIPE_DESC __RPC_FAR * pPipeDesc,
+ unsigned int DirectionMask );
+
+void RPC_ENTRY
+NdrPipePull(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long esize,
+ unsigned long __RPC_FAR * ecount );
+
+void RPC_ENTRY
+NdrPipePush(
+ char __RPC_FAR * pState,
+ void __RPC_FAR * buf,
+ unsigned long ecount );
+
+void RPC_ENTRY
+NdrIsAppDoneWithPipes(
+ NDR_PIPE_DESC * pPipeDesc
+ );
+
+void RPC_ENTRY
+NdrPipesDone(
+ PMIDL_STUB_MESSAGE pStubMsg
+ );
+
+
+/*
+ * Interpeter calls.
+ */
+
+/* client */
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall2(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+CLIENT_CALL_RETURN RPC_VAR_ENTRY
+NdrClientCall(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+ );
+
+/* server */
+typedef enum {
+ STUB_UNMARSHAL,
+ STUB_CALL_SERVER,
+ STUB_MARSHAL,
+ STUB_CALL_SERVER_NO_HRESULT
+}STUB_PHASE;
+
+typedef enum {
+ PROXY_CALCSIZE,
+ PROXY_GETBUFFER,
+ PROXY_MARSHAL,
+ PROXY_SENDRECEIVE,
+ PROXY_UNMARSHAL
+}PROXY_PHASE;
+
+long RPC_ENTRY
+NdrStubCall2(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall2(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+long RPC_ENTRY
+NdrStubCall (
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ unsigned long __RPC_FAR * pdwStubPhase
+ );
+
+void RPC_ENTRY
+NdrServerCall(
+ PRPC_MESSAGE pRpcMsg
+ );
+
+int RPC_ENTRY
+NdrServerUnmarshall(
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PRPC_MESSAGE pRpcMsg,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * pParamList
+ );
+
+void RPC_ENTRY
+NdrServerMarshall(
+ struct IRpcStubBuffer __RPC_FAR * pThis,
+ struct IRpcChannelBuffer __RPC_FAR * pChannel,
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat
+ );
+
+/* Comm and Fault status */
+
+RPC_STATUS RPC_ENTRY
+NdrMapCommAndFaultStatus(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned long __RPC_FAR * pCommStatus,
+ unsigned long __RPC_FAR * pFaultStatus,
+ RPC_STATUS Status
+ );
+
+/* Helper routines */
+
+int RPC_ENTRY
+NdrSH_UPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ RPC_BUFPTR pBuffer
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecision(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_TLUPDecisionBuffer(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem
+ );
+
+int RPC_ENTRY
+NdrSH_IfAlloc(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocRef(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+int RPC_ENTRY
+NdrSH_IfAllocSet(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_IfAllocCopy(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ unsigned char __RPC_FAR *__RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+unsigned long RPC_ENTRY
+NdrSH_Copy(
+ unsigned char __RPC_FAR * pStubMsg,
+ unsigned char __RPC_FAR * pPtrInMem,
+ unsigned long Count
+ );
+
+void RPC_ENTRY
+NdrSH_IfFree(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pPtr );
+
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR * pMemory,
+ unsigned long Count,
+ int Size );
+
+RPC_BUFPTR RPC_ENTRY
+NdrSH_StringUnMarshall(
+ PMIDL_STUB_MESSAGE pMessage,
+ unsigned char __RPC_FAR *__RPC_FAR * pMemory,
+ int Size );
+
+/****************************************************************************
+ MIDL 2.0 memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+typedef void __RPC_FAR * RPC_SS_THREAD_HANDLE;
+
+typedef void __RPC_FAR * __RPC_API
+RPC_CLIENT_ALLOC (
+ IN size_t Size
+ );
+
+typedef void __RPC_API
+RPC_CLIENT_FREE (
+ IN void __RPC_FAR * Ptr
+ );
+
+/*++
+ RpcSs* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSsAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+RpcSsDisableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsEnableAllocate (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSsGetThreadHandle (
+ void
+ );
+
+void RPC_ENTRY
+RpcSsSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+void RPC_ENTRY
+RpcSsSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+void RPC_ENTRY
+RpcSsSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ RpcSm* package
+--*/
+
+void __RPC_FAR * RPC_ENTRY
+RpcSmAllocate (
+ IN size_t Size,
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmClientFree (
+ IN void __RPC_FAR * pNodeToFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDestroyClientContext (
+ IN void __RPC_FAR * __RPC_FAR * ContextHandle
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmDisableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmEnableAllocate (
+ void
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+RPC_SS_THREAD_HANDLE RPC_ENTRY
+RpcSmGetThreadHandle (
+ OUT RPC_STATUS __RPC_FAR * pStatus
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSetThreadHandle (
+ IN RPC_SS_THREAD_HANDLE Id
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcSmSwapClientAllocFree (
+ IN RPC_CLIENT_ALLOC __RPC_FAR * ClientAlloc,
+ IN RPC_CLIENT_FREE __RPC_FAR * ClientFree,
+ OUT RPC_CLIENT_ALLOC __RPC_FAR * __RPC_FAR * OldClientAlloc,
+ OUT RPC_CLIENT_FREE __RPC_FAR * __RPC_FAR * OldClientFree
+ );
+
+/*++
+ Ndr stub entry points
+--*/
+
+void RPC_ENTRY
+NdrRpcSsEnableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSsDisableAllocate(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void RPC_ENTRY
+NdrRpcSmSetClientToOsf(
+ PMIDL_STUB_MESSAGE pMessage );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSmClientAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSmClientFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrRpcSsDefaultAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrRpcSsDefaultFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+/****************************************************************************
+ end of memory package: rpc_ss_* rpc_sm_*
+ ****************************************************************************/
+
+/****************************************************************************
+ * Full Pointer APIs
+ ****************************************************************************/
+
+PFULL_PTR_XLAT_TABLES RPC_ENTRY
+NdrFullPointerXlatInit(
+ unsigned long NumberOfPointers,
+ XLAT_SIDE XlatSide
+ );
+
+void RPC_ENTRY
+NdrFullPointerXlatFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryPointer(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * pPointer,
+ unsigned char QueryType,
+ unsigned long __RPC_FAR * pRefId
+ );
+
+int RPC_ENTRY
+NdrFullPointerQueryRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ unsigned char QueryType,
+ void __RPC_FAR *__RPC_FAR * ppPointer
+ );
+
+void RPC_ENTRY
+NdrFullPointerInsertRefId(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ unsigned long RefId,
+ void __RPC_FAR * pPointer
+ );
+
+int RPC_ENTRY
+NdrFullPointerFree(
+ PFULL_PTR_XLAT_TABLES pXlatTables,
+ void __RPC_FAR * Pointer
+ );
+
+void __RPC_FAR * RPC_ENTRY
+NdrAllocate(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ size_t Len
+ );
+
+void RPC_ENTRY
+NdrClearOutParameters(
+ PMIDL_STUB_MESSAGE pStubMsg,
+ PFORMAT_STRING pFormat,
+ void __RPC_FAR * ArgAddr
+ );
+
+
+/****************************************************************************
+ * Proxy APIs
+ ****************************************************************************/
+
+void __RPC_FAR * RPC_ENTRY
+NdrOleAllocate (
+ IN size_t Size
+ );
+
+void RPC_ENTRY
+NdrOleFree (
+ IN void __RPC_FAR * NodeToFree
+ );
+
+#ifdef CONST_VTABLE
+#define CONST_VTBL const
+#else
+#define CONST_VTBL
+#endif
+
+
+
+
+#ifdef __cplusplus
+}
+#endif
+
+// Reset the packing level for DOS, Windows and Mac.
+
+#if defined(__RPC_DOS__) || defined(__RPC_WIN16__) || defined(__RPC_MAC__)
+#pragma pack()
+#endif
+
+#endif /* __RPCNDR_H__ */
+
+
+
+
+
diff --git a/public/sdk/rpc16/win/inc/rpcnsi.h b/public/sdk/rpc16/win/inc/rpcnsi.h
new file mode 100644
index 000000000..362b5bdb4
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpcnsi.h
@@ -0,0 +1,509 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsi.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ Name Service Independent APIs.
+
+--*/
+
+#ifndef __RPCNSI_H__
+#define __RPCNSI_H__
+
+typedef void __RPC_FAR * RPC_NS_HANDLE;
+
+#define RPC_C_NS_SYNTAX_DEFAULT 0
+#define RPC_C_NS_SYNTAX_DCE 3
+
+#define RPC_C_PROFILE_DEFAULT_ELT 0
+#define RPC_C_PROFILE_ALL_ELT 1
+#define RPC_C_PROFILE_MATCH_BY_IF 2
+#define RPC_C_PROFILE_MATCH_BY_MBR 3
+#define RPC_C_PROFILE_MATCH_BY_BOTH 4
+
+#define RPC_C_NS_DEFAULT_EXP_AGE -1
+
+/* Server APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingExportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN RPC_BINDING_VECTOR __RPC_FAR * BindingVec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+#endif
+
+/* Client APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ IN unsigned long BindingMaxCount OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupNext(
+ IN RPC_NS_HANDLE LookupContext,
+ OUT RPC_BINDING_VECTOR __RPC_FAR * __RPC_FAR * BindingVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingLookupDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * LookupContext
+ );
+
+/* Group APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginA(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupDeleteW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrAddW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrRemoveW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqBeginW(
+ IN unsigned long GroupNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * GroupName,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsGroupMbrInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Profile APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned char __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginA(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextA(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileDeleteW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltAddW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName,
+ IN unsigned long Priority,
+ IN unsigned short __RPC_FAR * Annotation OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltRemoveW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqBeginW(
+ IN unsigned long ProfileNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * ProfileName,
+ IN unsigned long InquiryType,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN unsigned long MemberNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * MemberName OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqNextW(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT RPC_IF_ID __RPC_FAR * IfId,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * MemberName,
+ OUT unsigned long __RPC_FAR * Priority,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsProfileEltInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Entry object APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqNext(
+ IN RPC_NS_HANDLE InquiryContext,
+ OUT UUID __RPC_FAR * ObjUuid
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryObjectInqDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * InquiryContext
+ );
+
+/* Management and MISC APIs */
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT unsigned char __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtHandleSetExpAge(
+ IN RPC_NS_HANDLE NsHandle,
+ IN unsigned long ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtInqExpAge(
+ OUT unsigned long __RPC_FAR * ExpirationAge
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtSetExpAge(
+ IN unsigned long ExpirationAge
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsEntryExpandNameW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT unsigned short __RPC_FAR * __RPC_FAR * ExpandedName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtBindingUnexportW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
+ IN unsigned long VersOption,
+ IN UUID_VECTOR __RPC_FAR * ObjectUuidVec OPTIONAL
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryCreateW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryDeleteW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsMgmtEntryInqIfIdsW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName,
+ OUT RPC_IF_ID_VECTOR __RPC_FAR * __RPC_FAR * IfIdVec
+ );
+
+#endif
+
+/* Client API's implemented in wrappers. */
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginA(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned char __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#ifdef RPC_UNICODE_SUPPORTED
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportBeginW(
+ IN unsigned long EntryNameSyntax OPTIONAL,
+ IN unsigned short __RPC_FAR * EntryName OPTIONAL,
+ IN RPC_IF_HANDLE IfSpec OPTIONAL,
+ IN UUID __RPC_FAR * ObjUuid OPTIONAL,
+ OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+#endif
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportNext(
+ IN RPC_NS_HANDLE ImportContext,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingImportDone(
+ IN OUT RPC_NS_HANDLE __RPC_FAR * ImportContext
+ );
+
+RPC_STATUS RPC_ENTRY
+RpcNsBindingSelect(
+ IN OUT RPC_BINDING_VECTOR __RPC_FAR * BindingVec,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Binding
+ );
+
+#ifdef UNICODE
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginW
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginW
+#define RpcNsBindingExport RpcNsBindingExportW
+#define RpcNsBindingUnexport RpcNsBindingUnexportW
+#define RpcNsGroupDelete RpcNsGroupDeleteW
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddW
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveW
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginW
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextW
+#define RpcNsEntryExpandName RpcNsEntryExpandNameW
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginW
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportW
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateW
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteW
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsW
+#define RpcNsProfileDelete RpcNsProfileDeleteW
+#define RpcNsProfileEltAdd RpcNsProfileEltAddW
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveW
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginW
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextW
+
+#else
+
+#define RpcNsBindingLookupBegin RpcNsBindingLookupBeginA
+#define RpcNsBindingImportBegin RpcNsBindingImportBeginA
+#define RpcNsBindingExport RpcNsBindingExportA
+#define RpcNsBindingUnexport RpcNsBindingUnexportA
+#define RpcNsGroupDelete RpcNsGroupDeleteA
+#define RpcNsGroupMbrAdd RpcNsGroupMbrAddA
+#define RpcNsGroupMbrRemove RpcNsGroupMbrRemoveA
+#define RpcNsGroupMbrInqBegin RpcNsGroupMbrInqBeginA
+#define RpcNsGroupMbrInqNext RpcNsGroupMbrInqNextA
+#define RpcNsEntryExpandName RpcNsEntryExpandNameA
+#define RpcNsEntryObjectInqBegin RpcNsEntryObjectInqBeginA
+#define RpcNsMgmtBindingUnexport RpcNsMgmtBindingUnexportA
+#define RpcNsMgmtEntryCreate RpcNsMgmtEntryCreateA
+#define RpcNsMgmtEntryDelete RpcNsMgmtEntryDeleteA
+#define RpcNsMgmtEntryInqIfIds RpcNsMgmtEntryInqIfIdsA
+#define RpcNsProfileDelete RpcNsProfileDeleteA
+#define RpcNsProfileEltAdd RpcNsProfileEltAddA
+#define RpcNsProfileEltRemove RpcNsProfileEltRemoveA
+#define RpcNsProfileEltInqBegin RpcNsProfileEltInqBeginA
+#define RpcNsProfileEltInqNext RpcNsProfileEltInqNextA
+
+#endif /* UNICODE */
+
+#endif /* __RPCNSI_H__ */
diff --git a/public/sdk/rpc16/win/inc/rpcnsip.h b/public/sdk/rpc16/win/inc/rpcnsip.h
new file mode 100644
index 000000000..0db0140b0
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpcnsip.h
@@ -0,0 +1,72 @@
+/*++
+
+Copyright (c) 1992-1996 Microsoft Corporation
+
+Module Name:
+
+ rpcnsip.h
+
+Abstract:
+
+ This file contains the types and function definitions to use the
+ to implement the autohandle features of the runtime.
+
+--*/
+
+#ifndef __RPCNSIP_H__
+#define __RPCNSIP_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct
+{
+ RPC_NS_HANDLE LookupContext;
+ RPC_BINDING_HANDLE ProposedHandle;
+ RPC_BINDING_VECTOR * Bindings;
+
+} RPC_IMPORT_CONTEXT_P, * PRPC_IMPORT_CONTEXT_P;
+
+
+/* Stub Auto Binding routines. */
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsGetBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcNsSendReceive(
+ IN PRPC_MESSAGE Message,
+ OUT RPC_BINDING_HANDLE __RPC_FAR * Handle
+ );
+
+void RPC_ENTRY
+I_RpcNsRaiseException(
+ IN PRPC_MESSAGE Message,
+ IN RPC_STATUS Status
+ );
+
+RPC_STATUS RPC_ENTRY
+I_RpcReBindBuffer(
+ IN PRPC_MESSAGE Message
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsServerBindSearch(
+ );
+
+RPC_STATUS RPC_ENTRY
+I_NsClientBindSearch(
+ );
+
+void RPC_ENTRY
+I_NsClientBindDone(
+ );
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __RPCNSIP_H__ */
diff --git a/public/sdk/rpc16/win/inc/rpcx86.h b/public/sdk/rpc16/win/inc/rpcx86.h
new file mode 100644
index 000000000..8f5088c93
--- /dev/null
+++ b/public/sdk/rpc16/win/inc/rpcx86.h
@@ -0,0 +1,74 @@
+/*********************************************************/
+/** Microsoft LAN Manager **/
+/** Copyright(c) Microsoft Corp., 1991 **/
+/** **/
+/** Exceptions package for C for DOS/WIN/OS2 **/
+/** **/
+/*********************************************************/
+
+#ifndef __RPCx86_H__
+#define __RPCx86_H__
+
+typedef struct _ExceptionBuff {
+ int registers[RPCXCWORD];
+ struct _ExceptionBuff __RPC_FAR *pExceptNext;
+
+} ExceptionBuff, __RPC_FAR *pExceptionBuff;
+
+int RPC_ENTRY RpcSetException(pExceptionBuff);
+void RPC_ENTRY RpcLeaveException(void);
+
+#define RpcTryExcept \
+ { \
+ int _exception_code; \
+ ExceptionBuff exception; \
+ \
+ _exception_code = RpcSetException(&exception); \
+ \
+ if (!_exception_code) \
+ {
+
+// trystmts
+
+#define RpcExcept(expr) \
+ RpcLeaveException(); \
+ } \
+ else \
+ { \
+ if (!(expr)) \
+ RpcRaiseException(_exception_code);
+
+// exceptstmts
+
+#define RpcEndExcept \
+ } \
+ }
+
+#define RpcTryFinally \
+ { \
+ int _abnormal_termination; \
+ ExceptionBuff exception; \
+ \
+ _abnormal_termination = RpcSetException(&exception); \
+ \
+ if (!_abnormal_termination) \
+ {
+
+// trystmts
+
+#define RpcFinally \
+ RpcLeaveException(); \
+ }
+
+// finallystmts
+
+#define RpcEndFinally \
+ if (_abnormal_termination) \
+ RpcRaiseException(_abnormal_termination); \
+ }
+
+#define RpcExceptionCode() _exception_code
+#define RpcAbnormalTermination() _abnormal_termination
+
+#endif // __RPCx86_H__
+ \ No newline at end of file
diff --git a/public/sdk/rpc16/win/lib/winmain.def b/public/sdk/rpc16/win/lib/winmain.def
new file mode 100644
index 000000000..d0adcb524
--- /dev/null
+++ b/public/sdk/rpc16/win/lib/winmain.def
@@ -0,0 +1,16 @@
+NAME WINMAIN
+
+DESCRIPTION 'Standard IO Emulator'
+
+EXETYPE WINDOWS
+
+STUB 'WINSTUB.EXE'
+
+CODE PRELOAD MOVEABLE
+DATA PRELOAD MOVEABLE MULTIPLE
+
+HEAPSIZE 128
+STACKSIZE 4096
+
+EXPORTS
+ STDIOWNDPROC
diff --git a/public/sdk/rpc16/win/lib/winmain.res b/public/sdk/rpc16/win/lib/winmain.res
new file mode 100644
index 000000000..8e68c85a1
--- /dev/null
+++ b/public/sdk/rpc16/win/lib/winmain.res
Binary files differ