Exemple #1
0
    size_t yB_len;
    const unsigned char *Z;
    size_t Z_len;
} rfc5114_td;

# define make_rfc5114_td(pre) { \
        DH_get_##pre, \
        dhtest_##pre##_xA, sizeof(dhtest_##pre##_xA), \
        dhtest_##pre##_yA, sizeof(dhtest_##pre##_yA), \
        dhtest_##pre##_xB, sizeof(dhtest_##pre##_xB), \
        dhtest_##pre##_yB, sizeof(dhtest_##pre##_yB), \
        dhtest_##pre##_Z, sizeof(dhtest_##pre##_Z) \
        }

static const rfc5114_td rfctd[] = {
        make_rfc5114_td(1024_160),
        make_rfc5114_td(2048_224),
        make_rfc5114_td(2048_256)
};

static int run_rfc5114_tests(void)
{
    int i;
    for (i = 0; i < (int)(sizeof(rfctd) / sizeof(rfc5114_td)); i++) {
        DH *dhA, *dhB;
        unsigned char *Z1 = NULL, *Z2 = NULL;
        const rfc5114_td *td = rfctd + i;
        /* Set up DH structures setting key components */
        dhA = td->get_param();
        dhB = td->get_param();
        if (!dhA || !dhB)
Exemple #2
0
  size_t xB_len;
  const unsigned char *yB;
  size_t yB_len;
  const unsigned char *Z;
  size_t Z_len;
} rfc5114_td;

#define make_rfc5114_td(pre)                                                  \
  {                                                                           \
    DH_get_##pre, dhtest_##pre##_xA, sizeof(dhtest_##pre##_xA),               \
        dhtest_##pre##_yA, sizeof(dhtest_##pre##_yA), dhtest_##pre##_xB,      \
        sizeof(dhtest_##pre##_xB), dhtest_##pre##_yB,                         \
        sizeof(dhtest_##pre##_yB), dhtest_##pre##_Z, sizeof(dhtest_##pre##_Z) \
  }

static const rfc5114_td rfctd[] = {make_rfc5114_td(1024_160),
                                   make_rfc5114_td(2048_224),
                                   make_rfc5114_td(2048_256)};

static int run_rfc5114_tests(void) {
  int i;
  DH *dhA = NULL, *dhB = NULL;
  unsigned char *Z1 = NULL, *Z2 = NULL;

  for (i = 0; i < (int)(sizeof(rfctd) / sizeof(rfc5114_td)); i++) {
    const rfc5114_td *td = rfctd + i;
    /* Set up DH structures setting key components */
    dhA = td->get_param(NULL);
    dhB = td->get_param(NULL);
    if (!dhA || !dhB) {
      goto bad_err;