2
* servsock.cpp - simple wrapper to QServerSocket
3
* Copyright (C) 2003 Justin Karneges
5
* This library is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; either
8
* version 2.1 of the License, or (at your option) any later version.
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25
//----------------------------------------------------------------------------
27
//----------------------------------------------------------------------------
28
class ServSock::Private
36
ServSock::ServSock(QObject *parent)
49
bool ServSock::isActive() const
51
return (d->serv ? true: false);
54
bool ServSock::listen(quint16 port)
58
d->serv = new ServSockSignal(this);
59
if(!d->serv->listen(QHostAddress::Any, port)) {
64
connect(d->serv, SIGNAL(connectionReady(int)), SLOT(sss_connectionReady(int)));
75
int ServSock::port() const
78
return d->serv->serverPort();
83
QHostAddress ServSock::address() const
86
return d->serv->serverAddress();
88
return QHostAddress();
91
void ServSock::sss_connectionReady(int s)
97
//----------------------------------------------------------------------------
99
//----------------------------------------------------------------------------
100
ServSockSignal::ServSockSignal(QObject *parent)
103
setMaxPendingConnections(16);
106
void ServSockSignal::incomingConnection(int socketDescriptor)
108
connectionReady(socketDescriptor);