module MindControl::Client
MindControl
client.
Constants
- Process
Running process struct.
Public Instance Methods
connect( process )
click to toggle source
Connect to given process. @param [MindControl::Client::Process] process Process
to connect to.
# File lib/mind_control/client.rb, line 35 def connect( process ) UNIXSocket.open( process.socket ) do |socket| socket.send_io STDIN socket.send_io STDOUT # Wait for disconnect socket.recv( 1 ) end end
get_running_processes( sockets_dir )
click to toggle source
Returns running processes.
@param [String] sockets_dir Directory with MindControl
sockets. @return [Array<MindControl::Client::Process>]
# File lib/mind_control/client.rb, line 21 def get_running_processes( sockets_dir ) processes = Dir.glob( File.join( sockets_dir, "*.sock" )).map do |file| name, pid = File.basename( file, ".sock" ).split( "." ) Process.new( name, pid.to_i, file ) end # Ignore not existent processes processes.select { |process| ::Process.kill( 0, process.pid ) rescue false } end