#include <netinet/in.h>#include <sys/types.h>#include <sys/socket.h>#include <unistd.h>#include <string.h>#include <stdio.h>#define PORT_NUM 8888#define LOCALIP "192.168.1.2"int main() { int listen_fd, conn_fd; struct sockaddr_in server_addr, client_addr; int client_len; int len = 0; char recv_buf[1024]; char send_buf[1024]; listen_fd = socket(AF_INET, SOCK_STREAM, 0); if (listen_fd == -1) { perror("Failed to socket "); return -1; } memset(&server_addr, 0, sizeof(server_addr)); server_addr.sin_family = AF_INET; server_addr.sin_port = htons(PORT_NUM); server_addr.sin_addr.s_addr = htonl(INADDR_ANY); // if (bind(listen_fd, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1) { perror("failed to bind"); return -1; } printf("now listen...\n"); if (listen(listen_fd, 10) == -1) { perror("failed to listen"); } while (1) { memset(&client_addr, 0, sizeof(client_addr)); client_len = sizeof(client_addr); printf("now accept...\n"); conn_fd = accept(listen_fd, (struct sockaddr *)&client_addr, &client_len); if (conn_fd == -1) { perror("failed to accept"); return -1; } memset(recv_buf, 0, sizeof(recv_buf)); printf("now recv...\n"); len = recv(conn_fd, recv_buf, sizeof(recv_buf), 0); if (len == -1) { perror("failed to recv"); return -1; } printf("recv from client is %s\n", recv_buf); printf("now send...\n"); memset(send_buf, 0, sizeof(send_buf)); sprintf(send_buf, "hello, client tcp terminal test "); len = send(conn_fd, send_buf, strlen(send_buf), 0); if (len == -1) { perror("failed to send"); return -1; } printf("send msg to client %s\n", send_buf); close(conn_fd); } close(listen_fd); return 0;}
#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <string.h>#include <stdio.h>#define PORT_NUM 8888#define LOCALIP "192.168.1.2"int main() { int sock_fd; unsigned short port; in_addr_t addr_in; struct sockaddr_in server_addr; int len = 0; char send_buf[1024]; char recv_buf[1024]; sock_fd = socket(AF_INET, SOCK_STREAM, 0); if (sock_fd == -1) { perror("failed to sock_fd"); return -1; } memset(&server_addr, 0, sizeof(server_addr)); server_addr.sin_family = AF_INET; server_addr.sin_port = htons(PORT_NUM); server_addr.sin_addr.s_addr = inet_addr("192.168.1.2"); if (connect(sock_fd, (struct sockaddr *)&server_addr, sizeof(server_addr))== -1) { perror("failed to connect"); return -1; } memset(send_buf, 0, sizeof(send_buf)); sprintf(send_buf, "hello ! server terminal send test"); len = send(sock_fd, send_buf, strlen(send_buf), 0); if (len == -1) { perror("failed to send"); return -1; } memset(recv_buf, 0, sizeof(recv_buf)); printf("now recv...\n"); len = recv(sock_fd, recv_buf, sizeof(recv_buf), 0); if (len == -1) { perror("failed to recv"); return -1; } printf("receive msg: %s\n", recv_buf); close(sock_fd); return 0;}