- ClientCall2 still deserves a FIXME.
- Complete bindings with NULL endpoints.
- Implement RpcServerUseProtseqA, RpcServerUseProtseqW.

diff --git a/dlls/rpcrt4/ndr_stubless.c b/dlls/rpcrt4/ndr_stubless.c
index 1edc16e..11788e7 100644
--- a/dlls/rpcrt4/ndr_stubless.c
+++ b/dlls/rpcrt4/ndr_stubless.c
@@ -49,7 +49,7 @@
   RPC_MESSAGE rpcmsg;
   MIDL_STUB_MESSAGE stubmsg;
 
-  TRACE("(pStubDec == ^%p,pFormat = ^%p,...): semi-stub\n", pStubDesc, pFormat);
+  FIXME("(pStubDec == ^%p,pFormat = ^%p,...): semi-stub\n", pStubDesc, pFormat);
   if (rpc_cli_if) /* NULL for objects */ {
     TRACE("  *rpc_cli_if (== ^%p) == (RPC_CLIENT_INTERFACE):\n", pStubDesc);
     TRACE("    Length == %d\n", rpc_cli_if->Length);
diff --git a/dlls/rpcrt4/rpc_binding.c b/dlls/rpcrt4/rpc_binding.c
index f6f5185..e00933e 100644
--- a/dlls/rpcrt4/rpc_binding.c
+++ b/dlls/rpcrt4/rpc_binding.c
@@ -136,7 +136,11 @@
   RPCRT4_strfree(Binding->NetworkAddr);
   Binding->NetworkAddr = RPCRT4_strdupA(NetworkAddr);
   RPCRT4_strfree(Binding->Endpoint);
-  Binding->Endpoint = RPCRT4_strdupA(Endpoint);
+  if (Binding->Endpoint) {
+    Binding->Endpoint = RPCRT4_strdupA(Endpoint);
+  } else {
+    Binding->Endpoint = RPCRT4_strdupA("");
+  }
 
   return RPC_S_OK;
 }
@@ -150,7 +154,11 @@
   RPCRT4_strfree(Binding->NetworkAddr);
   Binding->NetworkAddr = RPCRT4_strdupWtoA(NetworkAddr);
   RPCRT4_strfree(Binding->Endpoint);
-  Binding->Endpoint = RPCRT4_strdupWtoA(Endpoint);
+  if (Binding->Endpoint) {
+    Binding->Endpoint = RPCRT4_strdupWtoA(Endpoint);
+  } else {
+    Binding->Endpoint = RPCRT4_strdupA("");
+  }
 
   return RPC_S_OK;
 }
diff --git a/dlls/rpcrt4/rpc_server.c b/dlls/rpcrt4/rpc_server.c
index b0f2454..f852a55 100644
--- a/dlls/rpcrt4/rpc_server.c
+++ b/dlls/rpcrt4/rpc_server.c
@@ -440,8 +440,8 @@
  */
 RPC_STATUS WINAPI RpcServerUseProtseqA(LPSTR Protseq, unsigned int MaxCalls, void *SecurityDescriptor)
 {
-  FIXME("stub\n");
-  return RPC_S_OK;
+  TRACE("(Protseq == %s, MaxCalls == %d, SecurityDescriptor == ^%p)", debugstr_a(Protseq), MaxCalls, SecurityDescriptor);
+  return RpcServerUseProtseqEpA(Protseq, MaxCalls, NULL, SecurityDescriptor);
 }
 
 /***********************************************************************
@@ -449,8 +449,8 @@
  */
 RPC_STATUS WINAPI RpcServerUseProtseqW(LPWSTR Protseq, unsigned int MaxCalls, void *SecurityDescriptor)
 {
-  FIXME("stub\n");
-  return RPC_S_OK;
+  TRACE("Protseq == %s, MaxCalls == %d, SecurityDescriptor == ^%p)", debugstr_w(Protseq), MaxCalls, SecurityDescriptor);
+  return RpcServerUseProtseqEpW(Protseq, MaxCalls, NULL, SecurityDescriptor);
 }
 
 /***********************************************************************