跨平台的目录遍历实现方法(windows和linux已经测试)

dirent.h是gcc下的一个头文件,在windows中是没有的。这个文件中封装了几个对目录进行操作函数:

static DIR *opendir (const char *dirname);
static struct dirent *readdir (DIR *dirp);
static int closedir (DIR *dirp);

对于在linux->windows之间进行程序移植来讲常常会造成一些困扰。

有一个开源的源码可以解决这个问题。

源码可以从下面的链接下载得到,这个源码是跨平台的。

http://softagalleria.net/dirent.php

这里包含了一个头文件dirent.h,这个头文件就是实现。

其他的几个c文件是怎么样使用。我在vs2008和ubuntu下测试了find.c这个文件,目录遍历功能一切正常。

时间: 2024-11-05 02:11:26

跨平台的目录遍历实现方法(windows和linux已经测试)的相关文章

14.Windows 与 Linux 文件共享

14. Windows 与 Linux 文件共享 实验要求: 1. 使用WinSCP工具实现windows与虚拟机之间文件共享. 2. 使用Samba服务实现windows与虚拟机之间文件共享. 实验器材: 软件: 1. 安装了RHEL6的vmware虚拟机. 2. WinSCP工具. 硬件: 1.PC机一台. 背景知识: 1. WinSCP: WinSCP 是一个 Windows 环境下使用 SSH 的开源图形化 SFTP 客户端.同时支持SCP 协议.它的主要功能就是在本地与远程计算机间安全

在Linux下访问Windows共享目录的配置方法

在Linux下访问Windows共享目录的配置方法 1.在Windows上设置一个共享目录 如:将d:\RedHat_disk设置为共享目录 2.在Windows上创建一个用户,如tommy,密码111111 3.将tommy用户加入到共享目录d:\redhat_disk的访问组中,并设定tommy 对该共享目录有完全控制权限(读.写) 4.在Linux下安装samba-client客户端 # yum install samba-client 5.安装cifs-utils软件包 # yum in

小白日记37:kali渗透测试之Web渗透-手动漏洞挖掘(三)-目录遍历、文件包含

手动漏洞挖掘 漏洞类型 #Directory traversal 目录遍历[本台机器操作系统上文件进行读取] 使用者可以通过浏览器/URL地址或者参数变量内容,可以读取web根目录[默认为:/var/www/]之外的其他操作系统文件(如:/etc/passwd/).形成根源:目录权限限制不严格 #File include文件包含[1.include本地文件包含LFI:2.远程系统文件包含RFI(可传入木马)] 通常为如include函数,可以将web根目录以外的目录包含进来.根源:include

Windows、Linux下文件操作(写、删除)错误的产生原因、及解决方法

catalog 0. 引言 1. Linux平台上涉及的File IO操作 2. Windows平台上涉及的File IO操作 0. 引言 本文试图讨论在windows.linux操作系统上基于C库进行文件IO操作时,可能遇到的错误,及其解决方法,主机安全攻防产品除了需要将安全攻防上的领域知识固化到程序实现上之外,还极度依赖关联系统本身.编程语言库的特性,原则上,并不是所有的安全需求都能100%地落实到程序设计中,这需要我们对操作系统.编程语言本身具有较深的理解 Relevant Link: h

.Net Core 跨平台:一个简单程序的多平台(windows、Linux、osx)发布

.Net Core 跨平台:一个简单程序的多平台(windows.Linux.osx)发布 .Net Core 3.0 已于2019年9月23日发布了,包含了一些新特性,具体参见Announcing .NET Core 3.0 .NET Core是一个跨平台,高性能,开放源代码框架,用于构建现代的,基于云的,Internet连接的应用程序框架,其具有一下优点和特点: 跨平台:.NET Framework应用程序仅在Windows平台上运行,而.NET Core应用程序可以在Windows平台上开

[cyber security][php]pfSense目录遍历漏洞分析

0×00 导言 pfSense是一个基于FreeBSD,专为防火墙和路由器功能定制的开源版本. 在本文中,我们将向大家介绍在pfSense的2.1.3以及更低版本中的CVE-2014-4690漏洞:对于更高的版本来说,pfSense已经修复了这个漏洞. 0×01 pkg_mgr_install.php脚本中的LFI漏洞 首先,让我们来看一下来自/usr/local/www/pkg_mgr_install.php脚本中的一段代码:  if ($_GET) {   $pkgname = str_re

[IIS][ASP.NET]“拒绝访问临时目录”的解决方法

除了设置windows临时目录权限外,还有一种原因:后来在应用程序池设置中将"加载用户配置文件"(Load User Profile)设置为true,问题就解决. [IIS][ASP.NET]"拒绝访问临时目录"的解决方法,布布扣,bubuko.com

什么是目录遍历攻击及如何防护

前几日研究某Web项目源代码,使用的是ThinkPHP框架,根目录下有个www目录,存放项目模块的入口文件.顿时茫然,本人一般直接把入口文件放在web根目录,而这里却是www目录,不知www目录是何作用,遂问老大,老大回:你查查什么是目录遍历攻击.所以才懂得www目录之所以存在的目的... 描述 攻击人员通过目录便利攻击可以获取系统文件及服务器的配置文件等等.一般来说,他们利用服务器API.文件标准权限进行攻击.严格来说,目录遍历攻击并不是一种web漏洞,而是网站设计人员的设计“漏洞”.如果we

跨平台开发的两种方法及其对比

为什么移动应用开发对很多开发人员来说,都是一件令人头痛的事?这是因为,每种流行的移动平台都具有自身的开发语言.开发工具及其特征. 这就意味着,你开发一款应用不但需要花费 3 倍的开发时间,并且需要维护 3 个项目,因此开发原生应用的代价是非常巨大的. 跨平台开发的两种方法: 幸运的是,有很多公司已经在研究如何使原生 APP的开发变得简单,目前为止多平台的开发方法主要有两种: 第一种:以 Web应用为内核,填充到原生 app中(即 PhoneGap 提供的解决方案). 这种方法能够吸引那些想要转到