Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 61727 Details for
Bug 96784
dev-lang/ruby XMLRPC Server Arbitrary Command Execution (CAN-2005-1992)
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
ruby-1.8.2-client.diff
ruby-1.8.2-client.diff (text/plain), 2.83 KB, created by
Rob Cakebread (RETIRED)
on 2005-06-22 09:37:18 UTC
(
hide
)
Description:
ruby-1.8.2-client.diff
Filename:
MIME Type:
Creator:
Rob Cakebread (RETIRED)
Created:
2005-06-22 09:37:18 UTC
Size:
2.83 KB
patch
obsolete
>--- lib/xmlrpc/client.rb.org 2003-11-17 13:30:31.000000000 -0800 >+++ lib/xmlrpc/client.rb 2005-06-19 08:47:31.000000000 -0700 >@@ -69,6 +69,7 @@ > Parameter ((|timeout|)) is the time to wait for a XML-RPC response, defaults to 30. > > --- XMLRPC::Client.new2( uri, proxy=nil, timeout=nil) >+--- XMLRPC::Client.new_from_uri( uri, proxy=nil, timeout=nil) > : uri > URI specifying protocol (http or https), host, port, path, user and password. > Example: https://user:password@host:port/path >@@ -80,6 +81,7 @@ > Defaults to 30. > > --- XMLRPC::Client.new3( hash={} ) >+--- XMLRPC::Client.new_from_hash( hash={} ) > Parameter ((|hash|)) has following case-insensitive keys: > * host > * path >@@ -135,6 +137,8 @@ > (({XMLRPC::FaultException})). > Both are explained in ((<call|XMLRPC::Client#call>)). > >+ Simple to remember: The "2" in "call2" denotes the number of values it returns. >+ > --- XMLRPC::Client#multicall( *methods ) > You can use this method to execute several methods on a XMLRPC server which supports > the multi-call extension. >@@ -264,7 +268,7 @@ > > > = History >- $Id: client.rb,v 1.2 2003/11/17 21:30:31 mneumann Exp $ >+ $Id: client.rb,v 1.4 2005/06/19 15:47:31 mneumann Exp $ > > =end > >@@ -331,7 +335,9 @@ > end > > >- def self.new2(uri, proxy=nil, timeout=nil) >+ class << self >+ >+ def new2(uri, proxy=nil, timeout=nil) > if match = /^([^:]+):\/\/(([^@]+)@)?([^\/]+)(\/.*)?$/.match(uri) > proto = match[1] > user, passwd = (match[3] || "").split(":") >@@ -350,9 +356,10 @@ > > self.new(host, path, port, proxy_host, proxy_port, user, passwd, (proto == "https"), timeout) > end >- > >- def self.new3(hash={}) >+ alias new_from_uri new2 >+ >+ def new3(hash={}) > > # convert all keys into lowercase strings > h = {} >@@ -362,6 +369,10 @@ > h['use_ssl'], h['timeout']) > end > >+ alias new_from_hash new3 >+ >+ end >+ > > # Attribute Accessors ------------------------------------------------------------------- > >@@ -457,19 +468,19 @@ > > # Proxy generating methods ------------------------------------------ > >- def proxy(prefix, *args) >+ def proxy(prefix=nil, *args) > Proxy.new(self, prefix, args, :call) > end > >- def proxy2(prefix, *args) >+ def proxy2(prefix=nil, *args) > Proxy.new(self, prefix, args, :call2) > end > >- def proxy_async(prefix, *args) >+ def proxy_async(prefix=nil, *args) > Proxy.new(self, prefix, args, :call_async) > end > >- def proxy2_async(prefix, *args) >+ def proxy2_async(prefix=nil, *args) > Proxy.new(self, prefix, args, :call2_async) > end > >@@ -586,7 +597,7 @@ > > def initialize(server, prefix, args=[], meth=:call, delim=".") > @server = server >- @prefix = prefix + delim >+ @prefix = prefix ? prefix + delim : "" > @args = args > @meth = meth > end
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 96784
: 61727 |
61728