]>
git.saurik.com Git - apple/libc.git/blob - libdarwin/h/dirstat.h
2 * Copyright (c) 2017 Apple Inc. All rights reserved.
4 * @APPLE_APACHE_LICENSE_HEADER_START@
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
18 * @APPLE_APACHE_LICENSE_HEADER_END@
24 #include <Availability.h>
25 #include <sys/types.h>
30 /* Fail if the file system does not support fast directory sizing on the provided directory */
31 #define DIRSTAT_FAST_ONLY 0x1
33 /* Do not use filesystem support for directory sizing. */
34 #define DIRSTAT_FORCE_FALLBACK 0x2
37 * NOT ABI: the size of this structure may grow. You must pass the current
38 * size of this structure in as the dirstat_size argument to the functions
46 /* Returns -1 on error and sets errno. Does not cross file-system boundaries. */
47 __API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0))
48 int dirstat_np(const char *path
, int flags
, struct dirstat
*ds
, size_t dirstat_size
);
50 __API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0))
51 int dirstatat_np(int dfd
, const char *path
, int flags
, struct dirstat
*ds
, size_t dirstat_size
);
55 #endif // __DIRSTAT_H__