xrootd
Main Page
Namespaces
Classes
Files
File List
File Members
src
XrdCrypto
XrdCryptolocalFactory.hh
Go to the documentation of this file.
1
#ifndef __CRYPTO_LOCALFACTORY_H__
2
#define __CRYPTO_LOCALFACTORY_H__
3
/******************************************************************************/
4
/* */
5
/* X r d C r y p t o L o c a l F a c t o r y . h h */
6
/* */
7
/* (c) 2004 by the Board of Trustees of the Leland Stanford, Jr., University */
8
/* Produced by Gerri Ganis for CERN */
9
/* */
10
/* This file is part of the XRootD software suite. */
11
/* */
12
/* XRootD is free software: you can redistribute it and/or modify it under */
13
/* the terms of the GNU Lesser General Public License as published by the */
14
/* Free Software Foundation, either version 3 of the License, or (at your */
15
/* option) any later version. */
16
/* */
17
/* XRootD is distributed in the hope that it will be useful, but WITHOUT */
18
/* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */
19
/* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */
20
/* License for more details. */
21
/* */
22
/* You should have received a copy of the GNU Lesser General Public License */
23
/* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */
24
/* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */
25
/* */
26
/* The copyright holder's institutional names and contributor's names may not */
27
/* be used to endorse or promote products derived from this software without */
28
/* specific prior written permission of the institution or contributor. */
29
/******************************************************************************/
30
31
/* ************************************************************************** */
32
/* */
33
/* Implementation of the local crypto factory */
34
/* */
35
/* ************************************************************************** */
36
37
#include "
XrdCrypto/XrdCryptoFactory.hh
"
38
39
// The ID must be a unique number
40
#define XrdCryptolocalFactoryID 0
41
42
class
XrdCryptolocalFactory
:
public
XrdCryptoFactory
43
{
44
public
:
45
XrdCryptolocalFactory
();
46
virtual
~XrdCryptolocalFactory
() { }
47
48
// Set trace flags
49
void
SetTrace
(
kXR_int32
trace);
50
51
// Hook to local KDFun
52
XrdCryptoKDFunLen_t
KDFunLen
();
// Length of buffer
53
XrdCryptoKDFun_t
KDFun
();
54
55
// Cipher constructors
56
XrdCryptoCipher
*
Cipher
(
const
char
*t,
int
l = 0);
57
XrdCryptoCipher
*
Cipher
(
const
char
*t,
int
l,
const
char
*k,
58
int
liv,
const
char
*iv);
59
XrdCryptoCipher
*
Cipher
(
XrdSutBucket
*b);
60
XrdCryptoCipher
*
Cipher
(
int
bits,
char
*pub,
int
lpub,
const
char
*t = 0);
61
XrdCryptoCipher
*
Cipher
(
const
XrdCryptoCipher
&c);
62
63
// MsgDigest constructors
64
XrdCryptoMsgDigest
*
MsgDigest
(
const
char
*dgst);
65
66
// RSA constructors
67
XrdCryptoRSA
*
RSA
(
int
bits =
XrdCryptoDefRSABits
,
int
exp =
XrdCryptoDefRSAExp
);
68
XrdCryptoRSA
*
RSA
(
const
char
*pub,
int
lpub = 0);
69
XrdCryptoRSA
*
RSA
(
const
XrdCryptoRSA
&r);
70
};
71
72
#endif
Generated by
1.8.3.1