excavate 0.2.2 → 0.2.3

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: 34a72a8ae6eb56395e68cf385d8714d9e6c2aa82245353c2c27bb5cb163d6e2a
4
- data.tar.gz: afd30ada69cad61e75e291281f25bed671c3445c9d625db4593a2ee2ea64bf02
3
+ metadata.gz: f075e9cc9f1e097abd937e9788c119aa19016fb12e04db6d2848b76343ecb16a
4
+ data.tar.gz: 549ab0c2572a205f3eaa95715d203741700942361cdb545ea638e7dbb8a7489e
5
5
  SHA512:
6
- metadata.gz: 345129ddad35de7619aef4b1538ae0fec8b88a64baa45fca4a3e8578067026019614bef3c08ebbd81ef916ef8ba58966cde4cd89cc0afdb3337e2198e09fdafc
7
- data.tar.gz: f829b60851340bf8ff5c881a9e0b9fea7daafdfdceac303e499fba08f2be076df5ffb4f4c0a85f0d072d862d3443298eeddc338df0326b3dbf5f582204685fc8
6
+ metadata.gz: 606fa4dda709f925d779145e4b53b09a310c7cfa98d75cf992e2421eab916acccd1e48c54ae1516509c02ff350c33a54487181842260093d29e8bb70c7b039c7
7
+ data.tar.gz: 4a4a4ab4d2eb48f76af71b8e1378308fc830de06ed7299339995cac94f90438f7d035b30c73646099ad2d8412a7e04441b72794378953eb94e5d5852f2fb27b9
data/excavate.gemspec CHANGED
@@ -27,7 +27,6 @@ Gem::Specification.new do |spec|
27
27
  spec.require_paths = ["lib"]
28
28
 
29
29
  spec.add_runtime_dependency "arr-pm", "~> 0.0"
30
- spec.add_runtime_dependency "ffi-libarchive-binary", "~> 0.0"
31
30
  spec.add_runtime_dependency "libmspack", "~> 0.1"
32
31
  spec.add_runtime_dependency "ruby-ole", "~> 1.0"
33
32
  spec.add_runtime_dependency "rubyzip", "~> 2.3"
@@ -7,7 +7,6 @@ module Excavate
7
7
  "msi" => Extractors::OleExtractor,
8
8
  "rpm" => Extractors::RpmExtractor,
9
9
  "tar" => Extractors::TarExtractor,
10
- "pkg" => Extractors::XarExtractor,
11
10
  "zip" => Extractors::ZipExtractor }.freeze
12
11
 
13
12
  def initialize(archive)
@@ -6,5 +6,4 @@ require_relative "extractors/ole_extractor"
6
6
  require_relative "extractors/rpm_extractor"
7
7
  require_relative "extractors/seven_zip_extractor"
8
8
  require_relative "extractors/tar_extractor"
9
- require_relative "extractors/xar_extractor"
10
9
  require_relative "extractors/zip_extractor"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Excavate
4
- VERSION = "0.2.2"
4
+ VERSION = "0.2.3"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: excavate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-03-31 00:00:00.000000000 Z
11
+ date: 2021-04-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: arr-pm
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0.0'
27
- - !ruby/object:Gem::Dependency
28
- name: ffi-libarchive-binary
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '0.0'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '0.0'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: libmspack
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -141,7 +127,6 @@ files:
141
127
  - lib/excavate/extractors/rpm_extractor.rb
142
128
  - lib/excavate/extractors/seven_zip_extractor.rb
143
129
  - lib/excavate/extractors/tar_extractor.rb
144
- - lib/excavate/extractors/xar_extractor.rb
145
130
  - lib/excavate/extractors/zip_extractor.rb
146
131
  - lib/excavate/file_magic.rb
147
132
  - lib/excavate/utils.rb
@@ -1,35 +0,0 @@
1
- require "ffi-libarchive-binary"
2
-
3
- module Excavate
4
- module Extractors
5
- class XarExtractor < Extractor
6
- def extract(target)
7
- Dir.chdir(target) do
8
- extract_with_libarchive
9
- rename_payload(target)
10
- end
11
- end
12
-
13
- private
14
-
15
- def extract_with_libarchive
16
- flags = ::Archive::EXTRACT_PERM
17
- reader = ::Archive::Reader.open_filename(@archive)
18
-
19
- reader.each_entry do |entry|
20
- reader.extract(entry, flags.to_i)
21
- end
22
-
23
- reader.close
24
- end
25
-
26
- def rename_payload(target)
27
- Dir.glob(File.join(target, "**", "Payload")).each do |file|
28
- next unless File.file?(file)
29
-
30
- FileUtils.mv(file, "#{file}.cpio.gz")
31
- end
32
- end
33
- end
34
- end
35
- end