=============== LANdb CHANGELOG =============== VERSION 0.91.2 (7/4/2000) -Rewrote installer -Added a RELEASE_NOTES file VERSION 0.91.1 (3/31/2000) -Fixed bug in building1.cgi and buildin2.cgi pointing to the wrong scripts -Fixed bug in misc.cgi pointing to the wrong functionid. -Fixed bug in the functions table: "Add Building Attributes" should've been "Add/Modify Attributes" -Fixed bug in the functions table: Host manager was not accounted for VERSION 0.91 (3/30/2000) -Fixed bug in adding building attributes not adding the last value -Changed (greatly improved) layout of Update Building. -Added function GetIDX to LANdb.pm, to return the X_idx of a network object. Only port is implemented currently. -Fixed bug in Update Port not updating the media type of the port correctly -Added port trunking support -Added a "Who's logged in" function to System Functions -Rewrote the attributes subsystem -Removed/rewrote the existing building attributes system -Added the Host Manager -GetCharacterVersion didn't report all info for media types. -Smarter defaults in Select boxes -Better media type removal. You're now presented with an option to replace the deleted media type with another. -Media types can be removed more smoothly -Reworked and tested the CSV scripts VERSION 0.90.2 (3/16/2000) -Fix for Adding Building Attributes not dying if $DBI::errstr -Added ability to remove building attributes -Improved formatting with the sort-by header buttons -Fixed bug in Search by Switch with cable numbers being repeated -Added ability to delete jacks from the database -Updated deletion of media types to remove these media from the ports -Added media support for duplexing -Added ability to delete entire buildings -Added check in Add Switch to make sure a closet is defined -Fix for removing cards from a switch not properly updating the jack table -Added ability to delete switches -The User Manager now enforces mandatory 'read-only searches' function for every user VERSION 0.90.1 (3/9/2000) -Fix for bug in amedia2.cgi -Added check to LANdbAuth to exit if $dbh was not created. -Minor changes to the functions system: System functions is now functionid 12, user management is now 13, and the user manager makes more strict selects from the database to ensure the order doesn't get botched. -Fix usermanager1 and 2 for problems with user management having the incorrect functionid. -Fixed install.pl for problem with duplicate functions being inserted -Fixed install.pl to insert a version -Fixed install.pl to drop info_X tables -Fixed Add Jack to not allow jacks to be added without closets -Fixed Update Media to say that there are no defined media types to delete -Fixed Update Port to yell if there are no switches in the given building VERSION 0.90 (3/1/2000) -chown nobody.nogroup /etc/landb.conf -/etc/landb.conf is readable only by nobody (or web server user) -Added superuser password to /etc/landb.conf -Added superuser username to mysql -Now requires MD5 -Updated install.pl to own and chmod /etc/landb.conf -Updated install.pl to encrypt the server (secret) key -Removed 'admincheck' from LANdb::DBLogin -Added 'sudo' style access to the database, along with function id's, and custom user management -Moved LANdb::DBLogin to LANdb::LANdbLogin -Added LANdb::LANdbAuth to replace the role of the former DBLogin -Moved LANdb::LANdbLogin out of LANdb.pm and into landb.cgi, since it's only used during login. -Adjusted all scripts to work with LANdb::LANdbAuth() -Added the User Manager -Added User "Change Password" function -Added logout.cgi to remove login cookie manually -Stale login cookies (> 24 hours) are automatically removed upon login, after 24 hours -Logins greater than 30 mins old are removed, forcing a re-login -Made optimizations to the User Manager -Logins of users (active or otherwise) are now removed when the user is deleted -Added Syslog function LANdb::syslog -Added Sequence insert function to LANdb.pm to act asan abstraction layer between mysql and oracle -Nearly complete re-write of a lot of the app, including a rewrite of all SQL statements. -Complete rewrite of the database schema -Merged the Add media and update media functions -Lookup Vlans is now done via list-vlans.cgi, for consistency with the other "lookup X" functions -Enhancements to Search by Jack - Now allows more than one jack by the same name. -Added GetVlans to LANdb.pm. -Changed the output of Search by port -Search by Building and Closet now return more information -Added System Functions function -Completed Perldoc documentation of LANdb.pm -Added GRANTing to install.pl -Changed formatting of sort by headers to be more uniform, but some no longer function. VERSION .81 (1/19/2000) -Worked in patch for uport3.cgi that was released on 01/04/200 -Fixed a small formatting bug in Update Closets -Made stricter table columns, to help prevent duplicates -Minor optimizations in SQL code -Added 'use current config' to install.pl -Fix for csv-building.pl always updating jacks -Added csv-closet.pl (Dale Carder) -"Use existing settings" option in install.pl to make upgrade installations easier VERSION .80 (1/2/2000) -Added notification of VLAN change to Update Port -Polished up Update Jack's output -Changed the default values for a new, inactive jack addition to '-' for slot, port, and cable. -Removed any leftover 'database handle destroyed...' entries in the web server's error log -Fix for LANdb::ZeroNormalize for slot numbers of 0. -Updated lo-by-closets2.cgi to use the List/PrintClosets functions -Fixed problem with inactive jacks and the Search by Jack function -Polished Search by Jack's output -Polished Add Switch, removed unused aswitch3.cgi -Fixed bug with adding 25 cards to a switch, which also existed in the update switch function. Duh. -Removed unnecessary calls for the config vars from /etc/landb.conf. Should improve performance a bit. -Fixed 'use of uninitialized values' problem in Add and Update Jack functions -Change to allow for updating of the name of a jack -Moved printing of HTML header to PrintHeader() -Changed 's to 's where appropriate -Wrote Update Closets function, and moved the act of adding a new closet under the same page. The layout is similar to the Modify VLAN Data function. -Removed List Buildings from Misc Functions, as it's now a common function anyway. -Added switch/building/closet info to Update Port screen 3, to make things look prettier. -Minor fixes to install.pl VERSION .76.1 (12/16/1999) -Fixed problem with HTML frames and logging out. Things work better now -Fixed problem with remote hosts not working. Thanks go to Teddy Grenman for the patch to use another hash, rather than environment vars. -The landb.conf file is now more human-readable. VERSION .76 (12/13/1999) -LANdb.pl is now, more properly, LANdb.pm -Misc. HTML Formatting fixes -Added Lookup Buildings function to Standard functions menu -Added the filesystem path of the cgi-bin directory to /etc/landb.conf -Added the ABOUT file -Added AdminCheck clause to LANdb::DBLogin, to allow for better security. -Added Lookup Closets function to the normal user menu -Added Lookup Switches function to the normal user menu -Changed login screens around. The login screen looks better, and 'about.html' is now loaded without javascript, which was once considered a necessary evil. -Changed login.cgi to landb.cgi, did the same with the new login2.cgi -Fixed problem in Update jack of not getting all the original info -Wrote first Comma Separated Values convertor, for those with spreadsheets. -Added ZeroNormalize function to the module VERSION .75.1 (12/9/1999) -Fixed bugs in install.pl: not creating directories on a fresh install, not writing configuration file on fresh install. -Modified install.pl to write a login.html, necessary to hold the location of login.cgi, which is user-specified. VERSION .75 (12/7/1999) -Fixed table formatting error in list-closets.cgi -Eliminated Javascript -Eliminated menu.cgi, instead delving out the task to smaller scripts -Fixed "normalizing" of slot/port numbers to a '01' format, since it caused problems when the number was already in the 'correct' format -Allow for the MySQL database to be on a host other than the one holding the scripts -Added an "Update this Port" button to the Update Jack function -Tweaked Update Switch to only allow you to delete cards/ports that are installed on that switch -Modified the VLAN/Subnet scripts to allow updating in VLANs and Subnets, instead of just delete/create -Fresh installs with install.pl will now create directories -Fixed bug in a-building1.cgi that didn't print the correct number of rows for select box attributes -Added a check for the jack not existing in Search by Jack -Changed the normalizing of '1' to '01' to not 'fix' empty values, so slot=0 and port=0 aren't submitted during Add Jack for an inactive jack. -Broke ListClosets into ListClosets and Printclosets to be more consistent with the rest of the API -Fixed up Search by Port to not display the slot/port in the results table -- that's a bit redundant. -Polished Misc functions, adding columns (like Vlan) that should be there -User can now only add cards to a switch that aren't there -- LANdb provides the choice automatically. -Modified the Add Building Attribute function to check for existing buildings, then prompt for values for the new attribute for these buildings. -Added sub GetCharacterVersion to the API to ease converting the 'nnnnnnn' database idx's into the user-friendly character versions -Added Update Building function -Added configuration file. Had to modify LANdb::PrintSorts, adding another parameter to pass the $cgi_bin variable through, since requiring in LANdb.pl wasn't agreeing with me. -Fixed problem with lo-by-query2.cgi not displaying the VLAN for certain queries -Added ability for non-localhost MySQL installations to install.pl, so it's all done automatically. -Minor HTML/formatting tweaks VERSION .74 (11/22/99) -Fixed problem with List by Building not showing the closet name for inactive jacks -Added Sort by headers to query screens -Added 'order by' clause to many select statements, to make html selects and whatnot easier to navigate -Fixed functions duplicating code already in LANdb.pl -Rewrote the main menu, replacing form buttons with images and javascript. -Removed some code from update2.cgi that checks for a user clicking "Back" on their browser. META page expirations are surprisingly faster and less troublesome. :) -Implemented VLANs and Subnets -Added query by switch -Changed ports and slots from 1 .. 9 to 01 .. 09 -Added VLAN query -Wrote first install script to ease installation. Fresh installs go off without a problem, upgrades may be a bit touchy. VERSION .73 (11/08/99) -Fixed problem (SQL error) with Update jack function updating to Inactive -Added ListBuildings, PrintBuildings, ListClosets, ListSwitches, PrintSwitches, PrintMedia, PrintHeader, PrintFooter to LANdb.pl -Added List Closets function under Misc Functions -Moved Add Closet function to Misc Functions -Fixed Update Switch function to not allow for changing the closet -Fixed Add Switch to allow up to 25 cards -Fixed Add Switch to allow adding slot 0 -Changed the Update Switch function to allow adding and removing cards -Moved the Add Switch function into Misc Functions -Added header/footer functions to the API -Added 'try again' link to the login failed screen, to allow trying again to be a bit easier -Modified PrintBuildings to allow for different printing types -Added Update Port function -Added minor documentation to the startup screen -Graphics converted to PNG in observance of Burn all GIFs day VERSION .72 (10/26/99) -Added update media function -Added building attributes function -Added customizable-query function -Began LANdb API switchover -Added about.html and adjusted login.html to load it on login -Added List Buildings function VERSION .71 (10/18/99) -Fixed error_log entry on login -Modified Add Jack to allow user to add jacks without having to add switches first. -Added 'media type' support and a function to add new media types -Fixed output formatting to look better with NULL values VERSION .70 (10/12/99) -Fixed 'Log Out' to actually log the user out, rather than reload the page, which allowed clicking 'back' to get back into the DB. -Made a trap for sending a blank passwd to the scripts, which allowed access to the main menu. The DB itself wasn't compromised. -Added support for up to 25 slots per switch and 48 ports per slot -Fixed problem with Search by port not displaying cable number and closet name -Added multiple port stats to Update Jack. This allows things like "Error Disable," and "Bad/Damaged." -Separated port and slot into two entities -Fixed error checking in add2.cgi to write 'undefined' errors to the web server's error_log when everything's fine. -Allowed for multiple instances of a cable per building. Updated searches accordingly. -User is now able to add jacks to the DB even if it isn't active (i.e., no switch info is added). -Added Update Switch function. Minimal functionality for now; more to come later in .7x. VERSION .65 (9/29/99) -Added error check to prevent duplicate cable labels -Added filter to prevent apostrophes from munging inserts -Added error check to let the user know of a lack of closets/switches in the selected building during Add Jack, rather than just presenting empty select boxes. -Added error check during Update Jack to prevent pressing the Browser button Back from munging data -Moved over the building-by-name tables to the building_idx method. -Added Misc Functions button and removed Update Switch. Individual pieces of Update Switch will appear later on under Misc Functions. -Added switch_idx to switches table. Switch-by-name tables are now created by an auto-incremented switch-id, to avoid table naming problems. Had to update the Add/Update scripts to get the switch_X table name. -Changed $name to $switch_idx in add2.cgi -- there, now isn't that easier? :) -Transformed LANdb.pl into a package, added a line to allow for multiple DBMS driver selections. This will make things easier to port to other DBMS's. -Added logout function to 'standard functions' VERSION .64 -Code tweaks and enhancements: moved some of the common code to LANdb.pl to avoid redundancy. -Added check for entering NULL as a Jack name. That's a no-no. We don't check Port and Cable, since non-active jacks can be entered into the database, and they wouldn't *have* a cable/port number. -Experimented with CGI and $query->param(), but found the performance loss too great, so reverted back to the previous method of the hashed $in{}. VERSION .63 -Added error checking during Add Jack to make sure port isn't already active. -Fixed formatting of first page in Search by Closet -Fixed output of add-closet.cgi to not display the admin's password. Things like this one would've been fixed by stable release, but this was too glaringly obvious to not fix. -Changed Update Jack to not allow changing the Jack number that we're updating, as it was allowing something that was against the point of updating an existing jack. -Pulled
 tags out of Update Jack.  Jeesh, that was ugly... 
-Fixed bug where moving a jack from one switch to another with the same
 switch port failed the (if port_stat=active) error check
-Minor formatting improvements 
-Added error checking to make sure yada switch is in yada closet during Add and
 Update jack.

VERSION .62
-Added prefix to all switch tables, to avoid problems with buildings and
 switches being given the same name.  When the add build script comes
 around, I'll have a prefix on buildings too.
-Fixed length of switch IP field problem.
-Added in closet name with switch selection in update jack script, so it's
 more difficult to chose a switch that isn't in the right closet.
-Neatened up the Update jack form.
-Fixed Search by Cable form to ask for a cable, rather than a port 
 number. :)
-Improved output of Search by Cable, List by Closet, and List by
 Building  to include more info in their output. 
-Fixed problem with updating a jack by moving to a different switch in which
 the old switch wasn't updated with port_stat info.

VERSION .61
-Added nifty little LANdb logo, but it only comes up on the login page.  I
 want to keep the 'results' pages clean and printable, so I've left out the
 graphic on those, although I'd really really like to include them.
-Fixed problem with Add Jack: Error-checking was looking for a port already
 in use in the building table, rather than switch table. Problem also
 existed in Update Jack.
-Fixed problem with searching by port: wasn't requesting switch name, so the
 port query was (obviously) broken.  This changes lo-by-port.cgi to
 lo-by-port1.cgi and adds in lo-by-port2.cgi to complete the lookup.

VERSION .6 
-Automated 's. Apparently,
 Communicator doesn't mind them being in there, and IE can't handle it.  My
 fault for having them in there in the first place, which was just sloppy.

VERSION .5 - First Release