summaryrefslogtreecommitdiff
authorchicken <chicken>2004-03-01 17:44:52 (UTC)
committer chicken <chicken>2004-03-01 17:44:52 (UTC)
commit5b640d3f070b0b2de361421abf93949410546e19 (patch) (unidiff)
tree98d6ebb158e780a299cca27cbb7c7105a8dedef3
parentbdac663be648746b868757a6fc9e6c443e6f51b1 (diff)
downloadopie-5b640d3f070b0b2de361421abf93949410546e19.zip
opie-5b640d3f070b0b2de361421abf93949410546e19.tar.gz
opie-5b640d3f070b0b2de361421abf93949410546e19.tar.bz2
fix includes
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/qws/main.cpp2
-rw-r--r--core/qws/oqwsserver.cpp15
-rw-r--r--core/qws/qcopbridge.cpp6
-rw-r--r--core/qws/transferserver.cpp8
4 files changed, 0 insertions, 31 deletions
diff --git a/core/qws/main.cpp b/core/qws/main.cpp
index bfed283..1c3c621 100644
--- a/core/qws/main.cpp
+++ b/core/qws/main.cpp
@@ -1,71 +1,69 @@
1#include <qwindowsystem_qws.h>
2#include <qapplication.h>
3 1
4#include "oqwsserver.h" 2#include "oqwsserver.h"
5 3
6#include <sys/types.h> 4#include <sys/types.h>
7#include <sys/stat.h> 5#include <sys/stat.h>
8#include <fcntl.h> 6#include <fcntl.h>
9#include <unistd.h> 7#include <unistd.h>
10 8
11#include <syslog.h> 9#include <syslog.h>
12#include <stdio.h> 10#include <stdio.h>
13 11
14#define APPNAME "op-qws" 12#define APPNAME "op-qws"
15 13
16void toSyslog(QtMsgType type, const char *msg) 14void toSyslog(QtMsgType type, const char *msg)
17{ 15{
18 int level = LOG_INFO; 16 int level = LOG_INFO;
19 switch (type) { 17 switch (type) {
20 case QtDebugMsg: 18 case QtDebugMsg:
21 level = LOG_DEBUG; 19 level = LOG_DEBUG;
22 break; 20 break;
23 case QtWarningMsg: 21 case QtWarningMsg:
24 level = LOG_WARNING; 22 level = LOG_WARNING;
25 break; 23 break;
26 case QtFatalMsg: 24 case QtFatalMsg:
27 level = LOG_ERR; 25 level = LOG_ERR;
28 break; 26 break;
29 } 27 }
30 syslog (LOG_DAEMON | level, msg); 28 syslog (LOG_DAEMON | level, msg);
31} 29}
32 30
33int daemon_init(void) 31int daemon_init(void)
34{ 32{
35 pid_t pid; 33 pid_t pid;
36 34
37 if ((pid = fork()) < 0) 35 if ((pid = fork()) < 0)
38 return(-1); 36 return(-1);
39 else if (pid != 0) 37 else if (pid != 0)
40 exit(0); 38 exit(0);
41 39
42 setsid(); 40 setsid();
43 41
44 chdir("/"); 42 chdir("/");
45 43
46 umask(0); 44 umask(0);
47 45
48 fclose(stdout); 46 fclose(stdout);
49 fclose(stderr); 47 fclose(stderr);
50 fclose(stdin); 48 fclose(stdin);
51 49
52 return(0); 50 return(0);
53} 51}
54 52
55int main( int argc, char ** argv ) 53int main( int argc, char ** argv )
56{ 54{
57 while (argc > 1) { 55 while (argc > 1) {
58 if (strcmp(argv[--argc], "-d") == 0) { 56 if (strcmp(argv[--argc], "-d") == 0) {
59 // daemonize 57 // daemonize
60 openlog(APPNAME, 0, LOG_DAEMON); 58 openlog(APPNAME, 0, LOG_DAEMON);
61 qInstallMsgHandler(toSyslog); 59 qInstallMsgHandler(toSyslog);
62 if (daemon_init() != 0) { 60 if (daemon_init() != 0) {
63 fprintf(stderr, "%s: Error: Unable to daemonize\n", APPNAME); 61 fprintf(stderr, "%s: Error: Unable to daemonize\n", APPNAME);
64 return 1; 62 return 1;
65 } 63 }
66 } 64 }
67 } 65 }
68 66
69 OQWSServer a(argc, argv, QApplication::GuiServer); 67 OQWSServer a(argc, argv, QApplication::GuiServer);
70 return a.exec(); 68 return a.exec();
71} 69}
diff --git a/core/qws/oqwsserver.cpp b/core/qws/oqwsserver.cpp
index 1c61d19..907686a 100644
--- a/core/qws/oqwsserver.cpp
+++ b/core/qws/oqwsserver.cpp
@@ -1,145 +1,130 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qtopia Environment. 4** This file is part of Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#include <syslog.h> 21#include <syslog.h>
22 22
23#include "oqwsserver.h" 23#include "oqwsserver.h"
24#include "qcopbridge.h" 24#include "qcopbridge.h"
25#include "transferserver.h" 25#include "transferserver.h"
26 26
27#include <qpe/applnk.h>
28#include <qpe/mimetype.h>
29#include <qpe/password.h>
30#include <qpe/config.h>
31#include <qpe/power.h>
32#include <qpe/timeconversion.h>
33#include <qpe/qcopenvelope_qws.h>
34#include <qpe/network.h>
35#include <qpe/global.h>
36 27
37#if defined( QT_QWS_SL5XXX ) || defined( QT_QWS_IPAQ ) 28#if defined( QT_QWS_SL5XXX ) || defined( QT_QWS_IPAQ )
38#include <qpe/custom.h> 29#include <qpe/custom.h>
39#endif 30#endif
40 31
41#include <opie/odevice.h> 32#include <opie/odevice.h>
42 33
43#include <qgfx_qws.h>
44#include <qmainwindow.h>
45#include <qmessagebox.h>
46#include <qtimer.h>
47#include <qwindowsystem_qws.h>
48 34
49#include <qvaluelist.h>
50 35
51#include <stdlib.h> 36#include <stdlib.h>
52#include <unistd.h> 37#include <unistd.h>
53#include <fcntl.h> 38#include <fcntl.h>
54 39
55using namespace Opie; 40using namespace Opie;
56 41
57OQWSServer::OQWSServer( int& argc, char **argv, Type appType ) 42OQWSServer::OQWSServer( int& argc, char **argv, Type appType )
58 : QPEApplication( argc, argv, appType ) 43 : QPEApplication( argc, argv, appType )
59{ 44{
60 startServers(); 45 startServers();
61} 46}
62 47
63OQWSServer::~OQWSServer() 48OQWSServer::~OQWSServer()
64{ 49{
65 terminateServers(); 50 terminateServers();
66} 51}
67 52
68bool OQWSServer::eventFilter ( QObject *o, QEvent *e ) 53bool OQWSServer::eventFilter ( QObject *o, QEvent *e )
69{ 54{
70#if 0 55#if 0
71 if ( e-> type ( ) == QEvent::KeyPress || e-> type ( ) == QEvent::KeyRelease ) { 56 if ( e-> type ( ) == QEvent::KeyPress || e-> type ( ) == QEvent::KeyRelease ) {
72 QKeyEvent *ke = (QKeyEvent *) e; 57 QKeyEvent *ke = (QKeyEvent *) e;
73 58
74 const ODeviceButton *db = ODevice::inst ( )-> buttonForKeycode ( ke-> key ( )); 59 const ODeviceButton *db = ODevice::inst ( )-> buttonForKeycode ( ke-> key ( ));
75 60
76 if ( db ) { 61 if ( db ) {
77 if (checkButtonAction ( db, ke-> key ( ), e-> type ( ) == QEvent::KeyPress, ke-> isAutoRepeat ( ))) 62 if (checkButtonAction ( db, ke-> key ( ), e-> type ( ) == QEvent::KeyPress, ke-> isAutoRepeat ( )))
78 return true; //checkButtonAction retrune false if events should be routed through 63 return true; //checkButtonAction retrune false if events should be routed through
79 } 64 }
80 } 65 }
81#endif 66#endif
82 return QPEApplication::eventFilter ( o, e ); 67 return QPEApplication::eventFilter ( o, e );
83} 68}
84 69
85#ifdef Q_WS_QWS 70#ifdef Q_WS_QWS
86 71
87bool OQWSServer::qwsEventFilter( QWSEvent *e ) 72bool OQWSServer::qwsEventFilter( QWSEvent *e )
88{ 73{
89#if 0 74#if 0
90 qpedesktop->checkMemory(); 75 qpedesktop->checkMemory();
91 76
92 if ( e->type == QWSEvent::Key ) { 77 if ( e->type == QWSEvent::Key ) {
93 QWSKeyEvent * ke = (QWSKeyEvent *) e; 78 QWSKeyEvent * ke = (QWSKeyEvent *) e;
94 ushort keycode = ke-> simpleData. keycode; 79 ushort keycode = ke-> simpleData. keycode;
95 80
96 if ( !loggedin && keycode != Key_F34 ) 81 if ( !loggedin && keycode != Key_F34 )
97 return true; 82 return true;
98 83
99 bool press = ke-> simpleData. is_press; 84 bool press = ke-> simpleData. is_press;
100 bool autoRepeat = ke-> simpleData. is_auto_repeat; 85 bool autoRepeat = ke-> simpleData. is_auto_repeat;
101 86
102 if ( !keyboardGrabbed ( )) { 87 if ( !keyboardGrabbed ( )) {
103 // app that registers key/message to be sent back to the app, when it doesn't have focus, 88 // app that registers key/message to be sent back to the app, when it doesn't have focus,
104 // when user presses key, unless keyboard has been requested from app. 89 // when user presses key, unless keyboard has been requested from app.
105 // will not send multiple repeats if user holds key 90 // will not send multiple repeats if user holds key
106 // i.e. one shot 91 // i.e. one shot
107 92
108 if ( keycode != 0 && press && !autoRepeat ) { 93 if ( keycode != 0 && press && !autoRepeat ) {
109 for ( KeyRegisterList::Iterator it = keyRegisterList.begin(); it != keyRegisterList.end(); ++it ) { 94 for ( KeyRegisterList::Iterator it = keyRegisterList.begin(); it != keyRegisterList.end(); ++it ) {
110 if (( *it ). getKeyCode ( ) == keycode ) { 95 if (( *it ). getKeyCode ( ) == keycode ) {
111 QCopEnvelope (( *it ). getChannel ( ), ( *it ). getMessage ( )); 96 QCopEnvelope (( *it ). getChannel ( ), ( *it ). getMessage ( ));
112 return true; 97 return true;
113 } 98 }
114 } 99 }
115 } 100 }
116 } 101 }
117 102
118 if ( keycode == HardKey_Suspend ) { 103 if ( keycode == HardKey_Suspend ) {
119 if ( press ) 104 if ( press )
120 emit power ( ); 105 emit power ( );
121 return true; 106 return true;
122 } 107 }
123 else if ( keycode == HardKey_Backlight ) { 108 else if ( keycode == HardKey_Backlight ) {
124 if ( press ) 109 if ( press )
125 emit backlight ( ); 110 emit backlight ( );
126 return true; 111 return true;
127 } 112 }
128 else if ( keycode == Key_F32 ) { 113 else if ( keycode == Key_F32 ) {
129 if ( press ) 114 if ( press )
130 QCopEnvelope e( "QPE/Desktop", "startSync()" ); 115 QCopEnvelope e( "QPE/Desktop", "startSync()" );
131 return true; 116 return true;
132 } 117 }
133 else if ( keycode == Key_F31 && !ke-> simpleData. modifiers ) { // Symbol Key -> show Unicode IM 118 else if ( keycode == Key_F31 && !ke-> simpleData. modifiers ) { // Symbol Key -> show Unicode IM
134 if ( press ) 119 if ( press )
135 emit symbol ( ); 120 emit symbol ( );
136 return true; 121 return true;
137 } 122 }
138 else if ( keycode == Key_NumLock ) { 123 else if ( keycode == Key_NumLock ) {
139 if ( press ) 124 if ( press )
140 emit numLockStateToggle ( ); 125 emit numLockStateToggle ( );
141 } 126 }
142 else if ( keycode == Key_CapsLock ) { 127 else if ( keycode == Key_CapsLock ) {
143 if ( press ) 128 if ( press )
144 emit capsLockStateToggle(); 129 emit capsLockStateToggle();
145 } 130 }
diff --git a/core/qws/qcopbridge.cpp b/core/qws/qcopbridge.cpp
index 6177a7c..c0c52e8 100644
--- a/core/qws/qcopbridge.cpp
+++ b/core/qws/qcopbridge.cpp
@@ -1,130 +1,124 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#include "qcopbridge.h" 21#include "qcopbridge.h"
22#include "transferserver.h" 22#include "transferserver.h"
23 23
24#include <qpe/qcopenvelope_qws.h> 24#include <qpe/qcopenvelope_qws.h>
25#include <qpe/qpeapplication.h> 25#include <qpe/qpeapplication.h>
26#include <qpe/version.h> 26#include <qpe/version.h>
27 27
28#include <qdir.h>
29#include <qfile.h>
30#include <qtextstream.h> 28#include <qtextstream.h>
31#include <qdatastream.h>
32#include <qstringlist.h>
33#include <qfileinfo.h>
34#include <qregexp.h>
35#ifdef QWS 29#ifdef QWS
36#include <qcopchannel_qws.h> 30#include <qcopchannel_qws.h>
37#endif 31#endif
38 32
39#define _XOPEN_SOURCE 33#define _XOPEN_SOURCE
40#include <pwd.h> 34#include <pwd.h>
41#include <sys/types.h> 35#include <sys/types.h>
42#include <unistd.h> 36#include <unistd.h>
43 37
44#if defined(_OS_LINUX_) 38#if defined(_OS_LINUX_)
45#include <shadow.h> 39#include <shadow.h>
46#endif 40#endif
47 41
48//#define INSECURE 42//#define INSECURE
49 43
50const int block_size = 51200; 44const int block_size = 51200;
51 45
52QCopBridge::QCopBridge( Q_UINT16 port, QObject *parent , 46QCopBridge::QCopBridge( Q_UINT16 port, QObject *parent ,
53 const char* name ) 47 const char* name )
54 : QServerSocket( port, 1, parent, name ), 48 : QServerSocket( port, 1, parent, name ),
55 desktopChannel( 0 ), 49 desktopChannel( 0 ),
56 cardChannel( 0 ) 50 cardChannel( 0 )
57{ 51{
58 if ( !ok() ) 52 if ( !ok() )
59 qWarning( "Failed to bind to port %d", port ); 53 qWarning( "Failed to bind to port %d", port );
60 else { 54 else {
61#ifndef QT_NO_COP 55#ifndef QT_NO_COP
62 desktopChannel = new QCopChannel( "QPE/Desktop", this ); 56 desktopChannel = new QCopChannel( "QPE/Desktop", this );
63 connect( desktopChannel, SIGNAL(received(const QCString &, const QByteArray &)), 57 connect( desktopChannel, SIGNAL(received(const QCString &, const QByteArray &)),
64 this, SLOT(desktopMessage( const QCString &, const QByteArray &)) ); 58 this, SLOT(desktopMessage( const QCString &, const QByteArray &)) );
65 cardChannel = new QCopChannel( "QPE/Card", this ); 59 cardChannel = new QCopChannel( "QPE/Card", this );
66 connect( cardChannel, SIGNAL(received(const QCString &, const QByteArray &)), 60 connect( cardChannel, SIGNAL(received(const QCString &, const QByteArray &)),
67 this, SLOT(desktopMessage( const QCString &, const QByteArray &)) ); 61 this, SLOT(desktopMessage( const QCString &, const QByteArray &)) );
68#endif 62#endif
69 } 63 }
70 sendSync = FALSE; 64 sendSync = FALSE;
71} 65}
72 66
73QCopBridge::~QCopBridge() 67QCopBridge::~QCopBridge()
74{ 68{
75#ifndef QT_NO_COP 69#ifndef QT_NO_COP
76 delete desktopChannel; 70 delete desktopChannel;
77#endif 71#endif
78} 72}
79 73
80void QCopBridge::newConnection( int socket ) 74void QCopBridge::newConnection( int socket )
81{ 75{
82 QCopBridgePI *pi = new QCopBridgePI( socket, this ); 76 QCopBridgePI *pi = new QCopBridgePI( socket, this );
83 openConnections.append( pi ); 77 openConnections.append( pi );
84 connect ( pi, SIGNAL( connectionClosed( QCopBridgePI *) ), this, SLOT( connectionClosed( QCopBridgePI *) ) ); 78 connect ( pi, SIGNAL( connectionClosed( QCopBridgePI *) ), this, SLOT( connectionClosed( QCopBridgePI *) ) );
85#ifndef QT_NO_COP 79#ifndef QT_NO_COP
86 QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::DisableSuspend; 80 QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::DisableSuspend;
87#endif 81#endif
88 82
89 if ( sendSync ) { 83 if ( sendSync ) {
90 pi ->startSync(); 84 pi ->startSync();
91 sendSync = FALSE; 85 sendSync = FALSE;
92 } 86 }
93} 87}
94 88
95void QCopBridge::connectionClosed( QCopBridgePI *pi ) 89void QCopBridge::connectionClosed( QCopBridgePI *pi )
96{ 90{
97 openConnections.remove( pi ); 91 openConnections.remove( pi );
98 if ( openConnections.count() == 0 ) { 92 if ( openConnections.count() == 0 ) {
99#ifndef QT_NO_COP 93#ifndef QT_NO_COP
100 QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable; 94 QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable;
101#endif 95#endif
102 } 96 }
103} 97}
104 98
105void QCopBridge::closeOpenConnections() 99void QCopBridge::closeOpenConnections()
106{ 100{
107 QCopBridgePI *pi; 101 QCopBridgePI *pi;
108 for ( pi = openConnections.first(); pi != 0; pi = openConnections.next() ) 102 for ( pi = openConnections.first(); pi != 0; pi = openConnections.next() )
109 pi->close(); 103 pi->close();
110} 104}
111 105
112 106
113void QCopBridge::desktopMessage( const QCString &command, const QByteArray &args ) 107void QCopBridge::desktopMessage( const QCString &command, const QByteArray &args )
114{ 108{
115 command.stripWhiteSpace(); 109 command.stripWhiteSpace();
116 110
117 int paren = command.find( "(" ); 111 int paren = command.find( "(" );
118 if ( paren <= 0 ) { 112 if ( paren <= 0 ) {
119 qDebug("DesktopMessage: bad qcop syntax"); 113 qDebug("DesktopMessage: bad qcop syntax");
120 return; 114 return;
121 } 115 }
122 116
123 QString params = command.mid( paren + 1 ); 117 QString params = command.mid( paren + 1 );
124 if ( params[params.length()-1] != ')' ) { 118 if ( params[params.length()-1] != ')' ) {
125 qDebug("DesktopMessage: bad qcop syntax"); 119 qDebug("DesktopMessage: bad qcop syntax");
126 return; 120 return;
127 } 121 }
128 122
129 params.truncate( params.length()-1 ); 123 params.truncate( params.length()-1 );
130 124
diff --git a/core/qws/transferserver.cpp b/core/qws/transferserver.cpp
index 239c824..30bf438 100644
--- a/core/qws/transferserver.cpp
+++ b/core/qws/transferserver.cpp
@@ -1,166 +1,158 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20#define _XOPEN_SOURCE 20#define _XOPEN_SOURCE
21#include <pwd.h> 21#include <pwd.h>
22#include <sys/types.h> 22#include <sys/types.h>
23#include <unistd.h> 23#include <unistd.h>
24#include <stdlib.h> 24#include <stdlib.h>
25#include <time.h> 25#include <time.h>
26 26
27#ifndef Q_OS_MACX 27#ifndef Q_OS_MACX
28#include <shadow.h> 28#include <shadow.h>
29#endif /* Q_OS_MACX */ 29#endif /* Q_OS_MACX */
30 30
31/* we need the _OS_LINUX stuff first ! */ 31/* we need the _OS_LINUX stuff first ! */
32#include <qglobal.h>
33 32
34#ifndef _OS_LINUX_ 33#ifndef _OS_LINUX_
35// Is anybody able to review this ? The include "uuid/uuid.h" couldn't be found 34// Is anybody able to review this ? The include "uuid/uuid.h" couldn't be found
36// anywhere ? Therfore I removed it completely.. 35// anywhere ? Therfore I removed it completely..
37// I think it should be made permanentyl !? (eilers) 36// I think it should be made permanentyl !? (eilers)
38#warning "Where should uuid/uuid.h be found ? Removed this part .. (eilers)" 37#warning "Where should uuid/uuid.h be found ? Removed this part .. (eilers)"
39#if 0 38#if 0
40 39
41extern "C" 40extern "C"
42{ 41{
43#include <uuid/uuid.h> 42#include <uuid/uuid.h>
44#define UUID_H_INCLUDED 43#define UUID_H_INCLUDED
45} 44}
46 45
47#endif 46#endif
48 47
49#endif // not defined linux 48#endif // not defined linux
50 49
51#if defined(_OS_LINUX_) 50#if defined(_OS_LINUX_)
52#include <shadow.h> 51#include <shadow.h>
53#elif defined(Q_OS_MACX) 52#elif defined(Q_OS_MACX)
54#include <stdlib.h> 53#include <stdlib.h>
55#endif 54#endif
56 55
57#include <qdir.h>
58#include <qfile.h>
59#include <qtextstream.h> 56#include <qtextstream.h>
60#include <qdatastream.h>
61#include <qmessagebox.h> 57#include <qmessagebox.h>
62#include <qstringlist.h>
63#include <qfileinfo.h>
64#include <qregexp.h>
65//#include <qpe/qcopchannel_qws.h> 58//#include <qpe/qcopchannel_qws.h>
66#include <qpe/process.h> 59#include <qpe/process.h>
67#include <qpe/global.h> 60#include <qpe/global.h>
68#include <qpe/config.h> 61#include <qpe/config.h>
69#include <qpe/contact.h> 62#include <qpe/contact.h>
70#include <qpe/quuid.h>
71#include <qpe/version.h> 63#include <qpe/version.h>
72#include <qpe/qcopenvelope_qws.h> 64#include <qpe/qcopenvelope_qws.h>
73 65
74#include "transferserver.h" 66#include "transferserver.h"
75#include <opie/oprocess.h> 67#include <opie/oprocess.h>
76 68
77const int block_size = 51200; 69const int block_size = 51200;
78 70
79TransferServer::TransferServer( Q_UINT16 port, QObject *parent , 71TransferServer::TransferServer( Q_UINT16 port, QObject *parent ,
80 const char* name ) 72 const char* name )
81 : QServerSocket( port, 1, parent, name ) 73 : QServerSocket( port, 1, parent, name )
82{ 74{
83 if ( !ok() ) 75 if ( !ok() )
84 qWarning( "Failed to bind to port %d", port ); 76 qWarning( "Failed to bind to port %d", port );
85} 77}
86 78
87TransferServer::~TransferServer() 79TransferServer::~TransferServer()
88{ 80{
89} 81}
90 82
91void TransferServer::newConnection( int socket ) 83void TransferServer::newConnection( int socket )
92{ 84{
93 (void) new ServerPI( socket, this ); 85 (void) new ServerPI( socket, this );
94} 86}
95 87
96/* 88/*
97 * small class in anonymous namespace 89 * small class in anonymous namespace
98 * to generate a QUUid for us 90 * to generate a QUUid for us
99 */ 91 */
100namespace 92namespace
101{ 93{
102struct UidGen 94struct UidGen
103{ 95{
104 QString uuid(); 96 QString uuid();
105}; 97};
106#if defined(Q_OS_MACX) 98#if defined(Q_OS_MACX)
107QString UidGen::uuid() 99QString UidGen::uuid()
108{ 100{
109 srandom( random() ); 101 srandom( random() );
110 QString numStr = QString::number( random() ); 102 QString numStr = QString::number( random() );
111 103
112 return "{" + numStr + "}"; 104 return "{" + numStr + "}";
113} 105}
114#elif defined(_OS_LINUX_) 106#elif defined(_OS_LINUX_)
115/* 107/*
116* linux got a /proc/sys/kernel/random/uuid file 108* linux got a /proc/sys/kernel/random/uuid file
117* it'll generate the uuids for us 109* it'll generate the uuids for us
118*/ 110*/
119QString UidGen::uuid() 111QString UidGen::uuid()
120{ 112{
121 QFile file( "/proc/sys/kernel/random/uuid" ); 113 QFile file( "/proc/sys/kernel/random/uuid" );
122 if (!file.open(IO_ReadOnly ) ) 114 if (!file.open(IO_ReadOnly ) )
123 return QString::null; 115 return QString::null;
124 116
125 QTextStream stream(&file); 117 QTextStream stream(&file);
126 118
127 return "{" + stream.read().stripWhiteSpace() + "}"; 119 return "{" + stream.read().stripWhiteSpace() + "}";
128} 120}
129#else 121#else
130QString UidGen::uuid() 122QString UidGen::uuid()
131{ 123{
132 uuid_t uuid; 124 uuid_t uuid;
133 ::uuid_generate( uuid ); 125 ::uuid_generate( uuid );
134 return QUUid( uuid ).toString(); 126 return QUUid( uuid ).toString();
135} 127}
136#endif 128#endif
137} 129}
138 130
139QString SyncAuthentication::serverId() 131QString SyncAuthentication::serverId()
140{ 132{
141 Config cfg("Security"); 133 Config cfg("Security");
142 cfg.setGroup("Sync"); 134 cfg.setGroup("Sync");
143 QString r = cfg.readEntry("serverid"); 135 QString r = cfg.readEntry("serverid");
144 if ( r.isEmpty() ) { 136 if ( r.isEmpty() ) {
145 UidGen gen; 137 UidGen gen;
146 r = gen.uuid(); 138 r = gen.uuid();
147 cfg.writeEntry("serverid", r ); 139 cfg.writeEntry("serverid", r );
148 } 140 }
149 return r; 141 return r;
150} 142}
151 143
152QString SyncAuthentication::ownerName() 144QString SyncAuthentication::ownerName()
153{ 145{
154 QString vfilename = Global::applicationFileName("addressbook", 146 QString vfilename = Global::applicationFileName("addressbook",
155 "businesscard.vcf"); 147 "businesscard.vcf");
156 if (QFile::exists(vfilename)) { 148 if (QFile::exists(vfilename)) {
157 Contact c; 149 Contact c;
158 c = Contact::readVCard( vfilename )[0]; 150 c = Contact::readVCard( vfilename )[0];
159 return c.fullName(); 151 return c.fullName();
160 } 152 }
161 153
162 return ""; 154 return "";
163} 155}
164 156
165QString SyncAuthentication::loginName() 157QString SyncAuthentication::loginName()
166{ 158{