| OLD | NEW |
| 1 /* This Source Code Form is subject to the terms of the Mozilla Public | 1 /* This Source Code Form is subject to the terms of the Mozilla Public |
| 2 * License, v. 2.0. If a copy of the MPL was not distributed with this | 2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
| 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
| 4 | 4 |
| 5 #include "seccomon.h" | 5 #include "seccomon.h" |
| 6 #include "secerr.h" | 6 #include "secerr.h" |
| 7 #include "blapi.h" | 7 #include "blapi.h" |
| 8 #include "pkcs11i.h" | 8 #include "pkcs11i.h" |
| 9 #include "softoken.h" | 9 #include "softoken.h" |
| 10 #include "hmacct.h" | 10 #include "hmacct.h" |
| (...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 136 memcpy(&ctx->header[j], params->pHeader, params->ulHeaderLen); | 136 memcpy(&ctx->header[j], params->pHeader, params->ulHeaderLen); |
| 137 | 137 |
| 138 return ctx; | 138 return ctx; |
| 139 | 139 |
| 140 loser: | 140 loser: |
| 141 PORT_Free(ctx); | 141 PORT_Free(ctx); |
| 142 return NULL; | 142 return NULL; |
| 143 } | 143 } |
| 144 | 144 |
| 145 void | 145 void |
| 146 sftk_HMACConstantTime_Update(void *pctx, void *data, unsigned int len) | 146 sftk_HMACConstantTime_Update(void *pctx, const void *data, unsigned int len) |
| 147 { | 147 { |
| 148 sftk_MACConstantTimeCtx *ctx = (sftk_MACConstantTimeCtx *) pctx; | 148 sftk_MACConstantTimeCtx *ctx = (sftk_MACConstantTimeCtx *) pctx; |
| 149 SECStatus rv = HMAC_ConstantTime( | 149 PORT_CheckSuccess(HMAC_ConstantTime( |
| 150 ctx->mac, NULL, sizeof(ctx->mac), | 150 ctx->mac, NULL, sizeof(ctx->mac), |
| 151 ctx->hash, | 151 ctx->hash, |
| 152 ctx->secret, ctx->secretLength, | 152 ctx->secret, ctx->secretLength, |
| 153 ctx->header, ctx->headerLength, | 153 ctx->header, ctx->headerLength, |
| 154 data, len, | 154 data, len, |
| 155 » ctx->totalLength); | 155 » ctx->totalLength)); |
| 156 PORT_Assert(rv == SECSuccess); | |
| 157 } | 156 } |
| 158 | 157 |
| 159 void | 158 void |
| 160 sftk_SSLv3MACConstantTime_Update(void *pctx, void *data, unsigned int len) | 159 sftk_SSLv3MACConstantTime_Update(void *pctx, const void *data, unsigned int len) |
| 161 { | 160 { |
| 162 sftk_MACConstantTimeCtx *ctx = (sftk_MACConstantTimeCtx *) pctx; | 161 sftk_MACConstantTimeCtx *ctx = (sftk_MACConstantTimeCtx *) pctx; |
| 163 SECStatus rv = SSLv3_MAC_ConstantTime( | 162 PORT_CheckSuccess(SSLv3_MAC_ConstantTime( |
| 164 ctx->mac, NULL, sizeof(ctx->mac), | 163 ctx->mac, NULL, sizeof(ctx->mac), |
| 165 ctx->hash, | 164 ctx->hash, |
| 166 ctx->secret, ctx->secretLength, | 165 ctx->secret, ctx->secretLength, |
| 167 ctx->header, ctx->headerLength, | 166 ctx->header, ctx->headerLength, |
| 168 data, len, | 167 data, len, |
| 169 » ctx->totalLength); | 168 » ctx->totalLength)); |
| 170 PORT_Assert(rv == SECSuccess); | |
| 171 } | 169 } |
| 172 | 170 |
| 173 void | 171 void |
| 174 sftk_MACConstantTime_EndHash(void *pctx, void *out, unsigned int *outLength, | 172 sftk_MACConstantTime_EndHash(void *pctx, void *out, unsigned int *outLength, |
| 175 unsigned int maxLength) | 173 unsigned int maxLength) |
| 176 { | 174 { |
| 177 const sftk_MACConstantTimeCtx *ctx = (sftk_MACConstantTimeCtx *) pctx; | 175 const sftk_MACConstantTimeCtx *ctx = (sftk_MACConstantTimeCtx *) pctx; |
| 178 unsigned int toCopy = ctx->hash->length; | 176 unsigned int toCopy = ctx->hash->length; |
| 179 if (toCopy > maxLength) { | 177 if (toCopy > maxLength) { |
| 180 toCopy = maxLength; | 178 toCopy = maxLength; |
| 181 } | 179 } |
| 182 memcpy(out, ctx->mac, toCopy); | 180 memcpy(out, ctx->mac, toCopy); |
| 183 if (outLength) { | 181 if (outLength) { |
| 184 *outLength = toCopy; | 182 *outLength = toCopy; |
| 185 } | 183 } |
| 186 } | 184 } |
| 187 | 185 |
| 188 void | 186 void |
| 189 sftk_MACConstantTime_DestroyContext(void *pctx, PRBool free) | 187 sftk_MACConstantTime_DestroyContext(void *pctx, PRBool free) |
| 190 { | 188 { |
| 191 PORT_Free(pctx); | 189 PORT_Free(pctx); |
| 192 } | 190 } |
| OLD | NEW |