From 5d5a886b3401d4b229485014186b917c9bb1b530 Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Wed, 1 Oct 2008 18:57:37 +0000 Subject: remove these old ruby grid servers as they are really old (like a year old). A project like this is welcomed to come back on opensim forge. --- share/ruby/README | 14 ----- share/ruby/aserv.rb | 35 ------------- share/ruby/config.rb | 38 -------------- share/ruby/gridserv.rb | 69 ------------------------- share/ruby/userserv.rb | 135 ------------------------------------------------- 5 files changed, 291 deletions(-) delete mode 100644 share/ruby/README delete mode 100755 share/ruby/aserv.rb delete mode 100755 share/ruby/config.rb delete mode 100755 share/ruby/gridserv.rb delete mode 100755 share/ruby/userserv.rb (limited to 'share/ruby') diff --git a/share/ruby/README b/share/ruby/README deleted file mode 100644 index f4a342d..0000000 --- a/share/ruby/README +++ /dev/null @@ -1,14 +0,0 @@ -This is a minimal and dummy gridservers implementation, just to get -the OpenSim.exe booted into the grid mode. - -NOT INDENDED FOR PRODUCTION USE - DEVELOPERS ONLY - -provided AS IS, no any warranties whatsoever, use at your own risk. - -License: BSD - -/Dalien Talbot @ SecondLife - -http://daltonic.blogspot.com/search/label/opensim - - diff --git a/share/ruby/aserv.rb b/share/ruby/aserv.rb deleted file mode 100755 index 1ac3d60..0000000 --- a/share/ruby/aserv.rb +++ /dev/null @@ -1,35 +0,0 @@ -require "webrick" - -# -# Dummy asset server -# - -class AssetServlet < WEBrick::HTTPServlet::AbstractServlet - def do_GET(req, res) - uuid = req.path.split("/")[2].downcase.gsub(/[^0-9a-f]+/, "") - if uuid.length == 32 - # length is correct - File.open("assets/#{uuid}/data") do |f| - res.body = f.read - end - end - # res["content-type"] = "text/plain" # or what do we set it to ? - end - def do_POST(req, res) - uuid = req.path.split("/")[2].downcase.gsub(/[^0-9a-f]+/, "") - if uuid.length == 32 - Dir.mkdir("assets/#{uuid}") - File.open("assets/#{uuid}/data", "wb") do |f| - f.write req.body - STDERR.print "Written #{req.body.length} bytes for uuid #{uuid}\n\n" - end - end - end -end - - -svr = WEBrick::HTTPServer.new(:Port=>8003) -svr.mount("/assets", AssetServlet, 5000000) -trap(:INT){ svr.shutdown } -svr.start - diff --git a/share/ruby/config.rb b/share/ruby/config.rb deleted file mode 100755 index 8484274..0000000 --- a/share/ruby/config.rb +++ /dev/null @@ -1,38 +0,0 @@ -# Various config data - -class SimConfig - attr_reader :cfgSimName, :cfgSimIP, :cfgSimPort, :cfgSimX, - :cfgSimX, :cfgSimY, :cfgAssetServerUrl, :cfgUserServerUrl - - def initialize - @cfgSimName = "DalienLand" - @cfgSimIP = "192.168.1.103" - @cfgSimPort = "9000" - @cfgSimX = 997 - @cfgSimY = 996 - @cfgSimX = 1000 - @cfgSimY = 1000 - @cfgAssetServerUrl = "http://192.168.1.103:8003/" - @cfgUserServerUrl = "http://192.168.1.103:8003/" - end - -end - - -class UUID - def initialize - @uuid = rand(1<<128) - end - def to_dashed_s - part1 = @uuid & 0xFFFFFFFFFFFF - part2 = (@uuid >> 48) && 0xFFFF - part3 = (@uuid >> (48 + 16)) & 0xFFFF - part4 = (@uuid >> (48 + 32)) & 0xFFFF - part5 = @uuid >> (128-32) - return sprintf "%08x-%04x-%04x-%04x-%012x", part5, part4, part3, part2, part1 - end -end - -print UUID.new.to_dashed_s - - diff --git a/share/ruby/gridserv.rb b/share/ruby/gridserv.rb deleted file mode 100755 index 03cb4d1..0000000 --- a/share/ruby/gridserv.rb +++ /dev/null @@ -1,69 +0,0 @@ -require "webrick" -require "xmlrpc/server" -require 'xmlrpc/client' -require 'pp' -require 'config.rb' - -# -# Dummy grid server -# -# - -class SimServlet < WEBrick::HTTPServlet::AbstractServlet - # does actually nothing - def do_POST(req, res) - STDERR.print "----\n" - end -end - -$SimUUID = "" - -s = XMLRPC::WEBrickServlet.new -s.add_handler("map_block") do |param| - # does just enough to login.. if you try using "map" you will cause the exception - # and hang the client - responseData = Hash.new - responseData["sim-profiles"] = [ ] - responseData -end - -s.add_handler("simulator_login") do |param| - sc = SimConfig.new - responseData = Hash.new - STDERR.print "simulator login: " + param.inspect + "\n" - $SimUUID = param["UUID"] - - responseData["UUID"] = param["UUID"] - responseData["region_locx"] = sc.cfgSimX - responseData["region_locy"] = sc.cfgSimY - responseData["regionname"] = "DalienLand" - responseData["estate_id"] = "1" - responseData["neighbours"] = [ ] - responseData["sim_ip"] = sc.cfgSimIP - responseData["sim_port"] = sc.cfgSimPort - responseData["asset_url"] = sc.cfgAssetServerUrl - responseData["asset_sendkey"] = "" - responseData["asset_recvkey"] = "" - responseData["user_url"] = sc.cfgUserServerUrl - responseData["user_sendkey"] = "" - responseData["user_recvkey"] = "" - responseData["authkey"] = "" - - responseData - -end - -s.set_default_handler do |name, *args| - STDERR.print "Unknown method #{name}, #{args.inspect}\n\n" - raise XMLRPC::FaultException.new(-99, "Method #{name} missing" + - " or wrong number of parameters!") -end - -httpserver = WEBrick::HTTPServer.new(:Port => 8001) -httpserver.mount("/", s) -httpserver.mount("/sims", SimServlet) - -trap(:INT) { httpserver.shutdown } # use 1 instead of "HUP" on Windows -httpserver.start - - diff --git a/share/ruby/userserv.rb b/share/ruby/userserv.rb deleted file mode 100755 index 18559c0..0000000 --- a/share/ruby/userserv.rb +++ /dev/null @@ -1,135 +0,0 @@ -require "webrick" -require "xmlrpc/server" -require 'xmlrpc/client' -require 'config.rb' - -class SessionServlet < WEBrick::HTTPServlet::AbstractServlet - def do_DELETE(req, res) - # does nothing, obviously - STDERR.print "----\n" - end -end - -s = XMLRPC::WEBrickServlet.new -s.add_handler("login_to_simulator") do |param| - sc = SimConfig.new - # - # Some stuff just grabbed from a sniff of the session with OGS - # - zSessionId = "133086b6-1270-78c6-66f7-c7f64865b16c" - zSecureSessionId = "6ee4df6a-0ea9-4cf5-8ac7-9745acbacccc" - zAgentId = "0f00ba47-42d1-498e-b010-aa585a81862e" - zAgentId = UUID.new.to_dashed_s - STDERR.print "AgentID: #{zAgentId}\n" - zCircuitCode = rand(0x1000000) - zRegionX = sc.cfgSimX - zRegionY = sc.cfgSimY - - xxSimParams = Hash.new - xxSimParams["session_id"] = zSessionId.gsub("-","") - xxSimParams["secure_session_id"] = zSecureSessionId.gsub("-","") - xxSimParams["firstname"] = param["first"]; - xxSimParams["lastname"] = param["last"]; - xxSimParams["agent_id"] = zAgentId.gsub("-", "") - xxSimParams["circuit_code"] = zCircuitCode - xxSimParams["startpos_x"] = 128 - xxSimParams["startpos_y"] = 128 - xxSimParams["startpos_z"] = 30 - xxSimParams["regionhandle"] = ((zRegionX << 40) + (zRegionY *256)).to_s - STDERR.print "Region handle: #{xxSimParams["regionhandle"]}\n" - - - - server = XMLRPC::Client.new2("http://#{sc.cfgSimIP}:#{sc.cfgSimPort}/") - # the dispatcher in OpenSim.exe did not get excited from specifying - # the content-type in the request.. no XML was executed at all. - # this "fixes" it. - server.http_header_extra = { "Content-Type" => "text/xml" }; - result = server.call("expect_user", xxSimParams ) - # STDERR.print result.inspect - - STDERR.print "---- notified the sim ----\n" - - responseData = Hash.new - - xxGlobalT = Hash.new - xxGlobalT["sun_texture_id"] = "cce0f112-878f-4586-a2e2-a8f104bba271"; - xxGlobalT["cloud_texture_id"] = "fc4b9f0b-d008-45c6-96a4-01dd947ac621"; - xxGlobalT["moon_texture_id"] = "fc4b9f0b-d008-45c6-96a4-01dd947ac621"; - - xxLoginFlags = Hash.new - xxLoginFlags["daylight_savings"] = "N" - xxLoginFlags["stipend_since_login"] = "N" - xxLoginFlags["gendered"] = "Y" - xxLoginFlags["ever_logged_in"] = "Y" - - responseData["first_name"] = param["first"] - responseData["last_name"] = param["last"] - responseData["ui-config"] = [ { "allow_first_life" => "Y" } ] - - responseData["login-flags"] = [ xxLoginFlags ] - responseData["global-textures"] = [ xxGlobalT ] - # responseData["classified_categories"] = [ { category_name => "Generic", category_id => 1 } ] - # responseData["event_categories"] = - responseData["inventory-skeleton"] = [ - { "folder_id" => "9846e02a-f41b-4199-860e-cde46cc25649", - "parent_id" => "00000000-0000-0000-0000-000000000000", - "name" => "My Inventory test", - "type_default" => 8, - "version" => 1 }, - { "folder_id" => "b846e02a-f41b-4199-860e-cde46cc25649", - "parent_id" => "9846e02a-f41b-4199-860e-cde46cc25649", - "name" => "test", - "type_default" => 0, - "version" => 1 } - ] - responseData["inventory-skel-lib"] = [ - { "folder_id" => "a846e02a-f41b-4199-860e-cde46cc25649", - "parent_id" => "00000000-0000-0000-0000-000000000000", - "name" => "Lib Inventory", - "type_default" => 8, - "version" => 1 } - ] - responseData["inventory-root"] = [ { "folder_id" => "9846e02a-f41b-4199-860e-cde46cc25649" } ] - # responseData["event_notifications"] = [ ] - responseData["gestures"] = [ ] - # responseData["inventory-lib-owner"] = - responseData["initial-outfit"] = [ - { "folder_name" => "Nightclub female", "gender" => "female" } - ] - responseData["seconds_since_epoch"] = Time.new.to_i - responseData["start_location"] = "last"; - responseData["message"] = "Hello there!" - responseData["circuit_code"] = zCircuitCode # random - # responseData["look_at"] = - responseData["agent_id"] = zAgentId - responseData["home"] = "\{'region_handle':[r#{zRegionX*256}.0,r#{zRegionY*256}.0], 'position':[r128.0,r128.0,r30.0], 'look_at':[r0.0,r0.0,r0.0]\}" - # responseData["home"] = "\{'region_handle':[r255232,r254976], 'position':[r128,r128,r100], 'look_at':[r128,r128,r100]\}" - - responseData["region_x"] = zRegionX*256 - responseData["region_y"] = zRegionY*256 - responseData["sim_ip"] = "192.168.1.103" - responseData["sim_port"] = 9000 - # responseData["seed_capability"] - responseData["agent_access"] = "M"; - responseData["session_id"] = zSessionId - responseData["secure_session_id"] = zSecureSessionId - responseData["login"] = "true" - - # raise XMLRPC::FaultException.new(1, "just some exception") - responseData -end - -s.set_default_handler do |name, *args| - STDERR.print "Unknown method #{name}, #{args.inspect}\n\n" - raise XMLRPC::FaultException.new(-99, "Method #{name} missing" + - " or wrong number of parameters!") -end - -httpserver = WEBrick::HTTPServer.new(:Port => 8002) -httpserver.mount("/", s) -httpserver.mount("/usersessions", SessionServlet); - -trap(:INT) { httpserver.shutdown } -httpserver.start - -- cgit v1.1