Linux iad1-shared-b7-18 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
Apache
: 67.205.6.31 | : 216.73.216.47
Cant Read [ /etc/named.conf ]
8.2.29
fernandoquevedo
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
lib /
ruby /
vendor_ruby /
[ HOME SHELL ]
Name
Size
Permission
Action
3.0.0
[ DIR ]
drwxr-xr-x
action_dispatch
[ DIR ]
drwxr-xr-x
active_support
[ DIR ]
drwxr-xr-x
bootsnap
[ DIR ]
drwxr-xr-x
childprocess
[ DIR ]
drwxr-xr-x
coffee_script
[ DIR ]
drwxr-xr-x
columnize
[ DIR ]
drwxr-xr-x
domain_name
[ DIR ]
drwxr-xr-x
em
[ DIR ]
drwxr-xr-x
erubis
[ DIR ]
drwxr-xr-x
execjs
[ DIR ]
drwxr-xr-x
generators
[ DIR ]
drwxr-xr-x
hike
[ DIR ]
drwxr-xr-x
http
[ DIR ]
drwxr-xr-x
jbuilder
[ DIR ]
drwxr-xr-x
json
[ DIR ]
drwxr-xr-x
mail
[ DIR ]
drwxr-xr-x
method_source
[ DIR ]
drwxr-xr-x
moneta
[ DIR ]
drwxr-xr-x
multi_json
[ DIR ]
drwxr-xr-x
mysql2
[ DIR ]
drwxr-xr-x
net
[ DIR ]
drwxr-xr-x
openid
[ DIR ]
drwxr-xr-x
phusion_passenger
[ DIR ]
drwxr-xr-x
pkg-config
[ DIR ]
drwxr-xr-x
racc
[ DIR ]
drwxr-xr-x
rack
[ DIR ]
drwxr-xr-x
rails
[ DIR ]
drwxr-xr-x
rake
[ DIR ]
drwxr-xr-x
rb-inotify
[ DIR ]
drwxr-xr-x
rmagick
[ DIR ]
drwxr-xr-x
rubygems
[ DIR ]
drwxr-xr-x
rvg
[ DIR ]
drwxr-xr-x
sass
[ DIR ]
drwxr-xr-x
selenium
[ DIR ]
drwxr-xr-x
spring
[ DIR ]
drwxr-xr-x
sprockets
[ DIR ]
drwxr-xr-x
sqlite3
[ DIR ]
drwxr-xr-x
tilt
[ DIR ]
drwxr-xr-x
uglifier
[ DIR ]
drwxr-xr-x
unf
[ DIR ]
drwxr-xr-x
unf_ext
[ DIR ]
drwxr-xr-x
uuidtools
[ DIR ]
drwxr-xr-x
webrobots
[ DIR ]
drwxr-xr-x
websocket
[ DIR ]
drwxr-xr-x
xmlrpc
[ DIR ]
drwxr-xr-x
xpath
[ DIR ]
drwxr-xr-x
RMagick.rb
100
B
-rw-r--r--
bootsnap.rb
3.94
KB
-rw-r--r--
childprocess.rb
4.84
KB
-rw-r--r--
coffee-script.rb
24
B
-rw-r--r--
coffee_script.rb
1.85
KB
-rw-r--r--
columnize.rb
4.59
KB
-rw-r--r--
domain_name.rb
7.33
KB
-rw-r--r--
erubis.rb
1.71
KB
-rw-r--r--
eventmachine.rb
60.52
KB
-rw-r--r--
execjs.rb
108
B
-rw-r--r--
hike.rb
263
B
-rw-r--r--
hmac-md5.rb
204
B
-rw-r--r--
hmac-rmd160.rb
213
B
-rw-r--r--
hmac-sha1.rb
207
B
-rw-r--r--
hmac-sha2.rb
529
B
-rw-r--r--
hmac.rb
2.86
KB
-rw-r--r--
http-cookie.rb
22
B
-rw-r--r--
jbuilder.rb
8.47
KB
-rw-r--r--
jeventmachine.rb
8.34
KB
-rw-r--r--
json.rb
19.3
KB
-rw-r--r--
mail.rb
1.87
KB
-rw-r--r--
method_source.rb
4.31
KB
-rw-r--r--
moneta.rb
6.92
KB
-rw-r--r--
multi_json.rb
4.15
KB
-rw-r--r--
mysql2.rb
2.84
KB
-rw-r--r--
net-telnet.rb
21
B
-rw-r--r--
net_http_hacked.rb
2.41
KB
-rw-r--r--
openid.rb
675
B
-rw-r--r--
phusion_passenger.rb
11.69
KB
-rw-r--r--
pkg-config.rb
16.38
KB
-rw-r--r--
racc.rb
137
B
-rw-r--r--
rack-proxy.rb
20
B
-rw-r--r--
rails-deprecated_sanitizer.rb
37
B
-rw-r--r--
rb-inotify.rb
461
B
-rw-r--r--
rmagick.rb
65
B
-rw-r--r--
rmagick_internal.rb
57.88
KB
-rw-r--r--
ruby-openid.rb
17
B
-rw-r--r--
ruby_hmac.rb
52
B
-rw-r--r--
rubygems.rb
36.48
KB
-rw-r--r--
sass-rails.rb
22
B
-rw-r--r--
selenium-webdriver.rb
848
B
-rw-r--r--
sprockets.rb
6.5
KB
-rw-r--r--
sqlite3.rb
361
B
-rw-r--r--
systemu.rb
8.47
KB
-rw-r--r--
tilt.rb
6.11
KB
-rw-r--r--
uglifier.rb
10.89
KB
-rw-r--r--
unf.rb
659
B
-rw-r--r--
unf_ext.rb
109
B
-rw-r--r--
uuidtools.rb
24.2
KB
-rw-r--r--
webrobots.rb
5.62
KB
-rw-r--r--
xmlrpc.rb
7.99
KB
-rw-r--r--
xpath.rb
271
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : xmlrpc.rb
# frozen_string_literal: false # == Author and Copyright # # Copyright (C) 2001-2004 by Michael Neumann (mailto:mneumann@ntecs.de) # # Released under the same term of license as Ruby. # # == Overview # # XMLRPC is a lightweight protocol that enables remote procedure calls over # HTTP. It is defined at http://www.xmlrpc.com. # # XMLRPC allows you to create simple distributed computing solutions that span # computer languages. Its distinctive feature is its simplicity compared to # other approaches like SOAP and CORBA. # # The Ruby standard library package 'xmlrpc' enables you to create a server that # implements remote procedures and a client that calls them. Very little code # is required to achieve either of these. # # == Example # # Try the following code. It calls a standard demonstration remote procedure. # # require 'xmlrpc/client' # require 'pp' # # server = XMLRPC::Client.new2("http://xmlrpc-c.sourceforge.net/api/sample.php") # result = server.call("sample.sumAndDifference", 5, 3) # pp result # # == Documentation # # See http://www.ntecs.de/ruby/xmlrpc4r/. There is plenty of detail there to # use the client and implement a server. # # == Features of XMLRPC for Ruby # # * Extensions # * Introspection # * multiCall # * optionally nil values and integers larger than 32 Bit # # * Server # * Standalone XML-RPC server # * CGI-based (works with FastCGI) # * Apache mod_ruby server # * WEBrick servlet # # * Client # * synchronous/asynchronous calls # * Basic HTTP-401 Authentication # * HTTPS protocol (SSL) # # * Parsers # * REXML (XMLParser::REXMLStreamParser) # * Not compiled (pure ruby) # * See ruby standard library # * libxml (LibXMLStreamParser) # * Compiled # * See https://rubygems.org/gems/libxml-ruby/ # # * General # * possible to choose between XMLParser module (Expat wrapper) and REXML (pure Ruby) parsers # * Marshalling Ruby objects to Hashes and reconstruct them later from a Hash # * SandStorm component architecture XMLRPC::Client interface # # == Howto # # === Client # # require "xmlrpc/client" # # # Make an object to represent the XML-RPC server. # server = XMLRPC::Client.new( "xmlrpc-c.sourceforge.net", "/api/sample.php") # # # Call the remote server and get our result # result = server.call("sample.sumAndDifference", 5, 3) # # sum = result["sum"] # difference = result["difference"] # # puts "Sum: #{sum}, Difference: #{difference}" # # === XMLRPC::Client with XML-RPC fault-structure handling # # There are two possible ways, of handling a fault-structure: # # ==== by catching a XMLRPC::FaultException exception # # require "xmlrpc/client" # # # Make an object to represent the XML-RPC server. # server = XMLRPC::Client.new( "xmlrpc-c.sourceforge.net", "/api/sample.php") # # begin # # Call the remote server and get our result # result = server.call("sample.sumAndDifference", 5, 3) # # sum = result["sum"] # difference = result["difference"] # # puts "Sum: #{sum}, Difference: #{difference}" # # rescue XMLRPC::FaultException => e # puts "Error: " # puts e.faultCode # puts e.faultString # end # # ==== by calling "call2" which returns a boolean # # require "xmlrpc/client" # # # Make an object to represent the XML-RPC server. # server = XMLRPC::Client.new( "xmlrpc-c.sourceforge.net", "/api/sample.php") # # # Call the remote server and get our result # ok, result = server.call2("sample.sumAndDifference", 5, 3) # # if ok # sum = result["sum"] # difference = result["difference"] # # puts "Sum: #{sum}, Difference: #{difference}" # else # puts "Error: " # puts result.faultCode # puts result.faultString # end # # === Using XMLRPC::Client::Proxy # # You can create a Proxy object onto which you can call methods. This way it # looks nicer. Both forms, _call_ and _call2_ are supported through _proxy_ and # _proxy2_. You can additionally give arguments to the Proxy, which will be # given to each XML-RPC call using that Proxy. # # require "xmlrpc/client" # # # Make an object to represent the XML-RPC server. # server = XMLRPC::Client.new( "xmlrpc-c.sourceforge.net", "/api/sample.php") # # # Create a Proxy object # sample = server.proxy("sample") # # # Call the remote server and get our result # result = sample.sumAndDifference(5,3) # # sum = result["sum"] # difference = result["difference"] # # puts "Sum: #{sum}, Difference: #{difference}" # # === CGI-based server using XMLRPC::CGIServer # # There are also two ways to define handler, the first is # like C/PHP, the second like Java, of course both ways # can be mixed: # # ==== C/PHP-like (handler functions) # # require "xmlrpc/server" # # s = XMLRPC::CGIServer.new # # s.add_handler("sample.sumAndDifference") do |a,b| # { "sum" => a + b, "difference" => a - b } # end # # s.serve # # ==== Java-like (handler classes) # # require "xmlrpc/server" # # s = XMLRPC::CGIServer.new # # class MyHandler # def sumAndDifference(a, b) # { "sum" => a + b, "difference" => a - b } # end # end # # # NOTE: Security Hole (read below)!!! # s.add_handler("sample", MyHandler.new) # s.serve # # # To return a fault-structure you have to raise an XMLRPC::FaultException e.g.: # # raise XMLRPC::FaultException.new(3, "division by Zero") # # ===== Security Note # # From Brian Candler: # # Above code sample has an extremely nasty security hole, in that you can now call # any method of 'MyHandler' remotely, including methods inherited from Object # and Kernel! For example, in the client code, you can use # # puts server.call("sample.send","`","ls") # # (backtick being the method name for running system processes). Needless to # say, 'ls' can be replaced with something else. # # The version which binds proc objects (or the version presented below in the next section) # doesn't have this problem, but people may be tempted to use the second version because it's # so nice and 'Rubyesque'. I think it needs a big red disclaimer. # # # From Michael: # # A solution is to undef insecure methods or to use # XMLRPC::Service::PublicInstanceMethodsInterface as shown below: # # class MyHandler # def sumAndDifference(a, b) # { "sum" => a + b, "difference" => a - b } # end # end # # # ... server initialization ... # # s.add_handler(XMLRPC::iPIMethods("sample"), MyHandler.new) # # # ... # # This adds only public instance methods explicitly declared in class MyHandler # (and not those inherited from any other class). # # ==== With interface declarations # # Code sample from the book Ruby Developer's Guide: # # require "xmlrpc/server" # # class Num # INTERFACE = XMLRPC::interface("num") { # meth 'int add(int, int)', 'Add two numbers', 'add' # meth 'int div(int, int)', 'Divide two numbers' # } # # def add(a, b) a + b end # def div(a, b) a / b end # end # # # s = XMLRPC::CGIServer.new # s.add_handler(Num::INTERFACE, Num.new) # s.serve # # === Standalone XMLRPC::Server # # Same as CGI-based server, the only difference being # # server = XMLRPC::CGIServer.new # # must be changed to # # server = XMLRPC::Server.new(8080) # # if you want a server listening on port 8080. # The rest is the same. # # === Choosing a different XMLParser or XMLWriter # # The examples above all use the default parser (which is now since 1.8 # XMLParser::REXMLStreamParser) and a default XMLRPC::XMLWriter. # If you want to use a different XMLParser, then you have to call the # ParserWriterChooseMixin#set_parser method of XMLRPC::Client instances # or instances of subclasses of XMLRPC::BasicServer or by editing # xmlrpc/config.rb. # # XMLRPC::Client Example: # # # ... # server = XMLRPC::Client.new( "xmlrpc-c.sourceforge.net", "/api/sample.php") # server.set_parser(XMLRPC::XMLParser::XMLParser.new) # # ... # # XMLRPC::Server Example: # # # ... # s = XMLRPC::CGIServer.new # s.set_parser(XMLRPC::XMLParser::XMLParser.new) # # ... # # # You can change the XML-writer by calling method ParserWriterChooseMixin#set_writer. module XMLRPC VERSION = "0.3.2" end
Close