socket_conn6.c
来自「fget是一个小型的HTTP/FTP工具」· C语言 代码 · 共 36 行
C
36 行
#include <sys/param.h>#include "sockaddr_in6.h"#include "byte.h"#include "socket.h"#include "ip6.h"#include "haveip6.h"#include "error.h"#include "uint32.h"int socket_connect6(int s,const char ip[16],uint16 port,uint32 scope_id){#ifdef LIBC_HAS_IP6 struct sockaddr_in6 sa; if (noipv6) {#endif if (ip6_isv4mapped(ip)) return socket_connect4(s,ip+12,port); if (byte_equal(ip,16,V6loopback)) return socket_connect4(s,ip4loopback,port);#ifdef LIBC_HAS_IP6 } byte_zero(&sa,sizeof sa); sa.sin6_family = PF_INET6; uint16_pack_big((char *) &sa.sin6_port,port); sa.sin6_flowinfo = 0; sa.sin6_scope_id = scope_id; byte_copy((char *) &sa.sin6_addr,16,ip); return connect(s,(struct sockaddr *) &sa,sizeof sa);#else errno=error_proto; return -1;#endif}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?