From cf88416e1dfc9e5bbfe33394a95ce771e0de118b Mon Sep 17 00:00:00 2001 From: Greg Edwards Date: Thu, 24 Jul 2014 13:05:40 -0400 Subject: [PATCH] Brought back session viewer debug page. --- gts/admin/Sessions.aspx | 8 +++ gts/admin/Sessions.aspx.cs | 83 +++++++++++++++++++++++++++++ gts/admin/Sessions.aspx.designer.cs | 24 +++++++++ gts/gts.csproj | 8 +++ 4 files changed, 123 insertions(+) create mode 100644 gts/admin/Sessions.aspx create mode 100644 gts/admin/Sessions.aspx.cs create mode 100644 gts/admin/Sessions.aspx.designer.cs diff --git a/gts/admin/Sessions.aspx b/gts/admin/Sessions.aspx new file mode 100644 index 00000000..acb8eb5c --- /dev/null +++ b/gts/admin/Sessions.aspx @@ -0,0 +1,8 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeBehind="Sessions.aspx.cs" Inherits="PkmnFoundations.GTS.admin.Sessions" %> + + + + + + + diff --git a/gts/admin/Sessions.aspx.cs b/gts/admin/Sessions.aspx.cs new file mode 100644 index 00000000..8c250e14 --- /dev/null +++ b/gts/admin/Sessions.aspx.cs @@ -0,0 +1,83 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace PkmnFoundations.GTS.admin +{ + public partial class Sessions : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + GtsSessionManager manager = GtsSessionManager.FromContext(Context); + + StringBuilder builder = new StringBuilder(); + builder.Append("Active sessions ("); + builder.Append(manager.Sessions4.Count); + builder.Append("):
"); + foreach (KeyValuePair session in manager.Sessions4) + { + builder.Append("PID: "); + builder.Append(session.Value.PID); + builder.Append("
Token: "); + builder.Append(session.Value.Token); + builder.Append("
Hash: "); + builder.Append(session.Value.Hash); + builder.Append("
URL: "); + builder.Append(session.Value.URL); + builder.Append("
Expires: "); + builder.Append(session.Value.ExpiryDate); + builder.Append("

"); + } + + builder.Append("Active GenV sessions ("); + builder.Append(manager.Sessions5.Count); + builder.Append("):
"); + foreach (KeyValuePair session in manager.Sessions5) + { + builder.Append("PID: "); + builder.Append(session.Value.PID); + builder.Append("
Token: "); + builder.Append(session.Value.Token); + builder.Append("
Hash: "); + builder.Append(session.Value.Hash); + builder.Append("
URL: "); + builder.Append(session.Value.URL); + builder.Append("
Expires: "); + builder.Append(session.Value.ExpiryDate); + builder.Append("

"); + } + + if (Request.QueryString["data"] != null) + { + byte[] data = GtsSession4.DecryptData(Request.QueryString["data"]); + builder.Append("Data:
"); + builder.Append(RenderHex(data.ToHexStringLower())); + builder.Append("
"); + } + if (Request.QueryString["data5"] != null) + { + byte[] data = GtsSession5.DecryptData(Request.QueryString["data5"]); + builder.Append("Data:
"); + builder.Append(RenderHex(data.ToHexStringLower())); + builder.Append("
"); + } + + litDebug.Text = builder.ToString(); + } + + private String RenderHex(String hex) + { + StringBuilder builder = new StringBuilder(); + for (int x = 0; x < hex.Length; x += 16) + { + builder.Append(hex.Substring(x, Math.Min(16, hex.Length - x))); + builder.Append("
"); + } + return builder.ToString(); + } + } +} \ No newline at end of file diff --git a/gts/admin/Sessions.aspx.designer.cs b/gts/admin/Sessions.aspx.designer.cs new file mode 100644 index 00000000..f4a024a0 --- /dev/null +++ b/gts/admin/Sessions.aspx.designer.cs @@ -0,0 +1,24 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace PkmnFoundations.GTS.admin { + + + public partial class Sessions { + + /// + /// litDebug control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Literal litDebug; + } +} diff --git a/gts/gts.csproj b/gts/gts.csproj index a3ec909f..f6d6f959 100644 --- a/gts/gts.csproj +++ b/gts/gts.csproj @@ -67,6 +67,7 @@ + @@ -109,6 +110,13 @@ AddMusical.aspx + + Sessions.aspx + ASPXCodeBehind + + + Sessions.aspx + AllPokemon.aspx ASPXCodeBehind