X-Git-Url: https://yaffs.net/gitweb/?a=blobdiff_plain;f=direct%2Ftimothy_tests%2Fmirror_tests%2Flinux_test_open.c;h=871dc5678eaba9aa6d741e4ab8135215db402c9c;hb=6648cbf52d6695755941ff8607fd7a0cda542e05;hp=7817c3acd379422a4f5053582fce25b79ffd7085;hpb=137f935f6d622bffdef2fece0c5194e85f5174e9;p=yaffs2.git diff --git a/direct/timothy_tests/mirror_tests/linux_test_open.c b/direct/timothy_tests/mirror_tests/linux_test_open.c index 7817c3a..871dc56 100644 --- a/direct/timothy_tests/mirror_tests/linux_test_open.c +++ b/direct/timothy_tests/mirror_tests/linux_test_open.c @@ -1,7 +1,7 @@ /* * YAFFS: Yet another FFS. A NAND-flash specific file system. * - * Copyright (C) 2002-2010 Aleph One Ltd. + * Copyright (C) 2002-2011 Aleph One Ltd. * for Toby Churchill Ltd and Brightstar Engineering * * Created by Timothy Manning @@ -15,11 +15,24 @@ int linux_test_open(arg_temp *args_struct) { - char path[200]; - char message[100]; + char path[250]; + char message[150]; + int output; join_paths(linux_struct.root_path,args_struct->string1, path ); sprintf(message,"file path: %s\n",path); print_message(3,message); - return open(path,args_struct->char1,args_struct->char2); + output= open(path,args_struct->char1 & (O_TRUNC|O_EXCL|O_CREAT|O_APPEND) ,args_struct->char2& (S_IREAD|S_IWRITE)); + if (output>=0){ + output=close(output); + if (output<0) { + print_message(3,"failed to close handle\n"); + return -1; + } else { + return 1; + } + } else { + print_message(3,"failed to open file\n"); + return -1; + } }