xref: /illumos-gate/usr/src/cmd/backup/include/byteorder.h (revision 533affcbc7fc4d0c8132976ea454aaa715fe2307)
1 /*
2  * CDDL HEADER START
3  *
4  * The contents of this file are subject to the terms of the
5  * Common Development and Distribution License, Version 1.0 only
6  * (the "License").  You may not use this file except in compliance
7  * with the License.
8  *
9  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10  * or http://www.opensolaris.org/os/licensing.
11  * See the License for the specific language governing permissions
12  * and limitations under the License.
13  *
14  * When distributing Covered Code, include this CDDL HEADER in each
15  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16  * If applicable, add the following below this CDDL HEADER, with the
17  * fields enclosed by brackets "[]" replaced with your own identifying
18  * information: Portions Copyright [yyyy] [name of copyright owner]
19  *
20  * CDDL HEADER END
21  */
22 /*
23  * Copyright 1990-1998, 2003 Sun Microsystems, Inc.  All rights reserved.
24  * Use is subject to license terms.
25  */
26 
27 #ifndef	_BYTEORDER_H
28 #define	_BYTEORDER_H
29 
30 #include <stdio.h>
31 #include <sys/fs/ufs_fsdir.h>
32 #include <sys/fs/ufs_acl.h>
33 
34 #ifdef	__cplusplus
35 extern "C" {
36 #endif
37 
38 #define	SUPPORTS_MTB_TAPE_FORMAT
39 #include <protocols/dumprestore.h>
40 #include <assert.h>
41 
42 struct byteorder_ctx {
43 	int initialized;
44 	int Bcvt;
45 };
46 
47 #ifdef __STDC__
48 extern struct byteorder_ctx *byteorder_create(void);
49 extern void byteorder_destroy(struct byteorder_ctx *);
50 extern void byteorder_banner(struct byteorder_ctx *, FILE *);
51 extern void swabst(char *, uchar_t *);
52 extern uint32_t swabl(uint32_t);
53 extern int normspcl(struct byteorder_ctx *, struct s_spcl *, int *, int, int);
54 extern void normdirect(struct byteorder_ctx *, struct direct *);
55 extern void normacls(struct byteorder_ctx *, ufs_acl_t *, int);
56 #else /* __STDC__ */
57 extern struct byteorder_ctx *byteorder_create();
58 extern void byteorder_destroy();
59 extern void byteorder_banner();
60 extern void swabst();
61 extern uint32_t swabl();
62 extern int normspcl();
63 extern void normdirect();
64 extern void normacls();
65 #endif /* __STDC__ */
66 
67 #ifdef	__cplusplus
68 }
69 #endif
70 
71 #endif /* _BYTEORDER_H */
72