r649: return unknown interface when the client not yet
authorStefan Metzmacher <metze@samba.org>
Tue, 11 May 2004 15:39:23 +0000 (15:39 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:51:56 +0000 (12:51 -0500)
binds succesful to an interface

metze
(This used to be commit c39e450702cfa2b577c64e14ba1428fd95db7ade)

source4/librpc/idl/dcerpc.idl
source4/rpc_server/dcerpc_server.c

index c439262f6c939449263aa82b764b2dc5ab9dbd01..0ee3d7b69b4f98b01a2df8e01c06e19aeac5bd99 100644 (file)
@@ -83,6 +83,7 @@ interface dcerpc
 
 
        const int DCERPC_FAULT_OP_RNG_ERROR       = 0x1c010002;
+       const int DCERPC_FAULT_UNK_IF             = 0x1c010003;
        const int DCERPC_FAULT_NDR                = 0x000006f7;
        const int DCERPC_FAULT_INVALID_TAG        = 0x1c000006;
        const int DCERPC_FAULT_CONTEXT_MISMATCH   = 0x1c00001a;
index 22a6e1e6258a0ad60a89c41fb7a2a0657aae5c69..b89bec40bbb177d0ac0fe69ad8375313e8a40a6a 100644 (file)
@@ -560,6 +560,11 @@ static NTSTATUS dcesrv_request(struct dcesrv_call_state *call)
        DATA_BLOB stub;
        uint32 total_length;
 
+
+       if (!call->conn->iface) {
+               return dcesrv_fault(call, DCERPC_FAULT_UNK_IF);
+       }
+
        opnum = call->pkt.u.request.opnum;
 
        if (opnum >= call->conn->iface->ndr->num_calls) {