| 1 |
require 'socket' |
|---|
| 2 |
include Socket::Constants |
|---|
| 3 |
|
|---|
| 4 |
socket = Socket.new( AF_INET, SOCK_STREAM, 0 ) |
|---|
| 5 |
sockaddr = Socket.pack_sockaddr_in( 8000, 'localhost' ) |
|---|
| 6 |
socket.bind( sockaddr ) |
|---|
| 7 |
socket.listen( 5 ) |
|---|
| 8 |
client, client_sockaddr = socket.accept |
|---|
| 9 |
|
|---|
| 10 |
|
|---|
| 11 |
while (line = client.readline.chomp) != '' do |
|---|
| 12 |
puts "The client said, '#{line}'" |
|---|
| 13 |
end |
|---|
| 14 |
|
|---|
| 15 |
client.puts "HTTP/1.0 200 OK\r\n\r\n" |
|---|
| 16 |
|
|---|
| 17 |
File.open("fake-shoutserver.ogg", "wb") do |file| |
|---|
| 18 |
while read = client.read(1024) |
|---|
| 19 |
puts read.size |
|---|
| 20 |
file.write(read) |
|---|
| 21 |
file.flush |
|---|
| 22 |
end |
|---|
| 23 |
end |
|---|
| 24 |
|
|---|
| 25 |
socket.close |
|---|