Method: Rex::Zip::Archive#add_r
- Defined in:
- lib/rex/zip/archive.rb
#add_r(dir) ⇒ Object
Recursively adds a directory of files into the archive.
23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/rex/zip/archive.rb', line 23 def add_r(dir) path = File.dirname(dir) Dir[File.join(dir, "**", "**")].each do |file| relative = file.sub(/^#{path.chomp('/')}\//, '') if File.directory?(file) @entries << Entry.new(relative.chomp('/') + '/', '', @compmeth, nil, EFA_ISDIR, nil, nil) else contents = File.read(file, :mode => 'rb') @entries << Entry.new(relative, contents, @compmeth, nil, nil, nil, nil) end end end |