mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Upgrade openssl from 1.1.0e to 1.1.1b, with source code. 4.0.78
This commit is contained in:
parent
8f1c992379
commit
96dbd7bced
1476 changed files with 616554 additions and 4 deletions
91
trunk/3rdparty/openssl-1.1-fit/crypto/engine/tb_cipher.c
vendored
Normal file
91
trunk/3rdparty/openssl-1.1-fit/crypto/engine/tb_cipher.c
vendored
Normal file
|
@ -0,0 +1,91 @@
|
|||
/*
|
||||
* Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the OpenSSL license (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#include "eng_int.h"
|
||||
|
||||
static ENGINE_TABLE *cipher_table = NULL;
|
||||
|
||||
void ENGINE_unregister_ciphers(ENGINE *e)
|
||||
{
|
||||
engine_table_unregister(&cipher_table, e);
|
||||
}
|
||||
|
||||
static void engine_unregister_all_ciphers(void)
|
||||
{
|
||||
engine_table_cleanup(&cipher_table);
|
||||
}
|
||||
|
||||
int ENGINE_register_ciphers(ENGINE *e)
|
||||
{
|
||||
if (e->ciphers) {
|
||||
const int *nids;
|
||||
int num_nids = e->ciphers(e, NULL, &nids, 0);
|
||||
if (num_nids > 0)
|
||||
return engine_table_register(&cipher_table,
|
||||
engine_unregister_all_ciphers, e,
|
||||
nids, num_nids, 0);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
void ENGINE_register_all_ciphers(void)
|
||||
{
|
||||
ENGINE *e;
|
||||
|
||||
for (e = ENGINE_get_first(); e; e = ENGINE_get_next(e))
|
||||
ENGINE_register_ciphers(e);
|
||||
}
|
||||
|
||||
int ENGINE_set_default_ciphers(ENGINE *e)
|
||||
{
|
||||
if (e->ciphers) {
|
||||
const int *nids;
|
||||
int num_nids = e->ciphers(e, NULL, &nids, 0);
|
||||
if (num_nids > 0)
|
||||
return engine_table_register(&cipher_table,
|
||||
engine_unregister_all_ciphers, e,
|
||||
nids, num_nids, 1);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Exposed API function to get a functional reference from the implementation
|
||||
* table (ie. try to get a functional reference from the tabled structural
|
||||
* references) for a given cipher 'nid'
|
||||
*/
|
||||
ENGINE *ENGINE_get_cipher_engine(int nid)
|
||||
{
|
||||
return engine_table_select(&cipher_table, nid);
|
||||
}
|
||||
|
||||
/* Obtains a cipher implementation from an ENGINE functional reference */
|
||||
const EVP_CIPHER *ENGINE_get_cipher(ENGINE *e, int nid)
|
||||
{
|
||||
const EVP_CIPHER *ret;
|
||||
ENGINE_CIPHERS_PTR fn = ENGINE_get_ciphers(e);
|
||||
if (!fn || !fn(e, &ret, NULL, nid)) {
|
||||
ENGINEerr(ENGINE_F_ENGINE_GET_CIPHER, ENGINE_R_UNIMPLEMENTED_CIPHER);
|
||||
return NULL;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Gets the cipher callback from an ENGINE structure */
|
||||
ENGINE_CIPHERS_PTR ENGINE_get_ciphers(const ENGINE *e)
|
||||
{
|
||||
return e->ciphers;
|
||||
}
|
||||
|
||||
/* Sets the cipher callback in an ENGINE structure */
|
||||
int ENGINE_set_ciphers(ENGINE *e, ENGINE_CIPHERS_PTR f)
|
||||
{
|
||||
e->ciphers = f;
|
||||
return 1;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue