Diffstat (limited to 'noncore/settings/networksettings2/cable/cablerun.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/settings/networksettings2/cable/cablerun.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/noncore/settings/networksettings2/cable/cablerun.cpp b/noncore/settings/networksettings2/cable/cablerun.cpp new file mode 100644 index 0000000..edb4b01 --- a/dev/null +++ b/noncore/settings/networksettings2/cable/cablerun.cpp @@ -0,0 +1,26 @@ +#include <fcntl.h> +#include <unistd.h> +#include "cablerun.h" + +void CableRun::detectState( NodeCollection * NC ) { + + int fd = open( D->Device.latin1(), O_RDWR ); + + if( fd < 0 ) { + NC->setCurrentState( Unavailable ); + } + close( fd ); + NC->setCurrentState( Available ); +} + +bool CableRun::setState( NodeCollection * NC, Action_t A ) { + if( A == Activate ) { + detectState(NC); + return (NC->currentState() == Available); + } + return 1; +} + +bool CableRun::canSetState( State_t , Action_t ) { + return 1; +} |