]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blob - include/handle.h
7811d032484c35d91460ae3bc63bfac07e981a4e
[thirdparty/xfsprogs-dev.git] / include / handle.h
1 /*
2 * Copyright (c) 1995-2001 Silicon Graphics, Inc. All Rights Reserved.
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of version 2.1 of the GNU Lesser General Public License
6 * as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it would be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11 *
12 * Further, this software is distributed without any warranty that it is
13 * free of the rightful claim of any third person regarding infringement
14 * or the like. Any license provided herein, whether implied or
15 * otherwise, applies only to this software file. Patent licenses, if
16 * any, provided herein do not apply to combinations of this program with
17 * other software, or any other product whatsoever.
18 *
19 * You should have received a copy of the GNU Lesser General Public
20 * License along with this program; if not, write the Free Software
21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307,
22 * USA.
23 *
24 * Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
25 * Mountain View, CA 94043, or:
26 *
27 * http://www.sgi.com
28 *
29 * For further information regarding this notice, see:
30 *
31 * http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
32 */
33 #ifndef __HANDLE_H__
34 #define __HANDLE_H__
35
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39
40 struct fsdmidata;
41 struct attrlist_cursor;
42
43 extern int path_to_handle (char *__path, void **__hanp, size_t *__hlen);
44 extern int path_to_fshandle (char *__path, void **__hanp, size_t *__hlen);
45 extern int fd_to_handle (int __fd, void **__hanp, size_t *__hlen);
46 extern int handle_to_fshandle (void *__hanp, size_t __hlen, void **__fshanp,
47 size_t *__fshlen);
48 extern int handle_to_fsfd (void *__hanp);
49 extern void free_handle (void *__hanp, size_t __hlen);
50 extern int open_by_handle (void *__hanp, size_t __hlen, int __rw);
51 extern int readlink_by_handle (void *__hanp, size_t __hlen, void *__buf,
52 size_t __bs);
53 extern int attr_multi_by_handle (void *__hanp, size_t __hlen, void *__buf,
54 int __rtrvcnt, int __flags);
55 extern int attr_list_by_handle (void *__hanp, size_t __hlen, void *__buf,
56 size_t __bufsize, int __flags,
57 struct attrlist_cursor *__cursor);
58 extern int fssetdm_by_handle (void *__hanp, size_t __hlen,
59 struct fsdmidata *__fsdmi);
60
61 #ifdef __cplusplus
62 }
63 #endif
64
65 #endif /* __HANDLE_H__ */