Author: gonzalo
Date: 2005-04-19 22:11:05 -0400 (Tue, 19 Apr 2005)
New Revision: 43305
Modified:
trunk/xsp/ChangeLog
trunk/xsp/server/ApplicationServer.cs
trunk/xsp/server/ModMonoWorkerRequest.cs
trunk/xsp/server/XSPWorkerRequest.cs
Log:
2005-04-19 Gonzalo Paniagua Javier <[EMAIL PROTECTED]>
* server/ModMonoWorkerRequest.cs:
* server/XSPWorkerRequest.cs: we can set a few server variables here.
* server/ApplicationServer.cs: remove the socket from the active list
on timeout so that we don't attempt to use it and delay the error.
Modified: trunk/xsp/ChangeLog
===================================================================
--- trunk/xsp/ChangeLog 2005-04-19 23:53:35 UTC (rev 43304)
+++ trunk/xsp/ChangeLog 2005-04-20 02:11:05 UTC (rev 43305)
@@ -1,3 +1,11 @@
+2005-04-19 Gonzalo Paniagua Javier <[EMAIL PROTECTED]>
+
+ * server/ModMonoWorkerRequest.cs:
+ * server/XSPWorkerRequest.cs: we can set a few server variables here.
+
+ * server/ApplicationServer.cs: remove the socket from the active list
+ on timeout so that we don't attempt to use it and delay the error.
+
2005-04-01 Gonzalo Paniagua Javier <[EMAIL PROTECTED]>
* server/ApplicationServer.cs: use a foreground thread to stop the
Modified: trunk/xsp/server/ApplicationServer.cs
===================================================================
--- trunk/xsp/server/ApplicationServer.cs 2005-04-19 23:53:35 UTC (rev
43304)
+++ trunk/xsp/server/ApplicationServer.cs 2005-04-20 02:11:05 UTC (rev
43305)
@@ -467,6 +467,7 @@
TimeSpan diff = now - atime;
if (diff.TotalMilliseconds > 15 * 1000)
{
RemoveReadSocket (k);
+ wSockets.Remove (k);
k.Close ();
continue;
}
Modified: trunk/xsp/server/ModMonoWorkerRequest.cs
===================================================================
--- trunk/xsp/server/ModMonoWorkerRequest.cs 2005-04-19 23:53:35 UTC (rev
43304)
+++ trunk/xsp/server/ModMonoWorkerRequest.cs 2005-04-20 02:11:05 UTC (rev
43305)
@@ -284,7 +284,20 @@
public override string GetServerVariable (string name)
{
- return requestBroker.GetServerVariable (requestId,
name);
+ string result = requestBroker.GetServerVariable
(requestId, name);
+ if (result != null && result.Length > 0)
+ return result;
+
+ switch (name) {
+ case "HTTPS":
+ result = (IsSecure ()) ? "on" : "off";
+ break;
+ default:
+ result = base.GetServerVariable (name);
+ break;
+ }
+
+ return result;
}
public override void SendResponseFromMemory (byte [] data, int
length)
Modified: trunk/xsp/server/XSPWorkerRequest.cs
===================================================================
--- trunk/xsp/server/XSPWorkerRequest.cs 2005-04-19 23:53:35 UTC (rev
43304)
+++ trunk/xsp/server/XSPWorkerRequest.cs 2005-04-20 02:11:05 UTC (rev
43305)
@@ -71,7 +71,8 @@
long contentSent;
long contentLength;
bool isclosed;
-
+
+ static string server_software;
static string serverHeader;
static string [] indexFiles = { "index.aspx",
@@ -94,8 +95,8 @@
if (plat == "128")
plat = "Unix";
- serverHeader = String.Format ("Server: {0}/{1} {2}\r\n",
- title, version, plat);
+ server_software = String.Format ("{0}/{1}", title,
version);
+ serverHeader = String.Format ("Server: {0} {1}\r\n",
server_software, plat);
string indexes = ConfigurationSettings.AppSettings
["MonoServerDefaultIndexFiles"];
SetDefaultIndexFiles (indexes);
@@ -513,8 +514,23 @@
public override string GetServerVariable (string name)
{
- WebTrace.WriteLine ("GetServerVariable()");
- return "GetServerVariable -> " + name;
+ string result = null;
+ switch (name) {
+ case "GATEWAY_INTERFACE":
+ result = "CGI/1.1";
+ break;
+ case "HTTPS":
+ result = (IsSecure ()) ? "on" : "off";
+ break;
+ case "SERVER_SOFTWARE":
+ result = server_software;
+ break;
+ default:
+ result = base.GetServerVariable (name);
+ break;
+ }
+
+ return result;
}
public override string GetUriPath ()
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches