aboutsummaryrefslogtreecommitdiff
path: root/Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs')
-rw-r--r--Mono.Nat/Upnp/Messages/Requests/DeletePortMappingMessage.cs16
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);