当我遇到套接字代码时,我正在使用glibc,有人可以解释发生了什么
这是我正在浏览的来源:
glibc source.我的具体问题来自于这个特定的功能集:
socket library.
例如(大多数功能都是这样设置的)socket / bind.c的源代码是: 19 #include <errno.h> 20 #include <sys/socket.h> 21 22 /* Give the socket FD the local address ADDR (which is LEN bytes long). */ 23 int 24 __bind (fd,addr,len) 25 int fd; 26 __CONST_SOCKADDR_ARG addr; 27 socklen_t len; 28 { 29 __set_errno (ENOSYS); 30 return -1; 31 } 32 33 weak_alias (__bind,bind) 34 35 stub_warning (bind) 36 #include <stub-tag.h> 我承认我没有花很多时间,但是实际功能的代码究竟在哪里呢?这是一个很好的范例吗? 解决方法
__bind函数是一个
stub:它是一个外部看起来像真实的东西(相同的原型)但不执行必要功能的函数.
绑定的真正实现取决于Glibc的编译操作系统.在Hurd,它定义在 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |