13 files changed, 25 insertions, 25 deletions
diff --git a/noncore/settings/networksettings2/main.cpp b/noncore/settings/networksettings2/main.cpp index 8487e3e..973b4b7 100644 --- a/noncore/settings/networksettings2/main.cpp +++ b/noncore/settings/networksettings2/main.cpp | |||
@@ -1,175 +1,163 @@ | |||
1 | #include "nsdata.h" | 1 | #include "nsdata.h" |
2 | #include "activateprofile.h" | 2 | #include "activateprofile.h" |
3 | #include "activatevpn.h" | 3 | #include "activatevpn.h" |
4 | #include "networksettings.h" | 4 | #include "networksettings.h" |
5 | 5 | ||
6 | #include <opie2/odebug.h> | 6 | #include <opie2/odebug.h> |
7 | #include <qpe/qpeapplication.h> | 7 | #include <qpe/qpeapplication.h> |
8 | 8 | ||
9 | #include <opie2/oapplicationfactory.h> | 9 | #include <opie2/oapplicationfactory.h> |
10 | using namespace Opie::Core; | 10 | using namespace Opie::Core; |
11 | 11 | ||
12 | #ifdef GONE | 12 | #ifdef GONE |
13 | 13 | ||
14 | OPIE_EXPORT_APP( OApplicationFactory<NetworkSettings> ) | 14 | OPIE_EXPORT_APP( OApplicationFactory<NetworkSettings> ) |
15 | 15 | ||
16 | #else | 16 | #else |
17 | 17 | ||
18 | // just standard GUI | 18 | // just standard GUI |
19 | #define ACT_GUI 0 | 19 | #define ACT_GUI 0 |
20 | // used by interfaces to request for allow of up/down | 20 | // used by interfaces to request for allow of up/down |
21 | #define ACT_REQUEST 1 | 21 | #define ACT_REQUEST 1 |
22 | // regenerate config files | 22 | // regenerate config files |
23 | #define ACT_REGEN 2 | 23 | #define ACT_REGEN 2 |
24 | // used by interfaces to request user prompt | 24 | // used by interfaces to request user prompt |
25 | #define ACT_PROMPT 3 | 25 | #define ACT_PROMPT 3 |
26 | // used by interfaces to trigger VPN | 26 | // used by interfaces to trigger VPN |
27 | #define ACT_VPN 4 | 27 | #define ACT_VPN 4 |
28 | // activate opietooth | 28 | // activate opietooth |
29 | #define ACT_OT 5 | 29 | #define ACT_OT 5 |
30 | 30 | ||
31 | // include Opietooth GUI | 31 | // include Opietooth GUI |
32 | #include <opietooth2/Opietooth.h> | 32 | #include <opietooth2/Opietooth.h> |
33 | using namespace Opietooth2; | 33 | using namespace Opietooth2; |
34 | 34 | ||
35 | #include <qpushbutton.h> | 35 | #include <qpushbutton.h> |
36 | #include <qlayout.h> | 36 | #include <qlayout.h> |
37 | #include <qframe.h> | 37 | #include <qframe.h> |
38 | #include <qlabel.h> | 38 | #include <qlabel.h> |
39 | 39 | ||
40 | int main( int argc, char * argv[] ) { | 40 | int main( int argc, char * argv[] ) { |
41 | int rv = 0; | 41 | int rv = 0; |
42 | int Action = ACT_GUI; | 42 | int Action = ACT_GUI; |
43 | // could be overruled by -qws | 43 | // could be overruled by -qws |
44 | QApplication::Type GuiType = QApplication::GuiClient; | 44 | QApplication::Type GuiType = QApplication::GuiClient; |
45 | 45 | ||
46 | #ifdef _WS_QWS_ | ||
47 | QPEApplication * TheApp; | 46 | QPEApplication * TheApp; |
48 | #else | ||
49 | QApplication * TheApp; | ||
50 | #endif | ||
51 | 47 | ||
52 | for ( int i = 1; i < argc; i ++ ) { | 48 | for ( int i = 1; i < argc; i ++ ) { |
53 | int rmv; | 49 | int rmv; |
54 | rmv = 0; | 50 | rmv = 0; |
55 | if( strcmp( argv[i], "--regen" ) == 0 ) { | 51 | if( strcmp( argv[i], "--regen" ) == 0 ) { |
56 | Action = ACT_REGEN; | 52 | Action = ACT_REGEN; |
57 | GuiType = QApplication::Tty; | 53 | GuiType = QApplication::Tty; |
58 | rmv = 1; | 54 | rmv = 1; |
59 | } else if( strcmp( argv[i], "--prompt" ) == 0 ) { | 55 | } else if( strcmp( argv[i], "--prompt" ) == 0 ) { |
60 | Action = ACT_PROMPT; | 56 | Action = ACT_PROMPT; |
61 | rmv = 1; | 57 | rmv = 1; |
62 | } else if( strcmp( argv[i], "--triggervpn" ) == 0 ) { | 58 | } else if( strcmp( argv[i], "--triggervpn" ) == 0 ) { |
63 | Action = ACT_VPN; | 59 | Action = ACT_VPN; |
64 | rmv = 1; | 60 | rmv = 1; |
65 | } else if( strcmp( argv[i], "--opietooth" ) == 0 ) { | 61 | } else if( strcmp( argv[i], "--opietooth" ) == 0 ) { |
66 | Action = ACT_OT; | 62 | Action = ACT_OT; |
67 | rmv = 1; | 63 | rmv = 1; |
68 | } | 64 | } |
69 | if( rmv ) { | 65 | if( rmv ) { |
70 | memmove( argv+i, argv+i+rmv, | 66 | memmove( argv+i, argv+i+rmv, |
71 | sizeof( char * ) * (argc-i-rmv) ); | 67 | sizeof( char * ) * (argc-i-rmv) ); |
72 | i --; | 68 | i --; |
73 | argc -= rmv; | 69 | argc -= rmv; |
74 | } | 70 | } |
75 | } | 71 | } |
76 | 72 | ||
77 | if( strstr( argv[0], "-request" ) ) { | 73 | if( strstr( argv[0], "-request" ) ) { |
78 | // called from system to request something | 74 | // called from system to request something |
79 | GuiType = QApplication::Tty; | 75 | GuiType = QApplication::Tty; |
80 | Action = ACT_REQUEST; | 76 | Action = ACT_REQUEST; |
81 | Log(("Request : %s\n", argv[1] )); | 77 | Log(("Request : %s\n", argv[1] )); |
82 | } else if( strstr( argv[0], "-opietooth" ) ) { | 78 | } else if( strstr( argv[0], "-opietooth" ) ) { |
83 | Action = ACT_OT; | 79 | Action = ACT_OT; |
84 | } | 80 | } |
85 | 81 | ||
86 | // Start Qt | 82 | // Start Qt |
87 | #ifdef _WS_QWS_ | ||
88 | // because QPEApplication does not handle GuiType well | 83 | // because QPEApplication does not handle GuiType well |
89 | if( GuiType == QApplication::Tty ) { | 84 | if( GuiType == QApplication::Tty ) { |
90 | // this cast is NOT correct but we do not use | 85 | // this cast is NOT correct but we do not use |
91 | // TheApp anymore ... | 86 | // TheApp anymore ... |
92 | TheApp = (QPEApplication *)new QApplication( argc, argv, GuiType ); | 87 | TheApp = (QPEApplication *)new QApplication( argc, argv, GuiType ); |
93 | } else { | 88 | } else { |
94 | TheApp = new QPEApplication( argc, argv, GuiType ); | 89 | TheApp = new QPEApplication( argc, argv, GuiType ); |
95 | } | 90 | } |
96 | #else | ||
97 | TheApp = new QApplication( argc, argv, GuiType ); | ||
98 | #endif | ||
99 | 91 | ||
100 | // init qt with app widget | 92 | // init qt with app widget |
101 | 93 | ||
102 | switch( Action ) { | 94 | switch( Action ) { |
103 | case ACT_REQUEST : | 95 | case ACT_REQUEST : |
104 | { NetworkSettingsData NS; | 96 | { NetworkSettingsData NS; |
105 | if( NS.canStart( argv[1] ) ) { | 97 | if( NS.canStart( argv[1] ) ) { |
106 | QStringList S; | 98 | QStringList S; |
107 | S << QPEApplication::qpeDir() + "/bin/networksettings2"; | 99 | S << QPEApplication::qpeDir() + "/bin/networksettings2"; |
108 | S << "networksettings2"; | 100 | S << "networksettings2"; |
109 | S << "--prompt"; | 101 | S << "--prompt"; |
110 | S << argv[1]; | 102 | S << argv[1]; |
111 | NSResources->system().execAsUser( S ); | 103 | NSResources->system().execAsUser( S ); |
112 | Log(("FAILED %s-cNN-allowed\n", argv[1] )); | 104 | Log(("FAILED %s-cNN-allowed\n", argv[1] )); |
113 | // if we come here , failed | 105 | // if we come here , failed |
114 | printf( "%s-cNN-disallowed", argv[1] ); | 106 | printf( "%s-cNN-disallowed", argv[1] ); |
115 | } | 107 | } |
116 | } | 108 | } |
117 | break; | 109 | break; |
118 | case ACT_REGEN : | 110 | case ACT_REGEN : |
119 | { NetworkSettingsData NS; | 111 | { NetworkSettingsData NS; |
120 | QString S= NS.generateSettings(); | 112 | QString S= NS.generateSettings(); |
121 | // regen returns 0 if OK | 113 | // regen returns 0 if OK |
122 | rv = ( S.isEmpty() ) ? 0 : 1; | 114 | rv = ( S.isEmpty() ) ? 0 : 1; |
123 | } | 115 | } |
124 | break; | 116 | break; |
125 | case ACT_PROMPT : | 117 | case ACT_PROMPT : |
126 | { ActivateProfile AP(argv[1]); | 118 | { ActivateProfile AP(argv[1]); |
127 | if( AP.exec() == QDialog::Accepted ) { | 119 | if( AP.exec() == QDialog::Accepted ) { |
128 | Log(("%s-c%ld-allowed\n", | 120 | Log(("%s-c%ld-allowed\n", |
129 | argv[1], AP.selectedProfile() )); | 121 | argv[1], AP.selectedProfile() )); |
130 | printf( "%s-c%ld-allowed", argv[1], AP.selectedProfile() ); | 122 | printf( "%s-c%ld-allowed", argv[1], AP.selectedProfile() ); |
131 | } else { | 123 | } else { |
132 | Log(("%s-c%NN-disallowed\n", argv[1] )); | 124 | Log(("%s-c%NN-disallowed\n", argv[1] )); |
133 | printf( "%s-cNN-disallowed", argv[1] ); | 125 | printf( "%s-cNN-disallowed", argv[1] ); |
134 | } | 126 | } |
135 | } | 127 | } |
136 | break; | 128 | break; |
137 | case ACT_VPN : | 129 | case ACT_VPN : |
138 | { ActivateVPN AVPN; | 130 | { ActivateVPN AVPN; |
139 | AVPN.exec(); | 131 | AVPN.exec(); |
140 | } | 132 | } |
141 | break; | 133 | break; |
142 | case ACT_GUI : | 134 | case ACT_GUI : |
143 | case ACT_OT : | 135 | case ACT_OT : |
144 | { QWidget * W; | 136 | { QWidget * W; |
145 | 137 | ||
146 | if( Action == ACT_OT ) { | 138 | if( Action == ACT_OT ) { |
147 | W = new OTMain( 0 ); | 139 | W = new OTMain( 0 ); |
148 | } else { | 140 | } else { |
149 | W = new NetworkSettings(0); | 141 | W = new NetworkSettings(0); |
150 | } | 142 | } |
151 | TheApp->setMainWidget( W ); | 143 | TheApp->setMainWidget( W ); |
152 | 144 | ||
153 | W->show(); | 145 | W->show(); |
154 | #ifdef _WS_QWS_ | ||
155 | W->showMaximized(); | 146 | W->showMaximized(); |
156 | #else | ||
157 | W->resize( W->sizeHint() ); | ||
158 | #endif | ||
159 | rv = TheApp->exec(); | 147 | rv = TheApp->exec(); |
160 | 148 | ||
161 | delete W; | 149 | delete W; |
162 | } | 150 | } |
163 | break; | 151 | break; |
164 | } | 152 | } |
165 | 153 | ||
166 | LogClose(); | 154 | LogClose(); |
167 | 155 | ||
168 | return rv; | 156 | return rv; |
169 | } | 157 | } |
170 | 158 | ||
171 | #endif | 159 | #endif |
172 | 160 | ||
173 | 161 | ||
174 | // main.cpp | 162 | // main.cpp |
175 | 163 | ||
diff --git a/noncore/settings/networksettings2/networksettings2/systemfile.cpp b/noncore/settings/networksettings2/networksettings2/systemfile.cpp index 82fd43a..8deef94 100644 --- a/noncore/settings/networksettings2/networksettings2/systemfile.cpp +++ b/noncore/settings/networksettings2/networksettings2/systemfile.cpp | |||
@@ -1,107 +1,107 @@ | |||
1 | #include <stdio.h> | 1 | #include <stdio.h> |
2 | #include <qpe/qpeapplication.h> | 2 | #include <qpe/qpeapplication.h> |
3 | #include <qfileinfo.h> | 3 | #include <qfileinfo.h> |
4 | #include <qmessagebox.h> | 4 | #include <qmessagebox.h> |
5 | #include <qfile.h> | 5 | #include <qfile.h> |
6 | #include <qtextstream.h> | 6 | #include <qtextstream.h> |
7 | 7 | ||
8 | #include "resources.h" | 8 | #include "resources.h" |
9 | #include "systemfile.h" | 9 | #include "systemfile.h" |
10 | 10 | ||
11 | #define TEMPLATEDIR "networktemplates/" | 11 | #define TEMPLATEDIR "NS2templates/" |
12 | QString TemplDir; | 12 | QString TemplDir; |
13 | 13 | ||
14 | SystemFile::SystemFile( const QString & N, | 14 | SystemFile::SystemFile( const QString & N, |
15 | const QString & P, | 15 | const QString & P, |
16 | bool KDI ){ | 16 | bool KDI ){ |
17 | Name = N; | 17 | Name = N; |
18 | Path = P; | 18 | Path = P; |
19 | InAppend = 0; | 19 | InAppend = 0; |
20 | F = 0; | 20 | F = 0; |
21 | // get template info | 21 | // get template info |
22 | { QString S; | 22 | { QString S; |
23 | QFileInfo FI; | 23 | QFileInfo FI; |
24 | 24 | ||
25 | // find location of templates | 25 | // find location of templates |
26 | TemplDir = QPEApplication::qpeDir() + "etc/" + TEMPLATEDIR; | 26 | TemplDir = QPEApplication::qpeDir() + "etc/" + TEMPLATEDIR; |
27 | FI.setFile( TemplDir ); | 27 | FI.setFile( TemplDir ); |
28 | if( ! FI.isDir() ) { | 28 | if( ! FI.isDir() ) { |
29 | // try current dir | 29 | // try current dir |
30 | TemplDir = "./" TEMPLATEDIR; | 30 | TemplDir = "./" TEMPLATEDIR; |
31 | FI.setFile( TemplDir ); | 31 | FI.setFile( TemplDir ); |
32 | if( ! FI.isDir() ) { | 32 | if( ! FI.isDir() ) { |
33 | hasPreSection = | 33 | hasPreSection = |
34 | hasPostSection = | 34 | hasPostSection = |
35 | hasPreNodeSection = | 35 | hasPreNodeSection = |
36 | hasPostNodeSection = | 36 | hasPostNodeSection = |
37 | hasPreDeviceSection = | 37 | hasPreDeviceSection = |
38 | hasPostDeviceSection = 0; | 38 | hasPostDeviceSection = 0; |
39 | return; | 39 | return; |
40 | } | 40 | } |
41 | } | 41 | } |
42 | 42 | ||
43 | // have found location | 43 | // have found location |
44 | S = TemplDir + Name + "/presection"; | 44 | S = TemplDir + Name + "/presection"; |
45 | FI.setFile( S ); | 45 | FI.setFile( S ); |
46 | hasPreSection = ( FI.exists() && FI.isReadable() ); | 46 | hasPreSection = ( FI.exists() && FI.isReadable() ); |
47 | S = TemplDir + Name + "/postsection"; | 47 | S = TemplDir + Name + "/postsection"; |
48 | FI.setFile( S ); | 48 | FI.setFile( S ); |
49 | hasPostSection = ( FI.exists() && FI.isReadable() ); | 49 | hasPostSection = ( FI.exists() && FI.isReadable() ); |
50 | S = TemplDir + Name + "/prenodesection"; | 50 | S = TemplDir + Name + "/prenodesection"; |
51 | FI.setFile( S ); | 51 | FI.setFile( S ); |
52 | hasPreNodeSection = ( FI.exists() && FI.isReadable() ); | 52 | hasPreNodeSection = ( FI.exists() && FI.isReadable() ); |
53 | S = TemplDir + Name + "/postnodesection"; | 53 | S = TemplDir + Name + "/postnodesection"; |
54 | FI.setFile( S ); | 54 | FI.setFile( S ); |
55 | hasPostNodeSection = ( FI.exists() && FI.isReadable() ); | 55 | hasPostNodeSection = ( FI.exists() && FI.isReadable() ); |
56 | S = TemplDir + Name + "/predevicesection"; | 56 | S = TemplDir + Name + "/predevicesection"; |
57 | FI.setFile( S ); | 57 | FI.setFile( S ); |
58 | hasPreDeviceSection = ( FI.exists() && FI.isReadable() ); | 58 | hasPreDeviceSection = ( FI.exists() && FI.isReadable() ); |
59 | S = TemplDir + Name + "/postdevicesection"; | 59 | S = TemplDir + Name + "/postdevicesection"; |
60 | FI.setFile( S ); | 60 | FI.setFile( S ); |
61 | hasPostDeviceSection = ( FI.exists() && FI.isReadable() ); | 61 | hasPostDeviceSection = ( FI.exists() && FI.isReadable() ); |
62 | } | 62 | } |
63 | 63 | ||
64 | KnowsDeviceInstances = KDI; | 64 | KnowsDeviceInstances = KDI; |
65 | } | 65 | } |
66 | 66 | ||
67 | SystemFile::SystemFile( const QString & N, bool KDI ){ | 67 | SystemFile::SystemFile( const QString & N, bool KDI ){ |
68 | Name = N; | 68 | Name = N; |
69 | Path = ""; | 69 | Path = ""; |
70 | InAppend = 0; | 70 | InAppend = 0; |
71 | F =0; | 71 | F =0; |
72 | KnowsDeviceInstances = KDI; | 72 | KnowsDeviceInstances = KDI; |
73 | hasPreSection = | 73 | hasPreSection = |
74 | hasPostSection = | 74 | hasPostSection = |
75 | hasPreNodeSection = | 75 | hasPreNodeSection = |
76 | hasPostNodeSection = | 76 | hasPostNodeSection = |
77 | hasPreDeviceSection = | 77 | hasPreDeviceSection = |
78 | hasPostDeviceSection = 0; | 78 | hasPostDeviceSection = 0; |
79 | } | 79 | } |
80 | 80 | ||
81 | SystemFile::~SystemFile( void ) { | 81 | SystemFile::~SystemFile( void ) { |
82 | close(); | 82 | close(); |
83 | } | 83 | } |
84 | 84 | ||
85 | bool SystemFile::open( void ) { | 85 | bool SystemFile::open( void ) { |
86 | QString Prefix = getenv( "NS2OUTPUTTO" ); | 86 | QString Prefix = getenv( "NS2OUTPUTTO" ); |
87 | 87 | ||
88 | if( Prefix != "stderr" /* && Name != "interfaces" */ ) { | 88 | if( Prefix != "stderr" /* && Name != "interfaces" */ ) { |
89 | // generate files where the need to be | 89 | // generate files where the need to be |
90 | if( F ) { | 90 | if( F ) { |
91 | F->close(); | 91 | F->close(); |
92 | delete F; | 92 | delete F; |
93 | } | 93 | } |
94 | 94 | ||
95 | F = new QFile( Prefix + Path + ((InAppend)?"":"bup") ); | 95 | F = new QFile( Prefix + Path + ((InAppend)?"":"bup") ); |
96 | Log(( "Open systemfile %s\n", F->name().latin1() )); | 96 | Log(( "Open systemfile %s\n", F->name().latin1() )); |
97 | if( ! F->open( ((InAppend)?IO_Append : 0 ) | IO_WriteOnly ) ) { | 97 | if( ! F->open( ((InAppend)?IO_Append : 0 ) | IO_WriteOnly ) ) { |
98 | return 0; | 98 | return 0; |
99 | } | 99 | } |
100 | } else { | 100 | } else { |
101 | if( ! F ) { | 101 | if( ! F ) { |
102 | owarn << "!!!!!!!!!!!!!!!!!! " << oendl; | 102 | owarn << "!!!!!!!!!!!!!!!!!! " << oendl; |
103 | owarn << "!!!! TESTMODE !!!!" << oendl; | 103 | owarn << "!!!! TESTMODE !!!!" << oendl; |
104 | owarn << "!!!!!!!!!!!!!!!!!! " << oendl; | 104 | owarn << "!!!!!!!!!!!!!!!!!! " << oendl; |
105 | owarn << "!!!!" << oendl; | 105 | owarn << "!!!!" << oendl; |
106 | owarn << "!!!! GENERATE " << Path << oendl; | 106 | owarn << "!!!! GENERATE " << Path << oendl; |
107 | if( InAppend ) { | 107 | if( InAppend ) { |
diff --git a/noncore/settings/networksettings2/opie-networksettings2.control b/noncore/settings/networksettings2/opie-networksettings2.control index 874833c..a79a740 100644 --- a/noncore/settings/networksettings2/opie-networksettings2.control +++ b/noncore/settings/networksettings2/opie-networksettings2.control | |||
@@ -1,10 +1,10 @@ | |||
1 | Package: opie-networksettings2 | 1 | Package: opie-networksettings2 |
2 | Files: bin/networksettings2 apps/Settings/networksettings2.desktop pics/networksettings2/*.png lib/libnetworksettings2.so* pics/networksettings2/Devices/*.png etc/NS2templates/* etc/NS2templates/*/* | 2 | Files: bin/networksettings2 apps/Settings/networksettings2.desktop pics/networksettings2/*.png lib/libnetworksettings2.so* pics/networksettings2/Devices/*.png etc/NS2templates/* etc/NS2templates/*/* bin/NS2SetMac.sh |
3 | Priority: optional | 3 | Priority: optional |
4 | Section: opie/settings | 4 | Section: opie/settings |
5 | Maintainer: wim delvaux <wimpie@handhelds.org> | 5 | Maintainer: wim delvaux <wimpie@handhelds.org> |
6 | Architecture: arm | 6 | Architecture: arm |
7 | Depends: task-opie-minimal, libopietooth2 | 7 | Depends: task-opie-minimal, libopietooth2 |
8 | Description: Network settings. | 8 | Description: Network settings. |
9 | Replaces: opie-networksetup | 9 | Replaces: opie-networksetup |
10 | Version: $QPE_VERSION$EXTRAVERSION | 10 | Version: $QPE_VERSION$EXTRAVERSION |
diff --git a/noncore/settings/networksettings2/opietooth2/OTDevice.h b/noncore/settings/networksettings2/opietooth2/OTDevice.h index c2abb09..cf1c4b6 100644 --- a/noncore/settings/networksettings2/opietooth2/OTDevice.h +++ b/noncore/settings/networksettings2/opietooth2/OTDevice.h | |||
@@ -1,116 +1,116 @@ | |||
1 | #ifndef OTDEVICE_H | 1 | #ifndef OTDEVICE_H |
2 | #define OTDEVICE_H | 2 | #define OTDEVICE_H |
3 | 3 | ||
4 | #include <qobject.h> | 4 | #include <qobject.h> |
5 | #include <qstring.h> | 5 | #include <qstring.h> |
6 | 6 | ||
7 | #include <bluezlib.h> | 7 | #include <bluezlib.h> |
8 | 8 | ||
9 | #include <OTGateway.h> | 9 | #include <OTGateway.h> |
10 | 10 | ||
11 | // define if you want to use the process hciattach for detection | 11 | // define if you want to use the process hciattach for detection |
12 | // #define USEHCIPROC | 12 | // #define USEHCIPROC |
13 | 13 | ||
14 | class QTimerEvent; | 14 | class QTimerEvent; |
15 | 15 | ||
16 | namespace Opie { | 16 | namespace Opie { |
17 | namespace Core { | 17 | namespace Core { |
18 | class OProcess; | 18 | class OProcess; |
19 | } | 19 | }; |
20 | } | 20 | }; |
21 | 21 | ||
22 | namespace Opietooth2 { | 22 | namespace Opietooth2 { |
23 | 23 | ||
24 | /** | 24 | /** |
25 | * Device takes care of attaching serial | 25 | * Device takes care of attaching serial |
26 | * devices to the blueZ stack. | 26 | * devices to the blueZ stack. |
27 | * After attaching it hciconfig ups it | 27 | * After attaching it hciconfig ups it |
28 | */ | 28 | */ |
29 | class OTDevice : public QObject { | 29 | class OTDevice : public QObject { |
30 | 30 | ||
31 | Q_OBJECT | 31 | Q_OBJECT |
32 | 32 | ||
33 | public: | 33 | public: |
34 | 34 | ||
35 | /** | 35 | /** |
36 | * Brings up the device. | 36 | * Brings up the device. |
37 | * will detech which device is needed | 37 | * will detech which device is needed |
38 | * Usage example: new Device(/dev/ttySB0, csr) | 38 | * Usage example: new Device(/dev/ttySB0, csr) |
39 | * | 39 | * |
40 | */ | 40 | */ |
41 | OTDevice( OTGateway * _OT ); | 41 | OTDevice( OTGateway * _OT ); |
42 | 42 | ||
43 | /** | 43 | /** |
44 | * unloads the device | 44 | * unloads the device |
45 | */ | 45 | */ |
46 | ~OTDevice(); | 46 | ~OTDevice(); |
47 | 47 | ||
48 | inline OTGateway * gateway() const | 48 | inline OTGateway * gateway() const |
49 | { return OT; } | 49 | { return OT; } |
50 | 50 | ||
51 | inline bool needsAttach( void ) const | 51 | inline bool needsAttach( void ) const |
52 | { return NeedsAttach; } | 52 | { return NeedsAttach; } |
53 | 53 | ||
54 | inline int deviceNr() const | 54 | inline int deviceNr() const |
55 | { return m_deviceNr; } | 55 | { return m_deviceNr; } |
56 | 56 | ||
57 | /** | 57 | /** |
58 | * attach the device | 58 | * attach the device |
59 | * @return bool which is TRUE if command started sucessfully | 59 | * @return bool which is TRUE if command started sucessfully |
60 | */ | 60 | */ |
61 | bool attach(); | 61 | bool attach(); |
62 | 62 | ||
63 | /** | 63 | /** |
64 | * detach the device | 64 | * detach the device |
65 | * @return bool which is TRUE if command started sucessfully | 65 | * @return bool which is TRUE if command started sucessfully |
66 | */ | 66 | */ |
67 | bool detach(); | 67 | bool detach(); |
68 | 68 | ||
69 | /** | 69 | /** |
70 | * Is the device loaded? | 70 | * Is the device loaded? |
71 | * @return bool, if the device is loaded | 71 | * @return bool, if the device is loaded |
72 | */ | 72 | */ |
73 | bool isAttached()const; | 73 | bool isAttached()const; |
74 | 74 | ||
75 | // check current state of attachment | 75 | // check current state of attachment |
76 | bool checkAttach(); | 76 | bool checkAttach(); |
77 | 77 | ||
78 | // returns pattern that points to the proper | 78 | // returns pattern that points to the proper |
79 | // RFCOMM device file. Put %1 where device nr should be put | 79 | // RFCOMM device file. Put %1 where device nr should be put |
80 | // e.g. : /dev/bluetooth/rfcomm/%1 or /def/rfcomm%1 | 80 | // e.g. : /dev/bluetooth/rfcomm/%1 or /def/rfcomm%1 |
81 | QString getRFCommDevicePattern(); | 81 | QString getRFCommDevicePattern(); |
82 | 82 | ||
83 | signals: | 83 | signals: |
84 | 84 | ||
85 | /** | 85 | /** |
86 | * Signals if the attach/detach of the device produced | 86 | * Signals if the attach/detach of the device produced |
87 | * errors | 87 | * errors |
88 | * @param Mesg contains an error message | 88 | * @param Mesg contains an error message |
89 | */ | 89 | */ |
90 | void error( const QString & mesg ); | 90 | void error( const QString & mesg ); |
91 | void isEnabled( int devnr, bool ); | 91 | void isEnabled( int devnr, bool ); |
92 | 92 | ||
93 | private slots: | 93 | private slots: |
94 | 94 | ||
95 | void slotStdOut(Opie::Core::OProcess*, char*, int ); | 95 | void slotStdOut(Opie::Core::OProcess*, char*, int ); |
96 | void slotStdErr(Opie::Core::OProcess*, char*, int ); | 96 | void slotStdErr(Opie::Core::OProcess*, char*, int ); |
97 | 97 | ||
98 | private: | 98 | private: |
99 | 99 | ||
100 | void detectDeviceType( QString & Device, | 100 | void detectDeviceType( QString & Device, |
101 | QString & Mode, | 101 | QString & Mode, |
102 | unsigned long & Speed ); | 102 | unsigned long & Speed ); |
103 | pid_t getPidOfHCIAttach( void ); | 103 | pid_t getPidOfHCIAttach( void ); |
104 | 104 | ||
105 | Opie::Core::OProcess* m_hciattach; // ptr to hciattach proces | 105 | Opie::Core::OProcess* m_hciattach; // ptr to hciattach proces |
106 | 106 | ||
107 | int m_deviceNr; // x as in hci(x) | 107 | int m_deviceNr; // x as in hci(x) |
108 | pid_t m_hciattachPid; // pid of hciattach program | 108 | pid_t m_hciattachPid; // pid of hciattach program |
109 | 109 | ||
110 | // backpointer | 110 | // backpointer |
111 | OTGateway * OT; | 111 | OTGateway * OT; |
112 | bool NeedsAttach; | 112 | bool NeedsAttach; |
113 | }; | 113 | }; |
114 | }; | 114 | }; |
115 | 115 | ||
116 | #endif | 116 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTDeviceAddress.h b/noncore/settings/networksettings2/opietooth2/OTDeviceAddress.h index 8395f37..50f28fc 100644 --- a/noncore/settings/networksettings2/opietooth2/OTDeviceAddress.h +++ b/noncore/settings/networksettings2/opietooth2/OTDeviceAddress.h | |||
@@ -10,99 +10,99 @@ | |||
10 | ***************************************************************************/ | 10 | ***************************************************************************/ |
11 | 11 | ||
12 | #ifndef OTDEVICEADDRESS_H | 12 | #ifndef OTDEVICEADDRESS_H |
13 | #define OTDEVICEADDRESS_H | 13 | #define OTDEVICEADDRESS_H |
14 | 14 | ||
15 | #include <qstring.h> | 15 | #include <qstring.h> |
16 | #include <bluezlib.h> | 16 | #include <bluezlib.h> |
17 | 17 | ||
18 | namespace Opietooth2 { | 18 | namespace Opietooth2 { |
19 | 19 | ||
20 | /** Represents a Bluetooth device address. | 20 | /** Represents a Bluetooth device address. |
21 | * This class allows easy conversion of Bluetooth addresses | 21 | * This class allows easy conversion of Bluetooth addresses |
22 | * from and to strings. It also works with the bdaddr_t type | 22 | * from and to strings. It also works with the bdaddr_t type |
23 | * used by BlueZ. | 23 | * used by BlueZ. |
24 | * The class offers a comparsion and less-than operator, so | 24 | * The class offers a comparsion and less-than operator, so |
25 | * that it can be used a key in an STL map or similar. | 25 | * that it can be used a key in an STL map or similar. |
26 | * The string conversion functions of BlueZ are used internally, | 26 | * The string conversion functions of BlueZ are used internally, |
27 | * so the string format is the same than for BlueZ's ba2str(). | 27 | * so the string format is the same than for BlueZ's ba2str(). |
28 | */ | 28 | */ |
29 | class OTDeviceAddress { | 29 | class OTDeviceAddress { |
30 | 30 | ||
31 | public: | 31 | public: |
32 | 32 | ||
33 | /** Default constructor. | 33 | /** Default constructor. |
34 | The resulting address is equal to DeviceAddress::invalid. | 34 | The resulting address is equal to DeviceAddress::invalid. |
35 | */ | 35 | */ |
36 | OTDeviceAddress(); | 36 | OTDeviceAddress(); |
37 | 37 | ||
38 | /** Initialize the object with a BlueZ bdaddr_t. | 38 | /** Initialize the object with a BlueZ bdaddr_t. |
39 | @param bdaddr address | 39 | @param bdaddr address |
40 | @param networkbyteorder if true, bdaddr is assumed to be in | 40 | @param networkbyteorder if true, bdaddr is assumed to be in |
41 | network byte order and converted to host byte order first. | 41 | network byte order and converted to host byte order first. |
42 | */ | 42 | */ |
43 | explicit OTDeviceAddress( const bdaddr_t& bdaddr, | 43 | explicit OTDeviceAddress( const bdaddr_t& bdaddr, |
44 | bool networkbyteorder = false | 44 | bool networkbyteorder = false |
45 | ); | 45 | ); |
46 | 46 | ||
47 | /** Initializes the object with an address given as a string. | 47 | /** Initializes the object with an address given as a string. |
48 | The string must be in a format which is understood by the | 48 | The string must be in a format which is understood by the |
49 | BlueZ str2ba function, like 00:61:58:4C:E6:AD. Case doesn't matter. | 49 | BlueZ str2ba function, like 00:61:58:4C:E6:AD. Case doesn't matter. |
50 | @param s address string | 50 | @param s address string |
51 | */ | 51 | */ |
52 | explicit OTDeviceAddress(const QString& s); | 52 | explicit OTDeviceAddress(const QString& s); |
53 | 53 | ||
54 | /** convert the address to a string. | 54 | /** convert the address to a string. |
55 | @return address string | 55 | @return address string |
56 | */ | 56 | */ |
57 | QString toString() const; | 57 | QString toString() const; |
58 | 58 | ||
59 | /** Converts the DeviceAddress into a BlueZ bdaddr_t. | 59 | /** Converts the DeviceAddress into a BlueZ bdaddr_t. |
60 | @param networkbyteorder if true, the address is returned | 60 | @param networkbyteorder if true, the address is returned |
61 | in network byte order. | 61 | in network byte order. |
62 | @return the address as bdaddr_t | 62 | @return the address as bdaddr_t |
63 | */ | 63 | */ |
64 | inline const bdaddr_t & getBDAddr( void ) const | 64 | inline const bdaddr_t & getBDAddr( void ) const |
65 | { return BDaddr; } | 65 | { return BDaddr; } |
66 | bdaddr_t getBDAddrInNetworkByteOrder() const; | 66 | bdaddr_t getBDAddrInNetworkByteOrder() const; |
67 | void setBDAddr( const bdaddr_t& bdaddr, | 67 | void setBDAddr( const bdaddr_t& bdaddr, |
68 | bool networkbyteorder = false | 68 | bool networkbyteorder = false |
69 | ); | 69 | ); |
70 | 70 | ||
71 | /** Less-than-operator. | 71 | /** Less-than-operator. |
72 | Mainly there to use DeviceAddress inside STL containers, | 72 | Mainly there to use DeviceAddress inside STL containers, |
73 | like STL sets or as a key in a STL map. | 73 | like STL sets or as a key in a STL map. |
74 | @param b the DeviceAddress to compare to (right hand side) | 74 | @param b the DeviceAddress to compare to (right hand side) |
75 | @return true if this < b, false otherwise. | 75 | @return true if this < b, false otherwise. |
76 | */ | 76 | */ |
77 | bool operator<(const OTDeviceAddress& b) const; | 77 | bool operator<(const OTDeviceAddress& b) const; |
78 | 78 | ||
79 | /** Equality operator. | 79 | /** Equality operator. |
80 | Tests two device addresses for equality. | 80 | Tests two device addresses for equality. |
81 | @param b the DeviceAddress to compare to (right hand side) | 81 | @param b the DeviceAddress to compare to (right hand side) |
82 | @return true if this and b have the same address or | 82 | @return true if this and b have the same address or |
83 | if both are invalid, false otherwise | 83 | if both are invalid, false otherwise |
84 | */ | 84 | */ |
85 | bool operator==(const OTDeviceAddress& b) const; | 85 | bool operator==(const OTDeviceAddress& b) const; |
86 | 86 | ||
87 | inline bool operator!=(const OTDeviceAddress& b) const | 87 | inline bool operator!=(const OTDeviceAddress& b) const |
88 | { return ! ( *this == b ); } | 88 | { return ! ( *this == b ); } |
89 | 89 | ||
90 | /** The address 00:00:00:FF:FF:FF */ | 90 | /** The address 00:00:00:FF:FF:FF */ |
91 | static const OTDeviceAddress local; | 91 | static const OTDeviceAddress local; |
92 | 92 | ||
93 | /** The address 00:00:00:00:00:00 */ | 93 | /** The address 00:00:00:00:00:00 */ |
94 | static const OTDeviceAddress any; | 94 | static const OTDeviceAddress any; |
95 | 95 | ||
96 | /** An address tagged as invalid */ | 96 | /** An address tagged as invalid */ |
97 | static const OTDeviceAddress invalid; | 97 | static const OTDeviceAddress invalid; |
98 | 98 | ||
99 | protected: | 99 | protected: |
100 | 100 | ||
101 | bdaddr_t BDaddr; | 101 | bdaddr_t BDaddr; |
102 | bool IsValid; | 102 | bool IsValid; |
103 | 103 | ||
104 | }; | 104 | }; |
105 | 105 | ||
106 | } | 106 | }; |
107 | 107 | ||
108 | #endif | 108 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTDriver.h b/noncore/settings/networksettings2/opietooth2/OTDriver.h index b54ffdf..f249cf7 100644 --- a/noncore/settings/networksettings2/opietooth2/OTDriver.h +++ b/noncore/settings/networksettings2/opietooth2/OTDriver.h | |||
@@ -135,98 +135,98 @@ public: | |||
135 | { return Iscan; } | 135 | { return Iscan; } |
136 | void setIScan(int _iscan) | 136 | void setIScan(int _iscan) |
137 | { Iscan = _iscan; } | 137 | { Iscan = _iscan; } |
138 | 138 | ||
139 | int pscan() const | 139 | int pscan() const |
140 | { return Pscan; } | 140 | { return Pscan; } |
141 | void setPScan(int _pscan) | 141 | void setPScan(int _pscan) |
142 | { Pscan = _pscan; } | 142 | { Pscan = _pscan; } |
143 | 143 | ||
144 | int authentication() const | 144 | int authentication() const |
145 | { return Auth; } | 145 | { return Auth; } |
146 | void setAuthentication(int _auth) | 146 | void setAuthentication(int _auth) |
147 | { Auth = _auth; } | 147 | { Auth = _auth; } |
148 | 148 | ||
149 | int encryption() const | 149 | int encryption() const |
150 | { return Encrypt; } | 150 | { return Encrypt; } |
151 | void setEncryption(int _encrypt) | 151 | void setEncryption(int _encrypt) |
152 | { Encrypt = _encrypt; } | 152 | { Encrypt = _encrypt; } |
153 | 153 | ||
154 | void setDevId(int _dev_id) | 154 | void setDevId(int _dev_id) |
155 | { Dev_id = _dev_id; }; | 155 | { Dev_id = _dev_id; }; |
156 | void setDev(char* _dev) | 156 | void setDev(char* _dev) |
157 | { Dev = _dev; }; | 157 | { Dev = _dev; }; |
158 | 158 | ||
159 | void setFlags( unsigned long flags); | 159 | void setFlags( unsigned long flags); |
160 | 160 | ||
161 | const OTDeviceAddress & address() | 161 | const OTDeviceAddress & address() |
162 | { return Address; } | 162 | { return Address; } |
163 | 163 | ||
164 | void setFeatures( unsigned char * _f); | 164 | void setFeatures( unsigned char * _f); |
165 | QString features() | 165 | QString features() |
166 | { return Features; } | 166 | { return Features; } |
167 | 167 | ||
168 | void setManufacturer(int compid); | 168 | void setManufacturer(int compid); |
169 | QString manufacturer() | 169 | QString manufacturer() |
170 | { return Manufacturer; } | 170 | { return Manufacturer; } |
171 | 171 | ||
172 | QString revision(); | 172 | QString revision(); |
173 | 173 | ||
174 | void setScanMode(bool iscan, bool pscan); | 174 | void setScanMode(bool iscan, bool pscan); |
175 | void setClass(unsigned long cls); | 175 | void setClass(unsigned long cls); |
176 | 176 | ||
177 | void changeDevName(const char* name); | 177 | void changeDevName(const char* name); |
178 | void changeEncryption(bool _encryption); | 178 | void changeEncryption(bool _encryption); |
179 | void changeAuthentication(bool _auth); | 179 | void changeAuthentication(bool _auth); |
180 | 180 | ||
181 | void getClass( QString & service, | 181 | void getClass( QString & service, |
182 | QString & device ); | 182 | QString & device ); |
183 | void changeClass( unsigned char service, | 183 | void changeClass( unsigned char service, |
184 | unsigned char major, | 184 | unsigned char major, |
185 | unsigned char minor); | 185 | unsigned char minor); |
186 | 186 | ||
187 | QString getPeerName( const OTDeviceAddress & PAddr ); | 187 | QString getPeerName( const OTDeviceAddress & PAddr ); |
188 | 188 | ||
189 | // address must be connected to this driver | 189 | // address must be connected to this driver |
190 | long getLinkQuality( const OTDeviceAddress & Address ); | 190 | long getLinkQuality( const OTDeviceAddress & Address ); |
191 | 191 | ||
192 | signals : | 192 | signals : |
193 | 193 | ||
194 | void error( const QString & ); | 194 | void error( const QString & ); |
195 | void stateChange( OTDriver * , bool ); | 195 | void stateChange( OTDriver * , bool ); |
196 | void driverDisappeared( OTDriver * ); | 196 | void driverDisappeared( OTDriver * ); |
197 | 197 | ||
198 | private slots : | 198 | private slots : |
199 | 199 | ||
200 | /* | 200 | /* |
201 | * Reinitializes the device, obtaining a fresh | 201 | * Reinitializes the device, obtaining a fresh |
202 | * hci_dev_info structure. | 202 | * hci_dev_info structure. |
203 | */ | 203 | */ |
204 | void reinit(); | 204 | void reinit(); |
205 | void SLOT_CloseFd(); | 205 | void SLOT_CloseFd(); |
206 | 206 | ||
207 | private: | 207 | private: |
208 | 208 | ||
209 | QString getRevEricsson(); | 209 | QString getRevEricsson(); |
210 | QString getRevCsr(unsigned short rev); | 210 | QString getRevCsr(unsigned short rev); |
211 | 211 | ||
212 | QString Name; | 212 | QString Name; |
213 | QString Dev; | 213 | QString Dev; |
214 | QString Revision; | 214 | QString Revision; |
215 | QString Manufacturer; | 215 | QString Manufacturer; |
216 | OTDeviceAddress Address; | 216 | OTDeviceAddress Address; |
217 | QString Features; | 217 | QString Features; |
218 | QTimer * AutoClose; | 218 | QTimer * AutoClose; |
219 | 219 | ||
220 | int Dev_id,Fd,Type; | 220 | int Dev_id,Fd,Type; |
221 | bool IsUp; | 221 | bool IsUp; |
222 | int Iscan,Pscan,Auth,Encrypt; | 222 | int Iscan,Pscan,Auth,Encrypt; |
223 | 223 | ||
224 | // socket bound to this device | 224 | // socket bound to this device |
225 | OTHCISocket * Socket; | 225 | OTHCISocket * Socket; |
226 | 226 | ||
227 | // backpointer to opietooth system | 227 | // backpointer to opietooth system |
228 | OTGateway * OT; | 228 | OTGateway * OT; |
229 | }; | 229 | }; |
230 | 230 | ||
231 | } | 231 | }; |
232 | #endif | 232 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTIcons.h b/noncore/settings/networksettings2/opietooth2/OTIcons.h index ee10831..966ed24 100644 --- a/noncore/settings/networksettings2/opietooth2/OTIcons.h +++ b/noncore/settings/networksettings2/opietooth2/OTIcons.h | |||
@@ -1,54 +1,54 @@ | |||
1 | #ifndef OTICONLOADER_H | 1 | #ifndef OTICONLOADER_H |
2 | #define OTICONLOADER_H | 2 | #define OTICONLOADER_H |
3 | 3 | ||
4 | #include <OTUUID.h> | 4 | #include <OTUUID.h> |
5 | #include <qpixmap.h> | 5 | #include <qpixmap.h> |
6 | #include <qmap.h> | 6 | #include <qmap.h> |
7 | 7 | ||
8 | namespace Opietooth2 { | 8 | namespace Opietooth2 { |
9 | 9 | ||
10 | class OTIcons { | 10 | class OTIcons { |
11 | 11 | ||
12 | public: | 12 | public: |
13 | 13 | ||
14 | OTIcons(); | 14 | OTIcons(); |
15 | ~OTIcons(); | 15 | ~OTIcons(); |
16 | 16 | ||
17 | /** | 17 | /** |
18 | * Returns an icon depending on device class | 18 | * Returns an icon depending on device class |
19 | * @param deviceClass the device class name | 19 | * @param deviceClass the device class name |
20 | * @return the pixmap | 20 | * @return the pixmap |
21 | */ | 21 | */ |
22 | QPixmap deviceIcon( const QString & ); | 22 | QPixmap deviceIcon( const QString & ); |
23 | 23 | ||
24 | /** | 24 | /** |
25 | * Returns an icon depending on service id | 25 | * Returns an icon depending on service id |
26 | * @param serviceClass the service id | 26 | * @param serviceClass the service id |
27 | * @return the pixmap | 27 | * @return the pixmap |
28 | * @return true if found | 28 | * @return true if found |
29 | */ | 29 | */ |
30 | QPixmap serviceIcon( int, bool & ); | 30 | QPixmap serviceIcon( int, bool & ); |
31 | 31 | ||
32 | // returns all UUID that represent channels with modem function | 32 | // returns all UUID that represent channels with modem function |
33 | const UUIDVector & modems() | 33 | const UUIDVector & modems() |
34 | { return Modems; } | 34 | { return Modems; } |
35 | 35 | ||
36 | // returns all UUID that represent channels with network | 36 | // returns all UUID that represent channels with network |
37 | const UUIDVector & network() | 37 | const UUIDVector & network() |
38 | { return Networks; } | 38 | { return Networks; } |
39 | 39 | ||
40 | // set Sub to find icons in .../Icons dir | 40 | // set Sub to find icons in .../Icons dir |
41 | QPixmap loadPixmap( const QString &, bool Sub = 0 ); | 41 | QPixmap loadPixmap( const QString &, bool Sub = 0 ); |
42 | 42 | ||
43 | private: | 43 | private: |
44 | 44 | ||
45 | // first ist id, second is icon name | 45 | // first ist id, second is icon name |
46 | QMap<QString,QString> deviceIcons; | 46 | QMap<QString,QString> deviceIcons; |
47 | QMap<int,QString> serviceIcons; | 47 | QMap<int,QString> serviceIcons; |
48 | UUIDVector Modems; | 48 | UUIDVector Modems; |
49 | UUIDVector Networks; | 49 | UUIDVector Networks; |
50 | 50 | ||
51 | }; | 51 | }; |
52 | } | 52 | }; |
53 | 53 | ||
54 | #endif | 54 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTInquiry.h b/noncore/settings/networksettings2/opietooth2/OTInquiry.h index f7bdeec..2682499 100644 --- a/noncore/settings/networksettings2/opietooth2/OTInquiry.h +++ b/noncore/settings/networksettings2/opietooth2/OTInquiry.h | |||
@@ -81,98 +81,98 @@ public: | |||
81 | between minduration and maxduration. | 81 | between minduration and maxduration. |
82 | @param minduration minimum time between two inquiries. Rounded to | 82 | @param minduration minimum time between two inquiries. Rounded to |
83 | a multiple of 1.28, (3.84 <= d <= 83884.8) | 83 | a multiple of 1.28, (3.84 <= d <= 83884.8) |
84 | @param maxduration maximum time between two inquiries. Rounded to | 84 | @param maxduration maximum time between two inquiries. Rounded to |
85 | a multiple of 1.28, (3.84 <= d <= 83884.8) | 85 | a multiple of 1.28, (3.84 <= d <= 83884.8) |
86 | @param timeout duration of the inquiry in seconds. | 86 | @param timeout duration of the inquiry in seconds. |
87 | It will be rounded to the next multiple of 1.28 sec, | 87 | It will be rounded to the next multiple of 1.28 sec, |
88 | with a maximum of 61.44 sec. | 88 | with a maximum of 61.44 sec. |
89 | @param numResponses Number of responses after which the inquiry | 89 | @param numResponses Number of responses after which the inquiry |
90 | will be stopped. 0 means no limit. | 90 | will be stopped. 0 means no limit. |
91 | @param lap | 91 | @param lap |
92 | */ | 92 | */ |
93 | /* | 93 | /* |
94 | void inquirePeriodically( double minduration, | 94 | void inquirePeriodically( double minduration, |
95 | double maxduration, | 95 | double maxduration, |
96 | double timeout = 8.0, | 96 | double timeout = 8.0, |
97 | int numResponses = 0, | 97 | int numResponses = 0, |
98 | int lap = LIAC | 98 | int lap = LIAC |
99 | ); | 99 | ); |
100 | */ | 100 | */ |
101 | /** checks if there the inquiry is running currently | 101 | /** checks if there the inquiry is running currently |
102 | @return true if there is an inquiry running | 102 | @return true if there is an inquiry running |
103 | which was started by this object. | 103 | which was started by this object. |
104 | @todo possibility to check for "foreign" inquiries. Deal with | 104 | @todo possibility to check for "foreign" inquiries. Deal with |
105 | the fact that we can receive foreign inquiry results. | 105 | the fact that we can receive foreign inquiry results. |
106 | */ | 106 | */ |
107 | bool isInquiring(); | 107 | bool isInquiring(); |
108 | 108 | ||
109 | /** This function returns true after after an inquiry was | 109 | /** This function returns true after after an inquiry was |
110 | started, results were received and the inquiry ended successfully. | 110 | started, results were received and the inquiry ended successfully. |
111 | This can be the case without calling inquiry() at all, because | 111 | This can be the case without calling inquiry() at all, because |
112 | results of inquiries started by other programs are also processed. | 112 | results of inquiries started by other programs are also processed. |
113 | */ | 113 | */ |
114 | bool isFinished(); | 114 | bool isFinished(); |
115 | 115 | ||
116 | /** Resets the list of received results and sets | 116 | /** Resets the list of received results and sets |
117 | isInquiryComplete() to false. | 117 | isInquiryComplete() to false. |
118 | */ | 118 | */ |
119 | void reset(); | 119 | void reset(); |
120 | 120 | ||
121 | inline OTDriver * driver() const | 121 | inline OTDriver * driver() const |
122 | { return Driver; } | 122 | { return Driver; } |
123 | 123 | ||
124 | protected: | 124 | protected: |
125 | 125 | ||
126 | /** Called when a new neighbour was found. The default | 126 | /** Called when a new neighbour was found. The default |
127 | implementation emits the neighbourFound signal. | 127 | implementation emits the neighbourFound signal. |
128 | @param bdaddr the address found. | 128 | @param bdaddr the address found. |
129 | */ | 129 | */ |
130 | virtual void onPeerFound( OTPeer * Peer, bool ); | 130 | virtual void onPeerFound( OTPeer * Peer, bool ); |
131 | 131 | ||
132 | enum ErrorCode { | 132 | enum ErrorCode { |
133 | InquiryFinishedTimeout = 0x0100 | 133 | InquiryFinishedTimeout = 0x0100 |
134 | }; | 134 | }; |
135 | 135 | ||
136 | signals : | 136 | signals : |
137 | 137 | ||
138 | void peerFound( OTPeer *, bool ); | 138 | void peerFound( OTPeer *, bool ); |
139 | 139 | ||
140 | /** Emitted after an inquiry has finished successfully. | 140 | /** Emitted after an inquiry has finished successfully. |
141 | If the inquiry was canceled, no finished signals is emitted. | 141 | If the inquiry was canceled, no finished signals is emitted. |
142 | This signal can be emitted without having called inquiry, since | 142 | This signal can be emitted without having called inquiry, since |
143 | other processes may have started an inquiry. | 143 | other processes may have started an inquiry. |
144 | */ | 144 | */ |
145 | void finished(); | 145 | void finished(); |
146 | 146 | ||
147 | /** Emitted instead of finished if an error occured after | 147 | /** Emitted instead of finished if an error occured after |
148 | calling inquiry() or periodicInquiryMode() | 148 | calling inquiry() or periodicInquiryMode() |
149 | @param code error code. | 149 | @param code error code. |
150 | @param message Error message | 150 | @param message Error message |
151 | */ | 151 | */ |
152 | void error( QString message ); | 152 | void error( QString message ); |
153 | 153 | ||
154 | private: | 154 | private: |
155 | 155 | ||
156 | // std::set<DeviceAddress> addrCache; | 156 | // std::set<DeviceAddress> addrCache; |
157 | // double currentTimeout; | 157 | // double currentTimeout; |
158 | // QByteArray* buf; | 158 | // QByteArray* buf; |
159 | // QSocket* hciSocket; | 159 | // QSocket* hciSocket; |
160 | QGuardedPtr<OTHCISocket> Socket; | 160 | QGuardedPtr<OTHCISocket> Socket; |
161 | OTDriver * Driver; | 161 | OTDriver * Driver; |
162 | 162 | ||
163 | //QDateTime *startTime; | 163 | //QDateTime *startTime; |
164 | QTimer *InquiryTimeoutTimer; | 164 | QTimer *InquiryTimeoutTimer; |
165 | 165 | ||
166 | // std::deque<InquiryInfo> infoQueue; | 166 | // std::deque<InquiryInfo> infoQueue; |
167 | bool SuccessfullyStarted; | 167 | bool SuccessfullyStarted; |
168 | bool SuccessfullyEnded; | 168 | bool SuccessfullyEnded; |
169 | 169 | ||
170 | private slots: | 170 | private slots: |
171 | 171 | ||
172 | void slotInquiryTimeout(); | 172 | void slotInquiryTimeout(); |
173 | void slotHCIEvent(unsigned char eventCode, QByteArray buf); | 173 | void slotHCIEvent(unsigned char eventCode, QByteArray buf); |
174 | 174 | ||
175 | }; | 175 | }; |
176 | 176 | ||
177 | } | 177 | }; |
178 | #endif | 178 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTPeer.h b/noncore/settings/networksettings2/opietooth2/OTPeer.h index c09af15..9cd0dc7 100644 --- a/noncore/settings/networksettings2/opietooth2/OTPeer.h +++ b/noncore/settings/networksettings2/opietooth2/OTPeer.h | |||
@@ -37,99 +37,99 @@ class OTPeer : public QObject { | |||
37 | 37 | ||
38 | public : | 38 | public : |
39 | 39 | ||
40 | typedef enum PeerState_E { | 40 | typedef enum PeerState_E { |
41 | Peer_Unknown = -1, | 41 | Peer_Unknown = -1, |
42 | Peer_Down = 0, | 42 | Peer_Down = 0, |
43 | Peer_Up = 1 | 43 | Peer_Up = 1 |
44 | } PeerState_t; | 44 | } PeerState_t; |
45 | 45 | ||
46 | OTPeer( OTGateway * _OT ); | 46 | OTPeer( OTGateway * _OT ); |
47 | OTPeer( QTextStream & TS, OTGateway * _TS ); | 47 | OTPeer( QTextStream & TS, OTGateway * _TS ); |
48 | ~OTPeer(); | 48 | ~OTPeer(); |
49 | 49 | ||
50 | inline OTGateway * gateway() const | 50 | inline OTGateway * gateway() const |
51 | { return OT; } | 51 | { return OT; } |
52 | 52 | ||
53 | inline int deviceClass( void ) const | 53 | inline int deviceClass( void ) const |
54 | { return Class; } | 54 | { return Class; } |
55 | inline void setDeviceClass( int cls ) | 55 | inline void setDeviceClass( int cls ) |
56 | { Class = cls; } | 56 | { Class = cls; } |
57 | 57 | ||
58 | void setAddress( const OTDeviceAddress & A ) | 58 | void setAddress( const OTDeviceAddress & A ) |
59 | { Addr = A; } | 59 | { Addr = A; } |
60 | 60 | ||
61 | const OTDeviceAddress & address( void ) | 61 | const OTDeviceAddress & address( void ) |
62 | { return Addr; } | 62 | { return Addr; } |
63 | 63 | ||
64 | inline QString name( void ) const | 64 | inline QString name( void ) const |
65 | { return Name; } | 65 | { return Name; } |
66 | inline void setName( const QString & n ) | 66 | inline void setName( const QString & n ) |
67 | { Name = n; } | 67 | { Name = n; } |
68 | 68 | ||
69 | ServiceVector & services( bool Force = 0 ) | 69 | ServiceVector & services( bool Force = 0 ) |
70 | { if( Force || serviceList.count() == 0 ) { | 70 | { if( Force || serviceList.count() == 0 ) { |
71 | updateServices(); | 71 | updateServices(); |
72 | } | 72 | } |
73 | return serviceList; | 73 | return serviceList; |
74 | } | 74 | } |
75 | 75 | ||
76 | /* Returns TRUE if the device has at least a service | 76 | /* Returns TRUE if the device has at least a service |
77 | with inside the required class Id.*/ | 77 | with inside the required class Id.*/ |
78 | bool hasServiceClassID( const OTUUID & uuid); | 78 | bool hasServiceClassID( const OTUUID & uuid); |
79 | 79 | ||
80 | /* Get a vector of Rfcomm channels of the services | 80 | /* Get a vector of Rfcomm channels of the services |
81 | having "uuid" in the class ID List */ | 81 | having "uuid" in the class ID List */ |
82 | QArray<int> rfcommList( const OTUUID & uuid ); | 82 | QArray<int> rfcommList( const OTUUID & uuid ); |
83 | 83 | ||
84 | inline void setState( PeerState_t S) | 84 | inline void setState( PeerState_t S) |
85 | { State = S; } | 85 | { State = S; } |
86 | inline PeerState_t state( void ) | 86 | inline PeerState_t state( void ) |
87 | { return State; } | 87 | { return State; } |
88 | 88 | ||
89 | // go and find out state | 89 | // go and find out state |
90 | // will report back with signal | 90 | // will report back with signal |
91 | void findOutState( int timeoutInSec = 1, bool Force = 0 ); | 91 | void findOutState( int timeoutInSec = 1, bool Force = 0 ); |
92 | void stopFindingOutState( void ); | 92 | void stopFindingOutState( void ); |
93 | 93 | ||
94 | // return driver to which this peer is connected to | 94 | // return driver to which this peer is connected to |
95 | // if it is connected | 95 | // if it is connected |
96 | inline OTDriver * connectedTo( void ) const | 96 | inline OTDriver * connectedTo( void ) const |
97 | { return ConnectedTo; } | 97 | { return ConnectedTo; } |
98 | inline void setConnectedTo( OTDriver * D ) | 98 | inline void setConnectedTo( OTDriver * D ) |
99 | { ConnectedTo = D; } | 99 | { ConnectedTo = D; } |
100 | 100 | ||
101 | void save( QTextStream& TS ); | 101 | void save( QTextStream& TS ); |
102 | void load( QTextStream& TS ); | 102 | void load( QTextStream& TS ); |
103 | 103 | ||
104 | signals : | 104 | signals : |
105 | 105 | ||
106 | // report back state | 106 | // report back state |
107 | void peerStateReport( OTPeer *); | 107 | void peerStateReport( OTPeer *); |
108 | void error( const QString & ); | 108 | void error( const QString & ); |
109 | 109 | ||
110 | protected : | 110 | protected : |
111 | 111 | ||
112 | // while polling for result of ping | 112 | // while polling for result of ping |
113 | void timerEvent( QTimerEvent * ev ); | 113 | void timerEvent( QTimerEvent * ev ); |
114 | 114 | ||
115 | private: | 115 | private: |
116 | 116 | ||
117 | void updateServices(); | 117 | void updateServices(); |
118 | 118 | ||
119 | OTGateway * OT; | 119 | OTGateway * OT; |
120 | OTDeviceAddress Addr; | 120 | OTDeviceAddress Addr; |
121 | QString Name; | 121 | QString Name; |
122 | int Class; | 122 | int Class; |
123 | ServiceVector serviceList; | 123 | ServiceVector serviceList; |
124 | // -1 : don't know, 0 no, 1 yes | 124 | // -1 : don't know, 0 no, 1 yes |
125 | PeerState_t State; | 125 | PeerState_t State; |
126 | OTDriver * ConnectedTo; | 126 | OTDriver * ConnectedTo; |
127 | 127 | ||
128 | int ProbeFD; | 128 | int ProbeFD; |
129 | int ProbePhase; // see OTDriver | 129 | int ProbePhase; // see OTDriver |
130 | long ProbeTimeout; | 130 | long ProbeTimeout; |
131 | }; | 131 | }; |
132 | 132 | ||
133 | } | 133 | }; |
134 | 134 | ||
135 | #endif | 135 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTSDPAttribute.h b/noncore/settings/networksettings2/opietooth2/OTSDPAttribute.h index e79e33d..86b5623 100644 --- a/noncore/settings/networksettings2/opietooth2/OTSDPAttribute.h +++ b/noncore/settings/networksettings2/opietooth2/OTSDPAttribute.h | |||
@@ -42,99 +42,99 @@ public: | |||
42 | BOOLEAN = 5, | 42 | BOOLEAN = 5, |
43 | STRING = 6, | 43 | STRING = 6, |
44 | SEQUENCE = 7, | 44 | SEQUENCE = 7, |
45 | ALTERNATIVE = 8, | 45 | ALTERNATIVE = 8, |
46 | URL = 9, | 46 | URL = 9, |
47 | UNKNOWN = 10 | 47 | UNKNOWN = 10 |
48 | }; | 48 | }; |
49 | 49 | ||
50 | class int128_t { | 50 | class int128_t { |
51 | public : | 51 | public : |
52 | int128_t(int64_t l=0, int64_t h=0) { | 52 | int128_t(int64_t l=0, int64_t h=0) { |
53 | hi = h; | 53 | hi = h; |
54 | lo = l; | 54 | lo = l; |
55 | } | 55 | } |
56 | int128_t(const OTSDPAttribute::int128_t & l) { | 56 | int128_t(const OTSDPAttribute::int128_t & l) { |
57 | hi = l.hi; | 57 | hi = l.hi; |
58 | lo = l.lo; | 58 | lo = l.lo; |
59 | } | 59 | } |
60 | QString toString() const { | 60 | QString toString() const { |
61 | char Buf[50]; | 61 | char Buf[50]; |
62 | sprintf( Buf, "%lld%lld", hi, lo ); | 62 | sprintf( Buf, "%lld%lld", hi, lo ); |
63 | return QString( Buf ); | 63 | return QString( Buf ); |
64 | } | 64 | } |
65 | int64_t hi; | 65 | int64_t hi; |
66 | int64_t lo; | 66 | int64_t lo; |
67 | }; | 67 | }; |
68 | 68 | ||
69 | class uint128_t { | 69 | class uint128_t { |
70 | public : | 70 | public : |
71 | uint128_t( uint64_t l=0, uint64_t h=0) { | 71 | uint128_t( uint64_t l=0, uint64_t h=0) { |
72 | hi = h; | 72 | hi = h; |
73 | lo = l; | 73 | lo = l; |
74 | } | 74 | } |
75 | uint128_t( const OTSDPAttribute::uint128_t & l) { | 75 | uint128_t( const OTSDPAttribute::uint128_t & l) { |
76 | hi = l.hi; | 76 | hi = l.hi; |
77 | lo = l.lo; | 77 | lo = l.lo; |
78 | } | 78 | } |
79 | QString toString() const { | 79 | QString toString() const { |
80 | char Buf[50]; | 80 | char Buf[50]; |
81 | sprintf( Buf, "%llu%llu", hi, lo ); | 81 | sprintf( Buf, "%llu%llu", hi, lo ); |
82 | return QString( Buf ); | 82 | return QString( Buf ); |
83 | } | 83 | } |
84 | uint64_t hi; | 84 | uint64_t hi; |
85 | uint64_t lo; | 85 | uint64_t lo; |
86 | }; | 86 | }; |
87 | 87 | ||
88 | public: | 88 | public: |
89 | 89 | ||
90 | OTSDPAttribute(); | 90 | OTSDPAttribute(); |
91 | OTSDPAttribute( sdp_data_t * D ); | 91 | OTSDPAttribute( sdp_data_t * D ); |
92 | ~OTSDPAttribute(); | 92 | ~OTSDPAttribute(); |
93 | 93 | ||
94 | QString toString( void ); | 94 | QString toString( void ); |
95 | 95 | ||
96 | void setNil(); | 96 | void setNil(); |
97 | void setInt(const OTSDPAttribute::int128_t & val); | 97 | void setInt(const OTSDPAttribute::int128_t & val); |
98 | void setUInt(const OTSDPAttribute::uint128_t & val); | 98 | void setUInt(const OTSDPAttribute::uint128_t & val); |
99 | void setUUID( const OTUUID & val); | 99 | void setUUID( const OTUUID & val); |
100 | void setBool(bool val); | 100 | void setBool(bool val); |
101 | void setString(const QString & val); | 101 | void setString(const QString & val); |
102 | void setURL(const QString & val); | 102 | void setURL(const QString & val); |
103 | void setSequence(const AttributeVector& val); | 103 | void setSequence(const AttributeVector& val); |
104 | void setAlternative(const AttributeVector& val); | 104 | void setAlternative(const AttributeVector& val); |
105 | 105 | ||
106 | QString getString(); | 106 | QString getString(); |
107 | QString getURL(); | 107 | QString getURL(); |
108 | const OTSDPAttribute::int128_t & getInt(); | 108 | const OTSDPAttribute::int128_t & getInt(); |
109 | const OTSDPAttribute::uint128_t & getUInt(); | 109 | const OTSDPAttribute::uint128_t & getUInt(); |
110 | const OTUUID & getUUID(); | 110 | const OTUUID & getUUID(); |
111 | bool getBool(); | 111 | bool getBool(); |
112 | AttributeVector * getSequence(); | 112 | AttributeVector * getSequence(); |
113 | AttributeVector * getAlternative(); | 113 | AttributeVector * getAlternative(); |
114 | 114 | ||
115 | UUIDVector getAllUUIDs(); | 115 | UUIDVector getAllUUIDs(); |
116 | 116 | ||
117 | inline AttrType getType() | 117 | inline AttrType getType() |
118 | { return type; } | 118 | { return type; } |
119 | 119 | ||
120 | //QString getValString(); | 120 | //QString getValString(); |
121 | const char * getTypeString(); | 121 | const char * getTypeString(); |
122 | 122 | ||
123 | private: | 123 | private: |
124 | 124 | ||
125 | AttrType type; | 125 | AttrType type; |
126 | 126 | ||
127 | union { | 127 | union { |
128 | OTSDPAttribute::int128_t * intVal; | 128 | OTSDPAttribute::int128_t * intVal; |
129 | OTSDPAttribute::uint128_t * uintVal; | 129 | OTSDPAttribute::uint128_t * uintVal; |
130 | OTUUID * uuidVal; | 130 | OTUUID * uuidVal; |
131 | bool boolVal; | 131 | bool boolVal; |
132 | QString * stringVal; // strings and urls | 132 | QString * stringVal; // strings and urls |
133 | AttributeVector * sequenceVal; // sequences and alternatives | 133 | AttributeVector * sequenceVal; // sequences and alternatives |
134 | } Value; | 134 | } Value; |
135 | 135 | ||
136 | }; | 136 | }; |
137 | 137 | ||
138 | } | 138 | }; |
139 | 139 | ||
140 | #endif | 140 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTSDPService.h b/noncore/settings/networksettings2/opietooth2/OTSDPService.h index 4831df0..21d7344 100644 --- a/noncore/settings/networksettings2/opietooth2/OTSDPService.h +++ b/noncore/settings/networksettings2/opietooth2/OTSDPService.h | |||
@@ -1,75 +1,75 @@ | |||
1 | //-*-c++-*- | 1 | //-*-c++-*- |
2 | /*************************************************************************** | 2 | /*************************************************************************** |
3 | * Copyright (C) 2003 by Fred Schaettgen * | 3 | * Copyright (C) 2003 by Fred Schaettgen * |
4 | * kdebluetooth@schaettgen.de * | 4 | * kdebluetooth@schaettgen.de * |
5 | * * | 5 | * * |
6 | * This program is free software; you can redistribute it and/or modify * | 6 | * This program is free software; you can redistribute it and/or modify * |
7 | * it under the terms of the GNU General Public License as published by * | 7 | * it under the terms of the GNU General Public License as published by * |
8 | * the Free Software Foundation; either version 2 of the License, or * | 8 | * the Free Software Foundation; either version 2 of the License, or * |
9 | * (at your option) any later version. * | 9 | * (at your option) any later version. * |
10 | ***************************************************************************/ | 10 | ***************************************************************************/ |
11 | 11 | ||
12 | #ifndef SDPSERVICE_H | 12 | #ifndef SDPSERVICE_H |
13 | #define SDPSERVICE_H | 13 | #define SDPSERVICE_H |
14 | 14 | ||
15 | #include <qvector.h> | 15 | #include <qvector.h> |
16 | #include <qarray.h> | 16 | #include <qarray.h> |
17 | #include <OTSDPAttribute.h> | 17 | #include <OTSDPAttribute.h> |
18 | 18 | ||
19 | namespace Opietooth2 { | 19 | namespace Opietooth2 { |
20 | 20 | ||
21 | /** | 21 | /** |
22 | @author Fred Schaettgen | 22 | @author Fred Schaettgen |
23 | */ | 23 | */ |
24 | class OTSDPService { | 24 | class OTSDPService { |
25 | 25 | ||
26 | public: | 26 | public: |
27 | 27 | ||
28 | OTSDPService(); | 28 | OTSDPService(); |
29 | virtual ~OTSDPService(); | 29 | virtual ~OTSDPService(); |
30 | 30 | ||
31 | void addAttribute(int id, OTSDPAttribute * attr); | 31 | void addAttribute(int id, OTSDPAttribute * attr); |
32 | 32 | ||
33 | const OTSDPAttribute & attribute( int index ); | 33 | const OTSDPAttribute & attribute( int index ); |
34 | int attributeID( int index ); | 34 | int attributeID( int index ); |
35 | 35 | ||
36 | AttributeVector subAttributes( OTSDPAttribute * attr); | 36 | AttributeVector subAttributes( OTSDPAttribute * attr); |
37 | OTSDPAttribute * attributeByID( int id ); | 37 | OTSDPAttribute * attributeByID( int id ); |
38 | 38 | ||
39 | // See Bluetooth Core Spec Sec. 5.1 | 39 | // See Bluetooth Core Spec Sec. 5.1 |
40 | bool recordHandle(uint32_t *handle); // 0x00 | 40 | bool recordHandle(uint32_t *handle); // 0x00 |
41 | 41 | ||
42 | //bool getServiceClassIDList(vector<uuid_t> *classIDList); // 0x01 | 42 | //bool getServiceClassIDList(vector<uuid_t> *classIDList); // 0x01 |
43 | //bool getServiceRecordState(uint32_t *state); // 0x02 | 43 | //bool getServiceRecordState(uint32_t *state); // 0x02 |
44 | //bool getServiceID(uuid_t *id); // 0x03; | 44 | //bool getServiceID(uuid_t *id); // 0x03; |
45 | //bool getProtocolDescriptorList(SDP::Attribute *attribute); // 0x04 | 45 | //bool getProtocolDescriptorList(SDP::Attribute *attribute); // 0x04 |
46 | //bool getBrowseGroupList(vector<uuid_t> *browseGroupList); // 0x05 | 46 | //bool getBrowseGroupList(vector<uuid_t> *browseGroupList); // 0x05 |
47 | QString name(void); // langBase + 0x00 | 47 | QString name(void); // langBase + 0x00 |
48 | QString description(void); // langBase + 0x01 | 48 | QString description(void); // langBase + 0x01 |
49 | 49 | ||
50 | UUIDVector allUUIDs(); | 50 | UUIDVector allUUIDs(); |
51 | 51 | ||
52 | // return list of classes this service belongs to | 52 | // return list of classes this service belongs to |
53 | UUIDVector classIDList(); | 53 | UUIDVector classIDList(); |
54 | 54 | ||
55 | /** Retrieves the Rfcomm channel. | 55 | /** Retrieves the Rfcomm channel. |
56 | This function is provided just for conveniance. | 56 | This function is provided just for conveniance. |
57 | @param n The Rfcomm channel. | 57 | @param n The Rfcomm channel. |
58 | @ret true if an rfcomm channel was found, false otherwise. */ | 58 | @ret true if an rfcomm channel was found, false otherwise. */ |
59 | bool rfcommChannel(unsigned int &n); | 59 | bool rfcommChannel(unsigned int &n); |
60 | 60 | ||
61 | bool hasClassID(const OTUUID & uuid); | 61 | bool hasClassID(const OTUUID & uuid); |
62 | 62 | ||
63 | private: | 63 | private: |
64 | 64 | ||
65 | struct AttributeEntry { | 65 | struct AttributeEntry { |
66 | int id; | 66 | int id; |
67 | OTSDPAttribute * attr; | 67 | OTSDPAttribute * attr; |
68 | }; | 68 | }; |
69 | 69 | ||
70 | QArray<AttributeEntry> attributeList; | 70 | QArray<AttributeEntry> attributeList; |
71 | }; | 71 | }; |
72 | 72 | ||
73 | } | 73 | }; |
74 | 74 | ||
75 | #endif | 75 | #endif |
diff --git a/noncore/settings/networksettings2/opietooth2/OTUUID.h b/noncore/settings/networksettings2/opietooth2/OTUUID.h index aebd9b9..97df114 100644 --- a/noncore/settings/networksettings2/opietooth2/OTUUID.h +++ b/noncore/settings/networksettings2/opietooth2/OTUUID.h | |||
@@ -1,58 +1,58 @@ | |||
1 | //-*-c++-*- | 1 | //-*-c++-*- |
2 | /*************************************************************************** | 2 | /*************************************************************************** |
3 | * Copyright (C) 2003 by Fred Schaettgen * | 3 | * Copyright (C) 2003 by Fred Schaettgen * |
4 | * kdebluetooth@schaettgen.de * | 4 | * kdebluetooth@schaettgen.de * |
5 | * * | 5 | * * |
6 | * This program is free software; you can redistribute it and/or modify * | 6 | * This program is free software; you can redistribute it and/or modify * |
7 | * it under the terms of the GNU General Public License as published by * | 7 | * it under the terms of the GNU General Public License as published by * |
8 | * the Free Software Foundation; either version 2 of the License, or * | 8 | * the Free Software Foundation; either version 2 of the License, or * |
9 | * (at your option) any later version. * | 9 | * (at your option) any later version. * |
10 | ***************************************************************************/ | 10 | ***************************************************************************/ |
11 | 11 | ||
12 | #ifndef OTUUID_H | 12 | #ifndef OTUUID_H |
13 | #define OTUUID_H | 13 | #define OTUUID_H |
14 | 14 | ||
15 | #include <qstring.h> | 15 | #include <qstring.h> |
16 | #include <qarray.h> | 16 | #include <qarray.h> |
17 | #include <bluezlib.h> | 17 | #include <bluezlib.h> |
18 | 18 | ||
19 | namespace Opietooth2 { | 19 | namespace Opietooth2 { |
20 | 20 | ||
21 | class OTUUID; | 21 | class OTUUID; |
22 | 22 | ||
23 | typedef QArray<OTUUID> UUIDVector; | 23 | typedef QArray<OTUUID> UUIDVector; |
24 | 24 | ||
25 | class OTUUID { | 25 | class OTUUID { |
26 | 26 | ||
27 | public : | 27 | public : |
28 | 28 | ||
29 | OTUUID( QString s ); | 29 | OTUUID( QString s ); |
30 | OTUUID( uint64_t l=0, uint64_t h=0); | 30 | OTUUID( uint64_t l=0, uint64_t h=0); |
31 | OTUUID( const OTUUID & O ); | 31 | OTUUID( const OTUUID & O ); |
32 | 32 | ||
33 | bool fromString(QString s); | 33 | bool fromString(QString s); |
34 | 34 | ||
35 | void setUUID128(uint64_t hi, uint64_t lo); | 35 | void setUUID128(uint64_t hi, uint64_t lo); |
36 | 36 | ||
37 | void setUUID32(uint32_t v); | 37 | void setUUID32(uint32_t v); |
38 | 38 | ||
39 | uint16_t toShort() | 39 | uint16_t toShort() |
40 | { return ((hi>>32) & 0xffff); } | 40 | { return ((hi>>32) & 0xffff); } |
41 | uint32_t toLong() | 41 | uint32_t toLong() |
42 | { return ((hi>>32) & 0xffffffff); } | 42 | { return ((hi>>32) & 0xffffffff); } |
43 | uint64_t toLongLong() | 43 | uint64_t toLongLong() |
44 | { return hi; } | 44 | { return hi; } |
45 | 45 | ||
46 | QString toString() const ; | 46 | QString toString() const ; |
47 | operator QString() const; | 47 | operator QString() const; |
48 | operator ::uuid_t() const; | 48 | operator ::uuid_t() const; |
49 | 49 | ||
50 | OTUUID & operator=( const OTUUID & other ) ; | 50 | OTUUID & operator=( const OTUUID & other ) ; |
51 | bool operator<( const OTUUID & other ) const; | 51 | bool operator<( const OTUUID & other ) const; |
52 | bool operator==(const OTUUID & uuid) const; | 52 | bool operator==(const OTUUID & uuid) const; |
53 | 53 | ||
54 | uint64_t hi; | 54 | uint64_t hi; |
55 | uint64_t lo; | 55 | uint64_t lo; |
56 | }; | 56 | }; |
57 | } | 57 | }; |
58 | #endif | 58 | #endif |
diff --git a/noncore/settings/networksettings2/usb/usbrun.cpp b/noncore/settings/networksettings2/usb/usbrun.cpp index f8824e0..0a46642 100644 --- a/noncore/settings/networksettings2/usb/usbrun.cpp +++ b/noncore/settings/networksettings2/usb/usbrun.cpp | |||
@@ -1,112 +1,124 @@ | |||
1 | #include <qfile.h> | 1 | #include <qfile.h> |
2 | #include <qfileinfo.h> | 2 | #include <qfileinfo.h> |
3 | #include <qtextstream.h> | 3 | #include <qtextstream.h> |
4 | #include <resources.h> | 4 | #include <resources.h> |
5 | #include "usbrun.h" | 5 | #include "usbrun.h" |
6 | 6 | ||
7 | State_t USBRun::detectState( void ) { | 7 | State_t USBRun::detectState( void ) { |
8 | // unavailable : no card found | 8 | // unavailable : no card found |
9 | // available : card found and assigned to us or free | 9 | // available : card found and assigned to us or free |
10 | // up : card found and assigned to us and up | 10 | // up : card found and assigned to us and up |
11 | NodeCollection * NC = nodeCollection(); | 11 | NodeCollection * NC = nodeCollection(); |
12 | QString S = QString( "/tmp/profile-%1.up" ).arg(NC->number()); | 12 | QString S = QString( "/tmp/profile-%1.up" ).arg(NC->number()); |
13 | System & Sys = NSResources->system(); | 13 | System & Sys = NSResources->system(); |
14 | InterfaceInfo * Run; | 14 | InterfaceInfo * Run; |
15 | QFile F( S ); | 15 | QFile F( S ); |
16 | Log(("Detecting for %s\n", NC->name().latin1() )); | 16 | Log(("Detecting for %s\n", NC->name().latin1() )); |
17 | 17 | ||
18 | if( F.open( IO_ReadOnly ) ) { | 18 | if( F.open( IO_ReadOnly ) ) { |
19 | // could open file -> read interface and assign | 19 | // could open file -> read interface and assign |
20 | QString X; | 20 | QString X; |
21 | QTextStream TS(&F); | 21 | QTextStream TS(&F); |
22 | X = TS.readLine(); | 22 | X = TS.readLine(); |
23 | Log(("%s exists\n", S.latin1() )); | 23 | Log(("%s exists\n", S.latin1() )); |
24 | // find interface | 24 | // find interface |
25 | if( handlesInterface( X ) ) { | 25 | if( handlesInterface( X ) ) { |
26 | for( QDictIterator<InterfaceInfo> It(Sys.interfaces()); | 26 | for( QDictIterator<InterfaceInfo> It(Sys.interfaces()); |
27 | It.current(); | 27 | It.current(); |
28 | ++It ) { | 28 | ++It ) { |
29 | Run = It.current(); | 29 | Run = It.current(); |
30 | if( X == Run->Name ) { | 30 | if( X == Run->Name ) { |
31 | NC->assignInterface( Run ); | 31 | NC->assignInterface( Run ); |
32 | return IsUp; | 32 | return IsUp; |
33 | } | 33 | } |
34 | } | 34 | } |
35 | } | 35 | } |
36 | } | 36 | } |
37 | 37 | ||
38 | Log(("Assigned %p\n", NC->assignedInterface() )); | 38 | Log(("Assigned %p\n", NC->assignedInterface() )); |
39 | if( ( Run = NC->assignedInterface() ) ) { | 39 | if( ( Run = NC->assignedInterface() ) ) { |
40 | // we already have an interface assigned -> still present ? | 40 | // we already have an interface assigned -> still present ? |
41 | if( ! Run->IsUp ) { | 41 | if( ! Run->IsUp ) { |
42 | // usb is still free -> keep assignment | 42 | // usb is still free -> keep assignment |
43 | return Available; | 43 | return Available; |
44 | } // else interface is up but NOT us -> some other profile | 44 | } // else interface is up but NOT us -> some other profile |
45 | } | 45 | } |
46 | 46 | ||
47 | // nothing (valid) assigned to us | 47 | // nothing (valid) assigned to us |
48 | NC->assignInterface( 0 ); | 48 | NC->assignInterface( 0 ); |
49 | 49 | ||
50 | // find possible interface | 50 | // find possible interface |
51 | for( QDictIterator<InterfaceInfo> It(Sys.interfaces()); | 51 | for( QDictIterator<InterfaceInfo> It(Sys.interfaces()); |
52 | It.current(); | 52 | It.current(); |
53 | ++It ) { | 53 | ++It ) { |
54 | Run = It.current(); | 54 | Run = It.current(); |
55 | 55 | ||
56 | Log(("%s %d %d=%d %d\n", | 56 | Log(("%s %d %d=%d %d\n", |
57 | Run->Name.latin1(), | 57 | Run->Name.latin1(), |
58 | handlesInterface( Run->Name ), | 58 | handlesInterface( Run->Name ), |
59 | Run->CardType, ARPHRD_ETHER, | 59 | Run->CardType, ARPHRD_ETHER, |
60 | ! Run->IsUp )); | 60 | ! Run->IsUp )); |
61 | 61 | ||
62 | if( handlesInterface( Run->Name ) && | 62 | if( handlesInterface( Run->Name ) && |
63 | Run->CardType == ARPHRD_ETHER && | 63 | Run->CardType == ARPHRD_ETHER && |
64 | ! Run->IsUp | 64 | ! Run->IsUp |
65 | ) { | 65 | ) { |
66 | // proper type, and Not UP -> free | 66 | // proper type, and Not UP -> free |
67 | return Off; | 67 | return Off; |
68 | } | 68 | } |
69 | } | 69 | } |
70 | 70 | ||
71 | return Unavailable; | 71 | return Unavailable; |
72 | } | 72 | } |
73 | 73 | ||
74 | QString USBRun::setMyState( NodeCollection *, Action_t , bool ) { | 74 | QString USBRun::setMyState( NodeCollection * NC, Action_t A, bool ) { |
75 | |||
76 | // nothing needs to be done to 'activate' or 'deactivate' | ||
77 | // a cable | ||
78 | |||
79 | // perhaps (later) we can figure out if the device is IN the | ||
80 | // cradle | ||
81 | if( A == Activate ) { | ||
82 | NC->setCurrentState( Available ); | ||
83 | } else if ( A == Deactivate ) { | ||
84 | NC->setCurrentState( Unavailable ); | ||
85 | } | ||
86 | |||
75 | return QString(); | 87 | return QString(); |
76 | } | 88 | } |
77 | 89 | ||
78 | // get interface that is free or assigned to us | 90 | // get interface that is free or assigned to us |
79 | InterfaceInfo * USBRun::getInterface( void ) { | 91 | InterfaceInfo * USBRun::getInterface( void ) { |
80 | 92 | ||
81 | System & S = NSResources->system(); | 93 | System & S = NSResources->system(); |
82 | InterfaceInfo * best = 0, * Run; | 94 | InterfaceInfo * best = 0, * Run; |
83 | QRegExp R( "usb[0-9abcdef]" ); | 95 | QRegExp R( "usb[0-9abcdef]" ); |
84 | 96 | ||
85 | for( QDictIterator<InterfaceInfo> It(S.interfaces()); | 97 | for( QDictIterator<InterfaceInfo> It(S.interfaces()); |
86 | It.current(); | 98 | It.current(); |
87 | ++It ) { | 99 | ++It ) { |
88 | Run = It.current(); | 100 | Run = It.current(); |
89 | if( handlesInterface( Run->Name ) && | 101 | if( handlesInterface( Run->Name ) && |
90 | Run->CardType == ARPHRD_ETHER | 102 | Run->CardType == ARPHRD_ETHER |
91 | ) { | 103 | ) { |
92 | // this is a USB card | 104 | // this is a USB card |
93 | if( Run->assignedConnection() == netNode()->connection() ) { | 105 | if( Run->assignedConnection() == netNode()->connection() ) { |
94 | // assigned to us | 106 | // assigned to us |
95 | return Run; | 107 | return Run; |
96 | } else if( Run->assignedConnection() == 0 ) { | 108 | } else if( Run->assignedConnection() == 0 ) { |
97 | // free | 109 | // free |
98 | best = Run; | 110 | best = Run; |
99 | } | 111 | } |
100 | } | 112 | } |
101 | } | 113 | } |
102 | return best; // can be 0 | 114 | return best; // can be 0 |
103 | } | 115 | } |
104 | 116 | ||
105 | bool USBRun::handlesInterface( const QString & S ) { | 117 | bool USBRun::handlesInterface( const QString & S ) { |
106 | return Pat.match( S ) >= 0; | 118 | return Pat.match( S ) >= 0; |
107 | } | 119 | } |
108 | 120 | ||
109 | bool USBRun::handlesInterface( InterfaceInfo * I ) { | 121 | bool USBRun::handlesInterface( InterfaceInfo * I ) { |
110 | return handlesInterface( I->Name ); | 122 | return handlesInterface( I->Name ); |
111 | } | 123 | } |
112 | 124 | ||