2
0
mirror of https://github.com/esiur/esiur-dotnet.git synced 2026-06-13 14:38:43 +00:00
This commit is contained in:
2026-06-08 16:15:57 +03:00
parent 8143da2eee
commit 340798a5fa
111 changed files with 20647 additions and 27 deletions
+11 -8
View File
@@ -1831,18 +1831,21 @@ public partial class EpConnection : NetworkConnection, IStore
// assign domain from hostname if not provided
if (context is EpConnectionContext epContext)
{
var provider = Instance.Warehouse.GetAuthenticationProvider(epContext.AuthenticationProtocol);
var provider = Instance.Warehouse.TryGetAuthenticationProvider(epContext.AuthenticationProtocol);
_remoteDomain = epContext.Domain ?? address;
_session.AuthenticationHandler = provider.CreateAuthenticationHandler(new AuthenticationContext()
if (provider != null)
{
Direction = AuthenticationDirection.Initiator,
Domain = _remoteDomain,
HostName = address,
InitiatorIdentity = epContext.Identity,
Mode = epContext.AuthenticationMode,
});
_session.AuthenticationHandler = provider.CreateAuthenticationHandler(new AuthenticationContext()
{
Direction = AuthenticationDirection.Initiator,
Domain = _remoteDomain,
HostName = address,
InitiatorIdentity = epContext.Identity,
Mode = epContext.AuthenticationMode,
});
}
_session.AuthenticationMode = epContext.AuthenticationMode;
_session.LocalIdentity = epContext.Identity;
@@ -2035,30 +2035,32 @@ partial class EpConnection
public AsyncReply<RemoteTypeDef[]> GetLinkDefinitions(string link)
{
throw new NotImplementedException();
//throw new NotImplementedException();
//var reply = new AsyncReply<RemoteTypeDef[]>();
var reply = new AsyncReply<RemoteTypeDef[]>();
//SendRequest(EpPacketRequest.LinkTypeDefs, link)
//.Then((result) =>
//{
SendRequest(EpPacketRequest.LinkTypeDefs, link)
.Then(async (result) =>
{
// var defs = new List<RemoteTypeDef>();
var defs = new List<RemoteTypeDef>();
// foreach (var def in (byte[][])result)
// {
// defs.Add(RemoteTypeDef.Parse(_remoteDomain, def));
// }
foreach (var def in (byte[][])result)
{
var od = new RemoteTypeDef();
await RemoteTypeDef.Parse(od, _remoteDomain, def, this, null);
defs.Add(od);
}
// reply.Trigger(defs.ToArray());
reply.Trigger(defs.ToArray());
//}).Error((ex) =>
//{
// reply.TriggerError(ex);
//});
}).Error((ex) =>
{
reply.TriggerError(ex);
});
//return reply;
return reply;
}
/// <summary>