Skip to content

Commit 94f8577

Browse files
authored
Merge pull request #285 from cjmartian/fix-vulns
Escape lengthy regex, use File instead of IO
2 parents 6d91c79 + 8f57423 commit 94f8577

File tree

3 files changed

+7
-1
lines changed

3 files changed

+7
-1
lines changed

lib/octocatalog-diff/catalog-diff/display/text.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -307,6 +307,9 @@ def self.adjust_position_of_plus_minus(string_in)
307307
# @param string_in [String] Input string, which might contain trailing whitespace
308308
# @return [String] Modified string
309309
def self.make_trailing_whitespace_visible(string_in)
310+
if string_in.length > 1000
311+
raise ArgumentError, "Input string too long"
312+
end
310313
return string_in unless string_in =~ /\A((?:.|\n)*?)(\s+)(\e\[0m)?\Z/
311314
beginning = Regexp.last_match(1)
312315
trailing_space = Regexp.last_match(2)

lib/octocatalog-diff/catalog-util/builddir.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,9 @@ def install_fact_file(logger, options)
155155
elsif options[:fact_file]
156156
raise Errno::ENOENT, "Fact file #{options[:fact_file]} does not exist" unless File.file?(options[:fact_file])
157157
fact_file_opts = { fact_file_string: File.read(options[:fact_file]) }
158+
if options[:fact_file].length > 1000
159+
raise ArgumentError, "Input too long"
160+
end
158161
fact_file_opts[:backend] = Regexp.last_match(1).to_sym if options[:fact_file] =~ /.*\.(\w+)$/
159162
OctocatalogDiff::Facts.new(fact_file_opts)
160163
else

rake/doc.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ def file_content(filename)
2121
@fc ||= {}
2222
@fc[filename] ||= begin
2323
comments = []
24-
IO.readlines(filename).each do |line|
24+
File.readlines(filename).each do |line|
2525
next if line =~ /^#\s*@/
2626
next if line.strip == '# frozen_string_literal: true'
2727
if line =~ /^#(.+)/

0 commit comments

Comments
 (0)