///////////////////////////////////////////////////////////////////////////////////////// // // Trev's D-Link DSL-500/504 Utility // Copyright 2004, Trevor B Roydhouse // // Screenshots, new developments and download page at: // http://shadow.sentry.org/~trev/dsl50x.html // // Feedback is _much_ appreciated, please check // the "Help > About..." for my email address :) // // Whirlpool.net.au honour roll // ---------------------------- // Thanks to Chris Montgomery for his help with debugging // Thanks to Dean Payne for finding the "no printer installed" bug // Thanks to Dean Payne for finding the "'' is not an integer" bug // Thanks to "Dave" for debug logs of negative numbers phenomenon // Thanks to "Load of Old Bull" for spotting the visible hidden password bug // Thanks to "Daevo" for his invaluable help with beta testing v1.1.1. // Thanks to "TheEdge2" for finding the "Memory AV" bug // // Thanks to Francesco L (Italy) for spotting the reversed tx/rx packet counts // ///////////////////////////////////////////////////////////////////////////////////////// // // IMPORTANT NOTICE AND DISCLAIMER OF LIABILITY // // I do not warrant that this software utility ("the program") // will do any more than occupy space on your storage device. // // I disclaim all and any liability for any damage and the // consequences of any damage which using the program may cause // directly or indirectly to you, your reputation, router, computer, // computer network, employer, business, bank account, ISP, // friends or significant other. // // v1.2.0, Copyright 2004, Trevor B Roydhouse // // If you break the program, you own both parts. // Contents may settle during file transfer. // ///////////////////////////////////////////////////////////////////////////////////////// HISTORY V0.001 [January 24, 2003] - Once upon a time ... v0.2 [January 24, 2003] - Added debug tab with interface dump v0.3 [January 24, 2003] - Added raw interface table dump to debug tab - Added raw IP table dump to debug tab v0.4 [January 24, 2003] - Added generation II hardware detection - Added username and password to Misc Tab v0.5 [January 25, 2003] - Removed generation II hardware detection (it didn't) - Added ini file to save all user settings - Added profile to Misc tab - Added save debug log to Debug Tab - Added prompt to save debug log on exit if modified since last saved - Added prompt to save connection log on exit if modified since last saved - Added new link detection logic - Added password hide to Options menu v0.6 [January 26, 2003] - Fixed link disconnection/reconnection detection which was broken in v0.5 - No prompt to save debug log on exit if no change since 'clear log' pressed - No prompt to save connection log on exit if no change since 'clear log' pressed v0.7 [January 27, 2003] - Removed profile from Debug tab (it wasn't) - Fixed bug which would disable link logging when System Info tab IP or community edit fields gained focus and not re-enable it when the lost focus - Added Quota tab to track usage against ISP limit v0.8.0 [January 29, 2003] [FINAL RELEASE CANDIDATE 1] - Added details to SNMP tab - Added details to UDP tab - Added two pages of details to TCP tab - Added three pages of details to the IP tab - Added details to ICMP tab - Added print option to debug tab - Added option for using ISP definitions of megabyte and gigabyte to Quota tab - Added percentages and colour changes to bar chart in Quota tab - Added option to Quota tab to monitor (downloaded) OR (downloaded AND uploaded) data - Added option to Options menu for monitoring quota in real time - Hid the disabled 'Get Values' button on Debug tab focus - Renamed the global 'Get Values' button to 'Update' - Defaulted IP of router to factory setting of 192.168.0.1 (ini file will override) - Removed otiose 'Interface dump' from Debug tab - Cleaned up global status line display and busy cursor - This is now Final Release Candidate 1, subject to any reported bugs. v0.8.1 [January 30, 2003] [FINAL RELEASE CANDIDATE 2] - Remaining quota updated independently of bar graph which only updates if change >= 1% - BUG: fixed problem running program when no printer installed on computer v0.8.2 [January 31, 2003] [FINAL RELEASE CANDIDATE 3] - Fixed sizing of connection log window, shortened log messages - Added 'TESTING' status to interfaces logic - Added OutQLen stats to Interface tab - Added interface numbers to interface descriptions - Removed some obsessive error checking code - BUG: fixed interface numbering problem "'' is not an integer OK?" Well, yes, OK this should also fix, finally, the interface number issues v0.8.3 [February 1, 2003] [FINAL RELEASE CANDIDATE 4] - BUG: Fixed inaccurate quota bar graph which did not take account of traffic already counted by router but not part of your quota v0.8.4 [February 23, 2003] [FINAL RELEASE CANDIDATE 5] - BUG: Negative numbers in interface traffic figures turned out to be the router and not the program [oops - determined it was the library code - fixed in v1.1.0] - BUG: Quota traffic was being measured against the PPP interface; changed to the WAN interface (fixes undercounting error of ~5%) - Added new ADSL information tab (up/down line attenuation, SNR, output power, VPI/VCI) - Removed some username/password and connection log from Misc tab to ADSL tab - Added ability to run program as a tray icon when minimised. Note the colour coding of the tray icon LEDs is as follows: G-G-G <-> G-N-G = Link up, quota in green zone G-G-Y <-> G-N-Y = Link up, quota in yellow zone G-G-R <-> G-N-R = Link up, quota in red zone G-G-G <-> R-R-R = Link down, no quota info G-G-G <-> Y-Y-Y = Link testing, no quota info R-R-R <-> N-N-N = Unable to communicate with router, no link/quota info G=Green, R=Red, Y=Yellow, N=Not lit - The quota and used quota plus new traffic figures are now saved to the ini file on exit so that you do not have to recalculate usage when re-running the program UNLESS you have used any more of your quota while the program was not running - Added ~70% of the context-sensitive help system - Implemented the Help Menu items v0.8.5 [5 March, 2003] [FINAL RELEASE CANDIDATE 6] - BUG: Fixed assignment of Quota Tab F1 help context to other tabs - Cleaned up keyboard tabbing through tabs, controls and edit fields - Aligned Ethernet WAN data in Interfaces Tab - Utility now never appears in the task bar (even when not minimised) - Added PC's IP address to Misc Tab - Added manual eventlog transfer to Misc Tab (post-T8 firmware) - Added automatic eventlog file transfers to Options menu (post-T8 firmware) - Added transmitted and received packet counts to ADSL Tab - Added change telnet password (write access community name) to Misc Tab - Added extensive help for the IP Tab, ICMP Tab, TCP Tab, UDP Tab and SNMP Tab - Removed the otiose "Clear table" buttons from all tables (the tables are automatically cleared when updated) - BUG: Fixed display of password when it should be hidden. v1.0.0 [26 March, 2003] - System Tab: Added WAN IP address display - ADSL Tab: ANSI, LITE and DMT changed to ANSI, G.LITE and G.DMT - Quota Tab: Added percentage of quota left after Gb/Mb left - Quota Tab: Added option to specify day of month that quota is reset - Quota Tab: Added display date of last quota reset - Misc Tab: Added option to choose directory in which to save event log files - Misc Tab: Changed some text descriptions - Debug Tab: Removed check to save debug log on exit (unnecessary) - INI file: Save/Restore directory in which to save event log files - INI file: Save/Restore quota reset day of month - INI file: Save/Restore quota last quota reset date - Help: Updated for new features - BUG: Fixed redefinition of Gb and Mb (previously had no effect) v1.1.0 [4 July, 2003] - System Tab: Moved WAN IP to ADSL Connection Info sub-tab - ADSL Tab: Scroll connection log to end automatically to always show current status - ADSL Tab: Split into two sub-Tabs: ADSL Connection Info and ADSL Connection Log - ADSL Tab: Added new sub-Tab for Default Connection Mode Log to log the setting/retrieving of the default ADSL connection mode - ADSL Tab: Added retrieval of Default ADSL Mode on startup - ADSL Tab: Moved WAN IP from System Tab to ADSL Connection Info sub-tab - Misc Tab: Added error checking to routine for changing router telnet password/SNMP write access community name - Debug Tab: Added Firmware version button to allow dump of info to the debug log for cut and paste/copy to clipboard etc - Option Menu: Added new item to allow hide/show utility in task bar when not minimised - Option Menu: Added new item to allow optional auto-update of the Interfaces tab - Option Menu: Added connection checking item for every 3 seconds as some disconnection events did not last 5 or more seconds and so were going undetected - Option Menu: Added new item to enable/disable Telnet on startup (to retrieve default ADSL connection mode) - Option Menu: Added new item to enable/disable Minimisation of utility on startup - BUG: correct tray icon now displayed when link down, utility maximised, then minimised - BUG: Utility now saves its settings to INI file when shutdown by a Windows API message - BUG: Corrected calculation of displayed quota percentage which occurred when the router had traffic counts > 0 on the WAN interface at startup - BUG: Fixed the negative numbers in the Interfaces Tab (library number representation issue) - BUG: Added missing hourglass cursor to ADSL tab during updates - BUG: About Box label wrapping fixed - Added "Confirm close" dialog when closing utility - Now prevent utility from launching again if another instance is already running - Disabled "Update" button where not applicable rather than making invisible - INI file: Save/Restore hide/show task bar preference - INI file: Save/restore Interfaces Tab update and frequency preferences - INI file: Save/Restore Telnet on startup setting - INI file: Save/Restore Minimise on startup setting - INI file: Last reset date saved on the reset day (previously only saved if utility was closed on that day) - Help: Added "Help" button to each tab - Help: Added "Check web for update" menu item - Help: Updated for new/changed features - New Installations v1.1.1 [11 July, 2003] - Added splash box to notify telnet on startup timeout underway - Reduced telnet on startup timeout from default ~25 seconds to 15 seconds - Changed default to show utility in task bar rather than hide when not minimised - BUG: Fixed hang on startup caused by "telnet on startup" failure condition - BUG: Added error handlers for Quota tab to prevent endless loops on exit - BUG: Fixed integer conversion errors in Quota tab - Added sanity checks for INI file data to be sure, to be sure :) - New installations v1.2.0 [30 May, 2004] - Added "auto-reconnect" feature to trigger ppp restart after ppp connection lost and not automatically regained within 30 seconds (The Connection log -> Monitor connection AND Connection Log -> Auto-reconnect options must be active for this feature to be enabled) - Removed "Firmware Ver" button from Debug tab (where no-one found it) - Added "Copy To Clipboard" button to System tab to copy firmware details to clipboard - BUG: Fixed "Memory Access Violation" error when set ADSL mode and switch tabs - BUG: Fixed "Memory Access Violation" error when transfer eventlog and switch tabs - BUG: Corrected logging of "forced telnet disconnect" from mode log to status log - BUG: Fixed occasional loss of quota reset day where it re-defaulted to 0 - BUG: Corrected ADSL tab tx/rx packet counts (they were previously reversed) - Help: Updated for new features/changes - New installations (now installs under Windows Server 2003) To Do - See requests.txt file - Any reasonable requests :-)