黑客 samba - 如何从 struct fd_handle 获取目录

发布于 2024-07-14 17:07:54 字数 218 浏览 7 评论 0原文

我正在破解一些 samba 内部结构,我想记录 read_file 和 write_file 中写入的内容,确切地说我想获取文件名、目录以及写入的字节数。

在struct files_struct中,定义了文件名(char * fsp_name),我可以计算写入的字节数,但在files_struct中没有目录字段。

有什么办法,如何确定 samba guts 中打开文件的目录吗?

i'm hacking some samba internals, and I want to log, what's written in read_file and write_file, exactly I want to get file name, directory, and how much bytes are written.

in struct files_struct, there is defined file name (char* fsp_name), and I can count number of written bytes, but in files_struct there is no field with directory.

Is there any way, how to determine opened file's directory in samba guts?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

污味仙女 2024-07-21 17:07:54

假设 char* fsp_name 包含完整文件(而不是相对名称),您可以使用 strpbrk () (man 3 strpbrk) 吗? 循环搜索“/”,直到返回NULL。 那么你的目录就是从fsp_name到它上次返回的指针。

Assuming that the char* fsp_name contains the full file (and not the relative name), could you use strpbrk () (man 3 strpbrk)? Loop searching for "/", until it returns NULL. Then your directory is from fsp_name to the pointer it returned the last time.

删除会话 2024-07-21 17:07:54

好的,那么 - 解决方案:
files_struct 包含“conn”字段,其中包含“char * origpath” - 包含当前文件的目录。

OK, so - solution:
files_struct contains 'conn' field, which has 'char * origpath' - which contains current file's directory.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文