• 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 
32 KSSLSigners::KSSLSigners() {
33  dcc = new DCOPClient;
34  dcc->attach();
35 }
36 
37 
38 KSSLSigners::~KSSLSigners() {
39  delete dcc;
40 }
41 
42 bool KSSLSigners::addCA(KSSLCertificate& cert,
43  bool ssl,
44  bool email,
45  bool code) {
46  return addCA(cert.toString(), ssl, email, code);
47 }
48 
49 
50 bool 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 
70 return false;
71 }
72 
73 
74 bool 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 
89 return false;
90 }
91 
92 
93 bool KSSLSigners::useForSSL(KSSLCertificate& cert) {
94  return useForSSL(cert.getSubject());
95 }
96 
97 
98 bool 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 
114 return false;
115 }
116 
117 
118 bool KSSLSigners::useForEmail(KSSLCertificate& cert) {
119  return useForEmail(cert.getSubject());
120 }
121 
122 
123 bool 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 
139 return false;
140 }
141 
142 
143 bool KSSLSigners::useForCode(KSSLCertificate& cert) {
144  return useForCode(cert.getSubject());
145 }
146 
147 
148 bool 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 
164 return false;
165 }
166 
167 
168 bool KSSLSigners::remove(KSSLCertificate& cert) {
169  return remove(cert.getSubject());
170 }
171 
172 
173 bool 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 
189 return false;
190 }
191 
192 
193 TQStringList 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 
207 return drc;
208 }
209 
210 
211 TQString 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 
226 return drc;
227 }
228 
229 
230 bool 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 
246 return 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.1
This website is maintained by Timothy Pearson.