Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-09-17 09:19:47

0001 //------------------------------------------------------------------------------
0002 // Copyright (c) 2024-2025 by European Organization for Nuclear Research (CERN)
0003 // Author: Cedric Caffy <cedric.caffy@cern.ch>
0004 //------------------------------------------------------------------------------
0005 // XRootD is free software: you can redistribute it and/or modify
0006 // it under the terms of the GNU Lesser General Public License as published by
0007 // the Free Software Foundation, either version 3 of the License, or
0008 // (at your option) any later version.
0009 //
0010 // XRootD is distributed in the hope that it will be useful,
0011 // but WITHOUT ANY WARRANTY; without even the implied warranty of
0012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0013 // GNU General Public License for more details.
0014 //
0015 // You should have received a copy of the GNU Lesser General Public License
0016 // along with XRootD.  If not, see <http://www.gnu.org/licenses/>.
0017 //------------------------------------------------------------------------------
0018 
0019 
0020 /**
0021  * PRIVATE HEADER for utility functions, implementation in XrdOucUtils.cc
0022  */
0023 #ifndef XROOTD_XRDOUCPRIVATEUTILS_HH
0024 #define XROOTD_XRDOUCPRIVATEUTILS_HH
0025 
0026 #include <regex>
0027 #include <string>
0028 #include <vector>
0029 
0030 /**
0031  * Obfuscates strings containing "authz=value", "Authorization: value",
0032  * "TransferHeaderAuthorization: value", "WhateverAuthorization: value"
0033  * in a case insensitive way.
0034  *
0035  * @param input the string to obfuscate
0036  */
0037 std::string obfuscateAuth(const std::string & input);
0038 
0039 #endif //XROOTD_XRDOUCPRIVATEUTILS_HH