最初代码:
#include "unp.h"
int
main(int argc, char **argv)
{
int sockfd;
struct sockaddr_in servaddr;
if (argc != 2)
err_quit("usage: udpcli ");
//1.指明服务器的 IP 地址和端口
bzero(&servaddr, s...
分类:
其他好文 时间:
2014-08-25 22:56:15
阅读次数:
374
/**
* TCP,使用非阻塞 connect
**/
#include "unp.h"
int
connect_nonb(int sockfd, const SA *saptr, socklen_t salen, int nsec)
{
int flags, n, error;
socklen_t len;
fd_set rset, wset;
struct timeval tval;
//1.调用 fcntl 设置套接字为非阻塞
flags = Fcntl(sockfd, ...
分类:
其他好文 时间:
2014-08-24 23:57:13
阅读次数:
464
/**
* UDP,协议无关,调用 getaddrinfo 和 udp_client
**/
#include "unp.h"
int
udp_client(const char *host, const char *serv, SA **saptr, socklen_t *lenp)
{
int sockfd, n;
struct addrinfo hints, *res, *ressave;
//1.调用 getaddrinfo
//协议地址族为 AF_UNSPEC ,套接字类型为...
分类:
其他好文 时间:
2014-08-24 23:57:03
阅读次数:
601
/**
* UDP 协议无关 调用 getaddrinfo 和 udp_server
**/
#include "unp.h"
#include
int
main(int argc, char **argv)
{
int sockfd;
ssize_t n;
char buff[MAXLINE];
time_t ticks;
socklen_t len;
struct sockaddr_storage cliaddr;
//1.利用 Udp_s...
分类:
其他好文 时间:
2014-08-24 23:56:33
阅读次数:
462
bind();把一个地址簇中的特定地址赋给socket,Eg:AF_INET,AF_INET6就是把一个ipv4或ipv4地址和端口号组合赋给socket;int bind(int sockfd,const struct sockaddr *addr,socklen_t addrlen);addr:...
分类:
其他好文 时间:
2014-08-19 14:22:24
阅读次数:
203
listen函数的定义如下所示:
#include
int accept(int sockfd, struct sockaddr * restrict addr, socklen_t *restrict len);
返回值:若成功则返回文件(套接字)描述符,若出错则返回-1
int listen(int sockfd, int backlog);返回值:若成功则返回0;若出错则返回-1...
分类:
其他好文 时间:
2014-08-12 00:47:03
阅读次数:
242
用户态对accept的标准使用方法:if ((client_fd = accept(sockfd, (struct sockaddr *)&remote_addr, &sin_size)) == -1) { //accept()函数让server接收客户的连接请求 perror("acce...
分类:
其他好文 时间:
2014-08-09 18:40:18
阅读次数:
323
#include#include#include#include#include#includeint main(){ int server_sockfd,client_sockfd; int server_len,client_len; struct sockaddr_in se...
分类:
其他好文 时间:
2014-08-03 18:00:35
阅读次数:
208
//make the procedure into block//2014.7.23 OK//#include "CSocket.h"#define NTP_SERVER_IP "192.168.1.12" /*ntp service IP*/int sendpkt(int sockfd...
分类:
其他好文 时间:
2014-07-31 20:20:27
阅读次数:
287
C关闭socket有两种方法: 一、shutdown #include<sys/socket.h> int shutdown(int sockfd,int how); how的方式有三种分别是 SHUT_RD(0):关闭sockfd上的读功能,此选项将不允许sockfd进行读操作。 SHUT_W...
分类:
其他好文 时间:
2014-07-22 22:32:55
阅读次数:
198