1*4d7b5ddbSMalik Akbar Hashemi Rafsanjani // SPDX-License-Identifier: Apache-2.0 2*4d7b5ddbSMalik Akbar Hashemi Rafsanjani // SPDX-FileCopyrightText: Copyright OpenBMC Authors 3*4d7b5ddbSMalik Akbar Hashemi Rafsanjani #pragma once 4*4d7b5ddbSMalik Akbar Hashemi Rafsanjani 5*4d7b5ddbSMalik Akbar Hashemi Rafsanjani #include <openssl/crypto.h> 6*4d7b5ddbSMalik Akbar Hashemi Rafsanjani 7*4d7b5ddbSMalik Akbar Hashemi Rafsanjani #include <string> 8*4d7b5ddbSMalik Akbar Hashemi Rafsanjani #include <string_view> 9*4d7b5ddbSMalik Akbar Hashemi Rafsanjani 10*4d7b5ddbSMalik Akbar Hashemi Rafsanjani std::string getCommonNameFromCert(X509* cert); 11*4d7b5ddbSMalik Akbar Hashemi Rafsanjani 12*4d7b5ddbSMalik Akbar Hashemi Rafsanjani std::string getUPNFromCert(X509* peerCert, std::string_view hostname); 13*4d7b5ddbSMalik Akbar Hashemi Rafsanjani 14*4d7b5ddbSMalik Akbar Hashemi Rafsanjani std::string getUsernameFromCert(X509* cert); 15*4d7b5ddbSMalik Akbar Hashemi Rafsanjani 16*4d7b5ddbSMalik Akbar Hashemi Rafsanjani bool isUPNMatch(std::string_view upn, std::string_view hostname); 17