Magellan Linux

Contents of /tags/mkinitrd-6_1_5/busybox/libbb/isdirectory.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 899 - (show annotations) (download)
Wed Aug 5 17:52:52 2009 UTC (14 years, 10 months ago) by niro
File MIME type: text/plain
File size: 796 byte(s)
tagged 'mkinitrd-6_1_5'
1 /* vi: set sw=4 ts=4: */
2 /*
3 * Utility routines.
4 *
5 * Based in part on code from sash, Copyright (c) 1999 by David I. Bell
6 * Permission has been granted to redistribute this code under the GPL.
7 *
8 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
9 */
10
11 #include <sys/stat.h>
12 #include "libbb.h"
13
14 /*
15 * Return TRUE if fileName is a directory.
16 * Nonexistent files return FALSE.
17 */
18 int FAST_FUNC is_directory(const char *fileName, const int followLinks, struct stat *statBuf)
19 {
20 int status;
21 struct stat astatBuf;
22
23 if (statBuf == NULL) {
24 /* use auto stack buffer */
25 statBuf = &astatBuf;
26 }
27
28 if (followLinks)
29 status = stat(fileName, statBuf);
30 else
31 status = lstat(fileName, statBuf);
32
33 status = (status == 0 && S_ISDIR(statBuf->st_mode));
34
35 return status;
36 }