Issue #3208 has been updated by HD Moore.


Example trigger:

# svn co https://metasploit.com/svn/framework3/trunk msf3/
# cd msf3/
# ruby msfrpcd -P test
[*] XMLRPC starting on 0.0.0.0:55553 (SSL):Basic...
[*] XMLRPC initializing...
[*] XMLRPC backgrounding...

/home/projects/metasploit/framework3/trunk/data/msfweb/vendor/rails/activesupport/lib/active_support/core_ext/string/output_safety.rb:25:in `+': can't convert Symbol into String (TypeError)
	from /home/projects/metasploit/framework3/trunk/data/msfweb/vendor/rails/activesupport/lib/active_support/core_ext/string/output_safety.rb:25:in `add_with_safety'
	from /home/hdm/.rvm/ruby-1.9.1-head/lib/ruby/1.9.1/xmlrpc/utils.rb:135:in `block in get_methods'
	from /home/hdm/.rvm/ruby-1.9.1-head/lib/ruby/1.9.1/xmlrpc/utils.rb:134:in `collect'
	from /home/hdm/.rvm/ruby-1.9.1-head/lib/ruby/1.9.1/xmlrpc/utils.rb:134:in `get_methods'
	from /home/hdm/.rvm/ruby-1.9.1-head/lib/ruby/1.9.1/xmlrpc/server.rb:195:in `add_handler'
	from /home/projects/metasploit/framework3/trunk/plugins/xmlrpc.rb:100:in `run'
	from msfrpcd:94:in `<main>'


This is a fairly typical XMLRPC implementation, the source can be seen at:
https://metasploit.com/svn/framework3/trunk/lib/msf/core/rpc/service.rb

The patch:


--- /home/hdm/.rvm/ruby-1.9.1-head/lib/ruby/1.9.1/xmlrpc/utils.rb	2010-04-27 11:45:29.709063880 -0700
+++ /home/hdm/.rvm/ruby-1.9.1-head/lib/ruby/1.9.1/xmlrpc/utils.rb.new	2010-04-27 11:45:05.818745153 -0700
@@ -112,7 +112,7 @@
     def get_methods(obj, delim=".")
       prefix = @prefix + delim
       @methods.collect { |name, meth, sig, help|
-        [prefix + name, obj.method(meth).to_proc, sig, help]
+        [prefix + name.to_s, obj.method(meth).to_proc, sig, help]
       }
     end
 
@@ -132,7 +132,7 @@
     def get_methods(obj, delim=".")
       prefix = @prefix + delim
       obj.class.public_instance_methods(false).collect { |name|
-        [prefix + name, obj.method(name).to_proc, nil, nil]
+        [prefix + name.to_s, obj.method(name).to_proc, nil, nil]
       }
     end
   end

----------------------------------------
http://redmine.ruby-lang.org/issues/show/3208

----------------------------------------
http://redmine.ruby-lang.org