diff options
author | Kenneth Pouncey <kjpou@pt.lu> | 2019-12-03 21:02:52 +0300 |
---|---|---|
committer | Marek Safar <marek.safar@gmail.com> | 2019-12-03 21:02:52 +0300 |
commit | 22e20c12c6e36e3d7c608d26fbe07a68fccef43b (patch) | |
tree | 86d04b593ab6c8846cf80ee9a3783efe1c96ea50 | |
parent | 20704e7005d976ed3bd99983696a08428cf5376c (diff) |
[wasm][reference] Add support for WebAssembly.Net.WebSockets assembly (#23)
* [was][reference] Add support for WebAssembly.Net.WebSockets assembly
* Cleanup space and remove unused reference
* Add clean target
* Modify System InternalsVisibleToAttribute for WebAssembly.Net.WebSockets
-rw-r--r-- | build/monowasm/Makefile | 8 | ||||
-rw-r--r-- | build/monowasm/WebAssembly.Net.WebSockets.cs | 48 | ||||
-rw-r--r-- | src/monowasm/System.cs | 4 |
3 files changed, 56 insertions, 4 deletions
diff --git a/build/monowasm/Makefile b/build/monowasm/Makefile index a88c273..8e608e5 100644 --- a/build/monowasm/Makefile +++ b/build/monowasm/Makefile @@ -5,7 +5,7 @@ CSC ?= csc CSC_COMMON_ARGS := -nologo -noconfig -optimize -nostdlib -unsafe -deterministic -publicsign -debug- -target:library -nowarn:612,618,809 Q_CSC = $(if $(V),,@echo "CSC [$(PROFILE)] $(1)";) -ASSEMBLIES := mscorlib System System.Xml System.Numerics System.Core System.Net.Http WebAssembly.Net.Http +ASSEMBLIES := mscorlib System System.Xml System.Numerics System.Core System.Net.Http WebAssembly.Net.Http WebAssembly.Net.WebSockets ASSEMBLIES += bare/System @@ -17,6 +17,7 @@ System_REFS := mscorlib System.Numerics_REFS := mscorlib System.Xml_REFS := mscorlib System WebAssembly.Net.Http_REFS := mscorlib System System.Core System.Net.Http +WebAssembly.Net.WebSockets_REFS := mscorlib System System.Core bare/System_REFS := mscorlib @@ -27,9 +28,14 @@ ECMA_KEY := ../../../../mcs/class/ecma.pub # Public Key Token: b77a5c561 ECMA_KEY_ASSEMBLIES := System.Core System.Net.Http System System.Numerics System.Xml mscorlib bare/System WebAssembly.Net.Http_KEYFILE := ../../../../mcs/class/Open.snk +WebAssembly.Net.WebSockets_KEYFILE := ../../../../mcs/class/Open.snk all: $(addsuffix .dll, $(ASSEMBLIES)) +clean: + rm -f *.dll + rm -f bare/*.dll + define KEYFILE_TEMPLATE $(1)_KEYFILE := $(2) endef diff --git a/build/monowasm/WebAssembly.Net.WebSockets.cs b/build/monowasm/WebAssembly.Net.WebSockets.cs new file mode 100644 index 0000000..14ccac3 --- /dev/null +++ b/build/monowasm/WebAssembly.Net.WebSockets.cs @@ -0,0 +1,48 @@ +[assembly:System.Reflection.AssemblyVersionAttribute("0.2.2.0")] +[assembly:System.Diagnostics.DebuggableAttribute(System.Diagnostics.DebuggableAttribute.DebuggingModes.Default | System.Diagnostics.DebuggableAttribute.DebuggingModes.DisableOptimizations | System.Diagnostics.DebuggableAttribute.DebuggingModes.EnableEditAndContinue | System.Diagnostics.DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] +[assembly:System.Reflection.AssemblyCompanyAttribute("WebAssembly.Net.WebSockets")] +[assembly:System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly:System.Reflection.AssemblyFileVersionAttribute("0.2.2.0")] +[assembly:System.Reflection.AssemblyInformationalVersionAttribute("0.2.2")] +[assembly:System.Reflection.AssemblyProductAttribute("WebAssembly.Net.WebSockets")] +[assembly:System.Reflection.AssemblyTitleAttribute("WebAssembly.Net.WebSockets")] +[assembly:System.Runtime.CompilerServices.CompilationRelaxationsAttribute(8)] +[assembly:System.Runtime.CompilerServices.RuntimeCompatibilityAttribute(WrapNonExceptionThrows=true)] +[assembly:System.Runtime.Versioning.TargetFrameworkAttribute(".NETStandard,Version=v2.0", FrameworkDisplayName="")] +namespace WebAssembly.Net.WebSockets +{ + public sealed partial class ClientWebSocket : System.Net.WebSockets.WebSocket + { + public ClientWebSocket() { } + public override System.Nullable<System.Net.WebSockets.WebSocketCloseStatus> CloseStatus { get { throw null; } } + public override string CloseStatusDescription { get { throw null; } } + public WebAssembly.Net.WebSockets.ClientWebSocket.ClientWebSocketOptions Options { get { throw null; } } + public override System.Net.WebSockets.WebSocketState State { get { throw null; } } + public override string SubProtocol { get { throw null; } } + public override void Abort() { } + [System.Diagnostics.DebuggerStepThroughAttribute] + public override System.Threading.Tasks.Task CloseAsync(System.Net.WebSockets.WebSocketCloseStatus closeStatus, string statusDescription, System.Threading.CancellationToken cancellationToken) { throw null; } + public override System.Threading.Tasks.Task CloseOutputAsync(System.Net.WebSockets.WebSocketCloseStatus closeStatus, string statusDescription, System.Threading.CancellationToken cancellationToken) { throw null; } + public System.Threading.Tasks.Task ConnectAsync(System.Uri uri, System.Threading.CancellationToken cancellationToken) { throw null; } + public override void Dispose() { } + [System.Diagnostics.DebuggerStepThroughAttribute] + public override System.Threading.Tasks.Task<System.Net.WebSockets.WebSocketReceiveResult> ReceiveAsync(System.ArraySegment<byte> buffer, System.Threading.CancellationToken cancellationToken) { throw null; } + [System.Diagnostics.DebuggerStepThroughAttribute] + public override System.Threading.Tasks.Task SendAsync(System.ArraySegment<byte> buffer, System.Net.WebSockets.WebSocketMessageType messageType, bool endOfMessage, System.Threading.CancellationToken cancellationToken) { throw null; } + public sealed partial class ClientWebSocketOptions + { + internal ClientWebSocketOptions() { } + public System.Security.Cryptography.X509Certificates.X509CertificateCollection ClientCertificates { get { throw null; } set { } } + public System.Net.CookieContainer Cookies { get { throw null; } set { } } + public System.Net.ICredentials Credentials { get { throw null; } set { } } + public System.TimeSpan KeepAliveInterval { get { throw null; } set { } } + public System.Net.IWebProxy Proxy { get { throw null; } set { } } + public System.Net.Security.RemoteCertificateValidationCallback RemoteCertificateValidationCallback { get { throw null; } set { } } + public bool UseDefaultCredentials { get { throw null; } set { } } + public void AddSubProtocol(string subProtocol) { } + public void SetBuffer(int receiveBufferSize, int sendBufferSize) { } + public void SetBuffer(int receiveBufferSize, int sendBufferSize, System.ArraySegment<byte> buffer) { } + public void SetRequestHeader(string headerName, string headerValue) { } + } + } +} diff --git a/src/monowasm/System.cs b/src/monowasm/System.cs index c831228..b5d3c5b 100644 --- a/src/monowasm/System.cs +++ b/src/monowasm/System.cs @@ -19,9 +19,7 @@ [assembly:System.Runtime.CompilerServices.InternalsVisibleToAttribute("Mono.Security, PublicKey=002400000480000094000000060200000024000052534131000400000100010079159977d2d03a8e6bea7a2e74e8d1afcc93e8851974952bb480a12c9134474d04062447c37e0e68c080536fcf3c3fbe2ff9c979ce998475e506e8ce82dd5b0f350dc10e93bf2eeecf874b24770c5081dbea7447fddafa277b22de47d6ffea449674a4f9fccf84d15069089380284dbdd35f46cdff12a1bd78e4ef0065d016df")] [assembly:System.Runtime.CompilerServices.InternalsVisibleToAttribute("System.ComponentModel.DataAnnotations, PublicKey=0024000004800000940000000602000000240000525341310004000001000100b5fc90e7027f67871e773a8fde8938c81dd402ba65b9201d60593e96c492651e889cc13f1415ebb53fac1131ae0bd333c5ee6021672d9718ea31a8aebd0da0072f25d87dba6fc90ffd598ed4da35e44c398c454307e8e33b8426143daec9f596836f97c8f74750e5975c64e2189f45def46b2a2b1247adc3652bf5c308055da9")] [assembly:System.Runtime.CompilerServices.InternalsVisibleToAttribute("System.Net.Http, PublicKey=002400000480000094000000060200000024000052534131000400000100010007d1fa57c4aed9f0a32e84aa0faefd0de9e8fd6aec8f87fb03766c834c99921eb23be79ad9d5dcc1dd9ad236132102900b723cf980957fc4e177108fc607774f29e8320e92ea05ece4e821c0a5efe8f1645c4c0c93c1ab99285d622caa652c1dfad63d745d6f2de5f17e5eaf0fc4963d261c8a12436518206dc093344d5ad293")] -[assembly:System.Runtime.CompilerServices.InternalsVisibleToAttribute("Xamarin.iOS, PublicKey=0024000004800000940000000602000000240000525341310004000011000000438ac2a5acfbf16cbd2b2b47a62762f273df9cb2795ceccdf77d10bf508e69e7a362ea7a45455bbf3ac955e1f2e2814f144e5d817efc4c6502cc012df310783348304e3ae38573c6d658c234025821fda87a0be8a0d504df564e2c93b2b878925f42503e9d54dfef9f9586d9e6f38a305769587b1de01f6c0410328b2c9733db")] -[assembly:System.Runtime.CompilerServices.InternalsVisibleToAttribute("Xamarin.TVOS, PublicKey=0024000004800000940000000602000000240000525341310004000011000000438ac2a5acfbf16cbd2b2b47a62762f273df9cb2795ceccdf77d10bf508e69e7a362ea7a45455bbf3ac955e1f2e2814f144e5d817efc4c6502cc012df310783348304e3ae38573c6d658c234025821fda87a0be8a0d504df564e2c93b2b878925f42503e9d54dfef9f9586d9e6f38a305769587b1de01f6c0410328b2c9733db")] -[assembly:System.Runtime.CompilerServices.InternalsVisibleToAttribute("Xamarin.WatchOS, PublicKey=0024000004800000940000000602000000240000525341310004000011000000438ac2a5acfbf16cbd2b2b47a62762f273df9cb2795ceccdf77d10bf508e69e7a362ea7a45455bbf3ac955e1f2e2814f144e5d817efc4c6502cc012df310783348304e3ae38573c6d658c234025821fda87a0be8a0d504df564e2c93b2b878925f42503e9d54dfef9f9586d9e6f38a305769587b1de01f6c0410328b2c9733db")] +[assembly:System.Runtime.CompilerServices.InternalsVisibleToAttribute("WebAssembly.Net.WebSockets, PublicKey=00240000048000009400000006020000002400005253413100040000010001004b86c4cb78549b34bab61a3b1800e23bfeb5b3ec390074041536a7e3cbd97f5f04cf0f857155a8928eaa29ebfd11cfbbad3ba70efea7bda3226c6a8d370a4cd303f714486b6ebc225985a638471e6ef571cc92a4613c00b8fa65d61ccee0cbe5f36330c9a01f4183559f1bef24cc2917c6d913e3a541333a1d05d9bed22b38cb")] [assembly:System.Runtime.CompilerServices.RuntimeCompatibilityAttribute(WrapNonExceptionThrows=true)] [assembly:System.Runtime.InteropServices.ComVisibleAttribute(false)] [assembly:System.Security.Permissions.SecurityPermissionAttribute(System.Security.Permissions.SecurityAction.RequestMinimum, SkipVerification=true)] |