zxid
view release on metacpan or search on metacpan
zxlogview.c view on Meta::CPAN
fprintf(stderr, "Will force core upon %x:%x err=%d iter=%d\n",
abort_funcno, abort_line, abort_error_code, abort_iter);
continue;
#endif
case 'a':
if ((*argv)[0][3] == 0) {
/*AK_TS(ASSERT_NONFATAL, 0, "assert nonfatal enabled");*/
#if 1
ERR("*** WARNING: YOU HAVE TURNED ASSERTS OFF USING -ra FLAG. THIS MEANS THAT YOU WILL NOT BE ABLE TO OBTAIN ANY SUPPORT. IF PROGRAM NOW TRIES TO ASSERT IT MAY MYSTERIOUSLY AND UNPREDICTABLY CRASH INSTEAD, AND NOBODY WILL BE ABLE TO FIGURE OUT WHA...
#endif
++assert_nonfatal;
continue;
}
break;
}
break;
case 'l':
switch ((*argv)[0][2]) {
case 'i':
if (!strcmp((*argv)[0],"-license")) {
extern char* license;
fprintf(stderr, "%s", license);
exit(0);
}
break;
}
break;
case 't':
switch ((*argv)[0][2]) {
case '\0': test_mode(argc, argv, env);
case '1': test_receipt(argc, argv, env);
}
break;
}
/* fall thru means unrecognized flag */
if (*argc)
fprintf(stderr, "Unrecognized flag `%s'\n", (*argv)[0]);
argerr:
if (verbose>1) {
printf("%s", help);
exit(0);
}
fprintf(stderr, "%s", help);
exit(3);
}
if (*argc) { /* Signature verification certificate (logsign-nopw-cert.pem) */
if ((*argv)[0][0]) {
read_all(sizeof(buf), buf, "logview opt cert", 1, "%s", (*argv)[0]);
log_verify_cert = zxid_extract_cert(buf, (*argv)[0]);
}
++(*argv); --(*argc);
}
if (*argc) { /* Log decryption key (logenc-nopw-cert.pem) */
if ((*argv)[0][0]) {
gotall = read_all(sizeof(buf), buf, "logview opt key", 1, "%s", (*argv)[0]);
SHA1((unsigned char*)buf, gotall, (unsigned char*)log_symkey);
log_decrypt_pkey = zxid_extract_private_key(buf, (*argv)[0]);
}
++(*argv); --(*argc);
}
}
/* Called by: opt */
static void test_mode(int* argc, char*** argv, char*** env)
{
int gotall;
zxid_conf* cf = zxid_new_conf(0);
++(*argv); --(*argc);
if (*argc) { /* Signature verification certificate (logsign-nopw-cert.pem) */
if ((*argv)[0][0]) {
read_all(sizeof(buf), buf, "logview test_mode private key", 1, "%s", (*argv)[0]);
cf->log_sign_pkey = zxid_extract_private_key(buf, (*argv)[0]);
cf->sign_pkey = cf->enc_pkey = cf->log_sign_pkey;
}
++(*argv); --(*argc);
}
if (*argc) { /* Log encryption key (logenc-nopw-cert.pem) */
if ((*argv)[0][0]) {
gotall = read_all(sizeof(buf), buf, "logview test_mode cert", 1, "%s", (*argv)[0]);
SHA1((unsigned char*)buf, gotall, (unsigned char*)cf->log_symkey);
cf->log_enc_cert = zxid_extract_cert(buf, (*argv)[0]);
cf->sign_cert = cf->enc_cert = cf->log_enc_cert;
}
++(*argv); --(*argc);
}
zxlog_write_line(cf, "zxlogview-test.out", 0x01, -2, "test1 Plain none\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x03, -2, "test2 Plain SHA1\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x05, -2, "test3 Plain RSA sig\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x11, -2, "test4 zip none\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x13, -2, "test5 zip SHA1\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x15, -2, "test6 zip RSA sig\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x21, -2, "test7 RSA-AES none\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x23, -2, "test8 RSA-AES SHA1\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x25, -2, "test9 RSA-AES RSA sig\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x41, -2, "test10 AES none\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x43, -2, "test11 AES SHA1\n");
zxlog_write_line(cf, "zxlogview-test.out", 0x45, -2, "test12 AES RSA sig\n");
exit(0);
}
/* Called by: opt */
static void test_receipt(int* argc, char*** argv, char*** env)
{
char sigbuf[1024];
char* eid;
zxid_conf* cf = zxid_new_conf_to_cf("CPATH=/var/zxid/bus/&NON_STANDARD_ENTITYID=stomp://localhost:2229/");
eid = zxid_my_ent_id_cstr(cf);
cf->bus_rcpt = 5; /* RSA+SHA */
zxbus_mint_receipt(cf, sizeof(sigbuf), sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "test13");
printf("13 vfy=%d\n", zxbus_verify_receipt(cf, eid, -1, sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "test13"));
zxbus_mint_receipt(cf, sizeof(sigbuf), sigbuf, -1, "", -1, "", -1, "", -1, "");
printf("14 vfy=%d\n", zxbus_verify_receipt(cf, eid, -1, sigbuf, -1, "", -1, "", -1, "", -1, ""));
zxbus_mint_receipt(cf, sizeof(sigbuf), sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "t15");
printf("15 vfy=%d\n", zxbus_verify_receipt(cf, eid, -1, sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "t15"));
sigbuf[3] = '0';
printf("15fail expected vfy=%d\n", zxbus_verify_receipt(cf, eid, -1, sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "t15"));
cf->bus_rcpt = 3; /* SHA */
zxbus_mint_receipt(cf, sizeof(sigbuf), sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "test16");
printf("16 vfy=%d\n", zxbus_verify_receipt(cf, eid, -1, sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "test16"));
sigbuf[3] = '0';
printf("16fail expected vfy=%d\n", zxbus_verify_receipt(cf, eid, -1, sigbuf, -1, "mid1", -1, "default", -1, "eid1", -1, "test16"));
( run in 0.906 second using v1.01-cache-2.11-cpan-5735350b133 )