]>
Commit | Line | Data |
---|---|---|
bd8757b3 APB |
1 | /* $Id: jartool.h,v 1.4 2000/08/24 15:23:35 cory Exp $ |
2 | ||
3 | $Log: jartool.h,v $ | |
4 | Revision 1.4 2000/08/24 15:23:35 cory | |
5 | Set version number since I think we can let this one out. | |
6 | ||
7 | Revision 1.3 2000/08/23 19:42:17 cory | |
8 | Added support for more Unix platforms. The following code has been hacked | |
9 | to work on AIX, Solaris, True 64, and HP-UX. | |
10 | Added bigendian check. Probably works on most big and little endian platforms | |
11 | now. | |
12 | ||
13 | Revision 1.2 1999/12/06 03:47:20 toast | |
14 | fixing version string | |
15 | ||
16 | Revision 1.1.1.1 1999/12/06 03:08:24 toast | |
17 | initial checkin.. | |
18 | ||
19 | ||
20 | ||
21 | Revision 1.6 1999/05/10 09:16:08 burnsbr | |
22 | *** empty log message *** | |
23 | ||
24 | Revision 1.5 1999/04/27 10:04:20 burnsbr | |
25 | configure support | |
26 | ||
27 | Revision 1.4 1999/04/26 02:36:15 burnsbr | |
28 | changed RDSZ to 4096 from 512 | |
29 | ||
30 | Revision 1.3 1999/04/23 12:00:29 burnsbr | |
31 | modified zipentry struct | |
32 | ||
33 | ||
34 | */ | |
35 | ||
36 | /* | |
37 | jartool.h - generic defines, struct defs etc. | |
38 | Copyright (C) 1999 Bryan Burns | |
39 | ||
40 | This program is free software; you can redistribute it and/or | |
41 | modify it under the terms of the GNU General Public License | |
42 | as published by the Free Software Foundation; either version 2 | |
43 | of the License, or (at your option) any later version. | |
44 | ||
45 | This program is distributed in the hope that it will be useful, | |
46 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
47 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
48 | GNU General Public License for more details. | |
49 | ||
50 | You should have received a copy of the GNU General Public License | |
51 | along with this program; if not, write to the Free Software | |
52 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | |
53 | */ | |
54 | ||
97b62d47 MK |
55 | #ifndef __FASTJAR_JARTOOL_H__ |
56 | #define __FASTJAR_JARTOOL_H__ | |
57 | ||
58 | #include <sys/types.h> | |
bd8757b3 APB |
59 | #include "config.h" |
60 | ||
61 | #define ACTION_NONE 0 | |
62 | #define ACTION_CREATE 1 | |
63 | #define ACTION_EXTRACT 2 | |
64 | #define ACTION_UPDATE 3 | |
65 | #define ACTION_LIST 4 | |
66 | ||
67 | #define TRUE 1 | |
68 | #define FALSE 0 | |
69 | ||
70 | /* Amount of bytes to read at a time. You can change this to optimize for | |
71 | your system */ | |
72 | #define RDSZ 4096 | |
73 | ||
74 | /* Change these to match your system: | |
75 | ub1 == unsigned 1 byte word | |
76 | ub2 == unsigned 2 byte word | |
77 | ub4 == unsigned 4 byte word | |
78 | */ | |
79 | #if SIZEOF_CHAR == 1 | |
80 | typedef unsigned char ub1; | |
81 | #else | |
82 | typedef u_int8_t ub1; | |
83 | #endif | |
84 | ||
85 | #if SIZEOF_SHORT == 2 | |
86 | typedef unsigned short ub2; | |
87 | #elif SIZEOF_INT == 2 | |
88 | typedef unsigned int ub2; | |
89 | #else | |
90 | typedef u_int16_t ub2; | |
91 | #endif | |
92 | ||
93 | #if SIZEOF_INT == 4 | |
94 | typedef unsigned int ub4; | |
95 | #elif SIZEOF_LONG == 4 | |
96 | typedef unsigned long ub4; | |
79453222 | 97 | #elif defined(HAVE_LONG_LONG) && SIZEOF_LONG_LONG == 4 |
bd8757b3 APB |
98 | typedef unsigned long long ub4; |
99 | #else | |
100 | typedef u_int32_t ub4; | |
101 | #endif | |
102 | ||
103 | struct zipentry { | |
104 | ub2 mod_time; | |
105 | ub2 mod_date; | |
106 | ub4 crc; | |
107 | ub4 csize; | |
108 | ub4 usize; | |
109 | ub4 offset; | |
110 | ub1 compressed; | |
97b62d47 | 111 | ub2 flags; |
bd8757b3 APB |
112 | char *filename; |
113 | ||
114 | struct zipentry *next_entry; | |
115 | }; | |
116 | ||
117 | typedef struct zipentry zipentry; | |
97b62d47 MK |
118 | |
119 | #endif /* __FASTJAR_JARTOOL_H__ */ |