[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: Can not connect to a KNetwork::KServerSocket
From: Erik <sigra () home ! se>
Date: 2006-09-26 22:30:01
Message-ID: 4519A9E9.2040807 () home ! se
[Download RAW message or body]
I have KDE 3.5.4 and try to use KNetwork::KServerSocket, but it seems
like I can not connect to it. I try "telnet localhost 5678" (correct???)
but nothing happens. I created the application from a template in
KDevelop and called it sockettest. Here are the files that I modified:
["sockettest.cpp" (text/x-c++src)]
#include "sockettest.h"
#include <qlabel.h>
#include <kbufferedsocket.h>
#include <kmainwindow.h>
#include <klocale.h>
sockettest::sockettest() :
KDockMainWindow(0, "sockettest"),
text_view(QString::null, QString::null, 0),
client(0)
{
text_view.setReadOnly(true);
KDockWidget & textViewDockWidget =
*createDockWidget(QString(), QPixmap(), 0, QString(), QString());
textViewDockWidget.setWidget(&text_view);
setView(&textViewDockWidget);
setMainDockWidget(&textViewDockWidget);
listenForConnection();
}
void sockettest::listenForConnection() {
QColor text_view_message_color = QColor(255, 0, 0);
for (unsigned int i = 5678; i <= 5679; ++i) {
server.setFamily(KNetwork::KResolver::InetFamily);
server.setAddress(QString::number(i));
QString text_view_message;
if (server.listen() and server.error() == KNetwork::KSocketBase::NoError) {
i = 6000; // Do not run the loop another time.
connect
(&server, SIGNAL(readyAccept()),
this, SLOT (acceptConnection()));
text_view_message_color = QColor(0, 0, 0);
text_view_message =
i18n("Listening for connection on address %1.")
.arg(server.localAddress().toString());
} else {
text_view_message =
i18n("Listening for connection on port %1 failed: %2.")
.arg(i).arg(server.errorString());
server.close();
}
text_view.setColor(text_view_message_color);
text_view.append(text_view_message);
}
}
void sockettest::acceptConnection() {
text_view.setColor(QColor(0, 0, 0));
if (client) {
text_view.append
(i18n("Connection attempted but there is already a connection."));
}
else {
client = dynamic_cast<KNetwork::KBufferedSocket *>(server.accept());
if (client) {
text_view.append(i18n("Connection accepted."));
}
else text_view.append(i18n("Connection failed."));
}
}
#include "sockettest.moc"
["sockettest.h" (text/x-chdr)]
#ifndef _SOCKETTEST_H_
#define _SOCKETTEST_H_
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <kdockwidget.h>
#include <kserversocket.h>
#include <qtextedit.h>
namespace KNetwork {struct KBufferedSocket;};
class sockettest : public KDockMainWindow {
Q_OBJECT;
QTextEdit text_view;
KNetwork::KServerSocket server;
KNetwork::KBufferedSocket * client;
public:
sockettest();
private slots:
void listenForConnection();
void acceptConnection ();
};
#endif // _SOCKETTEST_H_
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic