Linux premium155.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64
LiteSpeed
: 162.0.235.200 | : 18.119.141.115
Cant Read [ /etc/named.conf ]
7.4.33
varifktc
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
opt /
alt /
ruby27 /
share /
rubygems /
rubygems /
[ HOME SHELL ]
Name
Size
Permission
Action
commands
[ DIR ]
drwxr-xr-x
core_ext
[ DIR ]
drwxr-xr-x
defaults
[ DIR ]
drwxr-xr-x
ext
[ DIR ]
drwxr-xr-x
package
[ DIR ]
drwxr-xr-x
request
[ DIR ]
drwxr-xr-x
request_set
[ DIR ]
drwxr-xr-x
resolver
[ DIR ]
drwxr-xr-x
security
[ DIR ]
drwxr-xr-x
source
[ DIR ]
drwxr-xr-x
ssl_certs
[ DIR ]
drwxr-xr-x
util
[ DIR ]
drwxr-xr-x
available_set.rb
3.02
KB
-rw-r--r--
basic_specification.rb
7.62
KB
-rw-r--r--
bundler_version_finder.rb
2.97
KB
-rw-r--r--
command.rb
15.79
KB
-rw-r--r--
command_manager.rb
4.99
KB
-rw-r--r--
compatibility.rb
1022
B
-rw-r--r--
config_file.rb
12.69
KB
-rw-r--r--
defaults.rb
4.76
KB
-rw-r--r--
dependency.rb
8.64
KB
-rw-r--r--
dependency_installer.rb
12
KB
-rw-r--r--
dependency_list.rb
5.54
KB
-rw-r--r--
deprecate.rb
1.75
KB
-rw-r--r--
doctor.rb
3.06
KB
-rw-r--r--
errors.rb
4.64
KB
-rw-r--r--
exceptions.rb
6.49
KB
-rw-r--r--
ext.rb
460
B
-rw-r--r--
gem_runner.rb
2.18
KB
-rw-r--r--
gemcutter_utilities.rb
5.16
KB
-rw-r--r--
indexer.rb
11.29
KB
-rw-r--r--
install_default_message.rb
336
B
-rw-r--r--
install_message.rb
310
B
-rw-r--r--
install_update_options.rb
6.26
KB
-rw-r--r--
installer.rb
26.62
KB
-rw-r--r--
installer_test_case.rb
4.8
KB
-rw-r--r--
local_remote_options.rb
3.53
KB
-rw-r--r--
mock_gem_ui.rb
1.38
KB
-rw-r--r--
name_tuple.rb
2.42
KB
-rw-r--r--
package.rb
17.99
KB
-rw-r--r--
package_task.rb
3.8
KB
-rw-r--r--
path_support.rb
1.88
KB
-rw-r--r--
platform.rb
6.25
KB
-rw-r--r--
psych_additions.rb
300
B
-rw-r--r--
psych_tree.rb
796
B
-rw-r--r--
rdoc.rb
524
B
-rw-r--r--
remote_fetcher.rb
9.48
KB
-rw-r--r--
request.rb
8.7
KB
-rw-r--r--
request_set.rb
11.94
KB
-rw-r--r--
requirement.rb
7.15
KB
-rw-r--r--
resolver.rb
9.46
KB
-rw-r--r--
s3_uri_signer.rb
5.93
KB
-rw-r--r--
safe_yaml.rb
1.55
KB
-rw-r--r--
security.rb
21.24
KB
-rw-r--r--
security_option.rb
1.03
KB
-rw-r--r--
server.rb
22.72
KB
-rw-r--r--
source.rb
5.38
KB
-rw-r--r--
source_list.rb
2.55
KB
-rw-r--r--
source_local.rb
274
B
-rw-r--r--
source_specific_file.rb
272
B
-rw-r--r--
spec_fetcher.rb
6.3
KB
-rw-r--r--
specification.rb
70.78
KB
-rw-r--r--
specification_policy.rb
11.67
KB
-rw-r--r--
stub_specification.rb
4.74
KB
-rw-r--r--
syck_hack.rb
2.12
KB
-rw-r--r--
test_case.rb
39.92
KB
-rw-r--r--
test_utilities.rb
8.84
KB
-rw-r--r--
text.rb
1.85
KB
-rw-r--r--
uninstaller.rb
8.83
KB
-rw-r--r--
uri_formatter.rb
778
B
-rw-r--r--
uri_parser.rb
785
B
-rw-r--r--
uri_parsing.rb
324
B
-rw-r--r--
user_interaction.rb
13.3
KB
-rw-r--r--
util.rb
2.41
KB
-rw-r--r--
validator.rb
3.65
KB
-rw-r--r--
version.rb
12.45
KB
-rw-r--r--
version_option.rb
2.02
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : specification_policy.rb
require 'rubygems/user_interaction' class Gem::SpecificationPolicy include Gem::UserInteraction VALID_NAME_PATTERN = /\A[a-zA-Z0-9\.\-\_]+\z/.freeze # :nodoc: SPECIAL_CHARACTERS = /\A[#{Regexp.escape('.-_')}]+/.freeze # :nodoc: VALID_URI_PATTERN = %r{\Ahttps?:\/\/([^\s:@]+:[^\s:@]*@)?[A-Za-z\d\-]+(\.[A-Za-z\d\-]+)+\.?(:\d{1,5})?([\/?]\S*)?\z}.freeze # :nodoc: METADATA_LINK_KEYS = %w[ bug_tracker_uri changelog_uri documentation_uri homepage_uri mailing_list_uri source_code_uri wiki_uri ].freeze # :nodoc: def initialize(specification) @warnings = 0 @specification = specification end ## # If set to true, run packaging-specific checks, as well. attr_accessor :packaging ## # Checks that the specification contains all required fields, and does a # very basic sanity check. # # Raises InvalidSpecificationException if the spec does not pass the # checks. def validate(strict = false) validate_nil_attributes validate_rubygems_version validate_required_attributes validate_name validate_require_paths @specification.keep_only_files_and_directories validate_non_files validate_self_inclusion_in_files_list validate_specification_version validate_platform validate_array_attributes validate_authors_field validate_metadata validate_licenses validate_permissions validate_lazy_metadata validate_values validate_dependencies validate_removed_attributes if @warnings > 0 if strict error "specification has warnings" else alert_warning help_text end end true end ## # Implementation for Specification#validate_metadata def validate_metadata metadata = @specification.metadata unless Hash === metadata error 'metadata must be a hash' end metadata.each do |key, value| if !key.kind_of?(String) error "metadata keys must be a String" end if key.size > 128 error "metadata key too large (#{key.size} > 128)" end if !value.kind_of?(String) error "metadata values must be a String" end if value.size > 1024 error "metadata value too large (#{value.size} > 1024)" end if METADATA_LINK_KEYS.include? key if value !~ VALID_URI_PATTERN error "metadata['#{key}'] has invalid link: #{value.inspect}" end end end end ## # Implementation for Specification#validate_dependencies def validate_dependencies # :nodoc: # NOTE: see REFACTOR note in Gem::Dependency about types - this might be brittle seen = Gem::Dependency::TYPES.inject({}) { |types, type| types.merge({ type => {}}) } error_messages = [] warning_messages = [] @specification.dependencies.each do |dep| if prev = seen[dep.type][dep.name] error_messages << <<-MESSAGE duplicate dependency on #{dep}, (#{prev.requirement}) use: add_#{dep.type}_dependency '#{dep.name}', '#{dep.requirement}', '#{prev.requirement}' MESSAGE end seen[dep.type][dep.name] = dep prerelease_dep = dep.requirements_list.any? do |req| Gem::Requirement.new(req).prerelease? end warning_messages << "prerelease dependency on #{dep} is not recommended" if prerelease_dep && !@specification.version.prerelease? open_ended = dep.requirement.requirements.all? do |op, version| not version.prerelease? and (op == '>' or op == '>=') end if open_ended op, dep_version = dep.requirement.requirements.first segments = dep_version.segments base = segments.first 2 recommendation = if (op == '>' || op == '>=') && segments == [0] " use a bounded requirement, such as '~> x.y'" else bugfix = if op == '>' ", '> #{dep_version}'" elsif op == '>=' and base != segments ", '>= #{dep_version}'" end " if #{dep.name} is semantically versioned, use:\n" \ " add_#{dep.type}_dependency '#{dep.name}', '~> #{base.join '.'}'#{bugfix}" end warning_messages << ["open-ended dependency on #{dep} is not recommended", recommendation].join("\n") + "\n" end end if error_messages.any? error error_messages.join end if warning_messages.any? warning_messages.each { |warning_message| warning warning_message } end end ## # Issues a warning for each file to be packaged which is world-readable. # # Implementation for Specification#validate_permissions def validate_permissions return if Gem.win_platform? @specification.files.each do |file| next unless File.file?(file) next if File.stat(file).mode & 0444 == 0444 warning "#{file} is not world-readable" end @specification.executables.each do |name| exec = File.join @specification.bindir, name next unless File.file?(exec) next if File.stat(exec).executable? warning "#{exec} is not executable" end end private def validate_nil_attributes nil_attributes = Gem::Specification.non_nil_attributes.select do |attrname| @specification.instance_variable_get("@#{attrname}").nil? end return if nil_attributes.empty? error "#{nil_attributes.join ', '} must not be nil" end def validate_rubygems_version return unless packaging rubygems_version = @specification.rubygems_version return if rubygems_version == Gem::VERSION error "expected RubyGems version #{Gem::VERSION}, was #{rubygems_version}" end def validate_required_attributes Gem::Specification.required_attributes.each do |symbol| unless @specification.send symbol error "missing value for attribute #{symbol}" end end end def validate_name name = @specification.name if !name.is_a?(String) error "invalid value for attribute name: \"#{name.inspect}\" must be a string" elsif name !~ /[a-zA-Z]/ error "invalid value for attribute name: #{name.dump} must include at least one letter" elsif name !~ VALID_NAME_PATTERN error "invalid value for attribute name: #{name.dump} can only include letters, numbers, dashes, and underscores" elsif name =~ SPECIAL_CHARACTERS error "invalid value for attribute name: #{name.dump} can not begin with a period, dash, or underscore" end end def validate_require_paths return unless @specification.raw_require_paths.empty? error 'specification must have at least one require_path' end def validate_non_files return unless packaging non_files = @specification.files.reject {|x| File.file?(x) || File.symlink?(x)} unless non_files.empty? error "[\"#{non_files.join "\", \""}\"] are not files" end end def validate_self_inclusion_in_files_list file_name = @specification.file_name return unless @specification.files.include?(file_name) error "#{@specification.full_name} contains itself (#{file_name}), check your files list" end def validate_specification_version return if @specification.specification_version.is_a?(Integer) error 'specification_version must be an Integer (did you mean version?)' end def validate_platform platform = @specification.platform case platform when Gem::Platform, Gem::Platform::RUBY # ok else error "invalid platform #{platform.inspect}, see Gem::Platform" end end def validate_array_attributes Gem::Specification.array_attributes.each do |field| validate_array_attribute(field) end end def validate_array_attribute(field) val = @specification.send(field) klass = case field when :dependencies then Gem::Dependency else String end unless Array === val and val.all? {|x| x.kind_of?(klass)} raise(Gem::InvalidSpecificationException, "#{field} must be an Array of #{klass}") end end def validate_authors_field return unless @specification.authors.empty? error "authors may not be empty" end def validate_licenses licenses = @specification.licenses licenses.each do |license| if license.length > 64 error "each license must be 64 characters or less" end if !Gem::Licenses.match?(license) suggestions = Gem::Licenses.suggestions(license) message = <<-warning license value '#{license}' is invalid. Use a license identifier from http://spdx.org/licenses or '#{Gem::Licenses::NONSTANDARD}' for a nonstandard license. warning message += "Did you mean #{suggestions.map { |s| "'#{s}'"}.join(', ')}?\n" unless suggestions.nil? warning(message) end end warning <<-warning if licenses.empty? licenses is empty, but is recommended. Use a license identifier from http://spdx.org/licenses or '#{Gem::Licenses::NONSTANDARD}' for a nonstandard license. warning end LAZY = '"FIxxxXME" or "TOxxxDO"'.gsub(/xxx/, '') LAZY_PATTERN = /FI XME|TO DO/x.freeze HOMEPAGE_URI_PATTERN = /\A[a-z][a-z\d+.-]*:/i.freeze def validate_lazy_metadata unless @specification.authors.grep(LAZY_PATTERN).empty? error "#{LAZY} is not an author" end unless Array(@specification.email).grep(LAZY_PATTERN).empty? error "#{LAZY} is not an email" end if @specification.description =~ LAZY_PATTERN error "#{LAZY} is not a description" end if @specification.summary =~ LAZY_PATTERN error "#{LAZY} is not a summary" end homepage = @specification.homepage # Make sure a homepage is valid HTTP/HTTPS URI if homepage and not homepage.empty? require 'uri' begin homepage_uri = URI.parse(homepage) unless [URI::HTTP, URI::HTTPS].member? homepage_uri.class error "\"#{homepage}\" is not a valid HTTP URI" end rescue URI::InvalidURIError error "\"#{homepage}\" is not a valid HTTP URI" end end end def validate_values %w[author homepage summary files].each do |attribute| validate_attribute_present(attribute) end if @specification.description == @specification.summary warning "description and summary are identical" end # TODO: raise at some given date warning "deprecated autorequire specified" if @specification.autorequire @specification.executables.each do |executable| validate_shebang_line_in(executable) end @specification.files.select { |f| File.symlink?(f) }.each do |file| warning "#{file} is a symlink, which is not supported on all platforms" end end def validate_attribute_present(attribute) value = @specification.send attribute warning("no #{attribute} specified") if value.nil? || value.empty? end def validate_shebang_line_in(executable) executable_path = File.join(@specification.bindir, executable) return if File.read(executable_path, 2) == '#!' warning "#{executable_path} is missing #! line" end def validate_removed_attributes # :nodoc: @specification.removed_method_calls.each do |attr| warning("#{attr} is deprecated and ignored. Please remove this from your gemspec to ensure that your gem continues to build in the future.") end end def warning(statement) # :nodoc: @warnings += 1 alert_warning statement end def error(statement) # :nodoc: raise Gem::InvalidSpecificationException, statement ensure alert_warning help_text end def help_text # :nodoc: "See https://guides.rubygems.org/specification-reference/ for help" end end
Close