Merge pull request #981 from methane/websocket
[mono.git] / mcs / class / System / System.Net / HttpConnection.cs
index 33080c2d77b9a1d463c3e3f61bbb4a0ff4eef9fd..d554309b695de23d85e86e7df53800aa518248c3 100644 (file)
@@ -29,7 +29,7 @@
 
 #if SECURITY_DEP
 
-#if MONOTOUCH
+#if MONOTOUCH || MONODROID
 using Mono.Security.Protocol.Tls;
 #else
 extern alias MonoSecurity;
@@ -209,6 +209,17 @@ namespace System.Net {
                        return o_stream;
                }
 
+               internal Socket Hijack (out ArraySegment<byte> buffered)
+               {
+                       // TODO: disable normal request/response.
+                       buffered = new ArraySegment<byte> (ms.GetBuffer(), position, (int)ms.Length - position);
+                       RemoveConnection ();
+                       var s = sock;
+                       sock = null;
+                       o_stream = null;
+                       return s;
+               }
+
                static void OnRead (IAsyncResult ares)
                {
                        HttpConnection cnc = (HttpConnection) ares.AsyncState;