public PersistentMetasploitModuleReference(MetasploitModuleReference reff) { this.Name = reff.Name; this.RemoteID = reff.RemoteID; this.RemoteModuleDetailID = reff.RemoteModuleDetailID; }
public MetasploitModuleDetails(XmlNode deets) { foreach (XmlNode child in deets.ChildNodes) { if (child.Name == "id") { this.RemoteID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(child.InnerText); } else if (child.Name == "mtime") { } else if (child.Name == "file") { this.File = child.InnerText; } else if (child.Name == "mtype") { this.ModuleType = child.InnerText; } else if (child.Name == "refname") { this.ReferenceName = child.InnerText; } else if (child.Name == "fullname") { this.FullName = child.InnerText; } else if (child.Name == "rank") { this.Rank = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(child.InnerText); } else if (child.Name == "description") { this.Description = child.InnerText; } else if (child.Name == "license") { this.License = child.InnerText; } else if (child.Name == "privileged") { } else if (child.Name == "disclosure-date") { this.DisclosureDate = child.InnerText; } else if (child.Name == "default-target") { this.DefaultTarget = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(child.InnerText); } else if (child.Name == "default-action") { } else if (child.Name == "stance") { this.Stance = child.InnerText; } else if (child.Name == "ready") { this.Ready = Boolean.Parse(child.InnerText); } else if (child.Name == "module_authors") { this.Authors = new List <MetasploitModuleAuthor>(); int i = 0; MetasploitModuleAuthor author = new MetasploitModuleAuthor(); foreach (XmlNode info in child.ChildNodes) { if (info.Name == "id") { author.RemoteID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(info.InnerText); } else if (info.Name == "module-detail-id") { author.RemoteModuleDetailID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(info.InnerText); } else if (info.Name == "name") { author.Name = info.InnerText; } else if (info.Name == "email") { author.Email = info.InnerText; } i++; if (i == 3) { this.Authors.Add(author); author = new MetasploitModuleAuthor(); i = 0; } } } else if (child.Name == "module_refs") { this.References = new List <MetasploitModuleReference>(); int i = 0; MetasploitModuleReference refr = new MetasploitModuleReference(); foreach (XmlNode reff in child.ChildNodes) { if (reff.Name == "id") { refr.RemoteID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(reff.InnerText); } else if (reff.Name == "module-detail-id") { refr.RemoteModuleDetailID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(reff.InnerText); } else if (reff.Name == "name") { refr.Name = child.InnerText; } i++; if (i == 3) { this.References.Add(refr); refr = new MetasploitModuleReference(); i = 0; } } } } }
public MetasploitModuleDetails(XmlNode deets) { foreach (XmlNode child in deets.ChildNodes) { if (child.Name == "id") this.RemoteID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(child.InnerText); else if (child.Name == "mtime") {} else if (child.Name == "file") this.File = child.InnerText; else if (child.Name == "mtype") this.ModuleType = child.InnerText; else if (child.Name == "refname") this.ReferenceName = child.InnerText; else if (child.Name == "fullname") this.FullName = child.InnerText; else if (child.Name == "rank") this.Rank = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(child.InnerText); else if (child.Name == "description") this.Description = child.InnerText; else if (child.Name == "license") this.License = child.InnerText; else if (child.Name == "privileged") {} else if (child.Name == "disclosure-date") this.DisclosureDate = child.InnerText; else if (child.Name == "default-target") this.DefaultTarget = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(child.InnerText); else if (child.Name == "default-action") {} else if (child.Name == "stance") this.Stance = child.InnerText; else if (child.Name == "ready") this.Ready = Boolean.Parse(child.InnerText); else if (child.Name == "module_authors") { this.Authors = new List<MetasploitModuleAuthor>(); int i = 0; MetasploitModuleAuthor author = new MetasploitModuleAuthor(); foreach (XmlNode info in child.ChildNodes) { if (info.Name == "id") author.RemoteID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(info.InnerText); else if (info.Name == "module-detail-id") author.RemoteModuleDetailID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(info.InnerText); else if (info.Name == "name") author.Name = info.InnerText; else if (info.Name == "email") author.Email = info.InnerText; i++; if (i == 3) { this.Authors.Add(author); author = new MetasploitModuleAuthor(); i = 0; } } } else if (child.Name == "module_refs") { this.References = new List<MetasploitModuleReference>(); int i = 0; MetasploitModuleReference refr = new MetasploitModuleReference(); foreach (XmlNode reff in child.ChildNodes) { if (reff.Name == "id") refr.RemoteID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(reff.InnerText); else if (reff.Name == "module-detail-id") refr.RemoteModuleDetailID = string.IsNullOrEmpty(child.InnerText) ? -1 : int.Parse(reff.InnerText); else if (reff.Name == "name") refr.Name = child.InnerText; i++; if (i == 3) { this.References.Add(refr); refr = new MetasploitModuleReference(); i = 0; } } } } }