MCPcopy Create free account
hub / github.com/Meituan-Dianping/SQLAdvisor / openssl_lock

Function openssl_lock

sql/mysqld.cc:1860–1890  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1858
1859
1860static void openssl_lock(int mode, openssl_lock_t *lock, const char *file,
1861 int line)
1862{
1863 int err;
1864 char const *what;
1865
1866 switch (mode) {
1867 case CRYPTO_LOCK|CRYPTO_READ:
1868 what = "read lock";
1869 err= mysql_rwlock_rdlock(&lock->lock);
1870 break;
1871 case CRYPTO_LOCK|CRYPTO_WRITE:
1872 what = "write lock";
1873 err= mysql_rwlock_wrlock(&lock->lock);
1874 break;
1875 case CRYPTO_UNLOCK|CRYPTO_READ:
1876 case CRYPTO_UNLOCK|CRYPTO_WRITE:
1877 what = "unlock";
1878 err= mysql_rwlock_unlock(&lock->lock);
1879 break;
1880 default:
1881 /* Unknown locking mode. */
1882 sql_print_error("Fatal: OpenSSL interface problem (mode=0x%x)", mode);
1883 abort();
1884 }
1885 if (err)
1886 {
1887 sql_print_error("Fatal: can't %s OpenSSL lock", what);
1888 abort();
1889 }
1890}
1891#endif /* HAVE_OPENSSL */
1892
1893static int init_server_components()

Callers 1

openssl_lock_functionFunction · 0.85

Calls 1

sql_print_errorFunction · 0.85

Tested by

no test coverage detected