1 /* rpmarchive: spit out the main archive portion of a package */
16 int main(int argc, char **argv)
26 fdi = fdDup(STDIN_FILENO);
28 fdi = fdOpen(argv[1], O_RDONLY, 0644);
31 if (fdFileno(fdi) < 0) {
32 perror("cannot open package");
35 fdo = fdDup(STDOUT_FILENO);
37 rc = rpmReadPackageHeader(fdi, &hd, &isSource, NULL, NULL);
39 fprintf(stderr, _("argument is not an RPM package\n"));
42 fprintf(stderr, _("error reading header from package\n"));
46 stream = gzdopen(fdFileno(fdi), "r");
48 while ((ct = gzread(stream, &buffer, 1024)) > 0) {
49 fdWrite(fdo, &buffer, ct);
54 gzerror (stream, &zerror);
55 if (zerror == Z_ERRNO){
56 perror ("While uncompressing");
60 fprintf (stderr, "rpm2cpio: zlib: %s error\n", zlib_err [-zerror - 1]);