Revision d57fd602
Added by Marc Dequènes over 13 years ago
- ID d57fd602139e64243c0192e0db3c39bfddbf943f
lib/cyborghood/cyborg/botnet.rb | ||
---|---|---|
include CyborgServerRootInterfaceAddon
|
||
end
|
||
|
||
module BotNetClientUNIXSocket
|
||
def peer_socket(peer)
|
||
File.join(Config::RUN_DIR, peer.downcase + ".sock")
|
||
end
|
||
|
||
def contact_peer(peer, &block)
|
||
if @comm_list.has_key? peer
|
||
block.call @comm_list[peer]
|
||
else
|
||
EventMachine.connect_unix_domain(peer_socket(peer), Conversation, self, &block)
|
||
end
|
||
end
|
||
end
|
||
|
||
module BotNet
|
||
attr_reader :interface
|
||
|
||
def self.included(base)
|
||
case Config.instance.botnet.connection_type
|
||
when 'unix_socket'
|
||
return base.class_eval("include BotNetClientUNIXSocket")
|
||
else
|
||
raise CyberError.new(:unrecoverable, "config", "Unknown botnet connection type")
|
||
end
|
||
end
|
||
|
||
def setup
|
||
super
|
||
@comm_list = {}
|
Also available in: Unified diff
[evol] add client support to BotNet