pwn 0.4.695 → 0.4.696

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 70b5ba0004d7791378ec5fcd656c39cca71f3a074e80a64eaf3aed243634ca6a
4
- data.tar.gz: a01badbcbe18333492f4b563bedd6c20b6c4604645dd773e0acf72bd71b500cc
3
+ metadata.gz: 66aee2138bf202f3b99faf9cc3bf56750182f36d89d71447cfbdda6e0702026a
4
+ data.tar.gz: 2d946d1912aae2ca9b3fc5391352bfc97e111cb2f2c90893b5e9248d74115f11
5
5
  SHA512:
6
- metadata.gz: 0fd88ba55522c645f697e69da1ecfbb867b0cc0a90f206272221a0ba8f5d29fdde8720d181494062b6a8d614209ef5a2c67b7e4d036424f5dc57547269f4e728
7
- data.tar.gz: fb1bd375593ca142ce9b52ee0956f5b5e9090a3c300271128bc5546111a24743df8df273c8e3d538c2288e1554e641a0c5dc7d7e101721da0234666e67fafc81
6
+ metadata.gz: deea47f668aea2aacf2821a3486951a4822559d9d203607bcc138f4749f5e3892c220580a4ab42e8b48cdacc17d57ee72ebc24abc9efbdcf965eb424711801cc
7
+ data.tar.gz: 47cf1252ffd1f3ce058c8f98f72f7f7411789d3780137566f8e1289be2a21339fd8ca2d7397fe3316373d8c1f461d5a73c3f1ad04dd61cdd6a9ae9b75964c430
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.2.2@pwn
37
37
  $ rvm list gemsets
38
38
  $ gem install --verbose pwn
39
39
  $ pwn
40
- pwn[v0.4.695]:001 >>> PWN.help
40
+ pwn[v0.4.696]:001 >>> PWN.help
41
41
  ```
42
42
 
43
43
  [![Installing the pwn Security Automation Framework](https://raw.githubusercontent.com/0dayInc/pwn/master/documentation/pwn_install.png)](https://youtu.be/G7iLUY4FzsI)
@@ -52,7 +52,7 @@ $ rvm use ruby-3.2.2@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.4.695]:001 >>> PWN.help
55
+ pwn[v0.4.696]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
 
@@ -32,14 +32,37 @@ begin
32
32
  x2_path = opts[:x2_path]
33
33
  diff_path = opts[:diff_path]
34
34
 
35
- x1 = Nokogiri::XML(File.open(x1_path))
36
- x2 = Nokogiri::XML(File.open(x2_path))
35
+ x1 = Nokogiri::XML(File.read(x1_path))
36
+ x2 = Nokogiri::XML(File.read(x2_path))
37
37
 
38
- diff = x1.diff(x2)
39
38
  diff_xml = Nokogiri::XML::Builder.new do |xml|
40
39
  xml.diff do
41
- diff.each do |change|
42
- xml.send(change.action, change.node.to_xml) unless change.action == '='
40
+ x1.root.traverse do |node|
41
+ next unless node.element?
42
+
43
+ node_name = node.name
44
+ node_x2 = x2.at_xpath(node.path)
45
+
46
+ if node_x2.nil?
47
+ xml.delete do
48
+ xml.send(node_name, node.attributes)
49
+ end
50
+ elsif node_x2 != node
51
+ xml.change do
52
+ xml.send(node_name, node.attributes)
53
+ end
54
+ end
55
+ end
56
+
57
+ x2.root.traverse do |node|
58
+ next unless node.element?
59
+
60
+ node_name = node.name
61
+ node_x1 = x1.at_xpath(node.path)
62
+
63
+ xml.add do
64
+ xml.send(node_name, node.attributes) if node_x1.nil?
65
+ end
43
66
  end
44
67
  end
45
68
  end
data/lib/pwn/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PWN
4
- VERSION = '0.4.695'
4
+ VERSION = '0.4.696'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.695
4
+ version: 0.4.696
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.