xref: /illumos-gate/usr/src/cmd/backup/include/byteorder.h (revision a61ed2ce7a86a4d6428f2a83eb4739fae945447e)
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 #pragma ident	"%Z%%M%	%I%	%E% SMI"
31 
32 #include <stdio.h>
33 #include <sys/fs/ufs_fsdir.h>
34 #include <sys/fs/ufs_acl.h>
35 
36 #ifdef	__cplusplus
37 extern "C" {
38 #endif
39 
40 #define	SUPPORTS_MTB_TAPE_FORMAT
41 #include <protocols/dumprestore.h>
42 #include <assert.h>
43 
44 struct byteorder_ctx {
45 	int initialized;
46 	int Bcvt;
47 };
48 
49 #ifdef __STDC__
50 extern struct byteorder_ctx *byteorder_create(void);
51 extern void byteorder_destroy(struct byteorder_ctx *);
52 extern void byteorder_banner(struct byteorder_ctx *, FILE *);
53 extern void swabst(char *, uchar_t *);
54 extern uint32_t swabl(uint32_t);
55 extern int normspcl(struct byteorder_ctx *, struct s_spcl *, int *, int, int);
56 extern void normdirect(struct byteorder_ctx *, struct direct *);
57 extern void normacls(struct byteorder_ctx *, ufs_acl_t *, int);
58 #else /* __STDC__ */
59 extern struct byteorder_ctx *byteorder_create();
60 extern void byteorder_destroy();
61 extern void byteorder_banner();
62 extern void swabst();
63 extern uint32_t swabl();
64 extern int normspcl();
65 extern void normdirect();
66 extern void normacls();
67 #endif /* __STDC__ */
68 
69 #ifdef	__cplusplus
70 }
71 #endif
72 
73 #endif /* _BYTEORDER_H */
74