Sha256: 7fc2d67072167bef35ed2bf3926ef5f131144154ee736c49521ad5cf7828cc90

Contents?: true

Size: 1.08 KB

Versions: 58

Compression:

Stored size: 1.08 KB

Contents

#!/usr/bin/env ruby
require 'socket'

STDOUT.sync = true
STDERR.sync = true
puts "!> I have control 1.0"
abort "Invalid initialization header" if STDIN.readline != "You have control 1.0\n"

options = {}
while (line = STDIN.readline) != "\n"
	name, value = line.strip.split(/: */, 2)
	options[name] = value
end

if ARGV[0] == "--execself"
	# Used for testing https://code.google.com/p/phusion-passenger/issues/detail?id=842#c19
	exec("ruby", $0)
end

server = TCPServer.new('127.0.0.1', 0)
puts "!> Ready"
puts "!> socket: main;tcp://127.0.0.1:#{server.addr[1]};session;1"
puts "!> "

while true
	ios = select([server, STDIN])[0]
	if ios.include?(server)
		client = server.accept
		line = client.readline
		if line == "ping\n"
			client.write("pong\n")
		elsif line == "pid\n"
			client.write("#{Process.pid}\n")
		elsif line == "envvars\n"
			str = ""
			ENV.each_pair do |key, value|
				str << "#{key} = #{value}\n"
			end
			client.write(str)
		else
			client.write("unknown request\n")
		end
		client.close
	end
	if ios.include?(STDIN)
		begin
			STDIN.readline
		rescue EOFError
			exit
		end
	end
end

Version data entries

58 entries across 58 versions & 1 rubygems

Version Path
passenger-4.0.60 test/stub/rack/start.rb
passenger-4.0.59 test/stub/rack/start.rb
passenger-5.0.0.beta3 test/stub/rack/start.rb
passenger-4.0.58 test/stub/rack/start.rb
passenger-4.0.57 test/stub/rack/start.rb
passenger-5.0.0.beta2 test/stub/rack/start.rb
passenger-4.0.56 test/stub/rack/start.rb
passenger-4.0.55 test/stub/rack/start.rb
passenger-5.0.0.beta1 test/stub/rack/start.rb
passenger-4.0.53 test/stub/rack/start.rb
passenger-4.0.52 test/stub/rack/start.rb
passenger-4.0.51 test/stub/rack/start.rb
passenger-4.0.50 test/stub/rack/start.rb
passenger-4.0.49 test/stub/rack/start.rb
passenger-4.0.48 test/stub/rack/start.rb
passenger-4.0.46 test/stub/rack/start.rb
passenger-4.0.45 test/stub/rack/start.rb
passenger-4.0.44 test/stub/rack/start.rb
passenger-4.0.43 test/stub/rack/start.rb
passenger-4.0.42 test/stub/rack/start.rb