home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 February / CHIP_2_98.iso / misc / src / rpm / tools / rpmsignature.c < prev   
C/C++ Source or Header  |  1997-09-17  |  610b  |  34 lines

  1. /* rpmsignature: spit out the signature portion of a package */
  2.  
  3. #include <stdio.h>
  4. #include <unistd.h>
  5. #include <fcntl.h>
  6.  
  7. #include "rpmlead.h"
  8. #include "signature.h"
  9.  
  10. int main(int argc, char **argv)
  11. {
  12.     int fd;
  13.     struct rpmlead lead;
  14.     Header sig;
  15.     
  16.     if (argc == 1) {
  17.     fd = 0;
  18.     } else {
  19.     fd = open(argv[1], O_RDONLY, 0644);
  20.     }
  21.  
  22.     readLead(fd, &lead);
  23.     rpmReadSignature(fd, &sig, lead.signature_type);
  24.     switch (lead.signature_type) {
  25.       case RPMSIG_NONE:
  26.     fprintf(stderr, "No signature available.\n");
  27.     break;
  28.       default:
  29.     rpmWriteSignature(1, sig);
  30.     }
  31.     
  32.     return 0;
  33. }
  34.