• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • tdeio/kssl
 

tdeio/kssl

  • tdeio
  • kssl
ksslsigners.cpp
1/* This file is part of the KDE project
2 *
3 * Copyright (C) 2001 George Staikos <staikos@kde.org>
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
14 *
15 * You should have received a copy of the GNU Library General Public License
16 * along with this library; see the file COPYING.LIB. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA.
19 */
20
21
22#include <tqstring.h>
23#include <tqstringlist.h>
24#include "ksslcertificate.h"
25#include "ksslsigners.h"
26#include <stdlib.h>
27#include <kdebug.h>
28#include <dcopclient.h>
29#include <kdatastream.h>
30
31
32KSSLSigners::KSSLSigners() {
33 dcc = new DCOPClient;
34 dcc->attach();
35}
36
37
38KSSLSigners::~KSSLSigners() {
39 delete dcc;
40}
41
42bool KSSLSigners::addCA(KSSLCertificate& cert,
43 bool ssl,
44 bool email,
45 bool code) {
46 return addCA(cert.toString(), ssl, email, code);
47}
48
49
50bool KSSLSigners::addCA(TQString cert,
51 bool ssl,
52 bool email,
53 bool code) {
54 TQByteArray data, retval;
55 TQCString rettype;
56 TQDataStream arg(data, IO_WriteOnly);
57 arg << cert;
58 arg << ssl << email << code;
59 bool rc = dcc->call("kded", "kssld",
60 "caAdd(TQString,bool,bool,bool)",
61 data, rettype, retval);
62
63 if (rc && rettype == "bool") {
64 TQDataStream retStream(retval, IO_ReadOnly);
65 bool drc;
66 retStream >> drc;
67 return drc;
68 }
69
70return false;
71}
72
73
74bool KSSLSigners::regenerate() {
75 TQByteArray data, retval;
76 TQCString rettype;
77 TQDataStream arg(data, IO_WriteOnly);
78 bool rc = dcc->call("kded", "kssld",
79 "caRegenerate()",
80 data, rettype, retval);
81
82 if (rc && rettype == "bool") {
83 TQDataStream retStream(retval, IO_ReadOnly);
84 bool drc;
85 retStream >> drc;
86 return drc;
87 }
88
89return false;
90}
91
92
93bool KSSLSigners::useForSSL(KSSLCertificate& cert) {
94 return useForSSL(cert.getSubject());
95}
96
97
98bool KSSLSigners::useForSSL(TQString subject) {
99 TQByteArray data, retval;
100 TQCString rettype;
101 TQDataStream arg(data, IO_WriteOnly);
102 arg << subject;
103 bool rc = dcc->call("kded", "kssld",
104 "caUseForSSL(TQString)",
105 data, rettype, retval);
106
107 if (rc && rettype == "bool") {
108 TQDataStream retStream(retval, IO_ReadOnly);
109 bool drc;
110 retStream >> drc;
111 return drc;
112 }
113
114return false;
115}
116
117
118bool KSSLSigners::useForEmail(KSSLCertificate& cert) {
119 return useForEmail(cert.getSubject());
120}
121
122
123bool KSSLSigners::useForEmail(TQString subject) {
124 TQByteArray data, retval;
125 TQCString rettype;
126 TQDataStream arg(data, IO_WriteOnly);
127 arg << subject;
128 bool rc = dcc->call("kded", "kssld",
129 "caUseForEmail(TQString)",
130 data, rettype, retval);
131
132 if (rc && rettype == "bool") {
133 TQDataStream retStream(retval, IO_ReadOnly);
134 bool drc;
135 retStream >> drc;
136 return drc;
137 }
138
139return false;
140}
141
142
143bool KSSLSigners::useForCode(KSSLCertificate& cert) {
144 return useForCode(cert.getSubject());
145}
146
147
148bool KSSLSigners::useForCode(TQString subject) {
149 TQByteArray data, retval;
150 TQCString rettype;
151 TQDataStream arg(data, IO_WriteOnly);
152 arg << subject;
153 bool rc = dcc->call("kded", "kssld",
154 "caUseForCode(TQString)",
155 data, rettype, retval);
156
157 if (rc && rettype == "bool") {
158 TQDataStream retStream(retval, IO_ReadOnly);
159 bool drc;
160 retStream >> drc;
161 return drc;
162 }
163
164return false;
165}
166
167
168bool KSSLSigners::remove(KSSLCertificate& cert) {
169 return remove(cert.getSubject());
170}
171
172
173bool KSSLSigners::remove(TQString subject) {
174 TQByteArray data, retval;
175 TQCString rettype;
176 TQDataStream arg(data, IO_WriteOnly);
177 arg << subject;
178 bool rc = dcc->call("kded", "kssld",
179 "caRemove(TQString)",
180 data, rettype, retval);
181
182 if (rc && rettype == "bool") {
183 TQDataStream retStream(retval, IO_ReadOnly);
184 bool drc;
185 retStream >> drc;
186 return drc;
187 }
188
189return false;
190}
191
192
193TQStringList KSSLSigners::list() {
194 TQStringList drc;
195 TQByteArray data, retval;
196 TQCString rettype;
197 TQDataStream arg(data, IO_WriteOnly);
198 bool rc = dcc->call("kded", "kssld",
199 "caList()",
200 data, rettype, retval);
201
202 if (rc && rettype == "TQStringList") {
203 TQDataStream retStream(retval, IO_ReadOnly);
204 retStream >> drc;
205 }
206
207return drc;
208}
209
210
211TQString KSSLSigners::getCert(TQString subject) {
212 TQString drc;
213 TQByteArray data, retval;
214 TQCString rettype;
215 TQDataStream arg(data, IO_WriteOnly);
216 arg << subject;
217 bool rc = dcc->call("kded", "kssld",
218 "caGetCert(TQString)",
219 data, rettype, retval);
220
221 if (rc && rettype == "TQString") {
222 TQDataStream retStream(retval, IO_ReadOnly);
223 retStream >> drc;
224 }
225
226return drc;
227}
228
229
230bool KSSLSigners::setUse(TQString subject, bool ssl, bool email, bool code) {
231 TQByteArray data, retval;
232 TQCString rettype;
233 TQDataStream arg(data, IO_WriteOnly);
234 arg << subject << ssl << email << code;
235 bool rc = dcc->call("kded", "kssld",
236 "caSetUse(TQString,bool,bool,bool)",
237 data, rettype, retval);
238
239 if (rc && rettype == "bool") {
240 TQDataStream retStream(retval, IO_ReadOnly);
241 bool drc;
242 retStream >> drc;
243 return drc;
244 }
245
246return false;
247}
248
249
250
251
KSSLCertificate
KDE X.509 Certificate.
Definition: ksslcertificate.h:77
KSSLCertificate::toString
TQString toString()
Convert this certificate to a string.
Definition: ksslcertificate.cpp:982
KSSLCertificate::getSubject
TQString getSubject() const
Get the subject of the certificate (X.509 map).
Definition: ksslcertificate.cpp:193
KSSLSigners::getCert
TQString getCert(TQString subject)
Get a signer certificate from the database.
Definition: ksslsigners.cpp:211
KSSLSigners::regenerate
bool regenerate()
Regenerate the signer-root file from the user's settings.
Definition: ksslsigners.cpp:74
KSSLSigners::addCA
bool addCA(KSSLCertificate &cert, bool ssl, bool email, bool code)
Add a signer to the database.
Definition: ksslsigners.cpp:42
KSSLSigners::useForEmail
bool useForEmail(KSSLCertificate &cert)
Determine if a certificate can be used for S/MIME certificate signing.
Definition: ksslsigners.cpp:118
KSSLSigners::setUse
bool setUse(TQString subject, bool ssl, bool email, bool code)
Set the use of a particular entry in the certificate signer database.
Definition: ksslsigners.cpp:230
KSSLSigners::KSSLSigners
KSSLSigners()
Construct a KSSLSigner object.
Definition: ksslsigners.cpp:32
KSSLSigners::useForSSL
bool useForSSL(KSSLCertificate &cert)
Determine if a certificate can be used for SSL certificate signing.
Definition: ksslsigners.cpp:93
KSSLSigners::list
TQStringList list()
List the signers in the database.
Definition: ksslsigners.cpp:193
KSSLSigners::remove
bool remove(KSSLCertificate &cert)
Remove a certificate signer from the database.
Definition: ksslsigners.cpp:168
KSSLSigners::useForCode
bool useForCode(KSSLCertificate &cert)
Determine if a certificate can be used for code certificate signing.
Definition: ksslsigners.cpp:143
KSSLSigners::~KSSLSigners
~KSSLSigners()
Destroy this KSSLSigner object.
Definition: ksslsigners.cpp:38

tdeio/kssl

Skip menu "tdeio/kssl"
  • Main Page
  • Alphabetical List
  • Class List
  • File List
  • Class Members
  • Related Pages

tdeio/kssl

Skip menu "tdeio/kssl"
  • arts
  • dcop
  • dnssd
  • interfaces
  •   kspeech
  •     interface
  •     library
  •   tdetexteditor
  • kate
  • kded
  • kdoctools
  • kimgio
  • kjs
  • libtdemid
  • libtdescreensaver
  • tdeabc
  • tdecmshell
  • tdecore
  • tdefx
  • tdehtml
  • tdeinit
  • tdeio
  •   bookmarks
  •   httpfilter
  •   kpasswdserver
  •   kssl
  •   tdefile
  •   tdeio
  •   tdeioexec
  • tdeioslave
  •   http
  • tdemdi
  •   tdemdi
  • tdenewstuff
  • tdeparts
  • tdeprint
  • tderandr
  • tderesources
  • tdespell2
  • tdesu
  • tdeui
  • tdeunittest
  • tdeutils
  • tdewallet
Generated for tdeio/kssl by doxygen 1.9.4
This website is maintained by Timothy Pearson.