@@ -46,34 +46,34 @@ get_data(void **datap, size_t *sizep, const char *archive) {
46
46
FILE * fp ;
47
47
48
48
if ((fp = fopen (archive , "rb" )) == NULL ) {
49
- if (errno != ENOENT ) {
50
- fprintf (stderr , "can't open %s: %s\n" , archive , strerror (errno ));
51
- return -1 ;
52
- }
49
+ if (errno != ENOENT ) {
50
+ fprintf (stderr , "can't open %s: %s\n" , archive , strerror (errno ));
51
+ return -1 ;
52
+ }
53
53
54
- * datap = NULL ;
55
- * sizep = 0 ;
54
+ * datap = NULL ;
55
+ * sizep = 0 ;
56
56
57
- return 0 ;
57
+ return 0 ;
58
58
}
59
59
60
60
if (fstat (fileno (fp ), & st ) < 0 ) {
61
- fprintf (stderr , "can't stat %s: %s\n" , archive , strerror (errno ));
62
- fclose (fp );
63
- return -1 ;
61
+ fprintf (stderr , "can't stat %s: %s\n" , archive , strerror (errno ));
62
+ fclose (fp );
63
+ return -1 ;
64
64
}
65
65
66
66
if ((* datap = malloc ((size_t )st .st_size )) == NULL ) {
67
- fprintf (stderr , "can't allocate buffer\n" );
68
- fclose (fp );
69
- return -1 ;
67
+ fprintf (stderr , "can't allocate buffer\n" );
68
+ fclose (fp );
69
+ return -1 ;
70
70
}
71
71
72
72
if (fread (* datap , 1 , (size_t )st .st_size , fp ) < (size_t )st .st_size ) {
73
- fprintf (stderr , "can't read %s: %s\n" , archive , strerror (errno ));
74
- free (* datap );
75
- fclose (fp );
76
- return -1 ;
73
+ fprintf (stderr , "can't read %s: %s\n" , archive , strerror (errno ));
74
+ free (* datap );
75
+ fclose (fp );
76
+ return -1 ;
77
77
}
78
78
79
79
fclose (fp );
@@ -95,25 +95,25 @@ use_data(void *data, size_t size, const char *archive) {
95
95
FILE * fp ;
96
96
97
97
if (data == NULL ) {
98
- if (remove (archive ) < 0 && errno != ENOENT ) {
99
- fprintf (stderr , "can't remove %s: %s\n" , archive , strerror (errno ));
100
- return -1 ;
101
- }
102
- return 0 ;
98
+ if (remove (archive ) < 0 && errno != ENOENT ) {
99
+ fprintf (stderr , "can't remove %s: %s\n" , archive , strerror (errno ));
100
+ return -1 ;
101
+ }
102
+ return 0 ;
103
103
}
104
104
105
105
if ((fp = fopen (archive , "wb" )) == NULL ) {
106
- fprintf (stderr , "can't open %s: %s\n" , archive , strerror (errno ));
107
- return -1 ;
106
+ fprintf (stderr , "can't open %s: %s\n" , archive , strerror (errno ));
107
+ return -1 ;
108
108
}
109
109
if (fwrite (data , 1 , size , fp ) < size ) {
110
- fprintf (stderr , "can't write %s: %s\n" , archive , strerror (errno ));
111
- fclose (fp );
112
- return -1 ;
110
+ fprintf (stderr , "can't write %s: %s\n" , archive , strerror (errno ));
111
+ fclose (fp );
112
+ return -1 ;
113
113
}
114
114
if (fclose (fp ) < 0 ) {
115
- fprintf (stderr , "can't write %s: %s\n" , archive , strerror (errno ));
116
- return -1 ;
115
+ fprintf (stderr , "can't write %s: %s\n" , archive , strerror (errno ));
116
+ return -1 ;
117
117
}
118
118
119
119
return 0 ;
@@ -130,31 +130,31 @@ main(int argc, char *argv[]) {
130
130
size_t size ;
131
131
132
132
if (argc < 2 ) {
133
- fprintf (stderr , "usage: %s archive\n" , argv [0 ]);
134
- return 1 ;
133
+ fprintf (stderr , "usage: %s archive\n" , argv [0 ]);
134
+ return 1 ;
135
135
}
136
136
archive = argv [1 ];
137
137
138
138
/* get buffer with zip archive inside */
139
139
if (get_data (& data , & size , archive ) < 0 ) {
140
- return 1 ;
140
+ return 1 ;
141
141
}
142
142
143
143
zip_error_init (& error );
144
144
/* create source from buffer */
145
145
if ((src = zip_source_buffer_create (data , size , 1 , & error )) == NULL ) {
146
- fprintf (stderr , "can't create source: %s\n" , zip_error_strerror (& error ));
147
- free (data );
148
- zip_error_fini (& error );
149
- return 1 ;
146
+ fprintf (stderr , "can't create source: %s\n" , zip_error_strerror (& error ));
147
+ free (data );
148
+ zip_error_fini (& error );
149
+ return 1 ;
150
150
}
151
151
152
152
/* open zip archive from source */
153
153
if ((za = zip_open_from_source (src , 0 , & error )) == NULL ) {
154
- fprintf (stderr , "can't open zip from source: %s\n" , zip_error_strerror (& error ));
155
- zip_source_free (src );
156
- zip_error_fini (& error );
157
- return 1 ;
154
+ fprintf (stderr , "can't open zip from source: %s\n" , zip_error_strerror (& error ));
155
+ zip_source_free (src );
156
+ zip_error_fini (& error );
157
+ return 1 ;
158
158
}
159
159
zip_error_fini (& error );
160
160
@@ -166,43 +166,43 @@ main(int argc, char *argv[]) {
166
166
167
167
/* close archive */
168
168
if (zip_close (za ) < 0 ) {
169
- fprintf (stderr , "can't close zip archive '%s': %s\n" , archive , zip_strerror (za ));
170
- return 1 ;
169
+ fprintf (stderr , "can't close zip archive '%s': %s\n" , archive , zip_strerror (za ));
170
+ return 1 ;
171
171
}
172
172
173
173
174
174
/* copy new archive to buffer */
175
175
176
176
if (zip_source_is_deleted (src )) {
177
- /* new archive is empty, thus no data */
178
- data = NULL ;
177
+ /* new archive is empty, thus no data */
178
+ data = NULL ;
179
179
}
180
180
else {
181
- zip_stat_t zst ;
182
-
183
- if (zip_source_stat (src , & zst ) < 0 ) {
184
- fprintf (stderr , "can't stat source: %s\n" , zip_error_strerror (zip_source_error (src )));
185
- return 1 ;
186
- }
187
-
188
- size = zst .size ;
189
-
190
- if (zip_source_open (src ) < 0 ) {
191
- fprintf (stderr , "can't open source: %s\n" , zip_error_strerror (zip_source_error (src )));
192
- return 1 ;
193
- }
194
- if ((data = malloc (size )) == NULL ) {
195
- fprintf (stderr , "malloc failed: %s\n" , strerror (errno ));
196
- zip_source_close (src );
197
- return 1 ;
198
- }
199
- if ((zip_uint64_t )zip_source_read (src , data , size ) < size ) {
200
- fprintf (stderr , "can't read data from source: %s\n" , zip_error_strerror (zip_source_error (src )));
201
- zip_source_close (src );
202
- free (data );
203
- return 1 ;
204
- }
205
- zip_source_close (src );
181
+ zip_stat_t zst ;
182
+
183
+ if (zip_source_stat (src , & zst ) < 0 ) {
184
+ fprintf (stderr , "can't stat source: %s\n" , zip_error_strerror (zip_source_error (src )));
185
+ return 1 ;
186
+ }
187
+
188
+ size = zst .size ;
189
+
190
+ if (zip_source_open (src ) < 0 ) {
191
+ fprintf (stderr , "can't open source: %s\n" , zip_error_strerror (zip_source_error (src )));
192
+ return 1 ;
193
+ }
194
+ if ((data = malloc (size )) == NULL ) {
195
+ fprintf (stderr , "malloc failed: %s\n" , strerror (errno ));
196
+ zip_source_close (src );
197
+ return 1 ;
198
+ }
199
+ if ((zip_uint64_t )zip_source_read (src , data , size ) < size ) {
200
+ fprintf (stderr , "can't read data from source: %s\n" , zip_error_strerror (zip_source_error (src )));
201
+ zip_source_close (src );
202
+ free (data );
203
+ return 1 ;
204
+ }
205
+ zip_source_close (src );
206
206
}
207
207
208
208
/* we're done with src */
0 commit comments