Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

lib/poptK.c

Go to the documentation of this file.
00001 
00006 #include "system.h"
00007 
00008 #include <rpmcli.h>
00009 
00010 #include "debug.h"
00011 
00012 struct rpmSignArguments_s rpmKArgs =
00013         { RESIGN_NONE, CHECKSIG_ALL, 0, NULL };
00014 
00015 #define POPT_ADDSIGN            1005
00016 #define POPT_RESIGN             1006
00017 
00020 static void signArgCallback( /*@unused@*/ poptContext con,
00021                 /*@unused@*/ enum poptCallbackReason reason,
00022                 const struct poptOption * opt, /*@unused@*/ const char * arg,
00023                 /*@unused@*/ const void * data)
00024         /*@modifies rpmKArgs @*/
00025 {
00026     struct rpmSignArguments_s * rka = &rpmKArgs;
00027 
00028     switch (opt->val) {
00029     case 'K':
00030         rka->addSign = RESIGN_CHK_SIGNATURE;
00031         rka->sign = 0;
00032         break;
00033 
00034     case POPT_RESIGN:
00035         rka->addSign = RESIGN_NEW_SIGNATURE;
00036         rka->sign = 1;
00037         break;
00038 
00039     case POPT_ADDSIGN:
00040         rka->addSign = RESIGN_ADD_SIGNATURE;
00041         rka->sign = 1;
00042         break;
00043     }
00044 }
00045 
00048 struct poptOption rpmSignPoptTable[] = {
00049  { NULL, '\0', POPT_ARG_CALLBACK | POPT_CBFLAG_INC_DATA,
00050         signArgCallback, 0, NULL, NULL },
00051  { "addsign", '\0', 0, 0, POPT_ADDSIGN,
00052         N_("add a signature to a package"), NULL },
00053  { "resign", '\0', 0, 0, POPT_RESIGN,
00054         N_("sign a package (discard current signature)"), NULL },
00055  { "sign", '\0', POPT_ARGFLAG_DOC_HIDDEN, &rpmKArgs.sign, 0,
00056         N_("generate signature"), NULL },
00057  { "checksig", 'K', 0, 0, 'K',
00058         N_("verify package signature"), NULL },
00059  { "nogpg", '\0', POPT_BIT_CLR,
00060         &rpmKArgs.checksigFlags, CHECKSIG_GPG,
00061         N_("skip any GPG signatures"), NULL },
00062  { "nopgp", '\0', POPT_BIT_CLR|POPT_ARGFLAG_DOC_HIDDEN,
00063         &rpmKArgs.checksigFlags, CHECKSIG_PGP,
00064         N_("skip any PGP signatures"), NULL },
00065  { "nomd5", '\0', POPT_BIT_CLR,
00066         &rpmKArgs.checksigFlags, CHECKSIG_MD5,
00067         N_("do not verify file md5 checksums"), NULL },
00068 
00069    POPT_TABLEEND
00070 };

Generated at Thu Sep 6 11:25:41 2001 for rpm by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001