public object applyOn(SpotterJson spotter) { var root = spotter.GetRoot(); var mail = new MailMsg(); if (root.XPathSelectElement("/result/message") != null) { // there should be only one message in response to display message foreach (var msg in root.XPathSelectElements("/result/message/item")) { mail.Subject = msg.XPathSelectElement("header/subject").Value; mail.From = msg.XPathSelectElement("header/from/email").Value; mail.To = YahooGetListedMessages.GetAllInArray(msg, "header/to//email", "; "); mail.Cc = YahooGetListedMessages.GetAllInArray(msg, "header/cc//email", "; "); mail.Bcc = YahooGetListedMessages.GetAllInArray(msg, "header/bcc//email", "; "); mail.Body = YahooGetListedMessages.GetAllInArray(msg, "part//text", ""); mail.SourceFolder = msg.XPathSelectElement("sourceFolderInfo/name").Value; } } return(mail); }
public void TestSpotterJson() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.webmail_webmail_yahoo_rc4_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.pk_pem); foreach (var conversation in conversations) { conversation.Key = new CypherKey(); conversation.Key.ServerPrivateKey = pk; } this.FrameworkController.ExportData(this.AvailableSnoopers.Where(x => x is SnooperHTTP.SnooperHTTP), conversations, this.CurrentTestBaseDirectory, true); var msgObject = this.SnooperExports.ToArray()[0].ExportObjects[41] as SnooperExportedDataObjectHTTP; Assert.AreNotEqual(null, msgObject); var msg = msgObject.Message; var spotter = new SpotterJson(); spotter.Init(msg); /* verify true states */ Assert.AreEqual(true, spotter.IsSpottable()); Assert.AreEqual(true, spotter.ContainsOneOf(new[] { "nieco", "Test Netfox" }, SpotterBase.SpotterContext.ContentValue)); Assert.AreEqual(true, spotter.Contains("message", SpotterBase.SpotterContext.AllKey)); Assert.AreEqual(true, spotter.ContainsKeyValuePair("subject", "nova sprava", SpotterBase.SpotterContext.ContentPair)); /* verify false states */ Assert.AreEqual(false, spotter.ContainsOneOf(new[] { "nieco", "ine" }, SpotterBase.SpotterContext.ContentKey)); Assert.AreEqual(false, spotter.Contains("hocico", SpotterBase.SpotterContext.AllKey)); Assert.AreEqual(false, spotter.ContainsKeyValuePair("subject", "Confidentioal", SpotterBase.SpotterContext.AllPair)); }
public object applyOn(SpotterJson spotter) { var root = spotter.GetRoot(); var list = new List <MailMsg>(); if (root.XPathSelectElement("/result//messageInfo") != null) { foreach (var conversation in root.XPathSelectElements("/result//messageInfo")) { foreach (var msg in conversation.XPathSelectElements("item")) { var mail = new MailMsg(); mail.From = msg.XPathSelectElement("from/email").Value; mail.To = msg.XPathSelectElement("toEmail").Value; mail.Subject = msg.XPathSelectElement("subject").Value; mail.Body = msg.XPathSelectElement("snippet").Value; mail.SourceFolder = msg.XPathSelectElement("sourceFolderInfo/name").Value; list.Add(mail); } } } return(list); }
public object applyOn(SpotterJson spotter) { throw new NotImplementedException(); }