<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Сокеты C++ UNIX</title>
    <link>https://mobile.opennet.me/openforum/vsluhforumID1/84199.html</link>
    <description>Всем привет!&lt;br&gt;Ребята, нужна помощь.&lt;br&gt;Гуглил, гуглил... ничего не на гуглил(((&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Ниже приведен исходник эхо сервера:&lt;br&gt;&lt;br&gt;eservd.cpp&lt;br&gt;&#091;CODE&#093;&lt;br&gt;int SERVER_SOCKET;&lt;br&gt;int CLIENT_SOCKET;&lt;br&gt;struct sockaddr_in SERVER_ADDR;&lt;br&gt;struct sockaddr_in CLIENT_ADDR;&lt;br&gt;char i_buffer&#091;1024&#093;;&lt;br&gt;socklen_t CLIENT_ADDR_SIZE = sizeof(CLIENT_ADDR);&lt;br&gt;&lt;br&gt;using namespace std;&lt;br&gt;&lt;br&gt;int main ()&lt;br&gt;&#123;&lt;br&gt;   bzero(&amp;SERVER_ADDR, sizeof(SERVER_ADDR));&lt;br&gt;   SERVER_SOCKET = socket(AF_INET, SOCK_STREAM, 0);&lt;br&gt;   bind(SERVER_SOCKET, (struct sockaddr *)&amp;SERVER_ADDR, sizeof(SERVER_ADDR));&lt;br&gt;   listen(SERVER_SOCKET, SERVER_MAX_CONN);&lt;br&gt;&lt;br&gt;   for(;;)&lt;br&gt;   &#123;&lt;br&gt;      CLIENT_SOCKET = accept(SERVER_SOCKET, (struct sockaddr *)&amp;CLIENT_ADDR, &amp;CLIENT_ADDR_SIZE);&lt;br&gt;&lt;br&gt;      if(fork() == 0)&lt;br&gt;      &#123;&lt;br&gt;         for(;;)&lt;br&gt;         &#123;&lt;br&gt;            if(recv(CLIENT_SOCKET, &amp;i_buffer, sizeof(i_buffer), 0) == 0) return 0; &lt;br&gt;            send(CLIENT_SOCKET, i_buffer, sizeof(i_buffer), 0);&lt;br&gt;         &#125;&lt;br&gt;      &#125;&lt;br&gt;&lt;br&gt;      close (CLIENT_SOCKET);&lt;br&gt;   &#125;&lt;br&gt;&lt;br&gt;   close (SERVER_SOCKET);&lt;br&gt;   return 0;&lt;br&gt;&#125;&lt;br&gt;</description>

<item>
    <title>Сокеты C++ UNIX (fa)</title>
    <link>https://mobile.opennet.me/openforum/vsluhforumID1/84199.html#4</link>
    <pubDate>Mon, 23 Feb 2009 22:46:11 GMT</pubDate>
    <description>Использовать select вместо форканья?&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Сокеты C++ UNIX (Максим)</title>
    <link>https://mobile.opennet.me/openforum/vsluhforumID1/84199.html#3</link>
    <pubDate>Sat, 21 Feb 2009 20:47:21 GMT</pubDate>
    <description>В коде сервера были небольшие ошибки (с fork напутал немного), вот исправленный вариант:&lt;br&gt;&lt;br&gt;&#091;CODE&#093;&lt;br&gt;#include &amp;lt;iostream&amp;gt;&lt;br&gt;#include &amp;lt;stdio.h&amp;gt;&lt;br&gt;#include &amp;lt;unistd.h&amp;gt;&lt;br&gt;#include &amp;lt;sys/types.h&amp;gt;&lt;br&gt;#include &amp;lt;sys/wait.h&amp;gt;&lt;br&gt;#include &amp;lt;sys/socket.h&amp;gt;&lt;br&gt;#include &amp;lt;netinet/in.h&amp;gt;&lt;br&gt;#include &amp;lt;arpa/inet.h&amp;gt;&lt;br&gt;&lt;br&gt;int SERVER_SOCKET;&lt;br&gt;int CLIENT_SOCKET;&lt;br&gt;struct sockaddr_in SERVER_ADDR;&lt;br&gt;struct sockaddr_in CLIENT_ADDR;&lt;br&gt;char i_buffer&#091;1024&#093;;&lt;br&gt;socklen_t CLIENT_ADDR_SIZE = sizeof(CLIENT_ADDR);&lt;br&gt;using namespace std;&lt;br&gt;&lt;br&gt;int main ()&lt;br&gt;&#123;&lt;br&gt;   bzero(&amp;SERVER_ADDR, sizeof(SERVER_ADDR));&lt;br&gt;   SERVER_SOCKET = socket(AF_INET, SOCK_STREAM, 0);&lt;br&gt;   bind(SERVER_SOCKET, (struct sockaddr *)&amp;SERVER_ADDR, sizeof(SERVER_ADDR));&lt;br&gt;   listen(SERVER_SOCKET, SERVER_MAX_CONN);&lt;br&gt;&lt;br&gt;   for(;;)&lt;br&gt;   &#123;&lt;br&gt;      CLIENT_SOCKET = accept(SERVER_SOCKET, (struct sockaddr *)&amp;CLIENT_ADDR, &amp;CLIENT_ADDR_SIZE);&lt;br&gt;&lt;br&gt;      if(fork() == 0)&lt;br&gt;      &#123;&lt;br&gt;         close (SERVER_SOCKET);&lt;br&gt;&lt;br&gt;         for(;;)&lt;br&gt;         &#123;&lt;br&gt;            if(recv(CLIENT_SOCKET, &amp;i_buffer, sizeof(i_buffer), 0) == 0) return 0</description>
</item>

<item>
    <title>Сокеты C++ UNIX (Максим)</title>
    <link>https://mobile.opennet.me/openforum/vsluhforumID1/84199.html#2</link>
    <pubDate>Fri, 20 Feb 2009 17:44:27 GMT</pubDate>
    <description>&amp;gt;1. Где тут C++? &lt;br&gt;&lt;br&gt;Что значит &quot;Где тут C++?&quot; ?!?!??! хм...&lt;br&gt;&lt;br&gt;&amp;gt;2. А куда собственно он bind-ится? &lt;br&gt;&lt;br&gt;Клиенты на винде, тока какое это имеет значение?&lt;br&gt;&lt;br&gt;&amp;gt;3. Этот код не компилируется, так и задумано? &lt;br&gt;&lt;br&gt;Все работает нормально. Внимательнее плз.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Сокеты C++ UNIX (злобый анонимус)</title>
    <link>https://mobile.opennet.me/openforum/vsluhforumID1/84199.html#1</link>
    <pubDate>Fri, 20 Feb 2009 17:19:44 GMT</pubDate>
    <description>1. Где тут C++?&lt;br&gt;2. А куда собственно он bind-ится?&lt;br&gt;3. Этот код не компилируется, так и задумано?&lt;br&gt;</description>
</item>

</channel>
</rss>
