pwn 0.4.695 → 0.4.696

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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.