Contact cannot be a null ptr, and it is accessed before anyway. Disscussed with kedge.
[kdenetwork.git] / kppp / ChangeLog
blob918c3c3af2d3289e498955dbd54556bc278be265
1 2005-07-03  Harri Porten  <porten@kde.org>
3         * pppstats.cpp: patch by Ivan that makes the PPP interface check
4         more portable. On the BSD IFF_RUNNING is already set right after
5         pppd starts - too early for our purposes. Avoids potential
6         authentication problems.
8 2005-07-01  Harri Porten  <porten@kde.org>
10         * connect.cpp: fixing the flow control fix. Ivan Vasilyev spotted
11         yet another issue with translated strings.
13 2005-04-12  Harri Porten  <porten@kde.org>
15         * pppstatdlg.cpp: improved byte number formatting patch by 'Walter'
17 2005-03-18  Harri Porten  <porten@kde.org>
19         * connect.cpp: fixed another occurence of a i18n bug with the flow
20         control setting as reported by Brendon Higgins in #95502. Will surely
21         fix some connection problems.
23 2004-11-15  Harri Porten  <porten@kde.org>
25         * edit.cpp (DialWidget): increased max length of callback number
27 2004-07-11  Harri Porten  <porten@kde.org>
29         * kpppwidget.cpp: to save some screen space: show the modem combo
30         box only if more than one modem has been set up.
32         * general.cpp (ModemWidget): fixed name label of modem dialog
34 2004-05-28  Harri Porten  <porten@kde.org>
36         * devices.h: added /dev/ttyS4 as requested by Christopher Martin for
37         PCI hardware modem in 2.6 kernels (#82345)
39         * general.cpp: made modem combo box read-only again. Editing device
40         names didn't really work (#82345).
42 2004-05-19  Harri Porten  <porten@kde.org>
44         * modem.cpp: fixed flow control for non-English users. Bug found by
45         Elias Jahn (#73646).
47 2004-05-14  Simone Gotti  <simone.gotti@email.it>
48         * Now kppp has the multiple modem profile features, so it finally 
49         can manage a lot of modems and not only one! 
50         It can use the old kppp config copying the [Modem] group to the 
51         [Modem0] group if it doesn't already exists.
52         See Bugs: #52028 
54 2004-04-24  Harri Porten  <porten@kde.org>
56         * connect.cpp: added patch by Dmitri that allows automatic redials
57         on NO CARRIER.
59         * provide automatic CBCP (Windows) callback support. Patch by Nick
60         Shafff.
62 2004-04-12  Gerardo Puga  <gpuga@gioia.ing.unlp.edu.ar>
64         * Now kppp will notify other applications using DCOP about 
65           connection status changes.
67 2004-01-07  Harri Porten  <porten@kde.org>
69         * modem.cpp: fix a bug in writing of modem commands. EAGAIN errors
70         were not handled. Thanks to Matteo Croce who helped tracking this
71         down.
72         
73 2003-12-13  Harri Porten  <porten@kde.org>
75         * edit.cpp: disallow colons in connection name. breaks the loginfo
76         format
78 2003-07-16  Harri Porten  <porten@froglogic.com>
80         * connect.cpp: Digital Line Protection (DLP) support contributed
81         by Dorian Araneda <dorian.araneda at intel.com>
83 2003-02-18  Harri Porten  <porten@kde.org>
85         * added keyboard accelerators, layout fix (patch from
86         Mikolaj Machowski)
88 2002-12-22  Harri Porten  <porten@kde.org>
90         * acctselect.cpp: allow %xx escapes in ruleset file names.
92 2002-10-27  Harri Porten  <porten@trolltech.com>
94         * kpppconfig.h: increased MAX_ACCOUNTS to 100
95         * connect.cpp: fix for race condition in Expect command by
96         Dag Nygren dag at newtech.fi
98 2002-04-12  Nadeem Hasan  <nhasan@kde.org>
99     * Lots of GUI and layout cleanups. Added accels.
101 2002-01-27  Per Winkvist  <nd96pwt@student.hig.se>
103         * Add option to tune ATS11 "tone duration".
105 2002-01-22  Per Winkvist  <nd96pwt@student.hig.se>
107         * Make "Connect To" button default.
108         * Move KPPPWidget in main.cpp to an own file which reduced
109         the size of main.cpp with almost 1000 lines.
111 2002-01-21 Chris Howells <howells@kde.org>
112         * Made the QMultiLineEdit on the  Login Debug Window
113            read-only
114         * Fixed the bug in the connected window that meant
115           that the volume valued didn't display when volume
116           was >~2.5GB
118 2002-01-21  Per Winkvist  <nd96pwt@student.hig.se>
120         * Set focus correctly to ID/PWD on startup if one of the fields
121         are empty.
123 2002-01-01  Harri Porten  <porten@kde.org>
125         * don't ignore SIGHUP anymore. Forbidding Ctrl-Z is crazy.
126         * a bit more respect for Session Managment by adding handlers
127           for KApplication::saveYourSelf() and shutDown(). A user
128           had reported corrupted config data.
129         * made 'Log' a toggle button to represent debug window state
131 2001-11-30  Harri Porten  <porten@kde.org>
133         * main.cpp: set focus to password field if it's missing on startup.
134         Patch by Per Winkvist <nd96pwt at adeptus.student.hig.se>.
136 2001-11-26  Harri Porten  <porten@kde.org>
138         * applied patch for USB modems by Oliver Gantz <Oliver.Gantz@epost.de>
140 2001-11-23  Harri Porten  <porten@kde.org>
142         * connect.cpp: finally implemented often requested feature:
143         multiple init strings. Only two for now but it's now easy
144         to increase (PPPData::NumInitStrings + GUI)
146 2001-11-08  Harri Porten  <porten@kde.org>
148         * pppdata.cpp: fixed renaming of default account. Bug reported
149           by william.stephenson at ncl.ac.uk.
151 2001-05-21  Harri Porten  <porten@kde.org>
153         * modem.cpp: 460800 speed fix from msade@cs.pitt.edu
155 2001-04-13  Harri Porten  <porten@kde.org>
157         * runtests.cpp: fixed startup crash if 'pppd --version' failed
158         * combined PAP/CHAP patch by Ingo Heeskens <ingo@fivemile.org>
159         
160 2001-04-08  Harri Porten  <porten@kde.org>
162         * option for turning off dial tone detection. Modem string
163           defaults to ATX3.
164         * Solaris fixes: added missing include, less restrictive compile check
165         * main.cpp: deactivated KNotify::beep() in pppd-died signal handler,
166           due to appearant race conditions when working remote
167         * ppplog.cpp: hardcoded list of syslog files, including my Debian one
168         * pppdata.cpp: i18n'ed name of account copy
169         * ...
171 >>>>>>>>>>>>>>>>>>>>>>>>>>>> KDE 2.1.0 released <<<<<<<<<<<<<<<<<<<<<<<<<<<     
172 2001-01-05  Harri Porten  <porten@kde.org>
174         * Solaris patches by Keith Refson <Keith.Refson@earth.ox.ac.uk>
175         and Stephen Usher <Stephen.Usher@earth.ox.ac.uk>. Still needs some
176         tweaking.
177         * logview/monthly.cpp: sensible sort order for each column. cleanup.
179 >>>>>>>>>>>>>>>>>>>>>>>>>>>> KDE 2.0.1 released <<<<<<<<<<<<<<<<<<<<<<<<<<<
180         
181 2000-11-27  Harri Porten  <harri@trolltech.com>
183         * applied 7 bit fix from KDE 1.x for CompuServe users.
185 2000-11-21  Harri Porten  <harri@trolltech.com>
187         * modem.cpp: writeLine() fix from Wolfgang Grandegger. Hit USB modem
188         owners and probably more.
190 >>>>>>>>>>>>>>>>>>>>>>>>>>>> KDE 2.0 released <<<<<<<<<<<<<<<<<<<<<<<<<<<<<     
191 1999-11-18  Harri Porten  <porten@kde.org>
193         * main.cpp: cleaned up signal handlers by posting a user defined
194         event to Qt's event loop. The real X stuff will be done in member 
195         functions of KPPPWidget now.
197 1999-11-16  Harri Porten  <porten@kde.org>
199         * docking.cpp: ported to make use of new KDockWidget
201 1999-10-03  Harri Porten  <porten@kde.org>
203         * support automatic DNS detection if pppd >= 2.3.7.
204         * pppdata.cpp: fixed default account
206 1999-10-02  Harri Porten  <porten@kde.org>
208         * runtests.cpp: determine pppd version. Will be needed to check
209         for support of new features
211 1999-09-26  Harri Porten  <porten@kde.org>
213         * runtests.cpp (ppp_available): Linux kernels >= 2.2.13 will have
214         a security hole fixed that breaks our check. Let's simply return true.
216 1999-08-31  Harri Porten  <porten@kde.org>
218         * opener.cpp: unified PAP and CHAP code
219         * use KMessageBox::Yes enum
221 1999-07-22  Harri Porten  <porten@kde.org>
223         * connect.cpp: visualize \n as <LF> in setExpect()'s debug messages
224         * logviewer: rename `log' variable to `logList' to avoid clash with
225         mathematical function on some systems. 
226         * logview/loginfo.cpp: added mystrsep() function as strsep()
227         replacement which is not POSIX compliant.
229 1999-07-19  Harri Porten  <porten@kde.org>
231         * pppdata.cpp: fixed a cause of those "Timeout expired" errors: if 
232         the user never set the speed of the serial port gpppdata would return
233         an empty string as speed(). The modem initialization code would
234         fall back to 57600 but no speed would be passed to pppd. Whatever
235         pppd does in this case (I haven't checked the sources yet) breaks the
236         negotiation process.
238 1999-07-13  Harri Porten  <porten@kde.org>
240         * added "Mode 7bit" and "Mode 8bit" script commands for CompuServe
241         users. 7bit will simply strip off the highest bit to deal with the
242         incoming 7E1 data. Write operations are not affected.
243         * modem.cpp: try a tcsendbreak() if tcgetattr() fails. Ask for
244         feedback if that solved the "modem is busy" error for anyone.
245         * modem.cpp: read data in multiple chunks of up to 200 bytes. This 
246         should speed up things and avoid problems with the socket notifier. 
248 1999-07-11  Harri Porten  <porten@kde.org>
250         * connect.cpp: moved some code from readChar() into checkBuffers() 
251         to clean up the setExpect() race condition fix.
253 1999-07-07  Mario Weilguni <mweilguni@kde.org>
255         * kppp now finds the icons again
257 1999-07-06  Harri Porten  <porten@kde.org>
259         * modem.cpp: adhere to the lock file format described in the
260         Serial HOWTO (10 digits pid and a newline).
261         * connect.cpp: fixed race condition that might have lead to data not
262         being caught by "Expect" (found by Arch Harris <arch@cs.jmu.edu>)
264 1999-06-05  Harri Porten  <porten@kde.org>
266         * pppstats.cpp: dropping the ifr_name #define hack allows compilation
267         with --enable-final (saves 20 kB size)
269 1999-05-30  Harri Porten  <porten@kde.org>
271         * connect.cpp: skip setting the volume if command is empty
272         * switched from KWizard to QWizard
273         * adaption to new KConfig iterators
274         * partly switched to KStandardDirs
276 1999-05-07  Harri Porten  <porten@kde.org>
278         * main.cpp: added public showStats() slot. Saved methods and p_kppp
279         pointers in DockWidget and ConWindow.
281 1999-05-07  Harri Porten  <porten@kde.org>
283         * renamed shutDown to myShutDown to avoid name clash with KApp
284         * runtests.cpp: better error message for missing s-bit.
286 1999-05-04  Harri Porten  <porten@kde.org>
288         * conwindow.cpp: fixed deleting of old geometry layout
289         * pppstats.cpp: bundled statistic in a module. Removed unused
290         get_ppp_cstats() and some variables. The modem animations are triggered
291         by signals from the PPPStats object.
292         * logview/main.cpp: had to replace QTabDialog with QTabWidget
293         
294 1999-04-25  Harri Porten  <porten@kde.org>
296         * runtests.cpp: test for `lock' in /etc/ppp/options is not needed any-
297         more, thanks to a hint from Paul Mackeras (pppd). Leaving away ttySx
298         (99/04/10) from the command line and binding stdin/stdout to the
299         device (99/01/12) stops pppd from trying to lock the device itself.
301 1999-04-12  Harri Porten  <porten@kde.org>
303         * opener.cpp: introduced MY_ASSERT macro. We don't want to see our
304         security checks disabled by the NDEBUG flag.
305         * connect.cpp: fixed timeout errors that were caused by a re-enabled
306         socket notifier that took away data from pppd.
307         Thanks to Ian Gordon <ig@cs.strath.ac.uk> for tracking down this bug.
308         * requester.cpp: setpppdRunning(false) _before_ killing the pppd.
309         * main.cpp: added flushX() before every command_execute()
310         * increased maximum modem string size
311         * connect.cpp: stop the main loop from skipping characters. Parsing
312         the connect speed should work now.
313         
314 1999-03-11  Harri Porten  <porten@kde.org>
316         * modem.cpp: dropped ISTRIP option and made everything else "8-bit
317         clean" by using unsigned char and removing 0x7F AND'ing. Characters
318         like [§'°öäü] will work now.
319         * modem.cpp: use usleep() replacement from kdecore/fakes.cpp
321 1999-03-10  Harri Porten  <porten@kde.org>
323         * conwindow.cpp (ConWindow): initialize volinfo with "" do prevent
324         segfault. Strange.
325         * more porting to Qt 2.0 (layout and QString)
327 1999-03-05  Harri Porten  <porten@kde.org>
329         * geometry layout: got rid of some freeze() and setMinimum*() calls.
330         Qt 2.0 seems to make life a bit easier. A lot of work left.
332 1999-03-03  Harri Porten  <porten@kde.org>
334         * kdelibs have been switched to Qt 2.0. Replaced a lot of const char *
335         with QString (or QString&) and removed ~100 .data() calls.
337 1999-02-16  Harri Porten  <porten@kde.org>
339         * providerdb.cpp: don't segfault if database can't be located
341 1999-02-15  Mario Weilguni <mweilguni@kde.org>
343         * the phonenumber widget had a german "Abbrechen" button instead
344           of a "Cancel" button
346         * new Script command "SendNoEcho". Usefull for sending passwords,
347           the command works like "Send", but the actual content is shown
348           as "*" in the status line.
350         * added a DialPrefix to the provider dialog; kppp now handles the
351           DialPrefix value for every connection, defaults to ""
353         * if a script argument contains %PASSWORD% or %USERNAME%, it is
354           replaced by the corresponding value
356         * fixed a bug in ChangeLog (don't laugh, that happens). I
357           commited all the changes above as Harri Porten :-)
359 1999-02-13  Harri Porten  <porten@kde.org>
361         * there's no a provider database (just one entry for now) and a
362           wizard for this.
364 1999-02-11  Harri Porten  <porten@kde.org>
366         * runtests.cpp: removed local header file if_ppp.h
368         * pppstats.cpp: cleaned up
370 1999-02-10  Mario Weilguni <mweilguni@sime.com>
372         * the PPP interface name is now autodetected
374         * replaced the "Help" button with a questionmark. Makes the window
375           much smaller, especially in other languages than english
377         * the version number raised to 2.0pre4 (from 1.6.4). This version
378           is mainly the development version, whilest there is still a 
379           "stable" 1.6.3 in the KDE 1.1 branch. Once KDE 2.0 is out (or
380           however it will named), the release will be 2.0
382 1999-02-09  Mario Weilguni <mweilguni@sime.com> 
384         * fixed a bug in the accounting module. The last character of the
385           logfile was overwritten each time a log file was
386           generated. Strange that nobody complained...
388         * reworked the layout of the AccountWidget
390         * removed some old, no longer needed variables from edit.h
392         * reworked the layout of the ModemWidget
394         * reworked the layout of the Modem2Widget. Now all Tab-Widgets are
395           reworked to use KGroupBox (which adds the title and takes part
396           of the size managment), which makes adding or deleting widgets
397           in the tab-dialogs much easier (especially for other people)
399         * if a user enters to domain name with a leading dot, this is
400           silently ignored now.
402 1999-02-08  Harri Porten  <porten@kde.org>
404         * removed some doubled and obsolete code. Some simplifications.
406         * fixed "cannot find pppd" error message
408 1999-02-08  Mario Weilguni <mweilguni@sime.com>
410         * Changed the tabs "DNS" and "Gateway". Somehow, it feels more
411           natural this way.
413         * reworked the layout of the "DNS" widget
415         * pretty printed volume accounting. Using the terms KB, MB and GB
416           now when appropriate.
418         * Now it is possible to reset phone costs, volume accounting or both
420         * reworked the IPWidget, the GatewayWidget and the DialWidget
422 1999-02-07  Mario Weilguni <mweilguni@sime.com>
424         * reworked the phone accounting selector widget, and reworked the
425           groupbox widget to adhere minimumSize() of the peer()
427         * reworked the layouting of the ScriptWidget and some usability
428           improvements  
430         * removed the disturbing "Show log window" button. The log window
431           now remembers if it was shown or hidden last time. Now I'm
432           waiting for feedback, if everybody is happy I'll remove it
433           completly.
435         * removed some #include from header files and moved them to the
436           cpp files. Thus compiling for developers will be somewhat faster
437           now, because of fewer dependencies
439 1999-02-06  Mario Weilguni <mweilguni@sime.com>
441         * added a new tab "Execute" to the accounting dialog, including
442           an explanation how to use it. 
444         * the pppd-arguments were modified (in the "Customize ppp
445         arguments" dialog if "Default" was pressed, no matter if "Cancel"
446         was pressed afterwards. Fixed.
448         * the phone number entry was removed and replaced by a listbox and
449         some buttons to allow easy selection of multiple phone numbers
451         * the label "Edit pppd arguments" and the button after are now
452         replaced with the button "Customize pppd arguments..."
454         * some small usability improvements
456         * a big, fat warning is now displayed when selecting the
457           "Auto-configure hostname" option.
459         * The log window is now hidden if we are connected. If a
460         connection is up and running, there's no need for a debug
461         window
463         * The "/dev/cua*" devices are no longer available under Linux
465         * fixed a warning in requester.cpp
467         * pressing enter when on the "Connect" button now starts dialing
469 1999-02-04  Harri Porten  <porten@kde.org>
471         * main.cpp: remove stale pidfile before creating new the
472         one. Otherwise creation with O_EXCL fails.
473         * runtests.cpp: removed securityTest(). $HOME check wasn't fully
474         functional and not needed anymore.
475         * runtests.cpp: re-enabled test for pppd's s-bit if eff. uid != 0.
477 1999-02-03  Mario Weilguni <mweilguni@kde.org>
479         * fixed a bug in my testing code
481         * fixed broken Hungarian ruleset
483 1999-02-02  Mario Weilguni <mweilguni@kde.org>
485         * the value of the environment var $HOME is no longer trusted,
486           kppp now uses getpwent() to find out the home directory.
488         * the pidfile is now created with O_EXCL
490         * added new portugal rules
492         * executable accounting rulesets are now disabled (will re-enable
493           after KDE 1.1)
495         * fixed a bug that caused the throughput graph display
496           unreasonable high numbers
498 1999-01-31  Mario Weilguni <mweilguni@kde.org>
500         * fixed a security bug (stdout or stderr closed on program start)
502 1999-01-28  Mario Weilguni <mweilguni@kde.org>
504         * fixed a bug in opener.cpp. recvmsg() was interrupted, and thus
505         the SUID part died.
507 1999-01-28  Harri Porten  <porten@kde.org>
509         * modem.cpp: use sigsetjmp() instead of just setjmp() to solve
510         freeze when modem is powered off (bug#267)
512 1999-01-27  Harri Porten  <porten@kde.org>
514         * pppstats.cpp: removed debug output
515         * opener.cpp: delay closing the tty fd. Otherwise the ioctl() in
516         execpppd() can't succeed.
517         * opener.cpp: ignore TERM and INT signals. This is probably the
518         best until a safe clean-up & terminate routine is written.
519         * connect.cpp: added a removedns() call to cancelbutton().
521 1999-01-25  Mario Weilguni <mweilguni@kde.org>
523         * updated and regenerated documentation
524         
525 1999-01-23  Harri Porten  <porten@kde.org>
527         * main.cpp: config data wasn't saved on immediate exit.
529 1999-01-22  Harri Porten  <porten@kde.org>
531         * moved pppd call to the server process. It should be safer and
532         much more comfortable that pppd doesn't need to be installed SUID
533         root anymore. If I don't get any negative feedback I'll remove
534         some doubled code later. 
536 1999-01-17  Harri Porten  <porten@kde.org>
538         * modeminfo.cpp: ATI1 was left out. Wait 0.1 secs to process the ATE0.
540 1999-01-14  Mario Weilguni <mweilguni@kde.org>
542         * Most windows should now have the mini-icon
543         * the lineedit for the modem timeout was too narrow to see at
544         least 2 characters. Fixed it, now shows at least 4 chars
545         * double-clicking an account in the account-listbox now opens 
546         the account for editing, as expected
547         * for some weird reason, the lineedit showing costs and volume
548         were both editable, thus letting users think they can edit
549         it. Fixed that.
551 1999-01-12  Harri Porten  <porten@kde.org>
553         * connect.cpp: become the session leader and let ttySx be the
554         controlling terminal before launching pppd. This might solve
555         timeout problems several people reported, ie. when kppp was
556         started from kpanel instead of a terminal window.
557         * main.cpp: the kppp.sh workaround for make_directories() isn't
558         needed anymore and confused a few people.
559         * requester.cpp: convert cmsglen to size_t to make the compiler happy.
560         * modem.cpp: fixed usleep() replacement in case #ifndef HAVE_USLEEP
561         * connect.cpp: saving of old_hostname was broken
563 1999-01-10  Mario Weilguni <mweilguni@kde.org>
565         * complete rework of the accounting system. The old implementation
566         did only allow one type of accounting (=via rulefiles). The new
567         will allow executable rulefiles too.
568         
569 1999-01-06  Mario Weilguni <mweilguni@kde.org>
571         * added new hungarian rules
572         * the title of the main window was "kppp.bin". Fixed this.
573         * the combobox for selecting the account to dial in was
574         editable for some strange reason. Fixed.
575         * modified the testing stuff (-T now)
577 1999-01-04  Mario Weilguni <mweilguni@kde.org>
579         * began to add a modem database. See README.ModemDB for
580         details. The modem DB will not make it into KDE 1.1 (sorry)
582 1999-01-05  Harri Porten  <porten@kde.org>
584         * opener.cpp: set O_NOCTTY flag when opening the modem device to
585         hinder the server process from being assigned a controlling terminal
586         (and 'stealing' it from pppd ?)
587         * pppdata.h: renamed "LockFile" key to "UseLockFile" to prevent a
588         clash with kppprc's from KDE 1.0. (reported by Seth Rothberg
589         <sethr@crocker.com>)
590         * umask(0) in suid child to avoid permission conflicts with lock file.
591         * connect.cpp,opener.*,requester.*: moved call to sethostname()
592         into Opener. Bug discovered by Matthew Ando <ando@math.jhu.edu>
595 1999-01-04  Mario Weilguni <mweilguni@kde.org>
597         * Updated Hungarian rules
598         * removed all Qt calls from log to make it safe to use in
599         opener.cpp
600         * replace Debug() calls in opener.cpp with the function
601         provided by log.cpp
602         * clarified comments in opener.cpp
603         * replaced the button "Ok" with a "Exit" button when another
604         instance of kppp was found. This clarifies the action when
605         pressing the button.
606         * added a .kdelnk file for the log-viewer
608 1998-12-28  Harri Porten  <porten@kde.org>
610         * opener.cpp: netinet/in.h is needed on FreeBSD
611         * reverse order of dropping suid rights (first setgid, then
612         setuid) to avoid an EPERM error (doesn't make a difference on Linux)
613         * requester/opener: removed transmission of filename. I discovered
614         problems with the variable string length and it wasn't used
615         anyway.
616         
617 1998-12-27  Mario Weilguni <mweilguni@kde.org>
619         * moved gpppdata.setpppdError(0) to end of dieppp()
620         * the "Don't show this hint again" option is now immediatly saved
622 1998-12-26  Mario Weilguni <mweilguni@kde.org>
624         * gpppdata.pppdError() was never reset, causing a bunch of error
625           windows to appear. Should be fixed.
626         * cosmetic changes in various files for better readability      
628 1998-12-25  Harri Porten  <porten@kde.org>
630         * kpppconfig.h: include <sys/param.h> to get the BSD define.
631         #include <config.h> was missing too. This prevented several #ifdefs
632         from doing the right thing.
634 1998-12-24  Harri Porten  <porten@kde.org>
636         * runtests.cpp: relaxed my previously enforced suid check for pppd
638 1998-12-23  Harri Porten  <porten@kde.org>
640         * runtests.cpp, opener.cpp: fixed FreeBSD compile problem reported by Hans
641         Petter Bieker
643 1998-12-22  Harri Porten  <porten@kde.org>
645         * pppdata.cpp: Give users upgrading from KDE 1.0 instructions how
646         to modify their kppprc if it is owned by root (KConfig bug back then).
648 1998-12-21  Mario Weilguni <mweilguni@kde.org>
650         * opener.cpp: using umask now instead of chmod (more safe)
651         * opener.cpp: regfree was called too late. Fixed.
652         * re-enable scripts when using CHAP or PAP
653         * cosmetic changes in the "Accounts" widget
655 1998-12-21  Harri Porten  <porten@kde.org>
657         * opener.h: define system dependend type cast for struct iovec's
658         iov_base. FreeBSD needs (char *) instead (void *).
660 1998-12-20  Mario Weilguni <mweilguni@kde.org>
662         * added Germany Mannesmann Arcor ruleset
664 1998-12-20  Harri Porten  <porten@kde.org>
666         * docking.cpp: call KWM::activate() on connection window after
667         being re-opened from docking icon (recommended by Matthias on
668         kde-devel)
669         * ppplog.cpp: re-introduced reading messages with fgets() instead
670         of single chars. Should be faster.
671         * ppplog.cpp: worked on diagnostic messages
673 1998-12-18  Harri Porten  <porten@kde.org>
675         * #include "auth.h" was needed after pap.h was removed
676         * opener.h: workaround for glibc bug in RedHat 5.0. Since there is
677         presumably no way to detect the exact release version we'll simply
678         define SCM_RIGHTS to be 1 for every glibc2.0 on Linux. This should
679         solve the conflict with the kernel.  
681 1998-12-18  Harri Porten  <porten@kde.org>
683         * removed pap.* and chap.* files and moved their code in
684         requester.cpp where all setuid root stuff is gathered now.
685         * requester.cpp: rewrote PAP/CHAP so that the setuid part is free
686         of any Qt/X calls. 
688 1998-12-16  Mario Weilguni <mweilguni@kde.org>
690         * added Indonesia rule files
691         * added some new Denmark rule files
692         * added a patch from Filip Larsen <filip@post4.tele.dk> to allow a
693           rule to be dependent on connection time. See Rules/TEMPLATE for
694           an example. This will allow much better danish rulesets
696 1998-12-14  Harri Porten  <porten@kde.org>
698         * runtests.cpp: fixed test for pppd's suid bit
699         * requester.cpp: initialize struct control (may be necessary for
700         some kernel versions)
701         * runtests.cpp: use Requester to check write access to modem (PPP Test)
703 1998-12-13  Harri Porten  <porten@kde.org>
705         * use hardcoded lock file path (kpppconfig.h)
706         * tighten interface between Requester/Opener by transmitting
707         device index instead of device path 
708         * do a fchown(fd, 0, 0) on lock file
710 1998-12-08  Mario Weilguni <mweilguni@kde.org>
712         * added Denmark rules
713         * added Luxembourg rules
714         * commented out the no-longer need CHAP_* functions
715         * removed the old/never used setup program
716         * cleaned up accounting (set umask, no chown/chmod)
717         * cleaned up PPP log (set umask, no SUID check)
719 1998-12-05  Harri Porten  <porten@kde.org>
721         * connect.cpp: killpppd() and stop if_timeout_timer in cancelbutton()
722         * main.cpp: ignore SIGCHLDs in shutDown()
723         * main.cpp: interface timeout error wasn't displayed anymore
724         * modem.cpp: check for possible existance of stale lockfile before
725         trying it to open via Requester::rq->openLockFile(). The resulting
726         error message on failure was too confusing.
727         * main.cpp: ignore SIGHUPs in child process
729 1998-12-04  Harri Porten  <porten@kde.org>
731         * requester.cpp: disable alarm() for now, silence some debug messages
733 1998-12-01  Harri Porten  <porten@kde.org>
735         * main.cpp: notify user about death of helper process and abort
737 1998-11-28  Harri Porten  <porten@kde.org>
739         * main.cpp: restored accidentally deleted line (setPassword())
740         * connect.cpp: suppress warnings from QStrList
742 1998-11-26  Harri Porten  <porten@kde.org>
744         * included errno.h in opener.cpp and modified CMSG_DATA()'s
745         argument (as suggested by Andreas Pour).
746         * had to revert to SOCK_DGRAM since I keep getting failed
747         assertions. Using a stream seems to require some attention in
748         terms of ensuring that the correct length is received.
750 1998-11-26  Mario Weilguni <mweilguni@kde.org>
751         
752         * added missing rules for Switzerland, and added kppp.sh
753         * replace SOCK_DGRAM by SOCK_STREAM, and hope that it works
755 1998-11-26  Harri Porten  <porten@kde.org>
757         * requester.cpp: made the ifdef's for cmsg_data more portable
758         * requester.cpp, opener.cpp: include sys/uio.h to define struct
759         iovec. As far as I can see this should work for systems with and
760         without glibc. If it doesn't, please mail me directly.
762 1998-11-25  Mario Weilguni <mweilguni@kde.org>
764         * fixed a lot of rulefiles. Pentecost Monday is NOT easter+60,
765           but easter+50. My TEMPLATE file contained this bug,
766           and unfortunatly a lot of people copied it.
767         * improved and new Switzerland rulefiles
769 1998-11-24  Harri Porten  <porten@kde.org>
771         * main.cpp: store pid of setuid child in PPPData object
772         * define KERNEL_VERSION()
774 1998-11-24  Mario Weilguni <mweilguni@kde.org>
776         * fixed opener.cpp for Linux >= 2.1.0
777         * removed PAP_UsePAP(), no longer needed
779 1998-11-23  Harri Porten  <porten@kde.org>
781         * requester.cpp: removed ancient #include "requester.moc"
783 1998-11-22  Harri Porten  <porten@kde.org>
785         * main.cpp: fixed freeze on disconnect by using waitpid(...,
786         WNOHANG) instead of wait()
787         * main.cpp: forgot to convert gpppdata.password to char*
788         * opener.cpp: close file descriptors after being sent. Left out
789         dup() call. Did it serve any special purpose ?
790         * opener.h: increased allow size for username and passwords
791         * modem.cpp: included config.h for HAVE_USLEEP
792         (thanks to hpj.lisa@t-online.de (hpj) for reporting this)
793         * PAP/CHAP: fixed typo and return value
794                 
795 1998-11-20  Harri Porten  <porten@kde.org>
797         * First draft of a client&server archicture consisting of setuid
798         child process that will serve requests for file manipulation from
799         the parent. The parent is doing all the GUI operations is running
800         with normal user privileges. Assuming the approx. 300 lines still
801         running setuid root will be intensively reviewed this should
802         result in a kppp far less vulnerable to security exploits.
803         * added requester.* and opener.*
804         * TODO: - handle signals (SIGCHLD, SIGPIPE?)
805                 - get ppp_available() running (presumably broken now)
806                 - speed up reading the syslog (reading single chars now)
808 1998-11-17  Mario Weilguni <mweilguni@kde.org>
810         * another security hole fixed: the function make_directories() is
811           no longer used, instead of a shell script make those directores.
812           Since shell scripts do not run suid, this should be safe
813         * fixed a bug in the main.cpp, at the calls to setPAPSecret() and
814           setCHAPSecret().
815         * fixed (void*)new Opener(...) to (void)new Opener(...)
817 1998-11-17  Mario Weilguni <mweilguni@kde.org>
819         * Security fix: fixed possible buffer overflow in findFileInPath()
820         * Security fixes: re-checked all char[] on stack to be suid-safe
821           If it is considere to be safe, a comment was added to the end of
822           line
824 1998-11-17  Mario Weilguni <mweilguni@kde.org>  
826         * removed another "extern" by making Accounting::getCosts(...) static
828 1998-11-17  Mario Weilguni <mweilguni@kde.org>
830         * further improvements in ppp-log wizard
831         * runtests.cpp: test for Qt >= 1.40 before include header files
833 1998-11-11  Harri Porten  <porten@kde.org>
835         * connect.cpp: allow a little delay after sending the volume
836         string. Prevents it from getting eaten by the next command.
837         Thanks to Craig Goodrich <craig@airnet.net> for providing the patch.
839 1998-11-11  Harri Porten  <porten@kde.org>
841         * runtests.cpp: added header file to solve compilation problems
843 1998-11-04  Harri Porten  <porten@kde.org>
845         * got rid of two global variables
847 1998-11-04  Mario Weilguni <mweilguni@kde.org>
849         * kppp now checks itself if the kernel supports PPP (Linux only
850         for now. If anyone wants this for another system - implement it!)
851         * before dialing out, the check for PPP support is repeated, if
852         the kernel module was unloaded between running the tests and the
853         actual dialing, it will reloaded again  
855 1998-11-01  Harri Porten  <porten@kde.org>
857         * modemcmds.cpp: added a wait&CR&wait sequence before sending the
858         init string. This seems to be necessary to avoid locking some modems.
860 1998-10-29  Harri Porten  <porten@kde.org>
862         * connect.cpp: fixed search&replace typo
864 1998-10-26  Mario Weilguni <mweilguni@kde.org>
866         * incorporated new Netherland rules (NetPoint)
868 1998-10-25  Mario Weilguni <mweilguni@kde.org>
870         * added updated rules for Spain
872 1998-10-06  Mario Weilguni <mweilguni@kde.org>
874         * repaired Makefile.am and reverted Hans Petter Bieker's changes
875         to something more usefull.
876         * added SecurityWidget, but currently there's not much use for
877         this widget. Later on, it will allow root to specify who may use
878         kppp and pppd.
879         * removed the global variable miniIcon
880         * removed the global variable dock_widget, replaced with a static
881         class variable
882         * added lockdevice() and unlockdevice() to the class modem. This
883         will finally allow us to have a modem class which handles the
884         device locking itself (yeah...)
885         * removed the global var "modem", now a static member of the class
886         "Modem"
887         * modem.cpp: removed some global vars
889 1998-10-14  Harri Porten  <porten@kde.org>
891         * pppdata.cpp: don't care about CD line by default. We'll receive
892         too many "bug reports" otherwise.
894 1998-10-13  Harri Porten  <porten@kde.org>
896         * ppplog.cpp: offer some advice based on keywords found in the log
897         (very primitive so far, but may be extended later)
899 1998-10-09  Harri Porten  <porten@kde.org>
901         * modem.cpp: additional data flushes
902         * pppdata.cpp: don't need workaround for '$' with recent kde libraries
904 1998-10-05  Mario Weilguni <mweilguni@kde.org>
906         * better QuickHelp text, proof-read by a native english
907         speaker. Thanks a lot to Martin A. Brown for doing this!
909 1998-10-04  Harri Porten  <porten@kde.org>
911         * miniterm.cpp: fixed toolbar
913 1998-10-03  Harri Porten  <porten@kde.org>
915         * modem.cpp: disentangled Modem class from other Widgets, i.e.
916         removed the Multiple Inheritance I introduced earlier.
917         Drawback: another global pointer :(
918         * main.cpp: since KConfig neglects the real user id when creating
919         config files we have to give kppprc back to the user ourself.
920         * connect.cpp: pass something more useful to parseModemSpeed()  
921         * removed lots of unused/redundant code and variables
923 1998-10-02  Mario Weilguni <mweilguni@kde.org>
925         * fixed that stupid segfault combined with the throughput graph
926         * "make" did not set the suid bit anymore. Why? However, I fixed
927         that
929 1998-09-29  Mario Weilguni <mweilguni@kde.org>
931         * fixed a bug in the graphing code
932         * runtests.cpp: fixed typos
934 1998-09-28  Harri Porten  <porten@kde.org>
936         * ppplog.cpp: reduce memory consumption, small fixes
937         * pppdata.cpp: fixed segfaults caused by non-readable kppprc
939 1998-09-28  Harri Porten  <porten@kde.org>
941         * runtests.cpp: bail out if some evil-doer has manipulated $HOME
943 1998-09-26  Mario Weilguni <mweilguni@kde.org>
945         * cosmetic changes in ppplog.cpp
947 1998-09-24  Mario Weilguni <mweilguni@kde.org>
949         * Ownership of PPP logfiles corrected to the real, not the
950         effective user id
952 1998-09-23  Harri Porten  <porten@kde.org>
954         * ppplog.cpp: skip remote message if empty
955         * ppplog.cpp: fixed segfault triggered by virgin log files
957 1998-09-21  Mario Weilguni <mweilguni@kde.org>
959         * introducing quickhelp
960         * forgot to add i18n to quickhelp entries, fixed this
962 1998-09-20  Mario Weilguni <mweilguni@kde.org>
964         * PPP-arguments dialog reworked 
966 1998-09-19  Mario Weilguni <mweilguni@kde.org>
968         * more QuickHelp
969         * began to clean up layout management, it's a mess
970         * added setup widget for the throughput graph
971         * some code cleanups
973 1998-09-16  Mario Weilguni <mweilguni@kde.org>
975         * Added some more QuickHelp
976         * The QLineEdit for fixed IP and netmask is not re-initialized
977         with  "0.0.0.0" whenever you select "dynamic IP"
978         * the scripting widget is disabled if authentication PAP or CHAP
979         is selected
980         
981 1998-09-15  Mario Weilguni <mweilguni@kde.org>
983         * replaced strings that span several lines with multiple
984         strings, it seems that this was a GCC-only feature
986 1998-09-11  Mario Weilguni <mweilguni@kde.org>
988         * more code cleanups
989         * fixed a bug in log.h (semicolon after a macro definition --
990         brrr)
991         * added quickhelp to many setup dialogs
993 1998-09-05  Harri Porten  <porten@kde.org>
995         * pppdata.cpp: fixed warnings
996         * replaced readListConfig calls with calls to readWholeListConfig
997         * and removed 'Whole' from function names afterwards
998         * connect.cpp: sped up scripting loop by reducing calls to gpppdata
1000 1998-08-29  Mario Weilguni <mweilguni@kde.org>
1002         * In ConnectWidget::readtty(): after a newline or CR is received,
1003         the QSocketnotifier is disabled for 20ms to avoid reading too
1004         much, e.g. the start characters of the ppp protocol.
1005         * added compile option "NO_GRAPH" to disable the graph
1006         * removed the compile options "COMPILE_PIX" in pppstatsdlg.cpp,
1007         this is no longer needed or supported
1009 1998-08-27  Harri Porten  <porten@kde.org>
1011         * ppplog.cpp: use short named header file to keep Qt 1.33 users happy
1013 1998-08-25  Mario Weilguni <mweilguni@kde.org>
1015         * removed all QTimers for reading tty output, a QSocketNotifier is
1016         now used. Much better response time now, lower CPU usage!
1017         * "prompt" was deleted in the ConnectWidget destructor. Removed
1018         that
1019         * added telephone rule for Malaysia     
1021 1998-08-24  Harri Porten  <porten@kde.org>
1023         * connect.cpp: re-enabled closeEvent()
1024         * pppdata.cpp: dumped writeListConfig(). Will do the same with
1025         readListConfig() too ... next week.
1027 1998-08-22  Mario Weilguni <mweilguni@kde.org>
1029         * some KDE style guide conformant changes
1030         * some code cleanups
1031         * removed -lkfile and -lkfm from Makefile.am
1032         * added debug switch to pppd command line when debugging
1033         is turned on
1034         * Improved the response time for modem output. Modem output is
1035         polled in longer intervals, if data is pending the polling time
1036         is shortened, otherwise the polling time is set back to it's 
1037         original, rather high value
1038         * re-worked the "About" widget. It was time to save poor old Bernd
1039         from receiving bug-reports.
1040         * miniterm.cpp: code cleanups
1041         * improved responseness of MiniTerm, reduced CPU load
1042         * MiniTerm adheres to KDE Standards now (Help-Menu, ...)
1043         * The ATI query was broken. Fixed.
1044         * Improved the ATI query result window
1045         * modeminfo.cpp: code cleanups
1046         * main.cpp: code cleanup, banner updated
1047         * repaired the german "Tele-2" ruleset (was broken due to invalid
1048         characters)
1049         * added improved ruleset for Italy (thanks to Michele Manzato for
1050         supplying this ruleset)
1051         * fixed a few typos in the TEMPLATE
1052         * prepared a replacement for the debug-window
1053         * connwindow.cpp: code cleanups
1054         * began to remove the code dependencies between main.cpp
1055         (KPPPWidget) and the setup GUI components. This will help
1056         to separate the dialer and the setup later
1057         * general.cpp: code cleanups
1058         * accounts.cpp: removed as many references to p_kppp as possible,
1059         using signal/slots instead of. There's only on occurence of p_kppp
1060         left
1061         * general.cpp: removed the mysterious function itoa (nowhere used)
1062         * various files: a lot of code cleanups, removed many references
1063         to extern variables, reduced the amount of functions called from
1064         p_kppp directly (done with signal/slots now)    
1065         * Added a new parser for modem speeds. The results are much better
1066         now, especially for the new K56flex/X2/V.90 modems (where
1067         different speeds are used for RX/TX)
1068         * removed tons of "#ifdef MY_DEBUG" and replaced them with
1069         functions "Debug", which is provided in log.cpp and is a
1070         "printf()" like function
1071         * added modem volume selector to the setup.
1072         
1073 1998-08-21  Harri Porten  <porten@kde.org>
1075         * use SIGINT instead of SIGHUP to end a connection
1076         * implemented command line option 'kppp -k' that will
1077         terminate a connection
1078         
1079 1998-08-21  Mario Weilguni <mweilguni@kde.org>
1081         * Added a graphical display of the current modem line
1082         throughput.
1083         * Added an assistent for those "ppp has died" messages
1084         * Evaluating remote system messages now
1085         
1086 1998-08-19  Mario Weilguni <mweilguni@kde.org>
1087         
1088         * added function to create a ppp - log
1089         * connect speed improvements
1091 1998-08-18  Harri Porten  <porten@kde.org>
1093         * fixed security leak in execute_command(): drop setgid root and
1094         close file descriptors
1096 1998-08-17  Mario Weilguni <mweilguni@kde.org>
1098         * fixed a bug in runtest.cpp that caused a segfault (fclose()
1099         called twice)
1101 1998-08-17  Harri Porten  <porten@tu-harburg.de>
1103         * main.cpp: added SIGHUP handler that will cleanly disconnect an
1104         existing connection.
1106 1998-08-09  Harri Porten  <porten@tu-harburg.de>
1108         * miniterm.cpp: switched to QMenuBar, fixed memory leak
1110 1998-08-08  Harri Porten  <porten@tu-harburg.de>
1112         * modem.cpp: fixed hangup that occured if the modem power was off.
1113         hangup() aborts after 2 seconds if it doesn't suceed. 
1115 1998-08-06  Harri Porten  <porten@tu-harburg.de>
1117         * runtests.cpp: scan up to 100 lines when searching for the
1118         unwanted 'lock' in /etc/ppp/options and recognize the '#' sign
1119         to avoid a false alarm
1120         
1121 1998-08-04  Harri Porten  <porten@tu-harburg.de>
1123         * fixed replacement for systems without a BSD 4.2 style usleep()
1124         * modem.cpp: continued to move modem related stuff to modem.cpp.
1125         The new Modem class is inherited by the Connect-, MiniTerm- and
1126         ATI-Query Widget for now. This should be way easier to maintain and
1127         will reduce the binary's size.
1128         * modeminfo.cpp: cleaned up  
1129         
1130 1998-08-02  Harri Porten  <porten@tu-harburg.de>
1132         * opentty(): fixed XON/XOFF flow control
1133         * closetty(): flush data not read or transmitted
1134         * main.cpp: enforce killpppd()
1135         * modem.cpp: moved lockdevice(), unlockdevice() and modemspeed()
1136         into this newly created file. opentty(), closetty() and hangup()
1137         should follow soon to let them be shared between widgets.
1139 1998-07-30  Harri Porten  <porten@tu-harburg.de>
1141         * connect.cpp: take the burden of specifying the modem lock file
1142         from the user. Just entering the directory should be easier and
1143         safer. Presets for different systems can be found in kpppconfig.h 
1145 1998-07-29  Harri Porten  <porten@tu-harburg.de>
1147         * macros.h: replaced remaining MAX with QMAX
1148         * main.cpp: followed recommendation of the Unix Programming FAQ to
1149         use _exit() instead of exit() in child processes  
1151 1998-07-25  Harri Porten  <porten@tu-harburg.de>
1153         * connect.cpp: rewrote check for stale lock files. After dropping
1154         the use of /proc it should work on other platforms now, too.
1156 1998-07-19  Harri Porten  <porten@tu-harburg.de>
1158         * merged killppp() and terminatepppd() in killpppd()    
1159         * main.cpp: added execute_command() to launch external programms
1160         * added "Command Before Disconnect" for people who have to clean
1161         up before they leave the net
1163 1998-07-11  Harri Porten  <porten@tu-harburg.de>
1165         * main.cpp: replaced ~/.kde with kdelocaldir() 
1166         * connect.cpp: hardcoded '-detach´ as pppd argument
1168 >>>>>>>>>>>>>>>>>>>>>>>>>>>> KDE 1.0 released <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
1169         
1170 1998-06-21  Harri Porten  <porten@tu-harburg.de>
1172         * general.cpp (GeneralWidget): modified checkbox-size to avoid
1173         warnings from QGManager
1175 1998-06-18  Harri Porten  <porten@tu-harburg.de>
1177         * edit.cpp (ScriptWidget): deactivated "Use default script"-option
1178         as long as someone comes up with a default script
1180 1998-06-02  Harri Porten  <porten@tu-harburg.de>
1182         * replaced klocale->translate() with i18n() and every reference to
1183         XPPP with KPPP
1184         * utilize 'kapp´ (defined in kapp.h) instead of the global Â´extern
1185         KApplication *app'
1186         (Sorry about the large amount of changes, but I couldn't resist to 
1187         clean up the code)
1189 1998-06-02  Harri Porten  <porten@tu-harburg.de>
1191         * pppdata.cpp: removed workaround, since KConfig fix is in place now
1193 Mon Jun  1 16:13:06 1998    Mario Weilguni <mweilguni@kde.org>
1195         * kppp did'nt like "$" in modem strings, fixed that
1196         
1197 Sun May 24 23:39:42 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1199         * Applied FreeBSD patch for the modem devices
1200           Affected File:general.cpp pppdata.cpp
1201           Look for __FreeBSD__
1203 Mon May 18 19:51:56 1998  Mario Weilguni <mweilguni@kde.org>
1205         * introduced a separate log-viewer "kppplogview"
1206         * removed the no-more needed entry widget for the log-viewer
1207         * removed test code checking for log viewer
1209 1998-05-15  Harri Porten  <porten@tu-harburg.de>
1211         * pppdata.cpp: temporary workaround for KConfig bug concerning
1212         lists without a trailing separator 
1214 Fri May 15 22:27:02 1998    Mario Weilguni <mweilguni@kde.org>
1215         * removed the writeline("") once again, it does not work
1217 1998-05-12  Harri Porten  <porten@tu-harburg.de>
1219         * added support for multiple telephone numbers (separated by ':')
1220         Patch contributed by Sebastian Rittau <srittau@jroger.in-berlin.de>
1221         
1222 Tue May 12 18:55:02 1998    Mario Weilguni <mweilguni@kde.org>
1224         * the format of the accounting logfile has changed to allow
1225           easier parsing from external files:
1226           
1227           the format is:
1228           CONNECT_TIME_FROM:CONNECTION_PEER:CURRENCY_SYMBOL: \
1229           CONNECT_TIME_UNTIL:SUBTOTAL:TOTAL:BYTES_IN_BYTES_OUT  
1231           there's a small tcl script which converts the log files. Simply
1232           use "tclsh convlog.tcl" will convert all log-files, but NOT
1233           delete the old ones.
1235 Mon May  4 17:19:12 1998    Mario Weilguni <mweilguni@kde.org>
1237         * Austrian rule files updated
1238         * LSM updated
1239         * line-limit for /etc/resolv.conf raised to 128
1240         * fixed the hard-coded line-limit in removedns() to use
1241           MAX_RESOLV_CONF instead (128) 
1242         * added writeLine("") in connect.cpp to make sure that the modem
1243           is in ready state (waiting for AT*)
1244         * support for internal ISDN cards on Linux via modem emulation 
1245           (/dev/ttyI*)
1247 1998-04-30  Harri Porten  <porten@tu-harburg.de>
1249         * connect.cpp: undid my stupid PAP/CHAP changes from yesterday
1251 1998-04-29  Harri Porten  <porten@tu-harburg.de>
1253         * connect.cpp: prevented segfault on invalid lockfiles
1254         * runtests.cpp: /etc/resolv.conf will be created if missing 
1255         * connect.cpp: fixed reversal of command line options for PAP/CHAP
1257 Tue Apr 28 20:57:04 1998    Mario Weilguni <mweilguni@kde.org>
1259         * added CHAP (client side only) authentication
1261 1998-04-27  Harri Porten  <porten@tu-harburg.de>
1263         * general.cpp (GeneralWidget): command line option "quit after
1264         end of connection" is availabe via GUI, too.
1265         * hangup(): made another usleep() adjustable to prevent hanging 
1266         (thanks to A.D.Y. Cheng <adyc100@hkstar.com> for pointing that out)
1268 Fri Apr 24 18:57:46 1998    Mario Weilguni <mweilguni@kde.org>
1270         * general.cpp (GeneralWidget): removed the entry field for
1271           the path to the pppd binary
1273 Fri Apr 24 13:03:02 1998    Mario Weilguni <mweilguni@kde.org>
1275         * runtests.cpp: kppp now does not allow anymore the user
1276           to specify a path to the pppd binary, but searches for
1277           it 
1278         * kppp now checks if pppd is owned by root
1279         * kppp does not anymore drop suid before starting pppd
1281 Thu Apr 23 22:35:31 1998    Mario Weilguni <mweilguni@kde.org>
1283         * Fixed a few security holes: kppp drops suid before executing pppd,
1284           checks for buffer overflow with the -c command line switch,
1285           drops suid before checking a file with -r
1287 Thu Apr 16 21:21:03 1998  Harri Porten  <porten@tu-harburg.de>
1289         * main.cpp: set portable locale settings for numerical values,
1290         since the rulefiles will always have a point as decimal delimiter.
1292 1998-04-15  Harri Porten  <porten@tu-harburg.de>
1294         * connect.cpp: extended parseargs() to deal with quoted arguments
1295         * fixed bug in 'Save' that made multiple use impossible.
1296         * enclosed username and password with quotes to ensure proper
1297         handling of whitespace characters
1298         * pap.cpp: fixed regexp to recognize entries in pap-secrets with
1299         usernames that are either quoted or preceeded by whitspace. Phew !
1300         That should eliminate one source of these "pppd died" errors.
1301         
1302 Mon Apr  6 20:18:40 1998    <mweilguni@kde.org>
1304         * fixed a volume accounting bug
1305         * volume accounting is now configureable (bytes in, out, in/out)
1306         * added new feature (very usefull for sysadmins). If there's a
1307         file /etc/kppp.allow, only users from that file may use kppp to
1308         dial out. Format is one entry per line, comments begin with "#",
1309         users specified by their login names
1310         * fixed a bug where the PAP authetication record was only removed
1311         from /etc/ppp/pap-secrets if an external program is started on 
1312         login (stupid me :-)    
1314 Wed Apr  1 21:09:05 1998  Harri Porten  <porten@tu-harburg.de>
1316         * connect.cpp: small fixes for 'Scan'
1318 Tue Mar 31 18:54:13 1998  Harri Porten  <porten@tu-harburg.de>
1319         
1320         * connect.cpp: corrected stripping of whitespace from 'scanvar'
1321         * main scripting loop idles until 'Scan' is completed
1322         * added new keyword 'Save' to store scanned strings
1323         * cleaned up add_domain(), adddns(), removedns() by adding data()
1324         calls where QString variables are passed as const char* parameters
1326 Mon Mar 30 22:02:07 1998    <mweilguni@kde.org>
1328         * added volume accounting (currently, only inbytes are counted,
1329         but should be very easy to change). Unfortunatly, there's no
1330         method yet to reset the number of bytes, so you have to fiddle
1331         around in kppprc.       
1333 Wed Mar 18 21:47:20 1998  Harri Porten  <porten@tu-harburg.de>
1335         * runtests.cpp: added check for 'lock' option in /etc/ppp/options.
1336         Hopefully, this check isn't too harsh and won't cause any false alarms.
1338 Wed Mar 18 01:13:50 1998  Harri Porten  <porten@tu-harburg.de>
1340         * modemcmds.cpp: replaced 'Modem Sustains Fast Init' (from general.cpp)
1341         option by an adjustable 'Init Delay'. Some users reported that they
1342         had to increase the delay time to prevent kppp from hanging
1343         after ATZ.
1345 Mon Mar 16 03:37:04 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1347         * command line options need to be parse after creating a KApplications
1348         due to some changes by Matthias in kapp I think.
1350 1998-03-15  Mario Weilguni  <mweilguni@kde.org>
1352         * main.cpp: added mini-icon for all kppp windows, not just 
1353           the main window
1355 Mon Mar  9 00:17:20 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1357         * added new script keyword 'scan', see the documentation.
1358           It allows for password challenges etc.
1360 Tue Feb 24 19:19:44 1998  Mario Weilguni  <mweilguni@kde.org>
1362         * pap.cpp, connect.cpp: removed the need for a "+ua" option
1363           for PAP. Unfortunatly this REQUIRES that kppp can write
1364           /etc/ppp/pap-secrets (either by running SUID root or
1365           by group permissions)
1367 Fri Feb 13 01:12:19 1998  Harri Porten  <porten@tu-harburg.de>
1369         * loginterm.cpp: implemented the possibility to log in via
1370         a simple terminal window. Should have developed a generic widget
1371         that could have been shared by Miniterm, the debug window and
1372         loginterm, but I didn't want to touch the rest of the stuff yet.
1373         * kpppconfig.h: increased max. script size to 20
1375 Thu Feb  5 22:00:55 1998  Harri Porten  <porten@tu-harburg.de>
1377         * pppdata.cpp: added pppdError() and setpppdError()
1378         * main.cpp: added new error message for timeout
1379         * removed last remaining command_on_disconnect bug (see Jan 24)
1381 Sat Jan 31 19:56:03 1998  Harri Porten  <porten@tu-harburg.de>
1383         * main.cpp: in some cases kppp connected to an account 
1384         different from the one selected in the combo box. Added
1385         setAccount() in connectbutton() to fix that, hopefully.
1387 Sun Jan 25 00:45:45 1998  Harri Porten  <porten@tu-harburg.de>
1389         * docking.cpp: included a hide() statement to cleanly undock
1390         the widget from the panel. Otherwise the window stayed invisible
1391         after one dock/undock-cycle.
1393 Sat Jan 24 03:40:44 1998  Harri Porten  <porten@tu-harburg.de>
1395         * fixed a bug (occuring twice) that caused the if-statement for
1396         command_on_connect and command_on_disconnect to be always true.
1398 Fri Jan 23 01:32:57 1998  Harri Porten  <porten@tu-harburg.de>
1400         * fixed alignment in conwindow.cpp's layout.
1402 Wed Jan 21 03:22:43 1998  Harri Porten  <porten@tu-harburg.de>
1404         * prevented the password from being left in kppprc after the
1405         option 'Store password' has just been turned off
1406         
1407         * the ID & password field will be disabled if no account has
1408         been created yet
1410         * pppdata.cpp: removed absolute path for default log viewer
1411         to prevent warning messages upon first startup if KDE's location
1412         differs from /usr/local/kde
1414         * removed gpppdata.Id() and gpppdata.setId() since they have been
1415         replaced by storedUsername() and setStoredUsername()
1417 Tue Jan 20 15:30:08 1998  Mario Weilguni  <mweilguni@sime.com>
1419         * Sigh. After unintentionally deleting my account for the sixth
1420         time, I added a yesNo() dialog to confirm deleting an
1421         account. This is VERY important, because if you click on "Show
1422         log" and double-click onto a file to view it and you have the bad
1423         luck that the filename is just over the "Delete" button, the
1424         account will be gone.
1426         * runtests.cpp: gpppdata is now saved after modifications in
1427         runtests(), and the default log viewer is set correctly
1429 Tue Jan 20 03:10:35 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1431         * tried to get the docking window to display a tooltip with transfer
1432         bytes statistics. Failed. Need to contact Matthias about it.
1433        
1434         * Removed the 'Dock' button. It is superfluous. Use the window
1435         close button to hide the window.
1437         * fixed the flicker problem that was reintroduced in pppstatdlg.cpp
1439         * fixed ( hopefully ) a hangup problem on busy redial caused
1440         by the  modem_in_connect_state varible in connect.cpp
1442 Mon Jan 19 17:51:16 1998  Mario Weilguni  <mweilguni@sime.com>
1444         * main.cpp: the setup dialog is now created on demand. Since in
1445         most cases we only dial out, creating the setup dialog is a waste
1446         of CPU and memory. This reduces memory by approx 200KB.
1448         * geometry managment added to PPP statistic window
1450         * tried to minimize dependencies on "main.h" by removing unneeded
1451         #includes
1453         * removed homedir.(cpp|h). It can be easily replaced with
1454         QDir::homeDirPath().
1456         * before doing anything else, a few tests will be started to
1457         ensure that i.e. the pppd binary is found...
1459 Mon Jan 19 12:05:00 1998  Harri Porten  <porten@tu-harburg.de>
1461         * set default for get_dock_into_panel() to false as safety
1462           precaution
1463         
1464         * introduced docking. It allows kppp to be run as a small
1465           animated icon on the panel. Clicking on the icon with the left
1466           mouse button restores the regular window. The right button
1467           opens up a popup menu with other options.
1469 Mon Jan 19 04:46:39 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1471         * reset PHONENUMBER_SIZE to 60. People with phone cards need lots
1472         space.
1474 Fri Jan 16 21:41:08 1998  Stephan Kulow  <coolo@kde.org>
1476         * some improvements to the toplevel Makefile.am. rpath is very
1477         important for setuid programs
1479 Fri Jan 16 19:04:35 1998  Mario Weilguni  <mweilguni@sime.com>
1481         * Improved Makefiles. Now documentation and rulesets are correctly
1482         uninstalled with "make uninstall"
1484         * Toplevel Makefile.am improved. Subdir traversal is only done for
1485         installing, not for compiling
1487         * fixed that "segfault-on-rulecheck" bug introduced by coolo's
1488         modifications for locale support.
1490         * RuleSet::checkRuleFile() now returns 0 on success, otherwise
1491         1. kppp uses this as exit value.
1493         * fixed a bug in the swiss rulesets
1495         * added file "checkrules" in Rules. It autochecks all rules found
1496         and reports bad rulesets.
1498 Thu Jan 15 20:31:14 1998  Mario Weilguni  <mweilguni@sime.com>
1500         * Ported kppp to use automake. 
1502         * Since the rulefiles now have separate subdirectories, I have
1503         removed the prefix (i.e. Spain/Spain_Inovia.rst -->
1504         Spain/Inovia.rst). Since the old files still exist it should be no
1505         problem for users of former kppp versions.
1507         * renamed config.h to kpppconfig.h because it conflicts with the
1508         default include file config.h, generated from autoconf
1510 Wed Jan 14 12:12:29 1998  Mario Weilguni  <mweilguni@sime.com>
1512         * main.cpp: pressing Enter in ID_Edit moves focus to PW_Edit, in
1513         PW_Edit moves focus to the connect-button
1515 Wed Jan 14 04:13:57 1998  Harri Porten  <porten@tu-harburg.de>
1517         * fixed a bug that caused passwords to be spread among other accounts.
1518           Triggering XPPPWidget::entryChanged() had a nasty side effect. 
1520 Tue Jan 13 17:50:07 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1522         * fixed a bug introduced with the creation of the 'execute command
1523           on disconnect' option
1525         * CD is by default off. It doesn't work on my internal modem 
1526           and I suspect it might not even work on most (all) internal modems ..
1528 Tue Jan 13 12:02:33 1998  Mario Weilguni <mweilguni@sime.com>
1529         * the PAP authentication file is now created in the users
1530           homedirectory. Otherwise I'd have to create the directory 
1531           myself and fix the permissions if kppp runs suid root - 
1532           I'm too lazy for that.
1534         * fixed a security bug in connect.cpp, a typical buffer
1535           overflow. Very bad for setuid root programs
1537 Thu Jan 13 06:58:29 1998  Peter Silva <peter.silva@videotron.ca>
1539         * make new behaviour optional (in response to Bernd's worry 
1540           about cheap modems.)
1542 Thu Jan 13 06:58:29 1998  Peter Silva <peter.silva@videotron.ca>
1544         * patch to prevent kppp hang if modem is off when connecting.
1547 Tue Jan 13 02:48:55 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1549         * applied BSD patch from Alex <garbanzo@hooked.net>
1550           (just a few missing includes)
1552         * various fixes and geometry improvements
1554         * added a linedit for a command to be executed on disconnect
1555         
1557 Mon Jan 12 17:18:41 1998  Mario Weilguni  <mweilguni@sime.com>
1559         * username and password are now remembered between
1560         session. Remembering the password can be switched off for each
1561         account.
1563         * connect.cpp: fixed 2 security bugs in lockfile(). Now it's
1564         checked if the lockfile is a regular file and no more than
1565         32 characters are read from this file, no matter how long it is.
1567         * Added PAP authentication option and code. Using PAP (at least
1568         client-side-authentication should now be VERY easy. Sorry,
1569         no CHAP support so far.
1570         
1571         * edit.cpp: Added a checkbox if to use kppp's default script.
1572         If this checkbox is checked, all scriptedit controls are disabled.
1574 Sun Jan 11 21:03:00 1998  Bernd Johannes Wuebben  <wuebben@math.cornell.edu>
1576         * lslisder in modemcmd.cpp wasn't set correctely on widget
1577           creation. 
1580 Thu Jan 11 14:58:29 1998  Peter Silva <peter.silva@videotron.ca>
1581         * (0.8.10) incorporate iconify_on_connect patch.
1584 Sat Jan 10 21:23:10 1998  Mario Weilguni  <mweilguni@sime.com>
1586         * main.cpp: fixed a bug that cause kppp to go wild and display
1587         hundreds of windows when it cannot load a ruleset file
1589 Wed Jan  7 13:00:24 1998  Mario Weilguni  <mweilguni@sime.com>
1591         * edit.cpp: improved the IP and Gateway widgets
1593         * various improvements for the geometry managements
1595 Tue Jan  6 12:56:14 1998  Mario Weilguni  <mweilguni@sime.com>
1597         * main.cpp: the main kppp window has now layout control
1599         * connect.cpp: layouted the connection window.
1601         * modeminfo.cpp (ModemInfo): layoutet the modeminfo dialog
1602           and layouted the ModemTransfer dialog (ATI query)
1604 Mon Jan  5 20:59:00 1998  Harri Porten  <porten@tu-harburg.de>
1606         * accounting.cpp: telephone costs are stored in kppprc now.
1607           ~/.kde/share/apps/kppp/Costs is obsolete.
1608         * pppdata.cpp: added totalCosts() and setTotalCosts().
1609           Several small cosmetic changes.  
1610         
1611 Mon Jan  5 14:25:37 1998  Mario Weilguni  <mweilguni@sime.com>
1613         * docs/kppp.sgml: updated the docs for the new KDE file system
1614           standard. Ispell'ed the docu.
1616         * main.cpp: added the "-q" command line switch. This is very
1617           usefull in combination with "-c". Instead of returning to
1618           the kppp main window kppp will exit after disconnecting.
1620         * Makefile.in: removed the external moc_*.cpp files and
1621           included them directly with "#include". This saves 
1622           approx. 30 KB in the binary and greatly speeds up 
1623           compilation
1625 Mon Jan  5 13:59:20 1998  Mario Weilguni  <mweilguni@sime.com>
1627         * Rules/TEMPLATE: fixed a typo: the extension of ruleset
1628           files is ".rst", not ".rts"
1630 Mon Jan  5 13:42:28 1998  Mario Weilguni  <mweilguni@sime.com>
1632         * general.cpp: replaced the KIntLineEdit class with the
1633           class KIntegerLine from libkdeui. Replaced the progress
1634           widget with that from libkdeui.
1636 Mon Jan  5 12:51:43 1998  Mario Weilguni  <mweilguni@sime.com>
1638         * edit.cpp: now all major dialogs use Qt layout
1640 Mon Jan  5 04:55:58 1998  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1642         * fixed the while(*it) problem in pppdata.cpp it should be
1643           while(it->current()).
1645 Sun Jan  4 13:54:12 1998  Mario Weilguni <mweilguni@sime.com>
1646         * modified the modemcommands dialog to use the layout
1647           classes of Qt. Replaced the scrollbar with a slider,
1648           because scrollbars are not the right widget to change
1649           values.
1651 Thu Jan  2 00:25:03 1998  Peter Silva <peter.silva@videotron.ca>
1652         * added modem_in_connect_state, and checks for it
1653           to avoid unneccessary delays on modem initialization.
1654           delay of 2 seconds will still occur on hangup by default.
1655           I think that's bearable.
1656         * Added modem tricks section, gentle introduction.
1658 Thu Dec 25 11:46:34 1997  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1660         * Added new script keywords: PwPrompt and ID
1661         * Added ID and Password LineEdits on the main dialog window
1662         * KConfig transition is now complete, one more time the data
1663           storage format has changed. ( Hopefully the last time )
1665         * All sorts of little cosmetic changes
1666         * fixed up the mini-terminal a bit
1668 Sun Dec 22 23:00:03 1997  Peter Silva <peter.silva@videotron.ca>
1670         * To fix hangup problems:
1671         * Added programmable guard time around escape sequence
1672         * Separated escape sequence from hangup command
1674 Sun Dec 21 10:19:18 1997  Peter Silva <peter.silva@videotron.ca>
1676         * Changed maxloopnest to MAXLOOPNEST for portability reasons 
1677           (See developers guide, about const int)
1678         * Set window titles when connected to account name.
1680 Fri Dec 19 22:49:18 1997  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1682         * Extended the grammar of the tarif rules. 
1683           New keyword: flat_init_costs necessitated by the new french
1684           accounting rules.
1686 Tue Dec 16 01:54:50 1997  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1688         * extended scripting capabilities to allow password dialogs
1690 Sun Nov  2 14:02:31 1997  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1692         * accounts.cpp: applied mario's patches to the rulessets. Now deals
1693           with fractions too. 
1694         * accounts.cpp: fixed the bug that caused kppp to reset the costs 
1695           even if you chose cancel.
1696         * docs/kppp.sgml: doc updates and corrections
1698 Fri Aug 15 21:25:05 1997  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1700         * connect.cpp: leaving the lock file name edit blank will cause
1701         kppp not to create lock files. That is this turn the use of lock files off
1703         * added option to not disconnect on xserver exit/crash
1705 Sun Aug 10 19:07:07 1997  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1707         * kppp will no automatically disconnect on X-server exit
1709 Sun Jul 20 17:26:58 1997  Bernd Johannes Wuebben  <wuebben@petit.cornell.edu>
1711         * fixed bug in phone cost accounting