X-Git-Url: https://git.distorted.org.uk/~mdw/secnet/blobdiff_plain/29c2f8186faf13a8fb02fee07e80794b35481cf1..5f679c36ccb3e125ee6e8372a60d0f2e8bf410fe:/site.c diff --git a/site.c b/site.c index 4ac0bab..2ca333b 100644 --- a/site.c +++ b/site.c @@ -551,7 +551,7 @@ static _Bool set_new_transform(struct site *st, char *pk) _Bool ok; /* Make room for the shared key */ - st->sharedsecretlen=st->chosen_transform->keylen?:st->dh->ceil_len; + st->sharedsecretlen=st->chosen_transform->keylen?:st->dh->shared_len; assert(st->sharedsecretlen); if (st->sharedsecretlen > st->sharedsecretallocd) { st->sharedsecretallocd=st->sharedsecretlen; @@ -561,8 +561,8 @@ static _Bool set_new_transform(struct site *st, char *pk) } /* Generate the shared key */ - if (!st->dh->makeshared(st->dh->st,st->dhsecret,st->dh->len,pk, - st->sharedsecret,st->sharedsecretlen)) + if (!st->dh->makeshared(st->dh->st,st->dhsecret,st->dh->secret_len, + pk, st->sharedsecret,st->sharedsecretlen)) return False; /* Set up the transform */ @@ -648,7 +648,7 @@ static bool_t generate_msg(struct site *st, uint32_t type, cstring_t what) if (type==LABEL_MSG3BIS) buf_append_uint8(&st->buffer,st->chosen_transform->capab_bit); - dhpub=st->dh->makepublic(st->dh->st,st->dhsecret,st->dh->len); + dhpub=st->dh->makepublic(st->dh->st,st->dhsecret,st->dh->secret_len); buf_append_string(&st->buffer,dhpub); free(dhpub); hash=safe_malloc(st->hash->len, "generate_msg"); @@ -862,7 +862,7 @@ static bool_t generate_msg3(struct site *st) { /* Now we have our nonce and their nonce. Think of a secret key, and create message number 3. */ - st->random->generate(st->random->st,st->dh->len,st->dhsecret); + st->random->generate(st->random->st,st->dh->secret_len,st->dhsecret); return generate_msg(st, (st->remote_capabilities & CAPAB_TRANSFORM_MASK ? LABEL_MSG3BIS : LABEL_MSG3), @@ -941,7 +941,7 @@ kind##_found: \ /* Terminate their DH public key with a '0' */ m.pk[m.pklen]=0; /* Invent our DH secret key */ - st->random->generate(st->random->st,st->dh->len,st->dhsecret); + st->random->generate(st->random->st,st->dh->secret_len,st->dhsecret); /* Generate the shared key and set up the transform */ if (!set_new_transform(st,m.pk)) return False; @@ -1502,7 +1502,7 @@ static void enter_state_run(struct site *st) FILLZERO(st->localN); FILLZERO(st->remoteN); dispose_transform(&st->new_transform); - memset(st->dhsecret,0,st->dh->len); + memset(st->dhsecret,0,st->dh->secret_len); if (st->sharedsecret) memset(st->sharedsecret,0,st->sharedsecretlen); set_link_quality(st); @@ -2241,7 +2241,7 @@ static list_t *site_apply(closure_t *self, struct cloc loc, dict_t *context, transport_peers_clear(st,&st->peers); transport_peers_clear(st,&st->setup_peers); /* XXX mlock these */ - st->dhsecret=safe_malloc(st->dh->len,"site:dhsecret"); + st->dhsecret=safe_malloc(st->dh->secret_len,"site:dhsecret"); st->sharedsecretlen=st->sharedsecretallocd=0; st->sharedsecret=0;