diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2004-10-11 20:12:51 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:59:48 -0500 |
commit | e2d27b9d238bd2cbf104237934db11e980977a0e (patch) | |
tree | 74887afea0e056c11fd7d6c14d2c978e631b0488 /source4/rpc_server/epmapper | |
parent | 8e1ffff226e3016a38301a773ed8aa55bad5b710 (diff) | |
download | samba-e2d27b9d238bd2cbf104237934db11e980977a0e.tar.gz samba-e2d27b9d238bd2cbf104237934db11e980977a0e.tar.bz2 samba-e2d27b9d238bd2cbf104237934db11e980977a0e.zip |
r2921: Add a few more protocols and fix the numbers associated with some of
the current ones. It took me three hours to realise that the DCOM standard
contains false protocol numbers (apparently someone converted the protocol
numbers to hex twice, i.e. 13 -> 0c and 14 to 0d). There are no longer
duplicates in the list with protocol numbers now.
(This used to be commit f355cd426462a72575ef3c3b769f676334976986)
Diffstat (limited to 'source4/rpc_server/epmapper')
-rw-r--r-- | source4/rpc_server/epmapper/rpc_epmapper.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/source4/rpc_server/epmapper/rpc_epmapper.c b/source4/rpc_server/epmapper/rpc_epmapper.c index 54a996e82a..5f9271868c 100644 --- a/source4/rpc_server/epmapper/rpc_epmapper.c +++ b/source4/rpc_server/epmapper/rpc_epmapper.c @@ -72,21 +72,21 @@ static BOOL fill_protocol_tower(TALLOC_CTX *mem_ctx, struct epm_towers *twr, twr->floors[1].rhs.rhs_data = data_blob_talloc_zero(mem_ctx, 2); /* on an RPC connection ... */ - twr->floors[2].lhs.protocol = EPM_PROTOCOL_NCACN_RPC_C; + twr->floors[2].lhs.protocol = EPM_PROTOCOL_NCACN; twr->floors[2].lhs.info.lhs_data = data_blob(NULL, 0); twr->floors[2].rhs.rhs_data = data_blob_talloc_zero(mem_ctx, 2); switch (e->ep_description.type) { case ENDPOINT_SMB: /* on a SMB pipe ... */ - twr->floors[3].lhs.protocol = EPM_PROTOCOL_NCACN_SMB; + twr->floors[3].lhs.protocol = EPM_PROTOCOL_SMB; twr->floors[3].lhs.info.lhs_data = data_blob(NULL, 0); twr->floors[3].rhs.rhs_data.data = talloc_asprintf(mem_ctx, "\\PIPE\\%s", e->ep_description.info.smb_pipe); twr->floors[3].rhs.rhs_data.length = strlen(twr->floors[3].rhs.rhs_data.data)+1; /* on an NetBIOS link ... */ - twr->floors[4].lhs.protocol = EPM_PROTOCOL_NCACN_NETBIOS; + twr->floors[4].lhs.protocol = EPM_PROTOCOL_NETBIOS; twr->floors[4].lhs.info.lhs_data = data_blob(NULL, 0); twr->floors[4].rhs.rhs_data.data = talloc_asprintf(mem_ctx, "\\\\%s", lp_netbios_name()); @@ -95,13 +95,13 @@ static BOOL fill_protocol_tower(TALLOC_CTX *mem_ctx, struct epm_towers *twr, case ENDPOINT_TCP: /* on a TCP connection ... */ - twr->floors[3].lhs.protocol = EPM_PROTOCOL_NCACN_TCP; + twr->floors[3].lhs.protocol = EPM_PROTOCOL_TCP; twr->floors[3].lhs.info.lhs_data = data_blob(NULL, 0); twr->floors[3].rhs.rhs_data = data_blob_talloc(mem_ctx, NULL, 2); RSSVAL(twr->floors[3].rhs.rhs_data.data, 0, e->ep_description.info.tcp_port); /* on an IP link ... */ - twr->floors[4].lhs.protocol = EPM_PROTOCOL_NCACN_IP; + twr->floors[4].lhs.protocol = EPM_PROTOCOL_IP; twr->floors[4].lhs.info.lhs_data = data_blob(NULL, 0); twr->floors[4].rhs.rhs_data = data_blob_talloc_zero(mem_ctx, 4); /* TODO: we should fill in our IP address here as a hint to the @@ -270,7 +270,7 @@ static error_status_t epm_Map(struct dcesrv_call_state *dce_call, TALLOC_CTX *me floors[1].lhs.protocol != EPM_PROTOCOL_UUID || guid_cmp(mem_ctx, &floors[1].lhs.info.uuid.uuid, NDR_GUID) != 0 || floors[1].lhs.info.uuid.version != NDR_GUID_VERSION || - floors[2].lhs.protocol != EPM_PROTOCOL_NCACN_RPC_C) { + floors[2].lhs.protocol != EPM_PROTOCOL_NCACN) { goto failed; } @@ -281,14 +281,14 @@ static error_status_t epm_Map(struct dcesrv_call_state *dce_call, TALLOC_CTX *me } switch (eps[i].ep_description.type) { case ENDPOINT_SMB: - if (floors[3].lhs.protocol != EPM_PROTOCOL_NCACN_SMB || - floors[4].lhs.protocol != EPM_PROTOCOL_NCACN_NETBIOS) { + if (floors[3].lhs.protocol != EPM_PROTOCOL_SMB || + floors[4].lhs.protocol != EPM_PROTOCOL_NETBIOS) { continue; } break; case ENDPOINT_TCP: - if (floors[3].lhs.protocol != EPM_PROTOCOL_NCACN_TCP || - floors[4].lhs.protocol != EPM_PROTOCOL_NCACN_IP) { + if (floors[3].lhs.protocol != EPM_PROTOCOL_TCP || + floors[4].lhs.protocol != EPM_PROTOCOL_IP) { continue; } break; |