1
0

socketpair_test.c 817 B

1234567891011121314151617181920212223242526272829
  1. #include <stdio.h>
  2. #include "hsocket.h"
  3. int main(int argc, char* argv[]) {
  4. #ifdef OS_WIN
  5. WSADATA wsadata;
  6. WSAStartup(MAKEWORD(2,2), &wsadata);
  7. #endif
  8. int sockfds[2];
  9. if (Socketpair(AF_INET, SOCK_STREAM, 0, sockfds) != 0) {
  10. printf("socketpair failed!\n");
  11. return -1;
  12. }
  13. printf("Socketpair %d<=>%d\n", sockfds[0], sockfds[1]);
  14. char sendbuf[] = "hello,world!";
  15. char recvbuf[1460];
  16. int nsend = send(sockfds[0], sendbuf, strlen(sendbuf), 0);
  17. printf("sockfd:%d send %d bytes: %s\n", sockfds[0], nsend, sendbuf);
  18. memset(recvbuf, 0, sizeof(recvbuf));
  19. int nrecv = recv(sockfds[1], recvbuf, sizeof(recvbuf), 0);
  20. printf("sockfd:%d recv %d bytes: %s\n", sockfds[1], nrecv, recvbuf);
  21. closesocket(sockfds[0]);
  22. closesocket(sockfds[1]);
  23. return 0;
  24. }