diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2004-06-09 19:05:09 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2004-06-09 19:05:09 +0000 |
commit | a170abec0842d3f027a9ea7f4aa1af9642d21bc7 (patch) | |
tree | 481dcced408b1f104d97915fbc7130d4d44e34c3 /newlib/libc/machine/arm/access.c | |
parent | cc24f9b66949336abfc7946a9d3f972bb4402743 (diff) | |
download | cygnal-a170abec0842d3f027a9ea7f4aa1af9642d21bc7.tar.gz cygnal-a170abec0842d3f027a9ea7f4aa1af9642d21bc7.tar.bz2 cygnal-a170abec0842d3f027a9ea7f4aa1af9642d21bc7.zip |
2004-06-09 Toralf Lund <toralf@procaptura.com>
* libc/sys/arm/setjmp.S, libc/sys/arm/access.c: Move
files from libc/sys/arm to libc/machine/arm.
* libc/machine/arm/Makefile.am, libc/machine/arm/Makefile.in: Add
library build support for files moved from libc/sys/arm.
* libc/sys/arm/Makefile.am, libc/sys/arm/Makefile.in: Remove
references to access and setjmp.
* configure.host: Add checks for newlib_may_supply_syscalls to
determine whether or not to use sys/arm directory and use
special compiler flags: ARM_RDI_MONITOR and ARM_RDP_MONITOR.
Diffstat (limited to 'newlib/libc/machine/arm/access.c')
-rw-r--r-- | newlib/libc/machine/arm/access.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/newlib/libc/machine/arm/access.c b/newlib/libc/machine/arm/access.c new file mode 100644 index 000000000..8e08b3a7f --- /dev/null +++ b/newlib/libc/machine/arm/access.c @@ -0,0 +1,33 @@ +/* This is file ACCESS.C */ +/* + * Copyright (C) 1993 DJ Delorie + * All rights reserved. + * + * Redistribution and use in source and binary forms is permitted + * provided that the above copyright notice and following paragraph are + * duplicated in all such forms. + * + * This file is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + */ + +#include <fcntl.h> +#include <sys/stat.h> +#include <unistd.h> + +int access(const char *fn, int flags) +{ + struct stat s; + if (stat(fn, &s)) + return -1; + if (s.st_mode & S_IFDIR) + return 0; + if (flags & W_OK) + { + if (s.st_mode & S_IWRITE) + return 0; + return -1; + } + return 0; +} + |