From 689dc20ede9768377d4032ff8c70b58269c8dc9c Mon Sep 17 00:00:00 2001
From: Charlie Fenton <charlief@example.com>
Date: Mon, 18 Oct 2021 01:43:08 -0700
Subject: [PATCH 01/10] Mac: update dependent libraries to latest:
 c-ares-1.17.2, curl-7.79.1, freetype-2.11.0, openssl-3.0.0 Previously updated
 to wxWidgets-3.1.5. FTGL version ftgl-2.1.3~rc5  is still the current
 version.

---
 lib/crypt.cpp                             |   7 +-
 8 files changed, 199 insertions(+), 150 deletions(-)

diff --git a/lib/crypt.cpp b/lib/crypt.cpp
index 01249cfc340..9b1f69160b8 100644
--- a/lib/crypt.cpp
+++ b/lib/crypt.cpp
@@ -1,6 +1,6 @@
 // This file is part of BOINC.
 // http://boinc.berkeley.edu
-// Copyright (C) 2008 University of California
+// Copyright (C) 2021 University of California
 //
 // BOINC is free software; you can redistribute it and/or modify it
 // under the terms of the GNU Lesser General Public License
@@ -672,7 +672,10 @@ int check_validity_of_cert(
         }
 #ifdef HAVE_OPAQUE_RSA_DSA_DH
         RSA *rsa;
-        rsa = EVP_PKEY_get0_RSA(pubKey);
+        // CAUTION: In OpenSSL 3.0.0, EVP_PKEY_get0_RSA() now returns a
+        // pointer of type "const struct rsa_st*" to an immutable value.
+        // Do not try to modify the contents of the returned struct.
+        rsa = (rsa_st*)EVP_PKEY_get0_RSA(pubKey);
         if (!RSA_blinding_on(rsa, c)) {
 #else
         if (!RSA_blinding_on(pubKey->pkey.rsa, c)) {
