Main Page   Modules   Compound List   File List   Compound Members   File Members   Related Pages  

tools/rpmheader.c

Go to the documentation of this file.
00001 /* rpmheader: spit out the header portion of a package */
00002 
00003 #include "system.h"
00004 
00005 #include "header.h"
00006 #include "rpmlead.h"
00007 #include "signature.h"
00008 #include "debug.h"
00009 
00010 int main(int argc, char **argv)
00011 {
00012     FD_t fdi, fdo;
00013     struct rpmlead lead;
00014     Header hd;
00015     int rc;
00016     
00017     setprogname(argv[0]);       /* Retrofit glibc __progname */
00018     if (argc == 1) {
00019         fdi = Fopen("-", "r.ufdio");
00020     } else {
00021         fdi = Fopen(argv[1], "r.ufdio");
00022     }
00023 
00024     if (fdi == NULL || Ferror(fdi)) {
00025         perror("input");
00026         exit(EXIT_FAILURE);
00027     }
00028 
00029     readLead(fdi, &lead);
00030     rpmReadSignature(fdi, NULL, lead.signature_type);
00031     hd = headerRead(fdi, (lead.major >= 3) ?
00032                     HEADER_MAGIC_YES : HEADER_MAGIC_NO);
00033     fdo = Fopen("-", "w.ufdio");
00034     rc = headerWrite(fdo, hd, HEADER_MAGIC_YES);
00035     
00036     return rc;
00037 }

Generated at Sun Apr 8 18:43:02 2001 for rpm by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000