private void Initialize() { // TODO: Move this line to design.cs fileMain.FileOk += new CancelEventHandler(fileMain_FileOk); sfdExport.FileOk += new CancelEventHandler(sfdExport_FileOk); sfdExport.Filter = "Eml (*.eml)|*.eml|All File (*.*)|*.*"; ofdImport.FileOk += new CancelEventHandler(ofdImport_FileOk); ofdImport.Filter = "Eml (*.eml)|*.eml|All File (*.*)|*.*"; ExpandRecPanel(false); // TODO: Change to property ScrollLog(true); // Initialize for command mode cmdSMTPCommunicator = new SMTPCommunicator(); m_authLogin = new AuthenticationLogin(); cmdMgr = new SMTP.Commands.CommandManager(); cmdMgr.UpdateMessage += new SMTP.Commands.CommandEvent.CommandEventHandler(OnCommandManagerUpdateMessage); cmdMgr.Attach(Commands.PackageCommands.Pack(this.cmdSMTPCommunicator)); cmdMgr.Attach(new Commands.CmdHelp(cmdMgr)); // Set accept key word command textbox acceptKeyHelper = new SMTP.Utility.TextboxAcceptKeyHelper(this.txtCommand); acceptKeyHelper.AcceptButton = this.btnCommand; // Initialize hex editor this.messageBodyBytes = new byte[0]; textByteProvider = new Be.Windows.Forms.DynamicByteProvider(this.messageBodyBytes); this.hexMessage.ByteProvider = textByteProvider; this.CustomizeMessageBody = false; }
private GR.Memory.ByteBuffer DataFromHex() { Be.Windows.Forms.DynamicByteProvider dynProvider = (Be.Windows.Forms.DynamicByteProvider)hexView.ByteProvider; List <byte> dataBytes = dynProvider.Bytes; if (dataBytes.Count == 0) { return(new GR.Memory.ByteBuffer()); } long dataStart = hexView.SelectionStart; long dataLength = hexView.SelectionLength; if (hexView.SelectionLength == 0) { dataStart = 0; dataLength = hexView.ByteProvider.Length; } GR.Memory.ByteBuffer data = new GR.Memory.ByteBuffer((uint)dataLength); for (int i = 0; i < dataLength; ++i) { data.SetU8At(i, dataBytes[(int)dataStart + i]); } return(data); }
public void PluginSelected() { Be.Windows.Forms.HexBox box = (Be.Windows.Forms.HexBox)Controls[0]; Be.Windows.Forms.ByteCollection c = new Be.Windows.Forms.ByteCollection(Data.Buffer); Be.Windows.Forms.DynamicByteProvider d = new Be.Windows.Forms.DynamicByteProvider(Data.Buffer); ((Be.Windows.Forms.HexBox)Controls[0]).ByteProvider = d; }
private void viewMBRToolStripMenuItem_Click(object sender, EventArgs e) { byte[] mbr = vhd.blockAllocationTable.GetSector(0); using (BinaryWriter b = new BinaryWriter(File.Open("mbr.bin", FileMode.Create))) { // 3. Use foreach and write all 12 integers. foreach (byte i in mbr) { b.Write(i); } } BiosPartitionRecord[] bpr = { new BiosPartitionRecord(mbr, 446, 0, 0), new BiosPartitionRecord(mbr, 462, 0, 0), new BiosPartitionRecord(mbr, 478, 0, 0), new BiosPartitionRecord(mbr, 494, 0, 0) }; // DiscUtils.Partitions.BiosPartitionTable bpt = new DiscUtils.Partitions.BiosPartitionTable(); Be.Windows.Forms.ByteCollection bc = new Be.Windows.Forms.ByteCollection(mbr); HextFormTest hexForm = new HextFormTest(); Be.Windows.Forms.DynamicByteProvider dbp = new Be.Windows.Forms.DynamicByteProvider(bc); hexForm.SetHexBox("mbr.bin"); hexForm.Icon = Icon; hexForm.Show(); }
public override void RenderResource(ResourceData resource) { Byte[] data = resource.RawData; if (data.Length > 1024 * 512) // if greater than 512KB, thread it off { __hex.Visible = false; __loading.Visible = true; if (_loading) { // sleep 10ms, if it's still loading create a new bw System.Threading.Thread.Sleep(10); if (_loading) { __bw = new BackgroundWorker(); __bw.DoWork += new DoWorkEventHandler(__bw_DoWork); } } __bw.RunWorkerAsync(data); } else { Be.Windows.Forms.DynamicByteProvider bytesProv = new Be.Windows.Forms.DynamicByteProvider(data); __hex.ByteProvider = bytesProv; } }
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { if (listBox1.SelectedIndex > 0) { Tamir.IPLib.Packets.Packet packet = packets[listBox1.SelectedIndex]; Be.Windows.Forms.DynamicByteProvider provider = new Be.Windows.Forms.DynamicByteProvider(packet.Data); this.hexBox1.ByteProvider = provider; this.textBox1.Text = System.Text.ASCIIEncoding.Default.GetString(packet.Data); this.treeView1.Nodes.Clear(); TreeNode header = this.treeView1.Nodes.Add("Header"); header.Nodes.Add(string.Format("Length:{0}", packet.Header.Length)); System.Text.StringBuilder sb = new StringBuilder(); foreach (byte b in packet.Header) { sb.Append(b.ToString("00")); sb.Append(" "); } header.Nodes.Add(string.Format("Data:{0}", sb.ToString())); header.Nodes.Add(string.Format("Capture Length:{0}", packet.PcapHeader.CaptureLength.ToString())); header.Nodes.Add(string.Format("Packet Length:{0}", packet.PcapHeader.PacketLength.ToString())); header.Nodes.Add(string.Format("Date:{0}", packet.PcapHeader.Date.ToString())); header.Nodes.Add(string.Format("Microseconds:{0}", packet.PcapHeader.MicroSeconds.ToString())); header.Nodes.Add(string.Format("Seconds:{0}", packet.PcapHeader.Seconds.ToString())); this.treeView1.ExpandAll(); } }
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { if(listBox1.SelectedIndex > 0) { Tamir.IPLib.Packets.Packet packet = packets[listBox1.SelectedIndex]; Be.Windows.Forms.DynamicByteProvider provider = new Be.Windows.Forms.DynamicByteProvider(packet.Data); this.hexBox1.ByteProvider = provider; this.textBox1.Text = System.Text.ASCIIEncoding.Default.GetString(packet.Data); this.treeView1.Nodes.Clear(); TreeNode header = this.treeView1.Nodes.Add("Header"); header.Nodes.Add(string.Format("Length:{0}", packet.Header.Length)); System.Text.StringBuilder sb = new StringBuilder(); foreach(byte b in packet.Header) { sb.Append(b.ToString("00")); sb.Append(" "); } header.Nodes.Add(string.Format("Data:{0}", sb.ToString())); header.Nodes.Add(string.Format("Capture Length:{0}", packet.PcapHeader.CaptureLength.ToString())); header.Nodes.Add(string.Format("Packet Length:{0}", packet.PcapHeader.PacketLength.ToString())); header.Nodes.Add(string.Format("Date:{0}", packet.PcapHeader.Date.ToString())); header.Nodes.Add(string.Format("Microseconds:{0}", packet.PcapHeader.MicroSeconds.ToString())); header.Nodes.Add(string.Format("Seconds:{0}", packet.PcapHeader.Seconds.ToString())); this.treeView1.ExpandAll(); } }
public HexDataEdit(string RecName, byte[] data, dFormIDLookupS formIDLookup) { InitializeComponent(); this.Icon = Properties.Resources.tesv_ico; this.formIDLookup = formIDLookup; Text += RecName; tbName.Text = RecName; Text += " (hex mode)"; dbytes = new Be.Windows.Forms.DynamicByteProvider(data); bytes = dbytes.Bytes; hexBox1.ByteProvider = dbytes; Canceled = true; }
public HexDataEdit(string RecName, byte[] data, dFormIDLookupS formIDLookup) { InitializeComponent(); this.Icon=Fomm.Properties.Resources.fomm02; this.formIDLookup=formIDLookup; Text+=RecName; tbName.Text=RecName; Text+=" (hex mode)"; dbytes=new Be.Windows.Forms.DynamicByteProvider(data); bytes=dbytes.Bytes; hexBox1.ByteProvider=dbytes; Canceled=true; }
private void __bw_DoWork(object sender, DoWorkEventArgs e) { _loading = true; Byte[] data = e.Argument as Byte[]; Be.Windows.Forms.DynamicByteProvider bytesProv = new Be.Windows.Forms.DynamicByteProvider(data); __hex.ByteProvider = bytesProv; __loading.Visible = false; __hex.Visible = true;; _loading = false; }
void ofdImport_FileOk(object sender, CancelEventArgs e) { FileStream fs = new FileStream(ofdImport.FileName, FileMode.Open); byte[] emlMsgBytes = new byte[fs.Length]; fs.Read(emlMsgBytes, 0, emlMsgBytes.Length); fs.Close(); // Clear hex editor hexMessage.ByteProvider.DeleteBytes(0, hexMessage.ByteProvider.Length); this.textByteProvider = new Be.Windows.Forms.DynamicByteProvider(emlMsgBytes); hexMessage.ByteProvider = this.textByteProvider; this.CustomizeMessageBody = true; }
private void listViewSessions_SelectedIndexChanged(object sender, EventArgs e) { if (listViewSessions.SelectedIndices.Count == 1) { // update the context menus contextMenuStripSessions_Opening(sender, null); tabControlMain.SelectTab("tabPageInspect"); int index = listViewSessions.SelectedIndices[0]; object tag = null; if (m_SessionViewCache.ContainsKey(index)) tag = m_SessionViewCache[index].Tag; else tag = GenerateListViewItem(listViewSessions.SelectedIndices[0]).Tag; //e.Item.Tag; if (tag is Session) { Session session = (Session)tag; this.m_CurrentSession = session; treeViewXmlResponse.Nodes.Clear(); treeViewXMLRequest.Nodes.Clear(); Be.Windows.Forms.DynamicByteProvider responseBytes = new Be.Windows.Forms.DynamicByteProvider(session.ToBytes(Direction.Incoming)); richTextBoxDecodedResponse.Text = session.ToPrettyString(Direction.Incoming); richTextBoxRawResponse.Text = session.ToRawString(Direction.Incoming); richTextBoxNotationResponse.Text = session.ToStringNotation(Direction.Incoming); hexBoxResponse.ByteProvider = responseBytes; updateTreeView(session.ToXml(Direction.Incoming), treeViewXmlResponse); Be.Windows.Forms.DynamicByteProvider requestBytes = new Be.Windows.Forms.DynamicByteProvider(session.ToBytes(Direction.Outgoing)); richTextBoxDecodedRequest.Text = session.ToPrettyString(Direction.Outgoing); richTextBoxRawRequest.Text = session.ToRawString(Direction.Outgoing); richTextBoxNotationRequest.Text = session.ToStringNotation(Direction.Outgoing); hexBoxRequest.ByteProvider = requestBytes; updateTreeView(session.ToXml(Direction.Outgoing), treeViewXMLRequest); RequestPosition_Changed(this, EventArgs.Empty); ReplyPosition_Changed(this, EventArgs.Empty); } else { richTextBoxDecodedResponse.Text = "Unknown data object encountered: " + tag.GetType().ToString(); } } }
private void listViewSessions_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e) { if (e.IsSelected && listViewSessions.SelectedItems.Count == 1) { tabControlMain.SelectTab("tabPageInspect"); object tag = e.Item.Tag; if (tag is Session) { Session session = (Session)tag; treeViewXmlResponse.Nodes.Clear(); treeViewXMLRequest.Nodes.Clear(); Be.Windows.Forms.DynamicByteProvider responseBytes = new Be.Windows.Forms.DynamicByteProvider(session.ToBytes(Direction.Incoming)); richTextBoxDecodedResponse.Text = session.ToPrettyString(Direction.Incoming); richTextBoxRawResponse.Text = session.ToRawString(Direction.Incoming); richTextBoxNotationResponse.Text = session.ToStringNotation(Direction.Incoming); hexBoxResponse.ByteProvider = responseBytes; updateTreeView(session.ToXml(Direction.Incoming), treeViewXmlResponse); Be.Windows.Forms.DynamicByteProvider requestBytes = new Be.Windows.Forms.DynamicByteProvider(session.ToBytes(Direction.Outgoing)); richTextBoxDecodedRequest.Text = session.ToPrettyString(Direction.Outgoing); richTextBoxRawRequest.Text = session.ToRawString(Direction.Outgoing); richTextBoxNotationRequest.Text = session.ToStringNotation(Direction.Outgoing); hexBoxRequest.ByteProvider = requestBytes; updateTreeView(session.ToXml(Direction.Outgoing), treeViewXMLRequest); RequestPosition_Changed(this, EventArgs.Empty); ReplyPosition_Changed(this, EventArgs.Empty); } else { richTextBoxDecodedResponse.Text = "Unknown data object encountered: " + tag.GetType().ToString(); } } }
private void listViewSessions_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e) { if (e.IsSelected && listViewSessions.SelectedItems.Count == 1) { // update the context menus contextMenuStripSessions_Opening(sender, null); tabControl1.SelectTab("tabPageInspect"); object tag = e.Item.Tag; if (tag is string && tag.ToString().StartsWith("Packet Type:")) { Be.Windows.Forms.DynamicByteProvider data = new Be.Windows.Forms.DynamicByteProvider(Utils.StringToBytes(tag.ToString())); if (e.Item.ImageIndex == 1) // sent item { richTextBoxDecodedRequest.Text = String.Format("{0}", tag); richTextBoxRawRequest.Text = String.Format("{0}", tag); richTextBoxNotationRequest.Text = "No Notation decoding for String items"; treeViewXMLRequest.Nodes.Clear(); hexBoxRequest.ByteProvider = data; richTextBoxDecodedResponse.Text = "No Data"; richTextBoxRawResponse.Text = "No Data"; richTextBoxNotationResponse.Text = "No Data"; treeViewXmlResponse.Nodes.Clear(); hexBoxResponse.ByteProvider = null; } else { richTextBoxDecodedRequest.Text = "No Data"; richTextBoxRawRequest.Text = "No Data"; richTextBoxNotationRequest.Text = "No Notation decoding for String items"; treeViewXMLRequest.Nodes.Clear(); hexBoxRequest.ByteProvider = null; richTextBoxDecodedResponse.Text = String.Format("{0}", tag); richTextBoxRawResponse.Text = String.Format("{0}", tag); richTextBoxNotationResponse.Text = "No Notation decoding for String items"; treeViewXmlResponse.Nodes.Clear(); hexBoxResponse.ByteProvider = data; } } else if (tag is XmlRpcRequest) { XmlRpcRequest requestData = (XmlRpcRequest)tag; richTextBoxDecodedRequest.Text = requestData.ToString(); richTextBoxRawRequest.Text = requestData.ToString(); richTextBoxNotationRequest.Text = "Notation Not Available for XML Request"; updateTreeView(requestData.ToString(), treeViewXMLRequest); Be.Windows.Forms.DynamicByteProvider data = new Be.Windows.Forms.DynamicByteProvider(Utils.StringToBytes(requestData.ToString())); hexBoxRequest.ByteProvider = data; richTextBoxDecodedResponse.Text = String.Empty; richTextBoxRawResponse.Text = String.Empty; richTextBoxNotationResponse.Text = String.Empty; treeViewXmlResponse.Nodes.Clear(); hexBoxResponse.ByteProvider = null; } else if (tag is XmlRpcResponse) { XmlRpcResponse responseData = (XmlRpcResponse)tag; richTextBoxDecodedResponse.Text = responseData.ToString(); richTextBoxRawResponse.Text = responseData.ToString(); richTextBoxNotationResponse.Text = "Notation Not Available for XML Request"; updateTreeView(responseData.ToString(), treeViewXmlResponse); Be.Windows.Forms.DynamicByteProvider data = new Be.Windows.Forms.DynamicByteProvider(Utils.StringToBytes(responseData.ToString())); hexBoxResponse.ByteProvider = data; richTextBoxDecodedRequest.Text = String.Empty; richTextBoxRawRequest.Text = String.Empty; richTextBoxNotationRequest.Text = String.Empty; treeViewXMLRequest.Nodes.Clear(); hexBoxRequest.ByteProvider = null; } else if (tag is Packet) { Packet packet = (Packet)tag; Be.Windows.Forms.DynamicByteProvider data = new Be.Windows.Forms.DynamicByteProvider(packet.ToBytes()); // we have no conversion from Packet to xml or notation richTextBoxNotationRequest.Text = String.Empty; richTextBoxNotationResponse.Text = String.Empty; treeViewXmlResponse.Nodes.Clear(); treeViewXMLRequest.Nodes.Clear(); // 0 = incoming, 1 = outgoing if (e.Item.ImageIndex == 0) { richTextBoxDecodedResponse.Text = TagToString(tag, listViewSessions.FocusedItem.SubItems[2].Text); richTextBoxRawResponse.Text = TagToString(tag, listViewSessions.FocusedItem.SubItems[2].Text); richTextBoxNotationResponse.Text = "Notation Not Available for Packet Types"; hexBoxResponse.ByteProvider = data; richTextBoxDecodedRequest.Text = String.Empty; richTextBoxRawRequest.Text = String.Empty; hexBoxRequest.ByteProvider = null; } else { richTextBoxDecodedRequest.Text = TagToString(tag, listViewSessions.FocusedItem.SubItems[2].Text); richTextBoxRawRequest.Text = TagToString(tag, listViewSessions.FocusedItem.SubItems[2].Text); richTextBoxNotationRequest.Text = "Notation Not Available for Packet Types"; hexBoxRequest.ByteProvider = data; richTextBoxDecodedResponse.Text = String.Empty; richTextBoxRawResponse.Text = String.Empty; hexBoxResponse.ByteProvider = null; } } else if (tag is CapsRequest) { CapsRequest capsData = (CapsRequest)tag; if (capsData.Request != null) { StringBuilder rawRequest = new StringBuilder(); if (capsData.RequestHeaders != null) { foreach (string key in capsData.RequestHeaders.Keys) { rawRequest.AppendFormat("{0}: {1}" + System.Environment.NewLine, key, capsData.RequestHeaders[key]); } rawRequest.AppendLine(); } string rawCapsData = string.Empty; try { rawCapsData = Utils.BytesToString(capsData.RawRequest); } catch (Exception) { } rawRequest.AppendLine(rawCapsData); if (capsData.RequestHeaders["content-type"].Equals("application/octet-stream")) { richTextBoxDecodedRequest.Text = rawRequest.ToString(); treeViewXMLRequest.Nodes.Clear(); richTextBoxNotationRequest.Text = "Binary data cannot be formatted as notation"; } else { OSD requestOSD = OSDParser.DeserializeLLSDXml(capsData.RawRequest); richTextBoxDecodedRequest.Text = TagToString(requestOSD, listViewSessions.FocusedItem.SubItems[2].Text); richTextBoxNotationRequest.Text = requestOSD.ToString(); updateTreeView(rawCapsData, treeViewXMLRequest); } // these work for both binary and xml+llsd messages richTextBoxRawRequest.Text = rawRequest.ToString(); Be.Windows.Forms.DynamicByteProvider data = new Be.Windows.Forms.DynamicByteProvider(capsData.RawRequest); hexBoxRequest.ByteProvider = data; } else { richTextBoxDecodedRequest.Text = "No Data"; richTextBoxRawRequest.Text = "No Data"; richTextBoxNotationRequest.Text = "No Data"; treeViewXMLRequest.Nodes.Clear(); hexBoxRequest.ByteProvider = null; } if (capsData.Response != null) { StringBuilder rawResponse = new StringBuilder(); if (capsData.ResponseHeaders != null) { foreach (string key in capsData.ResponseHeaders.Keys) { rawResponse.AppendFormat("{0}: {1}" + System.Environment.NewLine, key, capsData.ResponseHeaders[key]); } rawResponse.AppendLine(); } rawResponse.AppendLine(Utils.BytesToString(capsData.RawResponse)); OSD responseOSD = OSDParser.DeserializeLLSDXml(capsData.RawResponse); richTextBoxDecodedResponse.Text = TagToString(responseOSD, listViewSessions.FocusedItem.SubItems[2].Text);//.ToString(); richTextBoxRawResponse.Text = rawResponse.ToString(); richTextBoxNotationResponse.Text = responseOSD.ToString(); updateTreeView(Utils.BytesToString(capsData.RawResponse), treeViewXmlResponse); Be.Windows.Forms.DynamicByteProvider data = new Be.Windows.Forms.DynamicByteProvider(capsData.RawResponse); hexBoxResponse.ByteProvider = data; } else { richTextBoxDecodedResponse.Text = "No Data"; richTextBoxRawResponse.Text = "No Data"; richTextBoxNotationResponse.Text = "No Data"; treeViewXmlResponse.Nodes.Clear(); hexBoxResponse.ByteProvider = null; } } } }
public void ShowBinary(byte[] data, bool showingGridBinary) { if(showingGridBinary) ShowDetailsControl(DetailTypes.ResourcesRowAsBinary); else ShowDetailsControl(DetailTypes.BinaryResource); Be.Windows.Forms.DynamicByteProvider dbp = new Be.Windows.Forms.DynamicByteProvider(data); hbResource.ByteProvider = null; hbResource.ByteProvider = dbp; }