setSocketDescriptor(0) не работает в Windows
Хочу TCP сервер, к которому можно обратиться снаружи по сокету с номером 0. Следующий код работает в Линуксе, а в виндовсе не желает:
MyServer::MyServer(MyResponceHandlerBase* h, QObject* parent)
: QTcpServer(parent), responceHandler(h) {
if( !this->setSocketDescriptor(0) ) {
qDebug() << "setSocketDescriptor fails with error " << this->serverError();
}
}
this->serverError() возвращает ошибку QAbstractSocket::UnsupportedSocketOperationError (10) - The requested socket operation is not supported by the local operating system (e.g., lack of IPv6 support).
Думаю, что IPv6 тут не причём, а вот как обмануть виндовс - не понятно.