-rw-r--r-- | libopie2/opienet/onetwork.cpp | 11 | ||||
-rw-r--r-- | libopie2/opienet/onetwork.h | 4 |
2 files changed, 15 insertions, 0 deletions
diff --git a/libopie2/opienet/onetwork.cpp b/libopie2/opienet/onetwork.cpp index 915814d..e5b091f 100644 --- a/libopie2/opienet/onetwork.cpp +++ b/libopie2/opienet/onetwork.cpp | |||
@@ -144,6 +144,17 @@ ONetwork::InterfaceIterator ONetwork::iterator() const | |||
144 | } | 144 | } |
145 | 145 | ||
146 | 146 | ||
147 | bool ONetwork::isPresent( const char* name ) const | ||
148 | { | ||
149 | int sfd = socket( AF_INET, SOCK_STREAM, 0 ); | ||
150 | struct ifreq ifr; | ||
151 | memset( &ifr, 0, sizeof( struct ifreq ) ); | ||
152 | strcpy( (char*) &ifr.ifr_name, name ); | ||
153 | int result = ::ioctl( sfd, SIOCGIFFLAGS, &ifr ); | ||
154 | return result != -1; | ||
155 | } | ||
156 | |||
157 | |||
147 | bool ONetwork::isWirelessInterface( const char* name ) const | 158 | bool ONetwork::isWirelessInterface( const char* name ) const |
148 | { | 159 | { |
149 | int sfd = socket( AF_INET, SOCK_STREAM, 0 ); | 160 | int sfd = socket( AF_INET, SOCK_STREAM, 0 ); |
diff --git a/libopie2/opienet/onetwork.h b/libopie2/opienet/onetwork.h index 0a51108..93b129f 100644 --- a/libopie2/opienet/onetwork.h +++ b/libopie2/opienet/onetwork.h | |||
@@ -94,6 +94,10 @@ class ONetwork : public QObject | |||
94 | */ | 94 | */ |
95 | InterfaceIterator iterator() const; | 95 | InterfaceIterator iterator() const; |
96 | /** | 96 | /** |
97 | * @returns true, if the @a interface is present. | ||
98 | */ | ||
99 | bool isPresent( const char* interface ) const; | ||
100 | /** | ||
97 | * @returns true, if the @a interface supports the wireless extension protocol. | 101 | * @returns true, if the @a interface supports the wireless extension protocol. |
98 | */ | 102 | */ |
99 | bool isWirelessInterface( const char* interface ) const; | 103 | bool isWirelessInterface( const char* interface ) const; |