diff options
| author | Christian Grothoff <christian@grothoff.org> | 2015-08-14 15:01:11 +0200 | 
|---|---|---|
| committer | Christian Grothoff <christian@grothoff.org> | 2015-08-14 15:01:11 +0200 | 
| commit | c1df2e628379a22068657e144bd34812c305350a (patch) | |
| tree | b28977051f7fe74cc169186acc15443770482af1 /src | |
| parent | cb5f2b4fe52a1a73464e43a9db59505961358684 (diff) | |
fix melt sig alignment issue
Diffstat (limited to 'src')
| -rw-r--r-- | src/include/taler_signatures.h | 15 | ||||
| -rw-r--r-- | src/mint-lib/mint_api_refresh.c | 3 | ||||
| -rw-r--r-- | src/mint/taler-mint-httpd_responses.c | 1 | 
3 files changed, 13 insertions, 6 deletions
| diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h index a2271130..043f3bda 100644 --- a/src/include/taler_signatures.h +++ b/src/include/taler_signatures.h @@ -444,13 +444,18 @@ struct TALER_RefreshMeltConfirmationPS    /**     * Hash of the refresh session.     */ -  struct GNUNET_HashCode session_hash; +  struct GNUNET_HashCode session_hash GNUNET_PACKED;    /**     * Index that the client will not have to reveal, in NBO.     * Must be smaller than #TALER_CNC_KAPPA.     */    uint16_t noreveal_index GNUNET_PACKED; + +  /** +   * Zero. +   */ +  uint16_t reserved GNUNET_PACKED;  }; @@ -534,7 +539,7 @@ struct TALER_MintKeySetPS    /**     * Hash over the various denomination signing keys returned.     */ -  struct GNUNET_HashCode hc; +  struct GNUNET_HashCode hc GNUNET_PACKED;  }; @@ -623,7 +628,7 @@ struct TALER_DenominationKeyValidityPS     * Hash code of the denomination public key. (Used to avoid having     * the variable-size RSA key in this struct.)     */ -  struct GNUNET_HashCode denom_hash; +  struct GNUNET_HashCode denom_hash GNUNET_PACKED;  }; @@ -700,7 +705,7 @@ struct TALER_MasterWireSepaDetailsPS     * Hash over the account holder's name, IBAN and BIC     * code (all as 0-terminated strings).     */ -  struct GNUNET_HashCode h_sepa_details; +  struct GNUNET_HashCode h_sepa_details GNUNET_PACKED;  }; @@ -721,7 +726,7 @@ struct TALER_MintWireSupportMethodsPS     * Hash over the various wire formats supported by this mint     * (all as 0-terminated strings).     */ -  struct GNUNET_HashCode h_wire_types; +  struct GNUNET_HashCode h_wire_types GNUNET_PACKED;  }; diff --git a/src/mint-lib/mint_api_refresh.c b/src/mint-lib/mint_api_refresh.c index a30dcb05..3e50047b 100644 --- a/src/mint-lib/mint_api_refresh.c +++ b/src/mint-lib/mint_api_refresh.c @@ -1121,9 +1121,10 @@ verify_refresh_melt_signature_ok (struct TALER_MINT_RefreshMeltHandle *rmh,    /* verify signature by mint */    confirm.purpose.purpose = htonl (TALER_SIGNATURE_MINT_CONFIRM_MELT); -  confirm.purpose.size = htonl (sizeof (confirm)); +  confirm.purpose.size = htonl (sizeof (struct TALER_RefreshMeltConfirmationPS));    confirm.session_hash = rmh->md->melt_session_hash;    confirm.noreveal_index = htons (*noreveal_index); +  confirm.reserved = htons (0);    if (GNUNET_OK !=        GNUNET_CRYPTO_eddsa_verify (TALER_SIGNATURE_MINT_CONFIRM_MELT,                                    &confirm.purpose, diff --git a/src/mint/taler-mint-httpd_responses.c b/src/mint/taler-mint-httpd_responses.c index 9a6813f1..6c029b27 100644 --- a/src/mint/taler-mint-httpd_responses.c +++ b/src/mint/taler-mint-httpd_responses.c @@ -751,6 +751,7 @@ TMH_RESPONSE_reply_refresh_melt_success (struct MHD_Connection *connection,    body.purpose.purpose = htonl (TALER_SIGNATURE_MINT_CONFIRM_MELT);    body.session_hash = *session_hash;    body.noreveal_index = htons (noreveal_index); +  body.reserved = htons (0);    TMH_KS_sign (&body.purpose,                 &pub,                 &sig); | 
