Files
arrow/cpp/cmake_modules/google-cloud-cpp-openssl4-compatibility.patch
Hiroyuki SatoandSutou Kouhei b8a45d226b GH-51634: [C++][CI] Apply a google-cloud-cpp patch for OpenSSL 4.x compatibility (#51635)
### Rationale for this change

The current version of google-cloud-cpp used by Arrow does not build with OpenSSL 4.x

### What changes are included in this PR?

This change applies a patch to google-cloud-cpp as a workaround for OpenSSL 4.x compatibility.

### Are these changes tested?

Yes.

### Are there any user-facing changes?

No.

### Was AI used for this PR?

In accordance to the [AI generation guidelines](https://arrow.apache.org/docs/dev/developers/overview.html#ai-generated-code), please disclose below whether and how AI was used in this PR.

**PR code and description written by:**

- [x] Human
- [ ] AI

**Reviewed before submission by:**

- [x] Human
- [ ] AI
- [ ] Not reviewed

* GitHub Issue: #51634

Lead-authored-by: Hiroyuki Sato <hiroysato@gmail.com>
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
2026-09-30 14:51:19 +09:00

31 lines
1.4 KiB
Diff

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
diff --git a/google/cloud/internal/openssl/parse_service_account_p12_file.cc b/google/cloud/internal/openssl/parse_service_account_p12_file.cc
index bb0462dcf0..9dfb59750b 100644
--- a/google/cloud/internal/openssl/parse_service_account_p12_file.cc
+++ b/google/cloud/internal/openssl/parse_service_account_p12_file.cc
@@ -85,7 +85,7 @@ StatusOr<ServiceAccountCredentialsInfo> ParseServiceAccountP12File(
}
// This is automatically deleted by `cert`.
- X509_NAME* name = X509_get_subject_name(cert.get());
+ auto* name = X509_get_subject_name(cert.get());
std::string service_account_id = [&name]() -> std::string {
auto openssl_free = [](void* addr) { OPENSSL_free(addr); };