//----------------------------------------------------------------------- void SMBUrl::updateCache() //----------------------------------------------------------------------- { cleanPath(); // SMB URLs are UTF-8 encoded kdDebug(TDEIO_SMB) << "updateCache " << KURL::path() << endl; if (KURL::url() == "smb:/") m_surl = "smb://"; else { TQString surl = "smb://"; if (KURL::hasUser()) { surl += KURL::encode_string(KURL::user(), 106); if (KURL::hasPass()) { surl += ":" + KURL::encode_string(KURL::pass(), 106); } surl += "@"; } surl += KURL::encode_string(KURL::host().upper(), 106); surl += KURL::encode_string(KURL::path(), 106); m_surl = surl.utf8(); } m_type = SMBURLTYPE_UNKNOWN; // update m_type (void)getType(); }
bool CompoundRegExp::load( TQDomElement top, const TQString& version ) { Q_ASSERT( top.tagName() == TQString::fromLocal8Bit("Compound") ); TQString str = top.attribute( TQString::fromLocal8Bit( "hidden" ), TQString::fromLocal8Bit("0") ); _hidden = true; // alway hidden. (str == TQString::fromLocal8Bit("1") ); str = top.attribute( TQString::fromLocal8Bit( "allowReplace" ), TQString::fromLocal8Bit("0") ); _allowReplace = (str == TQString::fromLocal8Bit("1") ); for ( TQDomNode node = top.firstChild(); !node.isNull(); node = node.nextSibling() ) { if ( !node.isElement() ) continue; // skip past comments. TQString txt; TQDomElement child = node.toElement(); TQDomNode txtNode = child.firstChild(); if ( txtNode.isText() ) txt = txtNode.toText().data(); if ( child.tagName() == TQString::fromLocal8Bit( "Title" ) ) { if ( txt.isEmpty() ) _title = txt; else _title = i18n(txt.utf8()); } else if ( child.tagName() == TQString::fromLocal8Bit( "Description" ) ) { if ( txt.isEmpty() ) _description = txt; else _description = i18n(txt.utf8()); } else { _child = WidgetFactory::createRegExp( child, version ); if ( _child ) { addChild( _child ); return true; } else { return false; } } } return false; }
void ZoneClockPanel::addClock(const TQString &zone) { createDialog(); _dlg->ClockCaption->setText(i18n(zone.utf8()).section('/', -1)); for (int i=0; i<_dlg->ClockZone->count(); ++i) if (_dlg->ClockZone->text(i) == i18n(zone.utf8())) { _dlg->ClockZone->setCurrentItem(i); break; } if (_dlg->exec() == TQDialog::Accepted) { CityList cities; TQStringList timezones = cities.timezones(); TQString newzone = timezones[_dlg->ClockZone->currentItem()]; addClock(newzone, _dlg->ClockCaption->text()); update(); } }
void Zone::readZoneList(TDEListView *listView ) { const KTimezones::ZoneMap zones = m_zoneDb.allZones(); TQMap<TQString, TQListViewItem*> KontinentMap; listView->setRootIsDecorated(true); for (KTimezones::ZoneMap::ConstIterator it = zones.begin(); it != zones.end(); ++it) { const KTimezone *zone = it.data(); TQString tzName = zone->name(); TQString comment = zone->comment(); if (!comment.isEmpty()) comment = i18n(comment.utf8()); const TQStringList KontCity = TQStringList::split("/", i18n(tzName.utf8()).replace("_", " ")); TQListViewItem* Kontinent = KontinentMap[KontCity[0]]; if (!Kontinent) { KontinentMap[KontCity[0]] = new TQListViewItem(listView, KontCity[0]); Kontinent = KontinentMap[KontCity[0]]; Kontinent->setExpandable(true); } TQCheckListItem *li = new TQCheckListItem(Kontinent, KontCity[1], TQCheckListItem::CheckBox); li->setText(1, comment); li->setText(2, tzName); /* store complete path in ListView */ if (_remotezonelist.findIndex(tzName) != -1) li->setOn(true); // locate the flag from /l10n/%1/flag.png // if not available select default "C" flag TQString flag = locate( "locale", TQString("l10n/%1/flag.png").arg(zone->countryCode().lower()) ); if (!TQFile::exists(flag)) flag = locate( "locale", "l10n/C/flag.png" ); if (TQFile::exists(flag)) li->setPixmap(0, TQPixmap(flag)); } }
void LDAPProtocol::addControlOp( LDAPControl ***pctrls, const TQString &oid, const TQByteArray &value, bool critical ) { LDAPControl **ctrls; LDAPControl *ctrl = (LDAPControl *) malloc( sizeof( LDAPControl ) ); ctrls = *pctrls; kdDebug(7125) << "addControlOp: oid:'" << oid << "' val: '" << TQString(TQString::fromUtf8(value, value.size())) << "'" << endl; int vallen = value.size(); ctrl->ldctl_value.bv_len = vallen; if ( vallen ) { ctrl->ldctl_value.bv_val = (char*) malloc( vallen ); memcpy( ctrl->ldctl_value.bv_val, value.data(), vallen ); } else { ctrl->ldctl_value.bv_val = 0; } ctrl->ldctl_iscritical = critical; ctrl->ldctl_oid = strdup( oid.utf8() ); uint i = 0; if ( ctrls == 0 ) { ctrls = (LDAPControl **) malloc ( 2 * sizeof( LDAPControl* ) ); ctrls[ 0 ] = 0; ctrls[ 1 ] = 0; } else { while ( ctrls[ i ] != 0 ) i++; ctrls[ i + 1 ] = 0; ctrls = (LDAPControl **) realloc( ctrls, (i + 2) * sizeof( LDAPControl * ) ); } ctrls[ i ] = ctrl; *pctrls = ctrls; }
void LDAPProtocol::openConnection() { if ( mLDAP ) return; int version,ret; version = ( mVer == 2 ) ? LDAP_VERSION2 : LDAP_VERSION3; KURL Url; Url.setProtocol( mProtocol ); Url.setHost( mHost ); Url.setPort( mPort ); AuthInfo info; fillAuthInfo( info ); /////////////////////////////////////////////////////////////////////////// kdDebug(7125) << "OpenConnection to " << mHost << ":" << mPort << endl; ret = ldap_initialize( &mLDAP, Url.htmlURL().utf8() ); if ( ret != LDAP_SUCCESS ) { LDAPErr( Url, ret ); return; } if ( (ldap_set_option( mLDAP, LDAP_OPT_PROTOCOL_VERSION, &version )) != LDAP_OPT_SUCCESS ) { closeConnection(); error( ERR_UNSUPPORTED_ACTION, i18n("Cannot set LDAP protocol version %1").arg(version) ); return; } if ( mTLS ) { kdDebug(7125) << "start TLS" << endl; if ( ( ret = ldap_start_tls_s( mLDAP, NULL, NULL ) ) != LDAP_SUCCESS ) { LDAPErr( Url ); return; } } if ( mSizeLimit ) { kdDebug(7125) << "sizelimit: " << mSizeLimit << endl; if ( ldap_set_option( mLDAP, LDAP_OPT_SIZELIMIT, &mSizeLimit ) != LDAP_SUCCESS ) { closeConnection(); error( ERR_UNSUPPORTED_ACTION, i18n("Cannot set size limit.")); return; } } if ( mTimeLimit ) { kdDebug(7125) << "timelimit: " << mTimeLimit << endl; if ( ldap_set_option( mLDAP, LDAP_OPT_TIMELIMIT, &mTimeLimit ) != LDAP_SUCCESS ) { closeConnection(); error( ERR_UNSUPPORTED_ACTION, i18n("Cannot set time limit.")); return; } } #if !defined HAVE_SASL_H && !defined HAVE_SASL_SASL_H if ( mAuthSASL ) { closeConnection(); error( ERR_SLAVE_DEFINED, i18n("SASL authentication not compiled into the ldap ioslave.") ); return; } #endif bool auth = false; TQString mechanism = mMech.isEmpty() ? "DIGEST-MD5" : mMech; mFirstAuth = true; mCancel = false; const bool cached = checkCachedAuthentication( info ); ret = LDAP_SUCCESS; while (!auth) { if ( !mAuthSASL && ( ( mFirstAuth && !( mBindName.isEmpty() && mPassword.isEmpty() ) && //For anonymous bind ( mBindName.isEmpty() || mPassword.isEmpty() ) ) || !mFirstAuth ) ) { if ( ( mFirstAuth && cached ) || ( mFirstAuth ? openPassDlg( info ) : openPassDlg( info, i18n("Invalid authorization information.") ) ) ) { mBindName = info.username; mPassword = info.password; } else { kdDebug(7125) << "Dialog cancelled!" << endl; error( ERR_USER_CANCELED, TQString::null ); closeConnection(); return; } } kdDebug(7125) << "user: "******" bindname: " << mBindName << endl; ret = #if defined HAVE_SASL_H || defined HAVE_SASL_SASL_H mAuthSASL ? ldap_sasl_interactive_bind_s( mLDAP, NULL, mechanism.utf8(), NULL, NULL, LDAP_SASL_INTERACTIVE, &kldap_sasl_interact, this ) : #endif ldap_simple_bind_s( mLDAP, mBindName.utf8(), mPassword.utf8() ); mFirstAuth = false; if ( ret != LDAP_INVALID_CREDENTIALS && ret != LDAP_INSUFFICIENT_ACCESS && ret != LDAP_INAPPROPRIATE_AUTH ) { kdDebug(7125) << "ldap_bind retval: " << ret << endl; auth = true; if ( ret != LDAP_SUCCESS ) { if ( mCancel ) error( ERR_USER_CANCELED, TQString::null ); else LDAPErr( Url ); closeConnection(); return; } } } kdDebug(7125) << "connected!" << endl; connected(); }
int LDAPProtocol::saslInteract( void *in ) { #if defined HAVE_SASL_H || defined HAVE_SASL_SASL_H AuthInfo info; fillAuthInfo( info ); sasl_interact_t *interact = ( sasl_interact_t * ) in; //some mechanisms do not require username && pass, so it doesn't need a popup //window for getting this info for ( ; interact->id != SASL_CB_LIST_END; interact++ ) { if ( interact->id == SASL_CB_AUTHNAME || interact->id == SASL_CB_PASS ) { if ( info.username.isEmpty() || info.password.isEmpty() ) { const bool cached = checkCachedAuthentication( info ); if ( ! ( ( mFirstAuth && cached ) || ( mFirstAuth ? openPassDlg( info ) : openPassDlg( info, i18n("Invalid authorization information.") ) ) ) ) { kdDebug(7125) << "Dialog cancelled!" << endl; mCancel = true; return LDAP_USER_CANCELLED; } mUser = info.username; mPassword = info.password; } break; } } interact = ( sasl_interact_t * ) in; TQString value; while( interact->id != SASL_CB_LIST_END ) { value = ""; switch( interact->id ) { case SASL_CB_GETREALM: value = mRealm; kdDebug(7125) << "SASL_REALM=" << mRealm << endl; break; case SASL_CB_AUTHNAME: value = mUser; kdDebug(7125) << "SASL_AUTHNAME=" << mUser << endl; break; case SASL_CB_PASS: value = mPassword; kdDebug(7125) << "SASL_PASSWD=[hidden]" << endl; break; case SASL_CB_USER: value = mBindName; kdDebug(7125) << "SASL_AUTHZID=" << mBindName << endl; break; } if ( value.isEmpty() ) { interact->result = NULL; interact->len = 0; } else { interact->result = strdup( value.utf8() ); interact->len = strlen( (const char *) interact->result ); } interact++; } #endif return LDAP_SUCCESS; }
void LDAPProtocol::addModOp( LDAPMod ***pmods, int mod_type, const TQString &attr, const TQByteArray &value ) { // kdDebug(7125) << "type: " << mod_type << " attr: " << attr << // " value: " << TQString::fromUtf8(value,value.size()) << // " size: " << value.size() << endl; LDAPMod **mods; mods = *pmods; uint i = 0; if ( mods == 0 ) { mods = (LDAPMod **) malloc ( 2 * sizeof( LDAPMod* ) ); mods[ 0 ] = (LDAPMod*) malloc( sizeof( LDAPMod ) ); mods[ 1 ] = 0; memset( mods[ 0 ], 0, sizeof( LDAPMod ) ); } else { while( mods[ i ] != 0 && ( strcmp( attr.utf8(),mods[i]->mod_type ) != 0 || ( mods[ i ]->mod_op & ~LDAP_MOD_BVALUES ) != mod_type ) ) i++; if ( mods[ i ] == 0 ) { mods = ( LDAPMod ** )realloc( mods, (i + 2) * sizeof( LDAPMod * ) ); if ( mods == 0 ) { kdError() << "addModOp: realloc" << endl; return; } mods[ i + 1 ] = 0; mods[ i ] = ( LDAPMod* ) malloc( sizeof( LDAPMod ) ); memset( mods[ i ], 0, sizeof( LDAPMod ) ); } } mods[ i ]->mod_op = mod_type | LDAP_MOD_BVALUES; if ( mods[ i ]->mod_type == 0 ) mods[ i ]->mod_type = strdup( attr.utf8() ); *pmods = mods; int vallen = value.size(); if ( vallen == 0 ) return; BerValue *berval; berval = ( BerValue* ) malloc( sizeof( BerValue ) ); berval -> bv_val = (char*) malloc( vallen ); berval -> bv_len = vallen; memcpy( berval -> bv_val, value.data(), vallen ); if ( mods[ i ] -> mod_vals.modv_bvals == 0 ) { mods[ i ]->mod_vals.modv_bvals = ( BerValue** ) malloc( sizeof( BerValue* ) * 2 ); mods[ i ]->mod_vals.modv_bvals[ 0 ] = berval; mods[ i ]->mod_vals.modv_bvals[ 1 ] = 0; kdDebug(7125) << "addModOp: new bervalue struct " << endl; } else { uint j = 0; while ( mods[ i ]->mod_vals.modv_bvals[ j ] != 0 ) j++; mods[ i ]->mod_vals.modv_bvals = ( BerValue ** ) realloc( mods[ i ]->mod_vals.modv_bvals, (j + 2) * sizeof( BerValue* ) ); if ( mods[ i ]->mod_vals.modv_bvals == 0 ) { kdError() << "addModOp: realloc" << endl; return; } mods[ i ]->mod_vals.modv_bvals[ j ] = berval; mods[ i ]->mod_vals.modv_bvals[ j+1 ] = 0; kdDebug(7125) << j << ". new bervalue " << endl; } }
bool KXSConfigDialog::create() { TQVBoxLayout *topLayout = new TQVBoxLayout(plainPage(), spacingHint()); TQHBoxLayout *tqlayout = new TQHBoxLayout(topLayout, spacingHint()); TQVBox *controlLayout = new TQVBox(plainPage()); controlLayout->setSpacing(spacingHint()); tqlayout->addWidget(controlLayout); ((TQBoxLayout*)controlLayout->tqlayout())->addStrut(120); KConfig config(mConfigFile); TQString xmlFile = "/doesntexist"; #ifdef XSCREENSAVER_CONFIG_DIR xmlFile = XSCREENSAVER_CONFIG_DIR; #endif xmlFile += "/" + mExeName + ".xml"; if ( TQFile::exists( xmlFile ) ) { // We can use the xscreensaver xml config files. KXSXml xmlParser(controlLayout); xmlParser.parse( xmlFile ); mConfigItemList = *xmlParser.items(); TQWidget *spacer = new TQWidget(controlLayout); controlLayout->setStretchFactor(spacer, 1 ); TQString descr = xmlParser.description(); if ( !descr.isEmpty() ) { descr.replace('\n',' '); descr = descr.simplifyWhiteSpace(); TQLabel *l = new TQLabel( i18n( descr.utf8() ), plainPage() ); l->tqsetAlignment ( WordBreak ); topLayout->addWidget( l ); } } else { // fall back to KDE's old config files. int idx = 0; while (true) { TQString group = TQString("Arg%1").tqarg(idx); if (config.hasGroup(group)) { config.setGroup(group); TQString type = config.readEntry("Type"); if (type == "Range") { KXSRangeControl *rc = new KXSRangeControl(controlLayout, group, config); mConfigItemList.append(rc); } else if (type == "DoubleRange") { KXSDoubleRangeControl *rc = new KXSDoubleRangeControl(controlLayout, group, config); mConfigItemList.append(rc); } else if (type == "Check") { KXSCheckBoxControl *cc = new KXSCheckBoxControl(controlLayout, group, config); mConfigItemList.append(cc); } else if (type == "DropList") { KXSDropListControl *dl = new KXSDropListControl(controlLayout, group, config); mConfigItemList.append(dl); } } else { break; } idx++; } if ( idx == 0 ) return false; } TQPtrListIterator<KXSConfigItem> it( mConfigItemList ); KXSConfigItem *item; while ( (item = it.current()) != 0 ) { ++it; item->read( config ); TQWidget *i = dynamic_cast<TQWidget*>(item); if (i) { connect( i, TQT_SIGNAL(changed()), TQT_SLOT(slotChanged()) ); } } mPreviewProc = new KProcess; connect(mPreviewProc, TQT_SIGNAL(processExited(KProcess *)), TQT_SLOT(slotPreviewExited(KProcess *))); mPreviewTimer = new TQTimer(this); connect(mPreviewTimer, TQT_SIGNAL(timeout()), TQT_SLOT(slotNewPreview())); mPreview = new TQWidget(plainPage()); mPreview->setFixedSize(250, 200); // mPreview->setBackgroundMode(TQWidget::NoBackground); mPreview->setBackgroundColor(TQt::black); tqlayout->add(mPreview); show(); // So that hacks can XSelectInput ButtonPressMask XSelectInput(qt_xdisplay(), mPreview->winId(), widgetEventMask ); slotPreviewExited(0); return true; }
void EvaUserSetting::loadMsgToSql(const TQString fullName,const bool isQunMsg) { TQFile file(fullName); if(!file.open(IO_ReadOnly)) return ; TQString fullNameSql = getEvaUserDir() + "/"+SqlFileName; int result; char * errmsg = NULL; char **dbResult; int nRow, nColumn,i=0; sqlite3 *db=NULL; result=sqlite3_open(fullNameSql.data(),&db); if( result != SQLITE_OK ) return; TQString sql; sqlite3_exec( db,"begin transaction;",0,0,&errmsg); TQ_UINT32 r_buddy; TQ_UINT32 sender; TQString sNick; TQ_UINT32 receiver; TQString rNick; TQ_UINT8 type; // 0 auto reply, 1 normal TQString message; TQ_UINT32 intTime; TQDateTime time; TQ_UINT8 fontSize; TQ_UINT8 flag; // start from right. bit 0: u, bit 1: i, bit 2: b TQ_UINT8 blue; TQ_UINT8 green; TQ_UINT8 red; TQDataStream stream(&file); std::list<chatMessage>srclist; while(!stream.atEnd()){ stream>>r_buddy; stream>>sender; stream>>sNick; stream>>receiver; stream>>rNick; stream>>type; stream>>message; stream>>intTime; stream>>fontSize; stream>>flag; stream>>blue; stream>>green; stream>>red; sql.sprintf("select sender from chat where sender=%d and receiver=%d and time=%d and isQunMsg=%d ",sender,receiver,intTime,isQunMsg); result = sqlite3_get_table(db,sql.utf8().data(), &dbResult,&nRow, &nColumn, &errmsg); if( SQLITE_OK != result ) { sqlite3_exec( db,"commit transaction;",0,0,&errmsg); return; } if(nRow>0) continue; //找到重复的记录 i++; sql.sprintf("insert into chat values (%d,%d,'%s', %d,'%s',%d, '%s', %d,%d, %d, %d,%d,%d,%d)",r_buddy,sender,sNick.local8Bit().data(),receiver,rNick.local8Bit().data(),type,message.local8Bit().data(),intTime,fontSize,flag,blue,green,red,isQunMsg); sqlite3_exec( db , sql.utf8().data() , 0 , 0 , &errmsg ); } printf("load %s %i条\n",fullName.data(),i); sqlite3_exec( db,"commit transaction;",0,0,&errmsg); file.close(); TQString newfile; newfile=fullName+".old"; unlink(newfile.local8Bit().data()); rename(fullName.local8Bit().data(),newfile.local8Bit().data()); return ; }