0
点赞
收藏
分享

微信扫一扫

(P14)miniftpd项目实战:被动模式的数据连接通道的创建改为由nobody进程来完成,用NLST(列出名字列表)实现目录的短清单


文章目录

  • ​​1.被动模式的数据连接通道的创建改为由nobody进程来完成​​
  • ​​2.用NLST(列出名字列表)实现目录的短清单​​

1.被动模式的数据连接通道的创建改为由nobody进程来完成

  • eg:ftpproto.c

int get_pasv_fd(session_t *sess)
int get_transfer_fd(session_t *sess)
int pasv_active(session_t *sess)

privparent.c

static void privop_pasv_active(session_t *sess)
static void privop_pasv_listen(session_t *sess)
static void privop_pasv_accept(session_t *sess)

ftpproto.c

int list_common(session_t *sess, int detail)

//封装了下,系统调用的相关代码最好是都封装在sysutil.c里面,这里是应用层的编码
const char *perms = statbuf_get_perms(&sbuf);

//封装了下
const char *datebuf = statbuf_get_date(&sbuf);

  • 测试1:测试被动模式的数据连接通道的创建改为由nobody进程来完成

2.用NLST(列出名字列表)实现目录的短清单

ftp的debug模式

(P14)miniftpd项目实战:被动模式的数据连接通道的创建改为由nobody进程来完成,用NLST(列出名字列表)实现目录的短清单_数据连接


(P14)miniftpd项目实战:被动模式的数据连接通道的创建改为由nobody进程来完成,用NLST(列出名字列表)实现目录的短清单_数据连接_02


ls命令会被转化为PORT命令和NLST命令,所以不能直接在客户端敲NLIST命令,因为在敲入NLST命令之前既没有敲入PORT命令也没有敲PASV命令

(P14)miniftpd项目实战:被动模式的数据连接通道的创建改为由nobody进程来完成,用NLST(列出名字列表)实现目录的短清单_封装_03

  • 测试2:用NLST(列出名字列表)实现目录的短清单

当前quit命令还没有实现,所以阻塞了

(P14)miniftpd项目实战:被动模式的数据连接通道的创建改为由nobody进程来完成,用NLST(列出名字列表)实现目录的短清单_数据连接_04


举报

相关推荐

0 条评论