00001
00002
00003
00004
00005
00006
00007
00008
00009 #include "./kssld.h"
00010
00011 #include <kdatastream.h>
00012 #include <qasciidict.h>
00013
00014
00015 static const int KSSLD_fhash = 37;
00016 static const char* const KSSLD_ftable[36][3] = {
00017 { "void", "cacheAddCertificate(KSSLCertificate,KSSLCertificateCache::KSSLCertificatePolicy,bool)", "cacheAddCertificate(KSSLCertificate cert,KSSLCertificateCache::KSSLCertificatePolicy policy,bool permanent)" },
00018 { "KSSLCertificateCache::KSSLCertificatePolicy", "cacheGetPolicyByCN(QString)", "cacheGetPolicyByCN(QString cn)" },
00019 { "KSSLCertificateCache::KSSLCertificatePolicy", "cacheGetPolicyByCertificate(KSSLCertificate)", "cacheGetPolicyByCertificate(KSSLCertificate cert)" },
00020 { "bool", "cacheSeenCN(QString)", "cacheSeenCN(QString cn)" },
00021 { "bool", "cacheSeenCertificate(KSSLCertificate)", "cacheSeenCertificate(KSSLCertificate cert)" },
00022 { "bool", "cacheRemoveByCN(QString)", "cacheRemoveByCN(QString cn)" },
00023 { "bool", "cacheRemoveBySubject(QString)", "cacheRemoveBySubject(QString subject)" },
00024 { "bool", "cacheRemoveByCertificate(KSSLCertificate)", "cacheRemoveByCertificate(KSSLCertificate cert)" },
00025 { "bool", "cacheIsPermanent(KSSLCertificate)", "cacheIsPermanent(KSSLCertificate cert)" },
00026 { "void", "cacheReload()", "cacheReload()" },
00027 { "bool", "cacheModifyByCN(QString,KSSLCertificateCache::KSSLCertificatePolicy,bool,QDateTime)", "cacheModifyByCN(QString cn,KSSLCertificateCache::KSSLCertificatePolicy policy,bool permanent,QDateTime expires)" },
00028 { "bool", "cacheModifyByCertificate(KSSLCertificate,KSSLCertificateCache::KSSLCertificatePolicy,bool,QDateTime)", "cacheModifyByCertificate(KSSLCertificate cert,KSSLCertificateCache::KSSLCertificatePolicy policy,bool permanent,QDateTime expires)" },
00029 { "QStringList", "cacheGetHostList(KSSLCertificate)", "cacheGetHostList(KSSLCertificate cert)" },
00030 { "bool", "cacheAddHost(KSSLCertificate,QString)", "cacheAddHost(KSSLCertificate cert,QString host)" },
00031 { "bool", "cacheRemoveHost(KSSLCertificate,QString)", "cacheRemoveHost(KSSLCertificate cert,QString host)" },
00032 { "void", "caVerifyUpdate()", "caVerifyUpdate()" },
00033 { "bool", "caRegenerate()", "caRegenerate()" },
00034 { "QStringList", "caList()", "caList()" },
00035 { "bool", "caUseForSSL(QString)", "caUseForSSL(QString subject)" },
00036 { "bool", "caUseForEmail(QString)", "caUseForEmail(QString subject)" },
00037 { "bool", "caUseForCode(QString)", "caUseForCode(QString subject)" },
00038 { "bool", "caAdd(QString,bool,bool,bool)", "caAdd(QString certificate,bool ssl,bool email,bool code)" },
00039 { "bool", "caAddFromFile(QString,bool,bool,bool)", "caAddFromFile(QString filename,bool ssl,bool email,bool code)" },
00040 { "bool", "caRemove(QString)", "caRemove(QString subject)" },
00041 { "bool", "caRemoveFromFile(QString)", "caRemoveFromFile(QString filename)" },
00042 { "QString", "caGetCert(QString)", "caGetCert(QString subject)" },
00043 { "bool", "caSetUse(QString,bool,bool,bool)", "caSetUse(QString subject,bool ssl,bool email,bool code)" },
00044 { "QStringList", "getKDEKeyByEmail(QString)", "getKDEKeyByEmail(QString email)" },
00045 { "KSSLCertificate", "getCertByMD5Digest(QString)", "getCertByMD5Digest(QString key)" },
00046 { "QStringList", "getHomeCertificateList()", "getHomeCertificateList()" },
00047 { "bool", "addHomeCertificateFile(QString,QString,bool)", "addHomeCertificateFile(QString filename,QString password,bool storePass)" },
00048 { "bool", "addHomeCertificatePKCS12(QString,QString)", "addHomeCertificatePKCS12(QString base64cert,QString passToStore)" },
00049 { "bool", "deleteHomeCertificateByFile(QString,QString)", "deleteHomeCertificateByFile(QString filename,QString password)" },
00050 { "bool", "deleteHomeCertificateByPKCS12(QString,QString)", "deleteHomeCertificateByPKCS12(QString base64cert,QString password)" },
00051 { "bool", "deleteHomeCertificateByName(QString)", "deleteHomeCertificateByName(QString name)" },
00052 { 0, 0, 0 }
00053 };
00054 static const int KSSLD_ftable_hiddens[35] = {
00055 0,
00056 0,
00057 0,
00058 0,
00059 0,
00060 0,
00061 0,
00062 0,
00063 0,
00064 0,
00065 0,
00066 0,
00067 0,
00068 0,
00069 0,
00070 0,
00071 0,
00072 0,
00073 0,
00074 0,
00075 0,
00076 0,
00077 0,
00078 0,
00079 0,
00080 0,
00081 0,
00082 0,
00083 0,
00084 0,
00085 0,
00086 0,
00087 0,
00088 0,
00089 0,
00090 };
00091
00092 bool KSSLD::process(const QCString &fun, const QByteArray &data, QCString& replyType, QByteArray &replyData)
00093 {
00094 static QAsciiDict<int>* fdict = 0;
00095 if ( !fdict ) {
00096 fdict = new QAsciiDict<int>( KSSLD_fhash, true, false );
00097 for ( int i = 0; KSSLD_ftable[i][1]; i++ )
00098 fdict->insert( KSSLD_ftable[i][1], new int( i ) );
00099 }
00100 int* fp = fdict->find( fun );
00101 switch ( fp?*fp:-1) {
00102 case 0: {
00103 KSSLCertificate arg0;
00104 KSSLCertificateCache::KSSLCertificatePolicy arg1;
00105 bool arg2;
00106 QDataStream arg( data, IO_ReadOnly );
00107 if (arg.atEnd()) return false;
00108 arg >> arg0;
00109 if (arg.atEnd()) return false;
00110 arg >> arg1;
00111 if (arg.atEnd()) return false;
00112 arg >> arg2;
00113 replyType = KSSLD_ftable[0][0];
00114 cacheAddCertificate(arg0, arg1, arg2 );
00115 } break;
00116 case 1: {
00117 QString arg0;
00118 QDataStream arg( data, IO_ReadOnly );
00119 if (arg.atEnd()) return false;
00120 arg >> arg0;
00121 replyType = KSSLD_ftable[1][0];
00122 QDataStream _replyStream( replyData, IO_WriteOnly );
00123 _replyStream << cacheGetPolicyByCN(arg0 );
00124 } break;
00125 case 2: {
00126 KSSLCertificate arg0;
00127 QDataStream arg( data, IO_ReadOnly );
00128 if (arg.atEnd()) return false;
00129 arg >> arg0;
00130 replyType = KSSLD_ftable[2][0];
00131 QDataStream _replyStream( replyData, IO_WriteOnly );
00132 _replyStream << cacheGetPolicyByCertificate(arg0 );
00133 } break;
00134 case 3: {
00135 QString arg0;
00136 QDataStream arg( data, IO_ReadOnly );
00137 if (arg.atEnd()) return false;
00138 arg >> arg0;
00139 replyType = KSSLD_ftable[3][0];
00140 QDataStream _replyStream( replyData, IO_WriteOnly );
00141 _replyStream << cacheSeenCN(arg0 );
00142 } break;
00143 case 4: {
00144 KSSLCertificate arg0;
00145 QDataStream arg( data, IO_ReadOnly );
00146 if (arg.atEnd()) return false;
00147 arg >> arg0;
00148 replyType = KSSLD_ftable[4][0];
00149 QDataStream _replyStream( replyData, IO_WriteOnly );
00150 _replyStream << cacheSeenCertificate(arg0 );
00151 } break;
00152 case 5: {
00153 QString arg0;
00154 QDataStream arg( data, IO_ReadOnly );
00155 if (arg.atEnd()) return false;
00156 arg >> arg0;
00157 replyType = KSSLD_ftable[5][0];
00158 QDataStream _replyStream( replyData, IO_WriteOnly );
00159 _replyStream << cacheRemoveByCN(arg0 );
00160 } break;
00161 case 6: {
00162 QString arg0;
00163 QDataStream arg( data, IO_ReadOnly );
00164 if (arg.atEnd()) return false;
00165 arg >> arg0;
00166 replyType = KSSLD_ftable[6][0];
00167 QDataStream _replyStream( replyData, IO_WriteOnly );
00168 _replyStream << cacheRemoveBySubject(arg0 );
00169 } break;
00170 case 7: {
00171 KSSLCertificate arg0;
00172 QDataStream arg( data, IO_ReadOnly );
00173 if (arg.atEnd()) return false;
00174 arg >> arg0;
00175 replyType = KSSLD_ftable[7][0];
00176 QDataStream _replyStream( replyData, IO_WriteOnly );
00177 _replyStream << cacheRemoveByCertificate(arg0 );
00178 } break;
00179 case 8: {
00180 KSSLCertificate arg0;
00181 QDataStream arg( data, IO_ReadOnly );
00182 if (arg.atEnd()) return false;
00183 arg >> arg0;
00184 replyType = KSSLD_ftable[8][0];
00185 QDataStream _replyStream( replyData, IO_WriteOnly );
00186 _replyStream << cacheIsPermanent(arg0 );
00187 } break;
00188 case 9: {
00189 replyType = KSSLD_ftable[9][0];
00190 cacheReload( );
00191 } break;
00192 case 10: {
00193 QString arg0;
00194 KSSLCertificateCache::KSSLCertificatePolicy arg1;
00195 bool arg2;
00196 QDateTime arg3;
00197 QDataStream arg( data, IO_ReadOnly );
00198 if (arg.atEnd()) return false;
00199 arg >> arg0;
00200 if (arg.atEnd()) return false;
00201 arg >> arg1;
00202 if (arg.atEnd()) return false;
00203 arg >> arg2;
00204 if (arg.atEnd()) return false;
00205 arg >> arg3;
00206 replyType = KSSLD_ftable[10][0];
00207 QDataStream _replyStream( replyData, IO_WriteOnly );
00208 _replyStream << cacheModifyByCN(arg0, arg1, arg2, arg3 );
00209 } break;
00210 case 11: {
00211 KSSLCertificate arg0;
00212 KSSLCertificateCache::KSSLCertificatePolicy arg1;
00213 bool arg2;
00214 QDateTime arg3;
00215 QDataStream arg( data, IO_ReadOnly );
00216 if (arg.atEnd()) return false;
00217 arg >> arg0;
00218 if (arg.atEnd()) return false;
00219 arg >> arg1;
00220 if (arg.atEnd()) return false;
00221 arg >> arg2;
00222 if (arg.atEnd()) return false;
00223 arg >> arg3;
00224 replyType = KSSLD_ftable[11][0];
00225 QDataStream _replyStream( replyData, IO_WriteOnly );
00226 _replyStream << cacheModifyByCertificate(arg0, arg1, arg2, arg3 );
00227 } break;
00228 case 12: {
00229 KSSLCertificate arg0;
00230 QDataStream arg( data, IO_ReadOnly );
00231 if (arg.atEnd()) return false;
00232 arg >> arg0;
00233 replyType = KSSLD_ftable[12][0];
00234 QDataStream _replyStream( replyData, IO_WriteOnly );
00235 _replyStream << cacheGetHostList(arg0 );
00236 } break;
00237 case 13: {
00238 KSSLCertificate arg0;
00239 QString arg1;
00240 QDataStream arg( data, IO_ReadOnly );
00241 if (arg.atEnd()) return false;
00242 arg >> arg0;
00243 if (arg.atEnd()) return false;
00244 arg >> arg1;
00245 replyType = KSSLD_ftable[13][0];
00246 QDataStream _replyStream( replyData, IO_WriteOnly );
00247 _replyStream << cacheAddHost(arg0, arg1 );
00248 } break;
00249 case 14: {
00250 KSSLCertificate arg0;
00251 QString arg1;
00252 QDataStream arg( data, IO_ReadOnly );
00253 if (arg.atEnd()) return false;
00254 arg >> arg0;
00255 if (arg.atEnd()) return false;
00256 arg >> arg1;
00257 replyType = KSSLD_ftable[14][0];
00258 QDataStream _replyStream( replyData, IO_WriteOnly );
00259 _replyStream << cacheRemoveHost(arg0, arg1 );
00260 } break;
00261 case 15: {
00262 replyType = KSSLD_ftable[15][0];
00263 caVerifyUpdate( );
00264 } break;
00265 case 16: {
00266 replyType = KSSLD_ftable[16][0];
00267 QDataStream _replyStream( replyData, IO_WriteOnly );
00268 _replyStream << caRegenerate( );
00269 } break;
00270 case 17: {
00271 replyType = KSSLD_ftable[17][0];
00272 QDataStream _replyStream( replyData, IO_WriteOnly );
00273 _replyStream << caList( );
00274 } break;
00275 case 18: {
00276 QString arg0;
00277 QDataStream arg( data, IO_ReadOnly );
00278 if (arg.atEnd()) return false;
00279 arg >> arg0;
00280 replyType = KSSLD_ftable[18][0];
00281 QDataStream _replyStream( replyData, IO_WriteOnly );
00282 _replyStream << caUseForSSL(arg0 );
00283 } break;
00284 case 19: {
00285 QString arg0;
00286 QDataStream arg( data, IO_ReadOnly );
00287 if (arg.atEnd()) return false;
00288 arg >> arg0;
00289 replyType = KSSLD_ftable[19][0];
00290 QDataStream _replyStream( replyData, IO_WriteOnly );
00291 _replyStream << caUseForEmail(arg0 );
00292 } break;
00293 case 20: {
00294 QString arg0;
00295 QDataStream arg( data, IO_ReadOnly );
00296 if (arg.atEnd()) return false;
00297 arg >> arg0;
00298 replyType = KSSLD_ftable[20][0];
00299 QDataStream _replyStream( replyData, IO_WriteOnly );
00300 _replyStream << caUseForCode(arg0 );
00301 } break;
00302 case 21: {
00303 QString arg0;
00304 bool arg1;
00305 bool arg2;
00306 bool arg3;
00307 QDataStream arg( data, IO_ReadOnly );
00308 if (arg.atEnd()) return false;
00309 arg >> arg0;
00310 if (arg.atEnd()) return false;
00311 arg >> arg1;
00312 if (arg.atEnd()) return false;
00313 arg >> arg2;
00314 if (arg.atEnd()) return false;
00315 arg >> arg3;
00316 replyType = KSSLD_ftable[21][0];
00317 QDataStream _replyStream( replyData, IO_WriteOnly );
00318 _replyStream << caAdd(arg0, arg1, arg2, arg3 );
00319 } break;
00320 case 22: {
00321 QString arg0;
00322 bool arg1;
00323 bool arg2;
00324 bool arg3;
00325 QDataStream arg( data, IO_ReadOnly );
00326 if (arg.atEnd()) return false;
00327 arg >> arg0;
00328 if (arg.atEnd()) return false;
00329 arg >> arg1;
00330 if (arg.atEnd()) return false;
00331 arg >> arg2;
00332 if (arg.atEnd()) return false;
00333 arg >> arg3;
00334 replyType = KSSLD_ftable[22][0];
00335 QDataStream _replyStream( replyData, IO_WriteOnly );
00336 _replyStream << caAddFromFile(arg0, arg1, arg2, arg3 );
00337 } break;
00338 case 23: {
00339 QString arg0;
00340 QDataStream arg( data, IO_ReadOnly );
00341 if (arg.atEnd()) return false;
00342 arg >> arg0;
00343 replyType = KSSLD_ftable[23][0];
00344 QDataStream _replyStream( replyData, IO_WriteOnly );
00345 _replyStream << caRemove(arg0 );
00346 } break;
00347 case 24: {
00348 QString arg0;
00349 QDataStream arg( data, IO_ReadOnly );
00350 if (arg.atEnd()) return false;
00351 arg >> arg0;
00352 replyType = KSSLD_ftable[24][0];
00353 QDataStream _replyStream( replyData, IO_WriteOnly );
00354 _replyStream << caRemoveFromFile(arg0 );
00355 } break;
00356 case 25: {
00357 QString arg0;
00358 QDataStream arg( data, IO_ReadOnly );
00359 if (arg.atEnd()) return false;
00360 arg >> arg0;
00361 replyType = KSSLD_ftable[25][0];
00362 QDataStream _replyStream( replyData, IO_WriteOnly );
00363 _replyStream << caGetCert(arg0 );
00364 } break;
00365 case 26: {
00366 QString arg0;
00367 bool arg1;
00368 bool arg2;
00369 bool arg3;
00370 QDataStream arg( data, IO_ReadOnly );
00371 if (arg.atEnd()) return false;
00372 arg >> arg0;
00373 if (arg.atEnd()) return false;
00374 arg >> arg1;
00375 if (arg.atEnd()) return false;
00376 arg >> arg2;
00377 if (arg.atEnd()) return false;
00378 arg >> arg3;
00379 replyType = KSSLD_ftable[26][0];
00380 QDataStream _replyStream( replyData, IO_WriteOnly );
00381 _replyStream << caSetUse(arg0, arg1, arg2, arg3 );
00382 } break;
00383 case 27: {
00384 QString arg0;
00385 QDataStream arg( data, IO_ReadOnly );
00386 if (arg.atEnd()) return false;
00387 arg >> arg0;
00388 replyType = KSSLD_ftable[27][0];
00389 QDataStream _replyStream( replyData, IO_WriteOnly );
00390 _replyStream << getKDEKeyByEmail(arg0 );
00391 } break;
00392 case 28: {
00393 QString arg0;
00394 QDataStream arg( data, IO_ReadOnly );
00395 if (arg.atEnd()) return false;
00396 arg >> arg0;
00397 replyType = KSSLD_ftable[28][0];
00398 QDataStream _replyStream( replyData, IO_WriteOnly );
00399 _replyStream << getCertByMD5Digest(arg0 );
00400 } break;
00401 case 29: {
00402 replyType = KSSLD_ftable[29][0];
00403 QDataStream _replyStream( replyData, IO_WriteOnly );
00404 _replyStream << getHomeCertificateList( );
00405 } break;
00406 case 30: {
00407 QString arg0;
00408 QString arg1;
00409 bool arg2;
00410 QDataStream arg( data, IO_ReadOnly );
00411 if (arg.atEnd()) return false;
00412 arg >> arg0;
00413 if (arg.atEnd()) return false;
00414 arg >> arg1;
00415 if (arg.atEnd()) return false;
00416 arg >> arg2;
00417 replyType = KSSLD_ftable[30][0];
00418 QDataStream _replyStream( replyData, IO_WriteOnly );
00419 _replyStream << addHomeCertificateFile(arg0, arg1, arg2 );
00420 } break;
00421 case 31: {
00422 QString arg0;
00423 QString arg1;
00424 QDataStream arg( data, IO_ReadOnly );
00425 if (arg.atEnd()) return false;
00426 arg >> arg0;
00427 if (arg.atEnd()) return false;
00428 arg >> arg1;
00429 replyType = KSSLD_ftable[31][0];
00430 QDataStream _replyStream( replyData, IO_WriteOnly );
00431 _replyStream << addHomeCertificatePKCS12(arg0, arg1 );
00432 } break;
00433 case 32: {
00434 QString arg0;
00435 QString arg1;
00436 QDataStream arg( data, IO_ReadOnly );
00437 if (arg.atEnd()) return false;
00438 arg >> arg0;
00439 if (arg.atEnd()) return false;
00440 arg >> arg1;
00441 replyType = KSSLD_ftable[32][0];
00442 QDataStream _replyStream( replyData, IO_WriteOnly );
00443 _replyStream << deleteHomeCertificateByFile(arg0, arg1 );
00444 } break;
00445 case 33: {
00446 QString arg0;
00447 QString arg1;
00448 QDataStream arg( data, IO_ReadOnly );
00449 if (arg.atEnd()) return false;
00450 arg >> arg0;
00451 if (arg.atEnd()) return false;
00452 arg >> arg1;
00453 replyType = KSSLD_ftable[33][0];
00454 QDataStream _replyStream( replyData, IO_WriteOnly );
00455 _replyStream << deleteHomeCertificateByPKCS12(arg0, arg1 );
00456 } break;
00457 case 34: {
00458 QString arg0;
00459 QDataStream arg( data, IO_ReadOnly );
00460 if (arg.atEnd()) return false;
00461 arg >> arg0;
00462 replyType = KSSLD_ftable[34][0];
00463 QDataStream _replyStream( replyData, IO_WriteOnly );
00464 _replyStream << deleteHomeCertificateByName(arg0 );
00465 } break;
00466 default:
00467 return KDEDModule::process( fun, data, replyType, replyData );
00468 }
00469 return true;
00470 }
00471
00472 QCStringList KSSLD::interfaces()
00473 {
00474 QCStringList ifaces = KDEDModule::interfaces();
00475 ifaces += "KSSLD";
00476 return ifaces;
00477 }
00478
00479 QCStringList KSSLD::functions()
00480 {
00481 QCStringList funcs = KDEDModule::functions();
00482 for ( int i = 0; KSSLD_ftable[i][2]; i++ ) {
00483 if (KSSLD_ftable_hiddens[i])
00484 continue;
00485 QCString func = KSSLD_ftable[i][0];
00486 func += ' ';
00487 func += KSSLD_ftable[i][2];
00488 funcs << func;
00489 }
00490 return funcs;
00491 }
00492
00493