* https://www.openssl.org/source/license.html
*/
-/* We need access to the deprecated low level HMAC APIs */
-#define OPENSSL_SUPPRESS_DEPRECATED
-
#include <stdio.h>
#include <stdlib.h>
#include <openssl/objects.h>
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->ext.ticket_key_evp_cb == NULL
&& ctx->ext.ticket_key_cb != NULL) {
- ret->old_ctx = HMAC_CTX_new();
- if (ret->old_ctx == NULL)
+ if (!ssl_hmac_old_new(ret))
goto err;
return ret;
}
if (ctx != NULL) {
EVP_MAC_CTX_free(ctx->ctx);
#ifndef OPENSSL_NO_DEPRECATED_3_0
- HMAC_CTX_free(ctx->old_ctx);
+ ssl_hmac_old_free(ctx);
#endif
OPENSSL_free(ctx);
}
}
-#ifndef OPENSSL_NO_DEPRECATED_3_0
-HMAC_CTX *ssl_hmac_get0_HMAC_CTX(SSL_HMAC *ctx)
-{
- return ctx->old_ctx;
-}
-#endif
-
EVP_MAC_CTX *ssl_hmac_get0_EVP_MAC_CTX(SSL_HMAC *ctx)
{
return ctx->ctx;
}
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->old_ctx != NULL)
- return HMAC_Init_ex(ctx->old_ctx, key, len,
- EVP_get_digestbyname(md), NULL);
+ return ssl_hmac_old_init(ctx, key, len, md);
#endif
return 0;
}
return EVP_MAC_update(ctx->ctx, data, len);
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->old_ctx != NULL)
- return HMAC_Update(ctx->old_ctx, data, len);
+ return ssl_hmac_old_update(ctx, data, len);
#endif
return 0;
}
if (ctx->ctx != NULL)
return EVP_MAC_final(ctx->ctx, md, len, max_size);
#ifndef OPENSSL_NO_DEPRECATED_3_0
- if (ctx->old_ctx != NULL) {
- unsigned int l;
-
- if (HMAC_Final(ctx->old_ctx, md, &l) > 0) {
- if (len != NULL)
- *len = l;
- return 1;
- }
- }
+ if (ctx->old_ctx != NULL)
+ return ssl_hmac_old_final(ctx, md, len);
#endif
return 0;
}
return EVP_MAC_size(ctx->ctx);
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->old_ctx != NULL)
- return HMAC_size(ctx->old_ctx);
+ return ssl_hmac_old_size(ctx);
#endif
return 0;
}