mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-15 22:23:35 +08:00
Add support for dup2'ing files. Infrastructure and ROMFS done. Still need FAT, BINFS, NXFFS, and NFS
git-svn-id: http://svn.code.sf.net/p/nuttx/code/trunk@5516 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
@@ -89,15 +89,6 @@
|
||||
# error "You must not disable loadable modules via CONFIG_BINFMT_DISABLE in your configuration file"
|
||||
#endif
|
||||
|
||||
/* The redirection test does not work. This is because it tries to redirect
|
||||
* file as stdin. That won't work now because (1) the file descriptors must
|
||||
* be dup'ed when the new task is created, and (2) there is no support in
|
||||
* place for dup'ing file descriptors for anything other than sockets and
|
||||
* character drivers. This is a bug!
|
||||
*/
|
||||
|
||||
#define FILE_DUP_BUG 1
|
||||
|
||||
/* Describe the ROMFS file system */
|
||||
|
||||
#define SECTORSIZE 512
|
||||
@@ -147,9 +138,7 @@ static unsigned int g_mmstep; /* Memory Usage at beginning of test step */
|
||||
|
||||
static const char delimiter[] =
|
||||
"****************************************************************************";
|
||||
#ifndef FILE_DUP_BUG
|
||||
static const char g_redirect[] = "redirect";
|
||||
#endif
|
||||
static const char g_hello[] = "hello";
|
||||
static const char g_data[] = "testdata.txt";
|
||||
|
||||
@@ -375,8 +364,6 @@ int spawn_main(int argc, char *argv[])
|
||||
* Case 2: Simple program with redirection of stdin to a file input
|
||||
*************************************************************************/
|
||||
|
||||
#ifndef FILE_DUP_BUG
|
||||
|
||||
/* Output a seperated so that we can clearly discriminate the output of
|
||||
* this program from the others.
|
||||
*/
|
||||
@@ -463,7 +450,6 @@ int spawn_main(int argc, char *argv[])
|
||||
posix_spawnattr_dump(&attr);
|
||||
|
||||
mm_update(&g_mmstep, "after file_action/attr destruction");
|
||||
#endif
|
||||
|
||||
/* Clean-up */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user