swudp.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /************************************************************************
  2. * AUTHOR: NiuJiuRu
  3. * FILENAME: swudp.h
  4. * DESCRIPTION: UDP socket
  5. * NOTE:
  6. * HISTORY:
  7. * 1, [2010-11-30] created by NiuJiuRu
  8. ***********************************************************************/
  9. #ifndef __SWUDP_H__
  10. #define __SWUDP_H__
  11. #ifdef __cplusplus
  12. extern "C"
  13. {
  14. #endif
  15. /* 创建一个udp socket */
  16. int sw_udp_socket();
  17. /* 关闭一个udp socket */
  18. void sw_udp_close(int skt);
  19. /* 绑定接收地址和端口 */
  20. int sw_udp_bind(int skt, unsigned int ip, unsigned short port);
  21. /* 加入一个多播组 */
  22. int sw_udp_join(int skt, unsigned int ip);
  23. /* 退出一个多播组 */
  24. int sw_udp_drop(int skt, unsigned int ip);
  25. /* 发送数据 */
  26. int sw_udp_send(int skt, unsigned int ip, unsigned short port, char *buf, int send_len);
  27. /* 接收数据 */
  28. int sw_udp_recv(int skt, unsigned int *ip, unsigned short *port, char *buf, int buf_size);
  29. /* 配置udp socket */
  30. int sw_udp_ioctl(int skt, int type, unsigned long *val);
  31. /* 检测udp socket的状态, timeout单位为ms */
  32. int sw_udp_select(int skt, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, int timeout);
  33. #ifdef __cplusplus
  34. }
  35. #endif
  36. #endif /*__SWUDP_H__*/