gpt4 book ai didi

c - 使用 BSD 套接字模拟事件的 FTP 连接

转载 作者:太空宇宙 更新时间:2023-11-04 07:35:19 26 4
gpt4 key购买 nike

我是套接字编程的新手,我正在尝试实现一个精简的类似 FTP 的程序。它使用两个 TCP 连接,一个作为控制连接,另一个作为数据连接。问题是我不知道如何使用服务器使用其端口 20 连接到客户端的 N+1 端口。请引用 here , 以资助更多。

最佳答案

要创建事件模式数据连接,您:

  • 通过getsockname()找到控件连接的本地地址;
  • 通过将端口号更改为 20 来修改此地址;
  • 使用socket() 创建另一个套接字;
  • 将新套接字绑定(bind)到使用 bind() 创建的端口 20 地址;
  • 使用 connect() 将套接字连接到客户端的地址/端口。

请注意,如果您的守护进程未以根用户身份运行,bind() 可能会失败,因为绑定(bind)低端口号是一项特权操作。

关于c - 使用 BSD 套接字模拟事件的 FTP 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9561665/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com