static bool quiet;
#ifndef UCERT_STRIP_MESSAGES
-#define DPRINTF(format, ...) if (!quiet) fprintf(stderr, "%s(%d): " format, __func__, __LINE__, ## __VA_ARGS__)
+#define DPRINTF(format, ...) \
+ do { \
+ if (!quiet) \
+ fprintf(stderr, "%s(%d): " format, __func__, __LINE__, ## __VA_ARGS__); \
+ } while (0)
#else
-#define DPRINTF(format, ...)
+#define DPRINTF(format, ...) do { } while (0)
#endif
/*
struct cert_object *cobj;
char filebuf[CERT_BUF_LEN];
int ret = 0, pret = 0;
- int len, pos = 0;
+ size_t len, pos = 0;
f = fopen(certfile, "r");
if (!f)
static int cert_append(const char *certfile, const char *sigfile) {
FILE *fs;
char filebuf[CERT_BUF_LEN];
- struct blob_buf sigbuf;
+ struct blob_buf sigbuf = {0};
int len;
int ret;
list_for_each_entry(cobj, chain, list) {
/* blob has payload, verify that using signature */
if (cobj->cert[CERT_ATTR_PAYLOAD]) {
- uint64_t validfrom;
- uint64_t expiresat;
+ time_t validfrom;
+ time_t expiresat;
uint32_t certtype;
ret = cert_verify_blob(cobj->cert, chainedpubkey[0]?chainedpubkey:pubkeyfile, pubkeydir);
/* issue an auth certificate for pubkey */
static int cert_issue(const char *certfile, const char *pubkeyfile, const char *seckeyfile) {
- struct blob_buf certbuf;
- struct blob_buf payloadbuf;
+ struct blob_buf payloadbuf = {0};
+ struct blob_buf certbuf = {0};
struct timeval tv;
int pklen, siglen;
int revoker = 1;
void *c;
FILE *pkf, *sigf;
char pkb[512];
- char sigb[512];
+ char sigb[1024];
char fname[256], sfname[256];
char pkfp[17];
char tmpdir[] = "/tmp/ucert-XXXXXX";
struct blob_attr *payloadtb[CERT_PL_ATTR_MAX];
struct stat st;
struct timeval tv;
- uint64_t validfrom;
- uint32_t certtype;
+ time_t validfrom;
+ enum certtype_id certtype;
char *fingerprint;
char rfname[512];