#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cerrno>
#include "XrdVersion.hh"
#include "XrdCrypto/XrdCryptosslAux.hh"
#include "XrdCrypto/XrdCryptoX509.hh"
#include "XrdCrypto/XrdCryptoX509Chain.hh"
#include "XrdOuc/XrdOucString.hh"
#include "XrdSec/XrdSecEntity.hh"
#include "XrdSecgsi/XrdSecgsiTrace.hh"
#include "XrdSut/XrdSutBucket.hh"
Go to the source code of this file.
◆ XrdSecgsiAuthzFun()
◆ XrdSecgsiAuthzInit()
int XrdSecgsiAuthzInit |
( |
const char * |
cfg | ) |
|
Definition at line 164 of file XrdSecgsiAuthzFunDN.cc.
165{
166
167
168
169
170
171
172
174
176
177
179 int from = 0;
180 while ((from = cs.tokenize(tkn, from, ' ')) != -1) {
181 if (tkn == "certfmt=raw") {
183 }
184 }
185
187
188
190}}
References EPNAME, gCertfmt, and PRINT.
◆ XrdSecgsiAuthzKey()
int XrdSecgsiAuthzKey |
( |
XrdSecEntity & |
entity, |
|
|
char ** |
key |
|
) |
| |
Definition at line 99 of file XrdSecgsiAuthzFunDN.cc.
100{
101
102
104
105
106 if (!key) {
107 PRINT(
"ERROR: 'key' must be defined");
108 return -1;
109 }
110
111
114 PRINT(
"ERROR: 'entity.creds' must be defined");
115 return -1;
116 }
119 } else {
124 PRINT(
"ERROR: no certificates in chain");
125 delete b;
126 delete chain; chain = 0;
127 return -1;
128 }
130 PRINT(
"ERROR: problems re-ordering proxy chain");
131 delete b;
132 delete chain; chain = 0;
133 return -1;
134 }
135 }
136
138 if (!proxy) {
139 PRINT(
"ERROR: chain is empty!");
140 return -1;
141 }
142
143 const char *dn = proxy->
Subject();
144 int ldn = 0;
145 if (!dn || (ldn = strlen(dn)) <= 0) {
146 PRINT(
"ERROR: proxy dn undefined!");
147 return -1;
148 }
149
150
151 *key = new char[ldn+1];
152 strcpy(*key, dn);
153
154
155 DEBUG(
"key is: '"<<*key<<
"'");
156 return 0;
157}}
int XrdCryptosslX509ParseBucket(XrdSutBucket *b, XrdCryptoX509Chain *chain)
XrdCryptoX509 * End() const
virtual const char * Subject()
char * creds
Raw entity credentials or cert.
References XrdSecEntity::creds, DEBUG, XrdCryptoX509Chain::End(), EPNAME, gCertfmt, PRINT, XrdCryptoX509Chain::Reorder(), XrdCryptoX509::Subject(), and XrdCryptosslX509ParseBucket().
◆ XrdVERSIONINFO() [1/3]
◆ XrdVERSIONINFO() [2/3]
◆ XrdVERSIONINFO() [3/3]
◆ gCertfmt
◆ gsiTrace