diff --git a/builds/NET20/SharpConnect.WebServer/SharpConnect.WebServer.csproj b/builds/NET20/SharpConnect.WebServer/SharpConnect.WebServer.csproj
index f885897..2861ce0 100644
--- a/builds/NET20/SharpConnect.WebServer/SharpConnect.WebServer.csproj
+++ b/builds/NET20/SharpConnect.WebServer/SharpConnect.WebServer.csproj
@@ -12,6 +12,7 @@
v2.0
512
true
+
true
@@ -22,6 +23,7 @@
prompt
4
true
+ false
pdbonly
@@ -31,6 +33,7 @@
prompt
4
true
+ false
diff --git a/src/SharpConnect.WebServer/HttpWebServer0/HttpRequest.cs b/src/SharpConnect.WebServer/HttpWebServer0/HttpRequest.cs
index 51414d2..617d3f2 100644
--- a/src/SharpConnect.WebServer/HttpWebServer0/HttpRequest.cs
+++ b/src/SharpConnect.WebServer/HttpWebServer0/HttpRequest.cs
@@ -3,7 +3,7 @@
using System.IO;
using System.Text;
using System.Collections.Generic;
-
+using System.Net;
namespace SharpConnect.WebServers
{
@@ -20,6 +20,7 @@ interface IHttpContext : ISendIO
int RecvByteTransfer { get; }
byte ReadByte(int pos);
void RecvCopyTo(int readpos, byte[] dstBuffer, int copyLen);
+ System.Net.EndPoint RemoteEndPoint { get; }
}
interface ISendIO
{
@@ -175,6 +176,7 @@ public HttpMethod HttpMethod
internal set;
}
protected int ContentLength => _targetContentLength;
+ public abstract System.Net.EndPoint RemoteEndPoint { get; }
}
public class LargetFileUploadPolicyResult
@@ -197,7 +199,7 @@ internal HttpRequestImpl(IHttpContext context)
_bodyMs = new MemoryStream();
InMemMaxUploadBodySize = 1024 * 4;//default 4k
}
-
+ public override EndPoint RemoteEndPoint => _context.RemoteEndPoint;
public void SetLargeUploadFilePolicyHandler(LargeFileUploadPermissionReqHandler largeFileUploadPermissionReqHandler)
{
diff --git a/src/SharpConnect.WebServer/HttpWebServer1/HttpContext.cs b/src/SharpConnect.WebServer/HttpWebServer1/HttpContext.cs
index 1069d9a..6a0c844 100644
--- a/src/SharpConnect.WebServer/HttpWebServer1/HttpContext.cs
+++ b/src/SharpConnect.WebServer/HttpWebServer1/HttpContext.cs
@@ -201,7 +201,7 @@ void HandleSend(SendIOEventCode sendEventCode)
internal HttpResponse HttpResp => _httpResp;
internal Socket RemoteSocket => _recv_a.AcceptSocket;
-
+ public System.Net.EndPoint RemoteEndPoint => RemoteSocket.RemoteEndPoint;
///
/// bind to client socket
///
diff --git a/src/SharpConnect.WebServer/HttpWebServer2/HttpsContext.cs b/src/SharpConnect.WebServer/HttpWebServer2/HttpsContext.cs
index f123f58..156ac5c 100644
--- a/src/SharpConnect.WebServer/HttpWebServer2/HttpsContext.cs
+++ b/src/SharpConnect.WebServer/HttpWebServer2/HttpsContext.cs
@@ -26,6 +26,7 @@
*/
using System;
+using System.Net;
using System.Net.Sockets;
using SharpConnect.Internal2;
namespace SharpConnect.WebServers
@@ -45,6 +46,7 @@ class HttpsContext : IHttpContext, ISendIO
AbstractAsyncNetworkStream _sockStream;
Socket _clientSocket;
+ public EndPoint RemoteEndPoint => RemoteSocket.RemoteEndPoint;
#if DEBUG
static int dbugTotalId;
@@ -378,6 +380,8 @@ public Int32 dbugTokenId
return _dbugTokenId;
}
}
+
+
int _dbugTokenId; //for testing only
#endif