Beispiel #1
0
        private static NdrRpcServerInterface ReadRpcServerInterface(RPC_SERVER_INTERFACE server_interface, NdrTypeCache type_cache, ISymbolResolver symbol_resolver)
        {
            RPC_DISPATCH_TABLE dispatch_table = server_interface.GetDispatchTable();
            var procs = ReadProcs(server_interface.GetServerInfo(), 0, dispatch_table.DispatchTableCount, type_cache, symbol_resolver);

            return(new NdrRpcServerInterface(server_interface.InterfaceId, server_interface.TransferSyntax, procs));
        }
Beispiel #2
0
        private static NdrRpcServerInterface ReadRpcServerInterface(IMemoryReader reader, RPC_SERVER_INTERFACE server_interface,
                                                                    NdrTypeCache type_cache, ISymbolResolver symbol_resolver, NdrParserFlags parser_flags)
        {
            RPC_DISPATCH_TABLE dispatch_table = server_interface.GetDispatchTable(reader);
            var procs = ReadProcs(reader, server_interface.GetServerInfo(reader), 0,
                                  dispatch_table.DispatchTableCount, type_cache, symbol_resolver, null, parser_flags);

            return(new NdrRpcServerInterface(server_interface.InterfaceId, server_interface.TransferSyntax, procs,
                                             server_interface.GetProtSeq(reader).Select(s => new NdrProtocolSequenceEndpoint(s, reader))));
        }