udp_pair
0.1.1
一個非常簡單的 C 對象,它包裝了 BSD 套接字 API 以提供 UDP 套接字對抽象。基本上來說,您有兩個已知端點需要透過 UDP 相互通訊。您知道正在接收的連接埠以及另一個端點的位址/連接埠。您可以定義一個 UDP 對物件來表示您的端點,並簡單地發送/接收該設定。
如果你看一下程式碼,你會發現它主要是一個玩具,因為執行這樣的設定非常簡單( bind()
、 connect()
、 send()
、 recv()
),但對於那些人來說,它可以是一個方便的抽象誰不那麼精通套接字。
struct udp_pair * pair = udp_pair_create ( recv_port , dest_ip4 , dest_port );
char buf [ 512 ];
while ( 1 ) {
ssize_t bytes_recvd = 0 ;
udp_pair_recv ( pair , ( void * ) buf , sizeof ( buf ), & bytes_recvd );
if ( bytes_recvd > 0 ) {
udp_pair_send ( pair , ( void * ) buf , bytes_recvd , NULL );
}
}
udp_pair_free ( pair );
由於錯誤檢查,範例來源比此程式碼段更詳細。提供了三個範例:
example/echo_server.c
example/spam_hello_world.c
bin/udpcat.c
通常的 CMake/Make 舞蹈。
mkdir build
cd build
cmake ..
make
udpcat
範例一旦建置完成,您就可以讓兩個udpcat
進程非常簡單地相互通訊。只要開啟一個會話為udpcat 12345 127.0.0.1 12346
,另一個會話為udpcat 12346 127.0.0.1 12345
。在提示符號下輸入的任何行( stdin
輸入)都會被傳送到其他udpcat
進程並列印到stdout
。