summaryrefslogtreecommitdiff
path: root/noncore/settings/networksettings2/lancard
Unidiff
Diffstat (limited to 'noncore/settings/networksettings2/lancard') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NN.cpp29
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NN.h11
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NNI.cpp15
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NNI.h6
-rw-r--r--noncore/settings/networksettings2/lancard/lancardrun.h5
5 files changed, 32 insertions, 34 deletions
diff --git a/noncore/settings/networksettings2/lancard/lancard_NN.cpp b/noncore/settings/networksettings2/lancard/lancard_NN.cpp
index 7d36918..480ddf9 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NN.cpp
+++ b/noncore/settings/networksettings2/lancard/lancard_NN.cpp
@@ -21,47 +21,52 @@ const QString LanCardNetNode::nodeDescription(){
21<p>Sets up a wired regular LAN card.</p>\ 21<p>Sets up a wired regular LAN card.</p>\
22<p>Use this to set up 10/100/1000 MBit LAN cards.</p>\ 22<p>Use this to set up 10/100/1000 MBit LAN cards.</p>\
23" 23"
24); 24);
25} 25}
26 26
27ANetNodeInstance * LanCardNetNode::createInstance( void ) { 27ANetNodeInstance * LanCardNetNode::createInstance( void ) {
28 return new ALanCard( this ); 28 return new ALanCard( this );
29} 29}
30 30
31 31
32const char ** LanCardNetNode::needs( void ) { 32const char ** LanCardNetNode::needs( void ) {
33 return LanCardNeeds; 33 return LanCardNeeds;
34} 34}
35 35
36const char * LanCardNetNode::provides( void ) { 36const char * LanCardNetNode::provides( void ) {
37 return "device"; 37 return "device";
38} 38}
39 39
40bool LanCardNetNode::generateProperFilesFor( 40bool LanCardNetNode::generateProperFilesFor(
41 ANetNodeInstance * ) { 41 ANetNodeInstance * ) {
42 return 1; 42 return 1;
43} 43}
44 44
45bool LanCardNetNode::hasDataFor( const QString & S, bool DS ) { 45bool LanCardNetNode::hasDataFor( const QString & S ) {
46 return DS && S == "interfaces"; 46 return S == "interfaces";
47}
48
49bool LanCardNetNode::generateDataForCommonFile(
50 SystemFile & ,
51 long ,
52 ANetNodeInstance * ) {
53 return 1;
54} 47}
55 48
56bool LanCardNetNode::generateDeviceDataForCommonFile( 49bool LanCardNetNode::generateDeviceDataForCommonFile(
57 SystemFile & S , 50 SystemFile & S ,
58 long DevNr , 51 long DevNr ) {
59 ANetNodeInstance * NNI ) { 52 QString NIC = genNic( DevNr );
60 return ((ALanCard *)NNI)->generateDeviceDataForCommonFile(S, DevNr); 53
54 if( S.name() == "interfaces" ) {
55 // generate mapping stanza for this interface
56 S << "# check if " << NIC << " can be brought UP" << endl;
57 S << "mapping " << NIC << endl;
58 S << " script networksettings2-request" << endl << endl;
59 }
60 return 0;
61}
62
63QString LanCardNetNode::genNic( long nr ) {
64 QString S;
65 return S.sprintf( "eth%ld", nr );
61} 66}
62 67
63extern "C" { 68extern "C" {
64void create_plugin( QList<ANetNode> & PNN ) { 69void create_plugin( QList<ANetNode> & PNN ) {
65 PNN.append( new LanCardNetNode() ); 70 PNN.append( new LanCardNetNode() );
66} 71}
67} 72}
diff --git a/noncore/settings/networksettings2/lancard/lancard_NN.h b/noncore/settings/networksettings2/lancard/lancard_NN.h
index 9690c76..dcdd0da 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NN.h
+++ b/noncore/settings/networksettings2/lancard/lancard_NN.h
@@ -7,40 +7,43 @@ class ALanCard;
7 7
8class LanCardNetNode : public ANetNode{ 8class LanCardNetNode : public ANetNode{
9 9
10 Q_OBJECT 10 Q_OBJECT
11 11
12public: 12public:
13 13
14 LanCardNetNode(); 14 LanCardNetNode();
15 virtual ~LanCardNetNode(); 15 virtual ~LanCardNetNode();
16 16
17 virtual const QString pixmapName() 17 virtual const QString pixmapName()
18 { return "Devices/card"; } 18 { return "Devices/card"; }
19 19
20 virtual const QString nodeName() 20 virtual const QString nodeName()
21 { return tr("LAN card"); } 21 { return tr("LAN card"); }
22 22
23 virtual const QString nodeDescription() ; 23 virtual const QString nodeDescription() ;
24 24
25 virtual ANetNodeInstance * createInstance( void ); 25 virtual ANetNodeInstance * createInstance( void );
26 26
27 virtual const char ** needs( void ); 27 virtual const char ** needs( void );
28 virtual const char * provides( void ); 28 virtual const char * provides( void );
29 29
30 virtual bool generateProperFilesFor( ANetNodeInstance * NNI ); 30 virtual bool generateProperFilesFor( ANetNodeInstance * NNI );
31 virtual bool hasDataFor( const QString & S, bool DS ); 31 virtual bool hasDataFor( const QString & S );
32 virtual bool generateDataForCommonFile(
33 SystemFile & SF, long DevNr, ANetNodeInstance * NNI );
34 virtual bool generateDeviceDataForCommonFile( 32 virtual bool generateDeviceDataForCommonFile(
35 SystemFile & SF, long DevNr, ANetNodeInstance * NNI ); 33 SystemFile & SF, long DevNr );
34
35 virtual long instanceCount( void )
36 { return 2; }
37
38 virtual QString genNic( long );
36 39
37private: 40private:
38 41
39}; 42};
40 43
41extern "C" 44extern "C"
42{ 45{
43 void create_plugin( QList<ANetNode> & PNN ); 46 void create_plugin( QList<ANetNode> & PNN );
44}; 47};
45 48
46#endif 49#endif
diff --git a/noncore/settings/networksettings2/lancard/lancard_NNI.cpp b/noncore/settings/networksettings2/lancard/lancard_NNI.cpp
index a6401db..5962d52 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NNI.cpp
+++ b/noncore/settings/networksettings2/lancard/lancard_NNI.cpp
@@ -22,37 +22,30 @@ void ALanCard::setSpecificAttribute( QString & A, QString & V ) {
22void ALanCard::saveSpecificAttribute( QTextStream & TS) { 22void ALanCard::saveSpecificAttribute( QTextStream & TS) {
23 TS << "matchanycard=" << 23 TS << "matchanycard=" <<
24 ((Data.AnyLanCard) ? "yes" : "no") << endl; 24 ((Data.AnyLanCard) ? "yes" : "no") << endl;
25 for( QStringList::Iterator it = Data.HWAddresses.begin(); 25 for( QStringList::Iterator it = Data.HWAddresses.begin();
26 it != Data.HWAddresses.end(); ++it ) { 26 it != Data.HWAddresses.end(); ++it ) {
27 TS << "match=" << quote( *it ) << endl; 27 TS << "match=" << quote( *it ) << endl;
28 } 28 }
29} 29}
30 30
31QWidget * ALanCard::edit( QWidget * parent ) { 31QWidget * ALanCard::edit( QWidget * parent ) {
32 GUI = new LanCardEdit( parent ); 32 GUI = new LanCardEdit( parent );
33 GUI->showData( Data ); 33 GUI->showData( Data );
34 return GUI; 34 return GUI;
35} 35}
36 36
37QString ALanCard::acceptable( void ) { 37QString ALanCard::acceptable( void ) {
38 return ( GUI ) ? GUI->acceptable( ) : QString(); 38 return ( GUI ) ? GUI->acceptable( ) : QString();
39} 39}
40 40
41void ALanCard::commit( void ) { 41void ALanCard::commit( void ) {
42 if( GUI && GUI->commit( Data ) ) 42 if( GUI && GUI->commit( Data ) )
43 setModified( 1 ); 43 setModified( 1 );
44} 44}
45 45
46bool ALanCard::generateDeviceDataForCommonFile( SystemFile & S, long DevNr ) { 46bool ALanCard::generateDataForCommonFile(
47 AsDevice * Dev = runtime()->device(); 47 SystemFile & ,
48 QString NIC = Dev->genNic( DevNr ); 48 long ) {
49 49 return 1;
50 if( S.name() == "interfaces" ) {
51 // generate mapping stanza for this interface
52 S << "# check if " << NIC << " can be brought UP" << endl;
53 S << "mapping " << NIC << endl;
54 S << " script networksettings2-request" << endl << endl;
55 }
56 return 0;
57} 50}
58 51
diff --git a/noncore/settings/networksettings2/lancard/lancard_NNI.h b/noncore/settings/networksettings2/lancard/lancard_NNI.h
index 16f5f56..4e91523 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NNI.h
+++ b/noncore/settings/networksettings2/lancard/lancard_NNI.h
@@ -6,40 +6,42 @@
6#include "lancardrun.h" 6#include "lancardrun.h"
7 7
8class LanCardNetNode; 8class LanCardNetNode;
9class LanCardEdit; 9class LanCardEdit;
10 10
11class ALanCard : public ANetNodeInstance { 11class ALanCard : public ANetNodeInstance {
12 12
13public : 13public :
14 14
15 ALanCard( LanCardNetNode * PNN ); 15 ALanCard( LanCardNetNode * PNN );
16 16
17 QWidget * edit( QWidget * parent ); 17 QWidget * edit( QWidget * parent );
18 QString acceptable( void ); 18 QString acceptable( void );
19 void commit( void ); 19 void commit( void );
20 20
21 RuntimeInfo * runtime( void ) 21 RuntimeInfo * runtime( void )
22 { if( RT == 0 ) 22 { if( RT == 0 )
23 RT = new LanCardRun( this, Data ); 23 RT = new LanCardRun( this, Data );
24 return RT; 24 return RT;
25 } 25 }
26 26
27 virtual void * data( void ) 27 virtual void * data( void )
28 { return (void *)&Data; } 28 { return (void *)&Data; }
29 29
30 bool generateDeviceDataForCommonFile( SystemFile & S, long DevNr ); 30 virtual bool hasDataFor( const QString & )
31 31 { return 0; }
32 virtual bool generateDataForCommonFile(
33 SystemFile & S, long DevNr );
32protected : 34protected :
33 35
34 virtual void setSpecificAttribute( QString & Attr, QString & Value ); 36 virtual void setSpecificAttribute( QString & Attr, QString & Value );
35 virtual void saveSpecificAttribute( QTextStream & TS ); 37 virtual void saveSpecificAttribute( QTextStream & TS );
36 38
37private : 39private :
38 40
39 LanCardEdit * GUI; 41 LanCardEdit * GUI;
40 LanCardData Data; 42 LanCardData Data;
41 LanCardRun * RT; 43 LanCardRun * RT;
42 44
43}; 45};
44 46
45#endif 47#endif
diff --git a/noncore/settings/networksettings2/lancard/lancardrun.h b/noncore/settings/networksettings2/lancard/lancardrun.h
index 8dbd1b1..499b417 100644
--- a/noncore/settings/networksettings2/lancard/lancardrun.h
+++ b/noncore/settings/networksettings2/lancard/lancardrun.h
@@ -1,42 +1,37 @@
1#ifndef LANCARDRUN_H 1#ifndef LANCARDRUN_H
2#define LANCARDRUN_H 2#define LANCARDRUN_H
3 3
4#include <asdevice.h> 4#include <asdevice.h>
5#include <qregexp.h> 5#include <qregexp.h>
6#include "lancarddata.h" 6#include "lancarddata.h"
7 7
8class LanCardRun : public AsDevice { 8class LanCardRun : public AsDevice {
9 9
10public : 10public :
11 11
12 LanCardRun( ANetNodeInstance * NNI, 12 LanCardRun( ANetNodeInstance * NNI,
13 LanCardData & Data ) : AsDevice( NNI ), 13 LanCardData & Data ) : AsDevice( NNI ),
14 Pat( "eth[0-9]" ) 14 Pat( "eth[0-9]" )
15 { } 15 { }
16 16
17 virtual long count( void )
18 { return 2; }
19 virtual QString genNic( long nr )
20 { QString S; return S.sprintf( "eth%ld", nr ); }
21
22 virtual AsDevice * device( void ) 17 virtual AsDevice * device( void )
23 { return (AsDevice *)this; } 18 { return (AsDevice *)this; }
24 19
25 virtual AsDevice * asDevice( void ) 20 virtual AsDevice * asDevice( void )
26 { return (AsDevice *)this; } 21 { return (AsDevice *)this; }
27 22
28protected : 23protected :
29 24
30 void detectState( NodeCollection * NC ); 25 void detectState( NodeCollection * NC );
31 bool setState( NodeCollection * NC, Action_t A ); 26 bool setState( NodeCollection * NC, Action_t A );
32 bool canSetState( State_t Curr, Action_t A ); 27 bool canSetState( State_t Curr, Action_t A );
33 28
34 bool handlesInterface( const QString & I ); 29 bool handlesInterface( const QString & I );
35 30
36private : 31private :
37 32
38 InterfaceInfo * getInterface( void ); 33 InterfaceInfo * getInterface( void );
39 QRegExp Pat; 34 QRegExp Pat;
40 35
41}; 36};
42#endif 37#endif