128 QList<QString> possibleHardwareAdresses;
131 QList<QNetworkInterface> ifaces = QNetworkInterface::allInterfaces();
135 if ( !ifaces.isEmpty() ) {
136 for(
int i = 0; i < ifaces.size(); ++i) {
137 unsigned int flags = ifaces[i].flags();
138 bool isLoopback = (bool)(flags & QNetworkInterface::IsLoopBack);
139 bool isP2P = (bool)(flags & QNetworkInterface::IsPointToPoint);
140 bool isRunning = (bool)(flags & QNetworkInterface::IsRunning);
142 if ( !isRunning )
continue;
144 if ( !ifaces[i].isValid() || isLoopback || isP2P )
continue;
145 possibleHardwareAdresses << ifaces[i].hardwareAddress();
147 if (possibleHardwareAdresses.size() > 0) {
149 QStringList hexPresentation = possibleHardwareAdresses[0].split(
":");
150 if(hexPresentation.size() == 6) {
151 fixed_id[0] = QString(hexPresentation[0] + hexPresentation[1] + hexPresentation[2]).toInt(NULL,16);
152 fixed_id[1] = QString(hexPresentation[3] + hexPresentation[4] + hexPresentation[5]).toInt(NULL,16);