From: Petr Salinger Date: Wed, 24 Mar 2010 23:28:58 +0000 (+1100) Subject: Add missed (new) header file from previous commit - GNU/kFreeBSD builds. X-Git-Tag: v3.1.2~7 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2d2a5db511640fa02a37b45d44f862f9add92757;p=thirdparty%2Fxfsprogs-dev.git Add missed (new) header file from previous commit - GNU/kFreeBSD builds. --- diff --git a/include/gnukfreebsd.h b/include/gnukfreebsd.h new file mode 100644 index 000000000..0d8843eb2 --- /dev/null +++ b/include/gnukfreebsd.h @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2004-2006 Silicon Graphics, Inc. + * All Rights Reserved. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it would be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ +#ifndef __XFS_KFREEBSD_H__ +#define __XFS_KFREEBSD_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define constpp char * const * + +#define EFSCORRUPTED 990 /* Filesystem is corrupted */ + +typedef off_t xfs_off_t; +typedef __uint64_t xfs_ino_t; +typedef __uint32_t xfs_dev_t; +typedef __int64_t xfs_daddr_t; +typedef char* xfs_caddr_t; +typedef off_t loff_t; + +#ifndef _UCHAR_T_DEFINED +typedef unsigned char uchar_t; +#define _UCHAR_T_DEFINED 1 +#endif +typedef enum { B_FALSE,B_TRUE } boolean_t; + +#define HAVE_FID 1 + +static __inline__ int xfsctl(const char *path, int fd, int cmd, void *p) +{ + return ioctl(fd, cmd, p); +} + +static __inline__ int platform_test_xfs_fd(int fd) +{ + struct statfs buf; + if (fstatfs(fd, &buf) < 0) + return 0; + return strncmp(buf.f_fstypename, "xfs", 4) == 0; +} + +static __inline__ int platform_test_xfs_path(const char *path) +{ + struct statfs buf; + if (statfs(path, &buf) < 0) + return 0; + return strncmp(buf.f_fstypename, "xfs", 4) == 0; +} + +static __inline__ int platform_fstatfs(int fd, struct statfs *buf) +{ + return fstatfs(fd, buf); +} + +static __inline__ void platform_getoptreset(void) +{ + extern int optind; + optind = 0; +} + +static __inline__ int platform_uuid_compare(uuid_t *uu1, uuid_t *uu2) +{ + return uuid_compare(*uu1, *uu2); +} + +static __inline__ void platform_uuid_unparse(uuid_t *uu, char *buffer) +{ + uuid_unparse(*uu, buffer); +} + +static __inline__ int platform_uuid_parse(char *buffer, uuid_t *uu) +{ + return uuid_parse(buffer, *uu); +} + +static __inline__ int platform_uuid_is_null(uuid_t *uu) +{ + return uuid_is_null(*uu); +} + +static __inline__ void platform_uuid_generate(uuid_t *uu) +{ + uuid_generate(*uu); +} + +static __inline__ void platform_uuid_clear(uuid_t *uu) +{ + uuid_clear(*uu); +} + +static __inline__ void platform_uuid_copy(uuid_t *dst, uuid_t *src) +{ + uuid_copy(*dst, *src); +} + +#endif /* __XFS_KFREEBSD_H__ */