summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2002-11-02 22:29:09 (UTC)
committer llornkcor <llornkcor>2002-11-02 22:29:09 (UTC)
commitefb3cb40de57d53de1eb22662261e58333a3a39d (patch) (unidiff)
tree8f07bce4fc4040444d88cc006dd7db60c33adb4d
parent2dc81c48428222533e5479947d9ad318e464bafa (diff)
downloadopie-efb3cb40de57d53de1eb22662261e58333a3a39d.zip
opie-efb3cb40de57d53de1eb22662261e58333a3a39d.tar.gz
opie-efb3cb40de57d53de1eb22662261e58333a3a39d.tar.bz2
make deny the default button for ftp/sync prompt
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/launcher/transferserver.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/core/launcher/transferserver.cpp b/core/launcher/transferserver.cpp
index dea140d..aaa4425 100644
--- a/core/launcher/transferserver.cpp
+++ b/core/launcher/transferserver.cpp
@@ -185,97 +185,97 @@ bool SyncAuthentication::checkPassword( const QString& password )
185 185
186 // Note: some systems use more than crypt for passwords. 186 // Note: some systems use more than crypt for passwords.
187 QString cpassword = QString::fromLocal8Bit( crypt( password.local8Bit(), cpwd.local8Bit() ) ); 187 QString cpassword = QString::fromLocal8Bit( crypt( password.local8Bit(), cpwd.local8Bit() ) );
188 if ( cpwd == cpassword ) 188 if ( cpwd == cpassword )
189 return TRUE; 189 return TRUE;
190#endif 190#endif
191 191
192 static int lastdenial=0; 192 static int lastdenial=0;
193 static int denials=0; 193 static int denials=0;
194 int now = time(0); 194 int now = time(0);
195 195
196 // Detect old Qtopia Desktop (no password) 196 // Detect old Qtopia Desktop (no password)
197 if ( password.isEmpty() ) { 197 if ( password.isEmpty() ) {
198 if ( denials < 1 || now > lastdenial+600 ) { 198 if ( denials < 1 || now > lastdenial+600 ) {
199 QMessageBox::warning( 0,tr("Sync Connection"), 199 QMessageBox::warning( 0,tr("Sync Connection"),
200 tr("<p>An unauthorized system is requesting access to this device." 200 tr("<p>An unauthorized system is requesting access to this device."
201 "<p>If you are using a version of Qtopia Desktop older than 1.5.1, " 201 "<p>If you are using a version of Qtopia Desktop older than 1.5.1, "
202 "please upgrade."), 202 "please upgrade."),
203 tr("Deny") ); 203 tr("Deny") );
204 denials++; 204 denials++;
205 lastdenial=now; 205 lastdenial=now;
206 } 206 }
207 return FALSE; 207 return FALSE;
208 } 208 }
209 209
210 // Second, check sync password... 210 // Second, check sync password...
211 QString pass = password.left(6); 211 QString pass = password.left(6);
212 /* old QtopiaDesktops are sending 212 /* old QtopiaDesktops are sending
213 * rootme newer versions got a Qtopia 213 * rootme newer versions got a Qtopia
214 * prefixed. Qtopia prefix will suceed 214 * prefixed. Qtopia prefix will suceed
215 * until the sync software syncs up 215 * until the sync software syncs up
216 * FIXME 216 * FIXME
217 */ 217 */
218 if ( pass == "rootme" || pass == "Qtopia") { 218 if ( pass == "rootme" || pass == "Qtopia") {
219 219
220 QString cpassword = QString::fromLocal8Bit( crypt( password.mid(8).local8Bit(), "qp" ) ); 220 QString cpassword = QString::fromLocal8Bit( crypt( password.mid(8).local8Bit(), "qp" ) );
221 Config cfg("Security"); 221 Config cfg("Security");
222 cfg.setGroup("Sync"); 222 cfg.setGroup("Sync");
223 QString pwds = cfg.readEntry("Passwords"); 223 QString pwds = cfg.readEntry("Passwords");
224 if ( QStringList::split(QChar(' '),pwds).contains(cpassword) ) 224 if ( QStringList::split(QChar(' '),pwds).contains(cpassword) )
225 return TRUE; 225 return TRUE;
226 226
227 // Unrecognized system. Be careful... 227 // Unrecognized system. Be careful...
228 228
229 if ( (denials > 2 && now < lastdenial+600) 229 if ( (denials > 2 && now < lastdenial+600)
230 || QMessageBox::warning(0,tr("Sync Connection"), 230 || QMessageBox::warning(0,tr("Sync Connection"),
231 tr("<p>An unrecognized system is requesting access to this device." 231 tr("<p>An unrecognized system is requesting access to this device."
232 "<p>If you have just initiated a Sync for the first time, this is normal."), 232 "<p>If you have just initiated a Sync for the first time, this is normal."),
233 tr("Allow"),tr("Deny"))==1 ) 233 tr("Allow"),tr("Deny"), 0, 1, 1 ) ==1 )
234 { 234 {
235 denials++; 235 denials++;
236 lastdenial=now; 236 lastdenial=now;
237 return FALSE; 237 return FALSE;
238 } else { 238 } else {
239 denials=0; 239 denials=0;
240 cfg.writeEntry("Passwords",pwds+" "+cpassword); 240 cfg.writeEntry("Passwords",pwds+" "+cpassword);
241 return TRUE; 241 return TRUE;
242 } 242 }
243 } 243 }
244 244
245 return FALSE; 245 return FALSE;
246} 246}
247 247
248ServerPI::ServerPI( int socket, QObject *parent , const char* name ) 248ServerPI::ServerPI( int socket, QObject *parent , const char* name )
249 : QSocket( parent, name ) , dtp( 0 ), serversocket( 0 ), waitsocket( 0 ) 249 : QSocket( parent, name ) , dtp( 0 ), serversocket( 0 ), waitsocket( 0 )
250{ 250{
251 state = Connected; 251 state = Connected;
252 252
253 setSocket( socket ); 253 setSocket( socket );
254 254
255 peerport = peerPort(); 255 peerport = peerPort();
256 peeraddress = peerAddress(); 256 peeraddress = peerAddress();
257 257
258#ifndef INSECURE 258#ifndef INSECURE
259 if ( !SyncAuthentication::isAuthorized(peeraddress) ) { 259 if ( !SyncAuthentication::isAuthorized(peeraddress) ) {
260 state = Forbidden; 260 state = Forbidden;
261 startTimer( 0 ); 261 startTimer( 0 );
262 } else 262 } else
263#endif 263#endif
264 { 264 {
265 connect( this, SIGNAL( readyRead() ), SLOT( read() ) ); 265 connect( this, SIGNAL( readyRead() ), SLOT( read() ) );
266 connect( this, SIGNAL( connectionClosed() ), SLOT( connectionClosed() ) ); 266 connect( this, SIGNAL( connectionClosed() ), SLOT( connectionClosed() ) );
267 267
268 passiv = FALSE; 268 passiv = FALSE;
269 for( int i = 0; i < 4; i++ ) 269 for( int i = 0; i < 4; i++ )
270 wait[i] = FALSE; 270 wait[i] = FALSE;
271 271
272 send( "220 Qtopia " QPE_VERSION " FTP Server" ); 272 send( "220 Qtopia " QPE_VERSION " FTP Server" );
273 state = Wait_USER; 273 state = Wait_USER;
274 274
275 dtp = new ServerDTP( this ); 275 dtp = new ServerDTP( this );
276 connect( dtp, SIGNAL( completed() ), SLOT( dtpCompleted() ) ); 276 connect( dtp, SIGNAL( completed() ), SLOT( dtpCompleted() ) );
277 connect( dtp, SIGNAL( failed() ), SLOT( dtpFailed() ) ); 277 connect( dtp, SIGNAL( failed() ), SLOT( dtpFailed() ) );
278 connect( dtp, SIGNAL( error( int ) ), SLOT( dtpError( int ) ) ); 278 connect( dtp, SIGNAL( error( int ) ), SLOT( dtpError( int ) ) );
279 279
280 280
281 directory = QDir::currentDirPath(); 281 directory = QDir::currentDirPath();