00001
00002
00003 #include "system.h"
00004
00005 #include "rpmlead.h"
00006 #include "signature.h"
00007 #include "debug.h"
00008
00009 int main(int argc, char **argv)
00010 {
00011 FD_t fdi, fdo;
00012 struct rpmlead lead;
00013 Header sig;
00014
00015 setprogname(argv[0]);
00016 if (argc == 1) {
00017 fdi = Fopen("-", "r.ufdio");
00018 } else {
00019 fdi = Fopen(argv[1], "r.ufdio");
00020 }
00021 if (Ferror(fdi)) {
00022 fprintf(stderr, "%s: %s: %s\n", argv[0],
00023 (argc == 1 ? "<stdin>" : argv[1]), Fstrerror(fdi));
00024 exit(1);
00025 }
00026
00027 readLead(fdi, &lead);
00028 rpmReadSignature(fdi, &sig, lead.signature_type);
00029 switch (lead.signature_type) {
00030 case RPMSIGTYPE_NONE:
00031 fprintf(stderr, _("No signature available.\n"));
00032 break;
00033 default:
00034 fdo = Fopen("-", "w.ufdio");
00035 rpmWriteSignature(fdo, sig);
00036 break;
00037 }
00038
00039 return 0;
00040 }