|
|
|||
File indexing completed on 2026-01-08 10:33:32
0001 #ifndef __CRYPTO_X509CRL_H__ 0002 #define __CRYPTO_X509CRL_H__ 0003 /******************************************************************************/ 0004 /* */ 0005 /* X r d C r y p t o X 5 0 9 C r l . h h */ 0006 /* */ 0007 /* (c) 2005 G. Ganis , CERN */ 0008 /* */ 0009 /* This file is part of the XRootD software suite. */ 0010 /* */ 0011 /* XRootD is free software: you can redistribute it and/or modify it under */ 0012 /* the terms of the GNU Lesser General Public License as published by the */ 0013 /* Free Software Foundation, either version 3 of the License, or (at your */ 0014 /* option) any later version. */ 0015 /* */ 0016 /* XRootD is distributed in the hope that it will be useful, but WITHOUT */ 0017 /* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */ 0018 /* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */ 0019 /* License for more details. */ 0020 /* */ 0021 /* You should have received a copy of the GNU Lesser General Public License */ 0022 /* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */ 0023 /* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */ 0024 /* */ 0025 /* The copyright holder's institutional names and contributor's names may not */ 0026 /* be used to endorse or promote products derived from this software without */ 0027 /* specific prior written permission of the institution or contributor. */ 0028 /* */ 0029 /******************************************************************************/ 0030 0031 /* ************************************************************************** */ 0032 /* */ 0033 /* Abstract interface for X509 CRLs . */ 0034 /* Allows to plug-in modules based on different crypto implementation */ 0035 /* (OpenSSL, Botan, ...) */ 0036 /* */ 0037 /* ************************************************************************** */ 0038 0039 #include "XrdCrypto/XrdCryptoX509.hh" 0040 0041 typedef void * XrdCryptoX509Crldata; 0042 0043 // ---------------------------------------------------------------------------// 0044 // 0045 // X509 CRL interface 0046 // Describes one CRL certificate 0047 // 0048 // ---------------------------------------------------------------------------// 0049 class XrdCryptoX509Crl { 0050 public: 0051 0052 XrdCryptoX509Crl() { } 0053 virtual ~XrdCryptoX509Crl() { } 0054 0055 // Status 0056 virtual bool IsValid(); 0057 virtual bool IsExpired(int when = 0); // Expired 0058 0059 // Access underlying data (in opaque form: used in chains) 0060 virtual XrdCryptoX509Crldata Opaque(); 0061 0062 // Dump information 0063 virtual void Dump(); 0064 virtual const char *ParentFile(); 0065 0066 // Validity interval 0067 virtual time_t LastUpdate(); // time when last updated 0068 virtual time_t NextUpdate(); // time foreseen for next update 0069 0070 // Issuer of top certificate 0071 virtual const char *Issuer(); 0072 virtual const char *IssuerHash(int); // hash 0073 const char *IssuerHash() { return IssuerHash(0); } // hash 0074 0075 // Chec certificate revocation 0076 virtual bool IsRevoked(int serialnumber, int when); 0077 virtual bool IsRevoked(const char *sernum, int when); 0078 0079 // Verify signature 0080 virtual bool Verify(XrdCryptoX509 *ref); 0081 0082 }; 0083 0084 #endif
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|