
KNet (formerly kdsl)
Source (link to git-repo or to original if based on someone elses unmodified work):
PPPoA Support might work, but is untested. If you can become a tester, please Email us!
** THIS IS A BETA RELEASE **
Please report any bugs or problems.
For Suse Users
compile with ./configure --prefix=/opt/kde3
For Redhat / Fedora users
compile with ./configure --prefix=/usr
version 0.6 - for KDE-3.4
- Renamed to KNet
- New User Interface
- new Modem Configuration tools complete with modem scanning.
- New script editor that can be used for internet connections not directly supported by Knet (e.g. PPTP connections)
- Knet no longer creates special configuration files. Everything is done internally.
- Log window now works for Dialup Connections.
version 0.5 (Has been tested on KDE 3.1, 3.2 and 3.3)
- Fixed compilation issues with GCC-3.4, and other compilation issues on some distros.
- Added a real-time Statistics Page (see screenshot above)
- Fixed Notification window to always popup around the system tray icon
- Dock Icon is always shown, and Connection and Disconnections can take place from the dock icon.
- Worked on some KDE compliancy in the Dialog Boxes
- Added a Scheduler to automatically Start and stop your internet connection at any set time.
now on Sourceforge!
kdslbroadband.sourceforge.net
Ratings & Comments
64 Comments
This looks very promising indeed, I hope it matures and becomes a "single-window" for doing any ISP/internet connection setup on KDE/Linux! I have a couple of questions: 1) Can I have a system level knetrc for ALL the users on a particular machine? 2) How do we use the script inteface, if you could post a sample config script that has been used before, I can have a look and build more based on it. Cheers,
hi there, sorry for the slow reply. Firstly, at the moment, you cannot set up a general knetrc file system wide. Secondly, the script editor is used to pass pppd scripts to pppd to establish a connection. The best way to learn how to connect using pppd from the commandline is to read its manpage. Perhaps down the line I will show some examples for it. Just haven't had much time to work on it the last 12 months. Thankyou for the feedback
Works great on CentOS 4.2. Thank you very much. I live in India where BSNL is one of the leading DSL service provider. KNet just works. Why not have it in KDE main itself...
Hello, and thankyou. Glad to hear it is working well for you. The reason I have not tried get this program included in KDE is because I simply don't have the time anymore to put a lot of effort into the program. I will port the program to KDE4 when an Alpha Release is made available, but because of my constant travelling commitments for work, I just can't be relied upon to meet KDE's release cycles. Also, there's a lot that still needs to be done to make it work on all systems (i.e It doesnt work for everyone smoothly), so really it's not ready to be included into the KDE tree.
I am a Slackware user. After upgrading to Slack 10.2 (kde 3.4.2 - ppp-2.4.4b1 - rp-pppoe-3.6 - tcpip-0.17) Kdsl stops working. Looking for a newer version I discovered KNet. I compiled and installed it but when i click on DLS button (after entering Setup form) the application crashes. Any other button seems to work correctly. This in the backtrace: (no debugging symbols found) Using host libthread_db library "/lib/tls/libthread_db.so.1". (no debugging symbols found) ... (no debugging symbols found) [Thread debugging using libthread_db enabled] [New Thread -1244350752 (LWP 12467)] (no debugging symbols found) ... (no debugging symbols found) [KCrash handler] #3 0xb6f821e2 in QGListIterator::QGListIterator () from /usr/lib/qt/lib/libqt-mt.so.3 #4 0x0806fd42 in QValueListPrivate::insert () #5 0x080ae550 in QMultiLineEdit::setAutoUpdate () #6 0xb6cc7166 in QObject::activate_signal () from /usr/lib/qt/lib/libqt-mt.so.3 #7 0xb6cc7014 in QObject::activate_signal () from /usr/lib/qt/lib/libqt-mt.so.3 #8 0xb6ff12fe in QButton::clicked () from /usr/lib/qt/lib/libqt-mt.so.3 #9 0xb6d59a24 in QButton::mouseReleaseEvent () from /usr/lib/qt/lib/libqt-mt.so.3 #10 0xb6cfd5f7 in QWidget::event () from /usr/lib/qt/lib/libqt-mt.so.3 #11 0xb6c6a95f in QApplication::internalNotify () from /usr/lib/qt/lib/libqt-mt.so.3 #12 0xb6c6a054 in QApplication::notify () from /usr/lib/qt/lib/libqt-mt.so.3 #13 0xb7299585 in KApplication::notify () from /opt/kde/lib/libkdecore.so.4 #14 0xb6c00290 in QETWidget::translateMouseEvent () from /usr/lib/qt/lib/libqt-mt.so.3 #15 0xb6bfdf1e in QApplication::x11ProcessEvent () from /usr/lib/qt/lib/libqt-mt.so.3 #16 0xb6c14e54 in QEventLoop::processEvents () from /usr/lib/qt/lib/libqt-mt.so.3 #17 0xb6c7cd18 in QEventLoop::enterLoop () from /usr/lib/qt/lib/libqt-mt.so.3 #18 0xb6c6ac11 in QApplication::enter_loop () from /usr/lib/qt/lib/libqt-mt.so.3 #19 0xb6e51c40 in QDialog::exec () from /usr/lib/qt/lib/libqt-mt.so.3 #20 0x08064452 in endl () #21 0x080663c4 in endl () #22 0xb6cc71ec in QObject::activate_signal () from /usr/lib/qt/lib/libqt-mt.so.3 #23 0xb6cc7014 in QObject::activate_signal () from /usr/lib/qt/lib/libqt-mt.so.3 #24 0xb6ff12fe in QButton::clicked () from /usr/lib/qt/lib/libqt-mt.so.3 #25 0xb6d59a24 in QButton::mouseReleaseEvent () from /usr/lib/qt/lib/libqt-mt.so.3 #26 0xb6cfd5f7 in QWidget::event () from /usr/lib/qt/lib/libqt-mt.so.3 #27 0xb6c6a95f in QApplication::internalNotify () from /usr/lib/qt/lib/libqt-mt.so.3 #28 0xb6c6a054 in QApplication::notify () from /usr/lib/qt/lib/libqt-mt.so.3 #29 0xb7299585 in KApplication::notify () from /opt/kde/lib/libkdecore.so.4 #30 0xb6c00290 in QETWidget::translateMouseEvent () from /usr/lib/qt/lib/libqt-mt.so.3 #31 0xb6bfdf1e in QApplication::x11ProcessEvent () from /usr/lib/qt/lib/libqt-mt.so.3 #32 0xb6c14e54 in QEventLoop::processEvents () from /usr/lib/qt/lib/libqt-mt.so.3 #33 0xb6c7cd18 in QEventLoop::enterLoop () from /usr/lib/qt/lib/libqt-mt.so.3 #34 0xb6c7cbc8 in QEventLoop::exec () from /usr/lib/qt/lib/libqt-mt.so.3 #35 0xb6c6abb1 in QApplication::exec () from /usr/lib/qt/lib/libqt-mt.so.3 #36 0x0805abf6 in ?? () #37 0xbfcf0de0 in ?? () #38 0x00000001 in ?? () #39 0x00000000 in ?? () #40 0x00000000 in ?? () #41 0x00000001 in ?? () #42 0x00000001 in ?? () #43 0x080aecbd in _IO_stdin_used () #44 0x00000000 in ?? () #45 0x00000000 in ?? () #46 0x080aeca5 in _IO_stdin_used () #47 0xb6555c74 in _int_free () from /lib/tls/libc.so.6 #48 0xb6507fcb in __libc_start_main () from /lib/tls/libc.so.6 #49 0x0805a251 in ?? () So now I cannot connect using a GUI (i need a GUI because other users of the workstation are not able to connect using command line). Regards
Sorry! KNet (and Kdsl too) doesn't work with ppp-2.4.4b1. Rolling back to ppp-2.4.3 everything works fine! Bye
News: if you want to use ppp-2.4.4b1 just make a symlink in /usr/lib/pppd called 2.4.4 pointing the directory 2.4.4b1 Bye L. B.
I can't connect with my DSL (pppoe) link as a normal user. But when I login as root, I can connect. What configurations do I have to make in order to make normal user connect? I downloaded a debian package and installed it. Anything wrong with the package itself? the following is the error messages: ------------------------------------- Qt: Locales not supported on X server knet: helperPid: 3512 knet: sendRequest: trying to send msg type 6 knet: sendRequest: sent message knet: recvResponse(): waiting for message Opener: received SetSecret knet: recvResponse(): received message knet: response.status: 0 knet: sendRequest: trying to send msg type 6 knet: sendRequest: sent message knet: recvResponse(): waiting for message Opener: received SetSecret knet: recvResponse(): received message knet: response.status: 0 knet: started if timeout timer with 30000 knet: pppd plugin /usr/lib/pppd/2.4.3/rp-pppoe.so eth0 defaultroute noauth usepeerdns hide-password maxfail 0 mru 1492 mtu 1492 lcp-echo-failure 0 lcp-echo-interval 0 -detach user "lh23602@xmlan" knet: sendRequest: trying to send msg type 9 knet: sendRequest: sent message knet: recvResponse(): waiting for message Opener: received ExecPPPDaemon Kernel supports ppp alright. pppd: using the plugin option requires root privilege received unexpected SIGCHLD. In parent: pppd pid 3515 knet: recvResponse(): received message knet: response.status: 1 knet: execppp() returned with return-code 1 Couldn't find interface ppp0: No such device ---------------------------------
it looks like that the debian package does not give the correct permissions to the knet files to make it work. Make sure the Knet binary is SETUID. You can do this from the command line in the directory where knet is installed: chmod +4755 knet I hope this helps.
I have compiled knet from the sources and use kubuntu. I did the chmod -rwsrws--x 1 root root 597693 2005-09-25 23:41 knet I can launch Knet but when connecting, there is this error: "Couldn't find interface ppp0:...."
Hi, first off, thanks for this great app. I compiled it and installed it on kubuntu without an issue. However, I'm having one problem. I normally am connected via a router and so setup my eth0 to use the default route 192.168.0.1 Now, if I use knet, I can connect without a problem, however, the default route stays the same, so that I can't really use my dsl-connection until I run "route add default dev ppp0" as root. This of course somehow defeats the purpose of knet, as I want to use it in the first place to get away from having to use the command line when connecting to dsl. Any ideas how this issue could be resolved?
Currently, router support is in its early stages in KNet because I do not have a router to test it with. However, if you're able to work with me a little to add the support you need, I will certainly do so. Please let me know.. I am working hard to get another release out soon, and it would be good to include this in the next release.
same problem, but I do not use a router. See my rote before connecting: 192.168.2.0 * 255.255.255.0 U 0 0 0 eth0 default . 0.0.0.0 UG 0 0 0 eth0 (192.168.2.1 is a dsl-router which is not in use=acts as a switch only) route after I am connected with Knet: 217.0.116.49 * 255.255.255.255 UH 0 0 0 ppp0 192.168.2.0 * 255.255.255.0 U 0 0 0 eth0 default 192.168.2.1 0.0.0.0 UG 0 0 0 eth0 Default route is 192.168.2.1 but should be 217.0.116.49 (my ISP) Any idea?
I tried Knet first the unstable package for debian, then self-compiled. however, clicking on the DSL button makes a SIGSEGV in the program. My provider provides me with a scriptpackage, which dials in itself. Maybe you could add support to that (Name it "External", similar to "script", but executing bash-commands, having an icon and so on). The good thing is, Knet finds my internet connection if it is already started up. I could use "Script", but "DSL" crashes the program. so I use the dialin scripts from my provider (which are quite okay), and I can start up knet afterwards having it "Monitoring" the active connection (which I always have to click :D) Please add the "External" ability, to execute bash-scripts for "connection" and "disconnect" manually, if possible. I dream about the day, where Linux users can set up their pptp/pppoe/pppd/pppoa connections like windows user do, with 3 clicks. knet is on the way to that, dont give up.
Hi, Firstly, thank-you for your feedback and encouragement. At the moment, I haven't got anyone willing to test the program to give me feedback of success or failures, and its hard for me to implement different connections when all I have is a basic ADSL connection to test with. If you, or anyone is interested in helping make DSL support the features (and protocols) you want, I am more than happy to work with you to get the result that can benefit a lot of people. But unless I get some help (does not have to be a programmer) not much will change. Testers is really all I need.
hi...i'm in trouble. it's not compiling... /usr/lib/kde3/include/keditlistbox.h:61: error: declaration does not declare anything /usr/lib/kde3/include/keditlistbox.h:61: error: parse error before `)' token /usr/lib/kde3/include/keditlistbox.h:63: error: missing ';' before right brace /usr/lib/kde3/include/keditlistbox.h: In member function ` KEditListBox::CustomEditor KEditListBox::CustomEditor(QWidget*, KLineEdit*) ': /usr/lib/kde3/include/keditlistbox.h:65: error: only constructors take base initializers /usr/lib/kde3/include/keditlistbox.h: At global scope: /usr/lib/kde3/include/keditlistbox.h:88: error: parse error before `public' /usr/lib/kde3/include/keditlistbox.h:95: error: `Add' was not declared in this scope /usr/lib/kde3/include/keditlistbox.h:95: error: `Remove' was not declared in this scope /usr/lib/kde3/include/keditlistbox.h:95: error: `UpDown' was not declared in this scope /usr/lib/kde3/include/keditlistbox.h:95: error: enumerator value for `All' not integer constant /usr/lib/kde3/include/keditlistbox.h:109: error: parse error before `*' token /usr/lib/kde3/include/keditlistbox.h:117: error: parse error before `const' /usr/lib/kde3/include/keditlistbox.h:133: error: parse error before `const' /usr/lib/kde3/include/keditlistbox.h:138: error: destructors must be member functions /usr/lib/kde3/include/keditlistbox.h:138: error: virtual outside class declaration /usr/lib/kde3/include/keditlistbox.h:143: error: non-member function `QListBox* listBox()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h: In function `QListBox* listBox()': /usr/lib/kde3/include/keditlistbox.h:143: error: `m_listBox' undeclared (first use this function) /usr/lib/kde3/include/keditlistbox.h:143: error: (Each undeclared identifier is reported only once for each function it appears in.) /usr/lib/kde3/include/keditlistbox.h: At global scope: /usr/lib/kde3/include/keditlistbox.h:147: error: non-member function ` KLineEdit* lineEdit()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h: In function `KLineEdit* lineEdit()': /usr/lib/kde3/include/keditlistbox.h:147: error: `m_lineEdit' undeclared (first use this function) /usr/lib/kde3/include/keditlistbox.h: At global scope: /usr/lib/kde3/include/keditlistbox.h:151: error: non-member function ` QPushButton* addButton()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h: In function `QPushButton* addButton()': /usr/lib/kde3/include/keditlistbox.h:151: error: `servNewButton' undeclared (first use this function) /usr/lib/kde3/include/keditlistbox.h: At global scope: /usr/lib/kde3/include/keditlistbox.h:155: error: non-member function ` QPushButton* removeButton()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h: In function `QPushButton* removeButton() ': /usr/lib/kde3/include/keditlistbox.h:155: error: `servRemoveButton' undeclared (first use this function) /usr/lib/kde3/include/keditlistbox.h: At global scope: /usr/lib/kde3/include/keditlistbox.h:159: error: non-member function ` QPushButton* upButton()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h: In function `QPushButton* upButton()': /usr/lib/kde3/include/keditlistbox.h:159: error: `servUpButton' undeclared (first use this function) /usr/lib/kde3/include/keditlistbox.h: At global scope: /usr/lib/kde3/include/keditlistbox.h:163: error: non-member function ` QPushButton* downButton()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h: In function `QPushButton* downButton()': /usr/lib/kde3/include/keditlistbox.h:163: error: `servDownButton' undeclared (first use this function) /usr/lib/kde3/include/keditlistbox.h: At global scope: /usr/lib/kde3/include/keditlistbox.h:168: error: non-member function `int count()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h:196: error: non-member function `QString text(int)' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h:200: error: non-member function `int currentItem()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h:204: error: non-member function `QString currentText()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h:209: error: non-member function ` QStringList items()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h:221: error: non-member function `int buttons()' cannot have `const' method qualifier /usr/lib/kde3/include/keditlistbox.h:228: error: parse error before `protected' /usr/lib/kde3/include/keditlistbox.h:245: error: parse error before `protected' /usr/lib/kde3/include/keditlistbox.h:254: error: parse error before `private' /usr/lib/kde3/include/keditlistbox.h:256: error: `QPushButton*servUpButton' used prior to declaration /usr/lib/kde3/include/keditlistbox.h:256: error: `QPushButton*servDownButton' used prior to declaration /usr/lib/kde3/include/keditlistbox.h:257: error: `QPushButton*servNewButton' used prior to declaration /usr/lib/kde3/include/keditlistbox.h:257: error: `QPushButton*servRemoveButton' used prior to declaration /usr/lib/kde3/include/keditlistbox.h:258: error: `KLineEdit*m_lineEdit' used prior to declaration /usr/lib/kde3/include/keditlistbox.h:264: error: parse error before `protected' In file included from networkdev.cpp:34: /usr/lib/kde3/include/kurlrequester.h:188: error: syntax error before `(' token make[3]: ** [networkdev.o] Erro 1 make[3]: Leaving directory `/home/gustavo/knet-0.6beta1/src' make[2]: ** [all-recursive] Erro 1 make[2]: Leaving directory `/home/gustavo/knet-0.6beta1/src' make[1]: ** [all-recursive] Erro 1 make[1]: Leaving directory `/home/gustavo/knet-0.6beta1' make: ** [all] Erro 2
I need to know more about your system. What distro are you using? What version of KDE you using (and even version of QT) and also what version of gcc you are using. Knet was written for KDE3.4, but has compiled and worked succesfully on a SUSE system using KDE3.3. I suspect that Knet will not compile on older versions of KDE because of a change in some of KDE's libraries.
hi, i'm using : Conectiva Linux 10 kde-3.4 qt-3.3.4 gcc-3.3.3
Thanks. Its an odd problem because its complaining about KDE's header files... two things to try... The first thing: go to the knet directory and type the following: make distclean autoconf automake ./configure --prefix=/usr make make install The second thing you could possibly try is upgrading gcc to gcc-3.4.1 Other than this, I really dont know why its failing on compilation.
Hi, Great job. Debian Unstable package (knet-0.6beta1) available at http://pacotesdeb.codigolivre.org.br
Thank-you. :)
Hi, on Suse 9.3 with KDE 3.4 the installation stops after ./configure with the error "Can`t find X includes"
you have to install the X development paackages. They should be on your Suse CD's. You will probably also have to install all the KDE-devel packages if they're not already installed.
Dial on demand would be cool, whenever an application wants to access the Internet, KNet should pop up.
It would be good. Not sure how to implement it though, because other programs would need to make a DCOP call to say 'I need internet' and then start KNet. I know KPPP had some DCOP calls in it, so I will see if its already implemented in KPPP and adapt it here.