Files
codeql/ruby/ql/src/experimental/decompression-api/examples/decompress.rb
2022-06-23 09:05:32 +00:00

17 lines
410 B
Ruby

class UsersController < ActionController::Base
def example_zlib_inflate
MAX_ALLOWED_CHUNK_SIZE = 256
MAX_ALLOWED_TOTAL_SIZE = 1024
user_data = params[:data]
output = []
outsize = 0
Zlib::Inflate.inflate(user_data) { |chunk|
outsize += chunk.size
if chunk.size < MAX_ALLOWED_CHUNK_SIZE && outsize < MAX_ALLOWED_TOTAL_SIZE
output << chunk
end
}
end
end