diff options
author | Timothy Manning <tfhmanning@gmail.com> | 2011-12-16 13:28:52 +1300 |
---|---|---|
committer | Timothy Manning <tfhmanning@gmail.com> | 2011-12-16 13:28:52 +1300 |
commit | 121c055437f23d9d6bc7b57d36ecf128b447013f (patch) | |
tree | 81e0fbb2690ff61535cc98cf88019abda9fb2e95 /direct/timothy_tests/yaffs_and_linux_mirror_tests/linux_test_write.c | |
parent | d7388fb75a13610d14d0afc397f826bd44c972e1 (diff) |
Have updated yaffs direct tests and added README files to the tests.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
Diffstat (limited to 'direct/timothy_tests/yaffs_and_linux_mirror_tests/linux_test_write.c')
-rw-r--r-- | direct/timothy_tests/yaffs_and_linux_mirror_tests/linux_test_write.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/direct/timothy_tests/yaffs_and_linux_mirror_tests/linux_test_write.c b/direct/timothy_tests/yaffs_and_linux_mirror_tests/linux_test_write.c new file mode 100644 index 0000000..b46c211 --- /dev/null +++ b/direct/timothy_tests/yaffs_and_linux_mirror_tests/linux_test_write.c @@ -0,0 +1,37 @@ +/* + * YAFFS: Yet another FFS. A NAND-flash specific file system. + * + * Copyright (C) 2002-2011 Aleph One Ltd. + * for Toby Churchill Ltd and Brightstar Engineering + * + * Created by Timothy Manning <timothy@yaffs.net> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include "linux_test_write.h" + +int linux_test_write(arg_temp *args_struct) +{ + char path[200]; + char message[200]; + int output=0; + int handle=-1; + join_paths(linux_struct.root_path,args_struct->string1, path ); + sprintf(message,"trying to write to: %s\nwith mode set to %o \n",path,args_struct->char1 ); + print_message(3,message); + printf("mode S_IREAD %d S_IWRITE %d\n",(args_struct->char2 & S_IREAD),(args_struct->char2 & S_IWRITE)); + handle=open(path,((args_struct->char1 &(O_TRUNC|O_EXCL|O_CREAT|O_APPEND))|O_RDWR),(args_struct->char2&(S_IREAD|S_IWRITE))); + printf("handle %d\n",handle); + if (handle<0){ + print_message(3,"failed to open a handle\n"); + return -1; //handle failed to open + } + sprintf(message,"trying to write: %d bytes into the file\n",strlen(args_struct->string2)); + print_message(3,message); + output=write(handle,args_struct->string2,strlen(args_struct->string2)); + close(handle); + return output; +} |