diff options
Diffstat (limited to 'Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs')
| -rw-r--r-- | Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs b/Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs index d9be89a69..ac04a66db 100644 --- a/Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs +++ b/Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs @@ -28,6 +28,7 @@ using System.Net; using System.IO; using System.Text; using System.Xml; +using MediaBrowser.Common.Net; namespace Mono.Nat.Upnp { @@ -41,7 +42,20 @@ namespace Mono.Nat.Upnp this.mapping = mapping; } - public override WebRequest Encode(out byte[] body) + public override HttpRequestOptions Encode() + { + StringBuilder builder = new StringBuilder(256); + XmlWriter writer = CreateWriter(builder); + + WriteFullElement(writer, "NewRemoteHost", string.Empty); + WriteFullElement(writer, "NewExternalPort", mapping.PublicPort.ToString(MessageBase.Culture)); + WriteFullElement(writer, "NewProtocol", mapping.Protocol == Protocol.Tcp ? "TCP" : "UDP"); + + writer.Flush(); + return CreateRequest("DeletePortMapping", builder.ToString()); + } + + public override WebRequest Encode(out byte[] body) { StringBuilder builder = new StringBuilder(256); XmlWriter writer = CreateWriter(builder); |
