网络子系统76_套接字绑定
来源:互联网 发布:怎么在淘宝上加人 编辑:程序博客网 时间:2024/06/06 12:43
//绑定套接字到地址//步骤://1.根据用户空间的文件描述符查找socket描述符//2.复制地址信息到内核空间//3.由具体的协议族完成绑定1.1 SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen){struct socket *sock;struct sockaddr_storage address;int err, fput_needed;//通过用户空间文件描述符查找socket描述符sock = sockfd_lookup_light(fd, &err, &fput_needed);if (sock) {//复制用户空间的地址信息到内核err = move_addr_to_kernel(umyaddr, addrlen, &address);//由具体的协议层完成绑定sock->ops->bind(sock, (struct sockaddr *)&address, addrlen);fput_light(sock->file, fput_needed);}return err;}//根据用户空间文件描述符查找socket描述符//步骤://1.交由文件系统通过用户空间的文件描述符查找struct file结构//2.file->private_data指向socket结构2.1 static struct socket *sockfd_lookup_light(int fd, int *err, int *fput_needed){struct file *file;struct socket *sock;*err = -EBADF;//由文件系统查找文件描述符file = fget_light(fd, fput_needed);if (file) {//file->private_data指向socket结构sock = sock_from_file(file, err);if (sock)return sock;fput_light(file, *fput_needed);}return NULL;}
0 0
- 网络子系统76_套接字绑定
- 网络子系统75_套接字创建
- 网络子系统77_套接字接收
- 网络子系统78_inet套接字创建
- VS2005 WINSOCK 网络端口 绑定套接字
- 网络编程学习_套接字选项
- Java_网络编程_套接字;
- 网络子系统13_邻居子系统状态机
- 网络子系统61_路由子系统初始化
- 网络子系统74_邻居子系统结构图
- C#网络编程002_套接字解释
- 黑马程序员_网络编程之套接字
- java编程_socket_套接字_网络编程
- java编程_socket_套接字_网络编程
- java编程_socket_套接字_网络编程
- android网络编程_自寻址套接字Data…
- 网络子系统2_设备子系统相关的初始化
- 网络子系统12_邻居子系统垃圾回收
- Android的VideoView如何循环播放
- unity开发 --------- c# 基本语法 001
- lighttpd fastcgi
- BroadcastReceiver子类--AppWidgetProvider(管理桌面控件)之三
- 非常好
- 网络子系统76_套接字绑定
- 利用CRT库函数检查内存泄漏
- 部分心理活动与生理反应对应联系
- 增加普通用户的sudo权限,禁止root用户登录
- jQuery填充剩余宽度
- freemarker 介绍 入门
- javacript之switch
- 幸福女人不可缺少8种朋友
- Opencv4Android安装终于成功,分享安装过程中的bug。