oh strange. It does work with telnet. Stupid me, I was trying it in a web browser. Thank you for your help.<br><br><br><br><br><div class="gmail_quote">On Jan 21, 2008 10:36 AM, Bengt Kleberg <<a href="mailto:bengt.kleberg@ericsson.com">
bengt.kleberg@ericsson.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Greetings,<br><br>When run on Solaris9/Erts5.5.5.5 your program works for at least 2
<br>clients. Example:<br><br>In xterm 1<br>ws67042> telnet localhost 6011<br>Trying 127.0.0.1...<br>Connected to localhost.<br>Escape character is '^]'.<br>asd<br><div class="Ih2E3d">HTTP/1.1 200 OK<br></div>Content-type: text/html
<br><br><html><head></head><body>WOHOO<br>12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667<br><br>In xterm 2<br>ws67042> telnet localhost 6011
<br>Trying 127.0.0.1...<br>Connected to localhost.<br>Escape character is '^]'.<br>asd<br><div class="Ih2E3d">HTTP/1.1 200 OK<br></div>Content-type: text/html<br><br><html><head></head><body>WOHOO<br>123456789101112131415161718192021222324252627
<br><br><br>bengt<br>Those were the days...<br>    EPO guidelines 1978: "If the contribution to the known art resides<br>    solely in a computer program then the subject matter is not<br>    patentable in whatever manner it may be presented in the claims."
<br><div><div></div><div class="Wj3C7c"><br><br>On 01/21/08 09:53, Rapsey wrote:<br>> All this program does is listen on a socket, spawn a new process on<br>> every connection and send a never ending stream of numbers to each
<br>> client that connects to it. The problem is that once 1 client is<br>> connected, no one else can connect, even though a new acceptor process<br>> has been spawned.<br>><br>><br>> start() -><br>>     case gen_tcp:listen(6002, [binary, {packet, 0}, {active, true},
<br>> {reuseaddr, true}]) of<br>>         {ok, Sock} -><br>>             spawn(fun() -> accept_conn(Sock) end);<br>>         {error, Reason} -> {error, Reason}<br>>     end.<br>><br>><br>> accept_conn(LSock) ->
<br>>     case gen_tcp:accept(LSock) of<br>>         {ok, Sock} -><br>>             spawn(fun() -> accept_conn(LSock) end),<br>>             handle_conn(Sock);<br>>         _ -><br>>             true
<br>>     end.<br>><br>> % wait for http request from browser<br>> handle_conn(Sock) -><br>>     receive<br>>         {tcp, RecSock, Data} -><br>>             send_stream(RecSock, 0);<br>>         {tcp_closed, _} ->
<br>>             true<br>>     end.<br>><br>> send_stream(Sock, N) when N == 0 -><br>>     gen_tcp:send(Sock, "HTTP/1.1 200 OK\r\nContent-type:<br>> text/html\r\n\r\n<html><head></head><body>WOHOO<br>"),
<br>>     send_stream(Sock, N + 1);<br>> send_stream(Sock, N) -><br>>     case gen_tcp:send(Sock, integer_to_list(N)) of<br>>         ok -><br>>             timer:sleep(1000),<br>>             send_stream(Sock, N + 1);
<br>>         Any -><br>>             true<br>>     end.<br>><br>><br>> thank you,<br>> Sergej<br>><br>><br></div></div>> ------------------------------------------------------------------------
<br><div><div></div><div class="Wj3C7c">><br>> _______________________________________________<br>> erlang-questions mailing list<br>> <a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a>
<br>> <a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions</a><br>_______________________________________________<br>erlang-questions mailing list
<br><a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br><a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions
</a><br></div></div></blockquote></div><br>