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

Reply via email to