author | wimpie <wimpie> | 2005-01-06 17:59:54 (UTC) |
---|---|---|
committer | wimpie <wimpie> | 2005-01-06 17:59:54 (UTC) |
commit | 006091cfc3bb54286fd4dd74773fe5c09048077b (patch) (unidiff) | |
tree | 23075790a300998a674dafe104fdc05bb6d19789 | |
parent | fab28788f055b998803df9a6e8cfe2a4f9122351 (diff) | |
download | opie-006091cfc3bb54286fd4dd74773fe5c09048077b.zip opie-006091cfc3bb54286fd4dd74773fe5c09048077b.tar.gz opie-006091cfc3bb54286fd4dd74773fe5c09048077b.tar.bz2 |
Forgot networktemplate files
HCIdump seems to work -> bt sniffing is possible
5 files changed, 43 insertions, 29 deletions
diff --git a/noncore/settings/networksettings2/networksettings2/system.cpp b/noncore/settings/networksettings2/networksettings2/system.cpp index 9512579..e642c08 100644 --- a/noncore/settings/networksettings2/networksettings2/system.cpp +++ b/noncore/settings/networksettings2/networksettings2/system.cpp | |||
@@ -39,16 +39,17 @@ static char Dig2Hex[] = { | |||
39 | }; | 39 | }; |
40 | 40 | ||
41 | // get HIGH nibble of byte | 41 | // get HIGH nibble of byte |
42 | #define HN(x) Dig2Hex[(((x)&0xf0)>>4)] | 42 | #define HN(x) Dig2Hex[(((x)&0xf0)>>4)] |
43 | // get LOW nibble of byte | 43 | // get LOW nibble of byte |
44 | #define LN(x) Dig2Hex[((x)&0x0f)] | 44 | #define LN(x) Dig2Hex[((x)&0x0f)] |
45 | 45 | ||
46 | System::System( void ) : QObject(), ProbedInterfaces() { | 46 | System::System( void ) : QObject(), ProbedInterfaces() { |
47 | ProcDevNet = 0; | ||
47 | } | 48 | } |
48 | 49 | ||
49 | System::~System( void ) { | 50 | System::~System( void ) { |
50 | if( ProcDevNet ) | 51 | if( ProcDevNet ) |
51 | delete ProcDevNet; | 52 | delete ProcDevNet; |
52 | } | 53 | } |
53 | 54 | ||
54 | QDict<InterfaceInfo> & System::interfaces( void ) { | 55 | QDict<InterfaceInfo> & System::interfaces( void ) { |
@@ -104,23 +105,23 @@ int System::runAsRoot( QStringList & S, MyProcess * Prc ) { | |||
104 | Log(("Executing %s\n", S.join( " " ).latin1() )); | 105 | Log(("Executing %s\n", S.join( " " ).latin1() )); |
105 | 106 | ||
106 | if( ! P->process().start( OProcess::DontCare, | 107 | if( ! P->process().start( OProcess::DontCare, |
107 | OProcess::AllOutput ) ) { | 108 | OProcess::AllOutput ) ) { |
108 | owarn << "Error starting " << S << oendl; | 109 | owarn << "Error starting " << S << oendl; |
109 | if( ! Prc ) | 110 | if( ! Prc ) |
110 | delete P; | 111 | delete P; |
111 | // error starting app | 112 | // error starting app |
112 | return 1; | 113 | return 0; |
113 | } | 114 | } |
114 | owarn << "Started " << S << oendl; | 115 | owarn << "Started " << S << oendl; |
115 | } | 116 | } |
116 | 117 | ||
117 | // all is fine | 118 | // all is fine |
118 | return 0; | 119 | return 1; |
119 | } | 120 | } |
120 | 121 | ||
121 | int System::execAsUser( QStringList & SL ) { | 122 | int System::execAsUser( QStringList & SL ) { |
122 | MyProcess * P = new MyProcess(); | 123 | MyProcess * P = new MyProcess(); |
123 | CurrentQPEUser CU = NSResources->currentUser(); | 124 | CurrentQPEUser CU = NSResources->currentUser(); |
124 | char * usr = getenv("USER"); | 125 | char * usr = getenv("USER"); |
125 | 126 | ||
126 | if( strcmp( usr, "root" ) == 0 ) { | 127 | if( strcmp( usr, "root" ) == 0 ) { |
@@ -156,17 +157,17 @@ int System::execAsUser( QStringList & SL ) { | |||
156 | OProcess::NoCommunication ) ); | 157 | OProcess::NoCommunication ) ); |
157 | delete P; | 158 | delete P; |
158 | 159 | ||
159 | if( rv ) { | 160 | if( rv ) { |
160 | // if we come here, the exec was not successfull | 161 | // if we come here, the exec was not successfull |
161 | Log(("Could not exec : %d\n", errno )); | 162 | Log(("Could not exec : %d\n", errno )); |
162 | } | 163 | } |
163 | 164 | ||
164 | return rv; | 165 | return ! rv; |
165 | } | 166 | } |
166 | 167 | ||
167 | void System::SLOT_ProcessExited( MyProcess * P ) { | 168 | void System::SLOT_ProcessExited( MyProcess * P ) { |
168 | QString R; | 169 | QString R; |
169 | 170 | ||
170 | for( QValueListConstIterator<QCString> it = P->process().args().begin(); | 171 | for( QValueListConstIterator<QCString> it = P->process().args().begin(); |
171 | it != P->process().args().end(); | 172 | it != P->process().args().end(); |
172 | ++it ) { | 173 | ++it ) { |
diff --git a/noncore/settings/networksettings2/opie-networksettings2.control b/noncore/settings/networksettings2/opie-networksettings2.control index e4bd29c..874833c 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 | 2 | Files: bin/networksettings2 apps/Settings/networksettings2.desktop pics/networksettings2/*.png lib/libnetworksettings2.so* pics/networksettings2/Devices/*.png etc/NS2templates/* etc/NS2templates/*/* |
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/OTSniffGUI.ui b/noncore/settings/networksettings2/opietooth2/OTSniffGUI.ui index 9ef540e..ec0b387 100644 --- a/noncore/settings/networksettings2/opietooth2/OTSniffGUI.ui +++ b/noncore/settings/networksettings2/opietooth2/OTSniffGUI.ui | |||
@@ -7,34 +7,37 @@ | |||
7 | <cstring>OTSniffGUI</cstring> | 7 | <cstring>OTSniffGUI</cstring> |
8 | </property> | 8 | </property> |
9 | <property stdset="1"> | 9 | <property stdset="1"> |
10 | <name>geometry</name> | 10 | <name>geometry</name> |
11 | <rect> | 11 | <rect> |
12 | <x>0</x> | 12 | <x>0</x> |
13 | <y>0</y> | 13 | <y>0</y> |
14 | <width>274</width> | 14 | <width>274</width> |
15 | <height>160</height> | 15 | <height>173</height> |
16 | </rect> | 16 | </rect> |
17 | </property> | 17 | </property> |
18 | <property stdset="1"> | 18 | <property stdset="1"> |
19 | <name>caption</name> | 19 | <name>caption</name> |
20 | <string>Bluetooth Sniffing</string> | 20 | <string>Bluetooth Sniffing</string> |
21 | </property> | 21 | </property> |
22 | <property> | 22 | <property> |
23 | <name>layoutMargin</name> | 23 | <name>layoutMargin</name> |
24 | </property> | 24 | </property> |
25 | <property> | ||
26 | <name>layoutSpacing</name> | ||
27 | </property> | ||
25 | <vbox> | 28 | <vbox> |
26 | <property stdset="1"> | 29 | <property stdset="1"> |
27 | <name>margin</name> | 30 | <name>margin</name> |
28 | <number>3</number> | 31 | <number>3</number> |
29 | </property> | 32 | </property> |
30 | <property stdset="1"> | 33 | <property stdset="1"> |
31 | <name>spacing</name> | 34 | <name>spacing</name> |
32 | <number>6</number> | 35 | <number>2</number> |
33 | </property> | 36 | </property> |
34 | <widget> | 37 | <widget> |
35 | <class>QLayoutWidget</class> | 38 | <class>QLayoutWidget</class> |
36 | <property stdset="1"> | 39 | <property stdset="1"> |
37 | <name>name</name> | 40 | <name>name</name> |
38 | <cstring>Layout3</cstring> | 41 | <cstring>Layout3</cstring> |
39 | </property> | 42 | </property> |
40 | <hbox> | 43 | <hbox> |
@@ -119,24 +122,20 @@ | |||
119 | <property stdset="1"> | 122 | <property stdset="1"> |
120 | <name>text</name> | 123 | <name>text</name> |
121 | <string>Trace</string> | 124 | <string>Trace</string> |
122 | </property> | 125 | </property> |
123 | </widget> | 126 | </widget> |
124 | </hbox> | 127 | </hbox> |
125 | </widget> | 128 | </widget> |
126 | <widget> | 129 | <widget> |
127 | <class>QListBox</class> | 130 | <class>QTextView</class> |
128 | <property stdset="1"> | 131 | <property stdset="1"> |
129 | <name>name</name> | 132 | <name>name</name> |
130 | <cstring>Output_LB</cstring> | 133 | <cstring>Output_TV</cstring> |
131 | </property> | ||
132 | <property stdset="1"> | ||
133 | <name>selectionMode</name> | ||
134 | <enum>NoSelection</enum> | ||
135 | </property> | 134 | </property> |
136 | </widget> | 135 | </widget> |
137 | <widget> | 136 | <widget> |
138 | <class>QLayoutWidget</class> | 137 | <class>QLayoutWidget</class> |
139 | <property stdset="1"> | 138 | <property stdset="1"> |
140 | <name>name</name> | 139 | <name>name</name> |
141 | <cstring>Layout3</cstring> | 140 | <cstring>Layout3</cstring> |
142 | </property> | 141 | </property> |
diff --git a/noncore/settings/networksettings2/opietooth2/Opietooth.cpp b/noncore/settings/networksettings2/opietooth2/Opietooth.cpp index 5a890da..b14cc2f 100644 --- a/noncore/settings/networksettings2/opietooth2/Opietooth.cpp +++ b/noncore/settings/networksettings2/opietooth2/Opietooth.cpp | |||
@@ -16,17 +16,19 @@ using namespace Opie::Ui; | |||
16 | #include <qheader.h> | 16 | #include <qheader.h> |
17 | #include <qlabel.h> | 17 | #include <qlabel.h> |
18 | #include <qlayout.h> | 18 | #include <qlayout.h> |
19 | #include <qlistbox.h> | 19 | #include <qlistbox.h> |
20 | #include <qlistview.h> | 20 | #include <qlistview.h> |
21 | #include <qmessagebox.h> | 21 | #include <qmessagebox.h> |
22 | #include <qprogressbar.h> | 22 | #include <qprogressbar.h> |
23 | #include <qpushbutton.h> | 23 | #include <qpushbutton.h> |
24 | #include <qscrollbar.h> | ||
24 | #include <qtextstream.h> | 25 | #include <qtextstream.h> |
26 | #include <qtextview.h> | ||
25 | 27 | ||
26 | #include <Opietooth.h> | 28 | #include <Opietooth.h> |
27 | #include <OTDriver.h> | 29 | #include <OTDriver.h> |
28 | #include <OTPeer.h> | 30 | #include <OTPeer.h> |
29 | #include <OTGateway.h> | 31 | #include <OTGateway.h> |
30 | #include <OTSDPAttribute.h> | 32 | #include <OTSDPAttribute.h> |
31 | #include <OTSDPService.h> | 33 | #include <OTSDPService.h> |
32 | #include <OTInquiry.h> | 34 | #include <OTInquiry.h> |
@@ -115,33 +117,37 @@ private : | |||
115 | // | 117 | // |
116 | // | 118 | // |
117 | // | 119 | // |
118 | 120 | ||
119 | OTSniffing::OTSniffing( QWidget * parent ) : OTSniffGUI( parent ) { | 121 | OTSniffing::OTSniffing( QWidget * parent ) : OTSniffGUI( parent ) { |
120 | 122 | ||
121 | OT = OTGateway::getOTGateway(); | 123 | OT = OTGateway::getOTGateway(); |
122 | HciDump = 0; | 124 | HciDump = 0; |
123 | Sys = new System(); | ||
124 | } | 125 | } |
125 | 126 | ||
126 | OTSniffing::~OTSniffing() { | 127 | OTSniffing::~OTSniffing() { |
127 | printf( "CLOSE \n" ); | 128 | SLOT_Trace( 0 ); |
128 | if ( HciDump ) { | ||
129 | HciDump->process().kill(); | ||
130 | delete HciDump; | ||
131 | } | ||
132 | delete Sys; | ||
133 | } | 129 | } |
134 | 130 | ||
135 | void OTSniffing::SLOT_Trace( bool ) { | 131 | void OTSniffing::SLOT_Trace( bool Run ) { |
132 | |||
133 | if( ! Run ) { | ||
134 | if ( HciDump ) { | ||
135 | HciDump->process().kill(); | ||
136 | delete HciDump; | ||
137 | } | ||
138 | HciDump = 0; | ||
139 | return; | ||
140 | } | ||
141 | |||
136 | HciDump = new MyProcess(); | 142 | HciDump = new MyProcess(); |
137 | QStringList SL; | 143 | QStringList SL; |
138 | 144 | ||
139 | SL << "hcidump"; | 145 | SL << "/usr/sbin/hcidump"; |
140 | switch( DataFormat_CB->currentItem() ) { | 146 | switch( DataFormat_CB->currentItem() ) { |
141 | case 0 : // Hex | 147 | case 0 : // Hex |
142 | SL << "-x"; | 148 | SL << "-x"; |
143 | break; | 149 | break; |
144 | case 1 : // Ascii | 150 | case 1 : // Ascii |
145 | SL << "-a"; | 151 | SL << "-a"; |
146 | break; | 152 | break; |
147 | case 2 : // both | 153 | case 2 : // both |
@@ -157,32 +163,40 @@ void OTSniffing::SLOT_Trace( bool ) { | |||
157 | this, | 163 | this, |
158 | SLOT( SLOT_Show( const QString & ) ) ); | 164 | SLOT( SLOT_Show( const QString & ) ) ); |
159 | 165 | ||
160 | connect( HciDump, | 166 | connect( HciDump, |
161 | SIGNAL(processExited(MyProcess*) ), | 167 | SIGNAL(processExited(MyProcess*) ), |
162 | this, | 168 | this, |
163 | SLOT( SLOT_ProcessExited(MyProcess*) ) ); | 169 | SLOT( SLOT_ProcessExited(MyProcess*) ) ); |
164 | 170 | ||
165 | if( ! Sys->runAsRoot( SL, HciDump ) ) { | 171 | HciDump->process() << SL; |
172 | |||
173 | if( ! HciDump->process().start( OProcess::DontCare, | ||
174 | OProcess::AllOutput ) | ||
175 | ) { | ||
166 | QMessageBox::warning(0, | 176 | QMessageBox::warning(0, |
167 | tr("Run hcidump"), | 177 | tr("Run hcidump"), |
168 | tr("Cannot start %1").arg(SL.join(" ")) | 178 | tr("Cannot start %1").arg(SL.join(" ")) |
169 | ); | 179 | ); |
170 | delete HciDump; | 180 | delete HciDump; |
171 | HciDump = 0; | 181 | HciDump = 0; |
172 | } | 182 | } |
173 | 183 | ||
174 | } | 184 | } |
175 | 185 | ||
176 | void OTSniffing::SLOT_Show( const QString & S ) { | 186 | void OTSniffing::SLOT_Show( const QString & S ) { |
177 | printf( "%s\n", S.latin1() ); | 187 | printf( "%s\n", S.latin1() ); |
178 | Output_LB->insertItem( S ); | 188 | Output_TV->setText( Output_TV->text() + S + "\n" ); |
179 | Output_LB->setCurrentItem( Output_LB->count()-1 ); | 189 | |
180 | Output_LB->ensureCurrentVisible(); | 190 | QScrollBar *scroll = Output_TV->verticalScrollBar(); |
191 | scroll->setValue(scroll->maxValue()); | ||
192 | //Output_LB->insertItem( S ); | ||
193 | //Output_LB->setCurrentItem( Output_LB->count()-1 ); | ||
194 | //Output_LB->ensureCurrentVisible(); | ||
181 | } | 195 | } |
182 | 196 | ||
183 | void OTSniffing::SLOT_ProcessExited( MyProcess * ) { | 197 | void OTSniffing::SLOT_ProcessExited( MyProcess * ) { |
184 | printf( "Exited\n" ); | 198 | printf( "Exited\n" ); |
185 | delete HciDump; | 199 | delete HciDump; |
186 | HciDump = 0; | 200 | HciDump = 0; |
187 | } | 201 | } |
188 | 202 | ||
@@ -223,22 +237,24 @@ void OTSniffing::SLOT_Load( void ) { | |||
223 | tr("Save log"), | 237 | tr("Save log"), |
224 | tr("Cannot open %1").arg(S) | 238 | tr("Cannot open %1").arg(S) |
225 | ); | 239 | ); |
226 | return; | 240 | return; |
227 | } | 241 | } |
228 | QTextStream TS ( &F ); | 242 | QTextStream TS ( &F ); |
229 | SLOT_ClearLog(); | 243 | SLOT_ClearLog(); |
230 | S = TS.read(); | 244 | S = TS.read(); |
231 | Output_LB->insertStringList( QStringList::split( "\n", S ) ); | 245 | // Output_LB->insertStringList( QStringList::split( "\n", S ) ); |
246 | Output_TV->setText( S ); | ||
232 | } | 247 | } |
233 | } | 248 | } |
234 | 249 | ||
235 | void OTSniffing::SLOT_ClearLog( void ) { | 250 | void OTSniffing::SLOT_ClearLog( void ) { |
236 | Output_LB->clear(); | 251 | // Output_LB->clear(); |
252 | Output_TV->setText( "" ); | ||
237 | } | 253 | } |
238 | 254 | ||
239 | // | 255 | // |
240 | // | 256 | // |
241 | // | 257 | // |
242 | // | 258 | // |
243 | // | 259 | // |
244 | 260 | ||
diff --git a/noncore/settings/networksettings2/opietooth2/Opietooth.h b/noncore/settings/networksettings2/opietooth2/Opietooth.h index 2b20975..e66787f 100644 --- a/noncore/settings/networksettings2/opietooth2/Opietooth.h +++ b/noncore/settings/networksettings2/opietooth2/Opietooth.h | |||
@@ -1,15 +1,14 @@ | |||
1 | #ifndef OPIETOOTH_H | 1 | #ifndef OPIETOOTH_H |
2 | #define OPIETOOTH_H | 2 | #define OPIETOOTH_H |
3 | 3 | ||
4 | #include <OTIcons.h> | 4 | #include <OTIcons.h> |
5 | 5 | ||
6 | class MyProcess; | 6 | class MyProcess; |
7 | class System; | ||
8 | 7 | ||
9 | namespace Opie { | 8 | namespace Opie { |
10 | 9 | ||
11 | namespace Ui { | 10 | namespace Ui { |
12 | 11 | ||
13 | class OLedBox; | 12 | class OLedBox; |
14 | 13 | ||
15 | }; | 14 | }; |
@@ -46,17 +45,16 @@ private slots : | |||
46 | signals : | 45 | signals : |
47 | 46 | ||
48 | protected : | 47 | protected : |
49 | 48 | ||
50 | private : | 49 | private : |
51 | 50 | ||
52 | OTGateway * OT; | 51 | OTGateway * OT; |
53 | MyProcess * HciDump; | 52 | MyProcess * HciDump; |
54 | System * Sys; | ||
55 | }; | 53 | }; |
56 | }; | 54 | }; |
57 | 55 | ||
58 | #include <OTPairingGUI.h> | 56 | #include <OTPairingGUI.h> |
59 | 57 | ||
60 | namespace Opietooth2 { | 58 | namespace Opietooth2 { |
61 | class OTPairing : public OTPairingGUI { | 59 | class OTPairing : public OTPairingGUI { |
62 | 60 | ||