微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SCM_RIGHTS 发送具有较少权限的文件描述符

如何解决SCM_RIGHTS 发送具有较少权限的文件描述符

有没有办法使用 unix 套接字将文件描述符发送到另一个进程,但权限比打开时少?我对以下场景感兴趣:

  1. P1:使用 RW 权限打开文件“x”并获取文件描述符 fd
  2. P1:发送 fd 到具有只读权限的进程 P2
  3. P2:使用 fd 从文件中读取内容
  4. P1:使用 fd 向文件写入内容

解决方法

无法更改现有文件描述符的访问模式,或将其发送到具有不同访问模式的另一个进程。您可以做的最接近的事情是打开 "/dev/fd/%d""/proc/self/fd/%d" 以获取指向与旧文件相同的文件的新文件描述符,您可以将其设为只读,然后发送该文件到 P2。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。