Linux lorencats.com 5.10.103-v7l+ #1529 SMP Tue Mar 8 12:24:00 GMT 2022 armv7l
Apache/2.4.59 (Raspbian)
: 10.0.0.29 | : 216.73.216.10
Cant Read [ /etc/named.conf ]
7.3.31-1~deb10u7
root
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
/
usr /
lib /
ruby /
vendor_ruby /
[ HOME SHELL ]
Name
Size
Permission
Action
2.5.0
[ DIR ]
drwxr-xr-x
Ascii85
[ DIR ]
drwxr-xr-x
atomic
[ DIR ]
drwxr-xr-x
coderay
[ DIR ]
drwxr-xr-x
concurrent
[ DIR ]
drwxr-xr-x
did_you_mean
[ DIR ]
drwxr-xr-x
ffi
[ DIR ]
drwxr-xr-x
hamster
[ DIR ]
drwxr-xr-x
hashery
[ DIR ]
drwxr-xr-x
hoe
[ DIR ]
drwxr-xr-x
i18n
[ DIR ]
drwxr-xr-x
kramdown
[ DIR ]
drwxr-xr-x
memoist
[ DIR ]
drwxr-xr-x
minitest
[ DIR ]
drwxr-xr-x
multi_json
[ DIR ]
drwxr-xr-x
net
[ DIR ]
drwxr-xr-x
oj
[ DIR ]
drwxr-xr-x
pdf
[ DIR ]
drwxr-xr-x
power_assert
[ DIR ]
drwxr-xr-x
prawn
[ DIR ]
drwxr-xr-x
rake
[ DIR ]
drwxr-xr-x
rouge
[ DIR ]
drwxr-xr-x
rubygems
[ DIR ]
drwxr-xr-x
rugged
[ DIR ]
drwxr-xr-x
stringex
[ DIR ]
drwxr-xr-x
test
[ DIR ]
drwxr-xr-x
thread_safe
[ DIR ]
drwxr-xr-x
ttfunk
[ DIR ]
drwxr-xr-x
tzinfo
[ DIR ]
drwxr-xr-x
wavefile
[ DIR ]
drwxr-xr-x
xmlrpc
[ DIR ]
drwxr-xr-x
afm.rb
4.37
KB
-rw-r--r--
ascii85.rb
5.74
KB
-rw-r--r--
atomic.rb
948
B
-rw-r--r--
coderay.rb
8.92
KB
-rw-r--r--
concurrent-edge.rb
509
B
-rw-r--r--
concurrent.rb
5.46
KB
-rw-r--r--
did_you_mean.rb
1.53
KB
-rw-r--r--
ffi.rb
628
B
-rw-r--r--
hamster.rb
312
B
-rw-r--r--
hashery.rb
543
B
-rw-r--r--
i18n.rb
13.54
KB
-rw-r--r--
kramdown.rb
192
B
-rw-r--r--
memoist.rb
6.48
KB
-rw-r--r--
minitest.rb
22.3
KB
-rw-r--r--
multi_json.rb
4.15
KB
-rw-r--r--
net-telnet.rb
21
B
-rw-r--r--
oj.rb
348
B
-rw-r--r--
pdf-reader.rb
38
B
-rw-r--r--
power_assert.rb
2.69
KB
-rw-r--r--
prawn.rb
2.23
KB
-rw-r--r--
rake.rb
2.11
KB
-rw-r--r--
rc4.rb
822
B
-rw-r--r--
rouge.rb
2.81
KB
-rw-r--r--
rugged.rb
723
B
-rw-r--r--
stringex.rb
369
B
-rw-r--r--
stringex_lite.rb
405
B
-rw-r--r--
test-unit.rb
1.17
KB
-rw-r--r--
thread_safe.rb
1.88
KB
-rw-r--r--
ttfunk.rb
3.25
KB
-rw-r--r--
tzinfo.rb
1.02
KB
-rw-r--r--
wavefile.rb
1.09
KB
-rw-r--r--
xmlrpc.rb
7.99
KB
-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.0" end
Close