summaryrefslogtreecommitdiff
path: root/CHANGES
diff options
context:
space:
mode:
Diffstat (limited to 'CHANGES')
-rw-r--r--CHANGES373
1 files changed, 373 insertions, 0 deletions
diff --git a/CHANGES b/CHANGES
new file mode 100644
index 0000000..aa5439c
--- /dev/null
+++ b/CHANGES
@@ -0,0 +1,373 @@
+CHANGES, mtx 1.3.12
+- Incorporate debian packaging
+- Remove strip of binaries
+- Remove unsupported nsmhack from list of binaries built by default
+- Add support for building outside of source tree
+- Update copyrights
+- Fix typo in mtx.1 man page
+- Clear outstanding UNIT ATTENTION state at start
+
+CHANGES, mtx 1.3.11
+- loaderinfo: Print RequestSense information if an operation fails.
+- loaderinfo: Print all information from the Device Configuration Page.
+- mtx: Fix problems with a lot of loaders determining the number of elements.
+- mtx: Implement Previous command.
+- mtx: Fix bugs in Last command.
+- scsieject: New tool that handles start/stop, load/unload.
+- tapeinfo: Fix inconsistencies in output.
+- Fix timeout handling on Linux.
+- Merge in fixes from the Debian and FreeBSD distributions.
+
+CHANGES, mtx 1.3.10
+- Add support for Microsoft Windows.
+- Add support for Sony VGP-XL1B(2) Media Changer.
+ Thanks to Will (nodenet at hotmail dot com)
+- Add build support for Microsoft Windows using MinGW native and Linux
+ cross-compile.
+- Add build support for Microsoft Windows using Microsoft Visual Studio 2005.
+- Add support for building on x86_64.
+- Add more debugging information.
+- Eliminate compiler warnings.
+
+CHANGES, mtx 1.3.9
+- Cleaned up scsi_linux.c a little to eliminate around 40 lines of code.
+- Change to using SG_IO ioctl rather than write-read interface. This
+ should make us a little safer, as well as (on 2.6.x) letting us issue SCSI
+ commands to regular block devices as well as to /dev/sgXX devices.
+ WARNING: Can cause the system to *CRASH* if the SCSI device is in use, due
+ to brokenness inside the Linux kernel! It's always preferable to use the
+ /dev/sgXX device, which has specialness in its buffer handling that bypasses
+ some of the brokenness elsewhere in the SCSI subsystem.
+- Check SG version before using SG_IO interface, so that if we're run on a
+ Linux 2.2 system and we were compiled on Linux 2.4 or above,
+- If a tape is in the drive, make tapeinfo print out its partition info. Seems
+ to work on my DAT drive, anyhow (shrug).
+- Minor cleanups in mtxl.c (other cleanups necessary in tapeinfo and etc.).
+
+CHANGES, mtx 1.3.8
+- Forgot about 8 bytes for header
+- Handle pedantic loader whose firmware writer spends too much time
+ parsing phrases in the SCSI spec and not enough time in the
+ real world.
+
+CHANGES, mtx 1.3.6
+- The You Gotta Be F'ing Kidding Release (see rant on mailing list)
+- Added AIX support with http://fz.eryx.net/aix/ GSC driver, courtesy
+ of Steve Heck.
+- Make __WEIRD_CHAR_SUPPRESS the default to stop barcode garbling
+- Fix core dump on invalid inputs in mtx.c
+- Add retry with bigger ALLOCATION_LENGTH if
+ BYTE_COUNT_OF_REPORT_AVAILABLE is > than our original estimate. (see rant
+ on mailing list).
+- Shut up the low-level SCSI sg_read and sg_write routines, which were poofting
+ all over the place on innocuous things like no EAAP.
+
+CHANGES, mtx 1.3.5
+- The I-Need-A-Job Release (see http://badtux.org) :-}
+- Change Makefile so that it works w/systems whose 'install' program
+ accepts only one argument. That's it.
+- Uncomment the Exabyte hack in the drive parsing code so that it works
+ with ATL loaders again.
+- Add hack for ATL stacked loaders to keep them from reporting ghost slots
+
+CHANGES, mtx 1.3.4
+- Forward-ported the ATL/Exabyte patches from mtx 1.2
+- Added progress indicator to 'tapeinfo' for DAT drives. (PLEASE TEST)
+- Purged a few more estinc.com out of the documentation, point to bru.com.
+
+CHANGES, mtx 1.3.3
+- Reversed James' long descriptor patch until can figure out what's wrong with
+ it.
+- Fixed some debug declarations, courtesy of Kevin Wang.
+- Point COMPATIBILITY file at mtx.sourceforge.net.
+
+CHANGES, mtx 1.3.2
+- Merged Makefile changes from mtx-1.2 code
+- Changes from James Dugal to get all info for newer loaders, fix debugging
+
+CHANGES, mtx 1.3.1
+- add an Exchange command
+
+CHANGES, mtx 1.3.0
+- New Linux SCSI subsystem interface for 2.4 kernels, ripped boldly
+ from sgtools by Doug Gilbert
+- mtx 'next' now skips blank slots, courtesy of Christopher McCrory
+- mtx 'unload' now prints an error message telling you that you need to
+ eject the tape in the drive prior to unloading it, under certain
+ conditions.
+- Started work on 'nsmhack' for controlling NSM jukeboxes.
+- copy_barcode was off by one.
+- 'position to element' command now added, courtesy of Mahlon Stacy
+
+CHANGES, mtx 1.2.15:
+- Some Solaris fixes, courtesy of Matt Ward
+- Fix URL in .spec file
+
+CHANGES, mtx 1.2.14:
+- Fix so it'll work if 0 is result of SCSI open (e.g., in cron jobs on Linux)
+- Move changelog to end of .spec file for easier reading
+- Added a bit of text to beginning of COMPATIBILITY file
+
+CHANGES, mtx 1.2.13:
+- Fixed some autoloader bugs w/autoloaders that don't report an arm.
+- Fixed barcode backoff.
+- Added "nobarcode" option
+- Increased timeout for 'mtx inventory' to 30 minutes
+ (note: may increase this even more if needed, please let me know!)
+- Shortened timeout for 'mtx inquiry' to 30 seconds
+- tapeinfo now prints SCSI ID/LUN info if available (only on Linux at the
+ moment, sigh).
+- update documentation w/new email addresses, updated compile directions,
+ various fixes.
+
+CHANGES, mtx 1.2.12:
+- Fix FreeBSD compile bugs
+- Fix SGI compile bugs
+- Add HP/UX port (I hope!), courtesy of William Smith.
+- Re-wrote ReadElementStatus to make work for %!@# brain dead firmware that
+ reports non-existent drives (I hope!). Also has side-effect of now working
+ with multiple-arm libraries (though it only sees first arm!).
+- Cleaned up all -Wall messages.
+- Cleaned up Linux Sparc, installs loaderinfo.1, courtesy of Matt Dainty.
+- tapeinfo now reports status of CheckUnitReady.
+- tapeinfo no longer puts out Block Position if CheckUnitReady says 'no'.
+- tapeinfo now puts out Density Code and Medium Type/Not Loaded (modification
+ of patches sent in by Bob Rahe)
+
+CHANGES, mtx 1.2.11:
+- Added a GNU autoconf Makefile.in (still provide a Makefile for your use)
+ *WARNING* autoconf is not yet working on all supported OS's! You may need
+ to do the old-fashioned 'edit Makefile' bit!
+- Changed mtx.h and mtxl.c to include and define various things based upon
+ what features autoconf detected (e.g., if 'camlib.h', use FreeBSD-style
+ 'cam', if 'scsi/sg.h' use Linux-style 'sg', etc.). If I ever port to a
+ Unix that has same SCSI interface as one of the existing ports, autoconf
+ will handle it without me having to add another set of #if's or #ifdefs.
+- Went ahead and tossed mtxctl into contrib.
+- In 'tapeinfo', skip \0 characters in serial numbers (some use \0
+ terminator, some do not, skip it if this one does).
+- in 'tapeinfo', dump out the block position and (if at BOP) the "BOP: Yes"
+ flag. Also dump out other info such as block limits.
+- Put file 'sparc-patch1' contributed by Chaskiel M Grundman, and applied
+ it (sigh)
+- Added tapeinfo.py to 'contrib' directory
+- Updated mtx.py in 'contrib' directory
+- Created 'loaderinfo' program to report some misc. info about loaders.
+- Created 'scsitape' program so that I don't have to keep messing with
+ #@$%@! tape ioctls on the various Unixes that I'm porting tape software
+ to. (But see the warnings!).
+- Applied the Solaris patch to the read_element_status command (sigh).
+- Added timeout adjustment to the SCSI subsystem.
+- WARNING: DIGITAL UNIX AND VMS ARE PROBABLY IRREPERABLY BROKEN, due to the
+ timeout changes to the SCSI subsystem. If anybody wishes to fix them,
+ feel free to send me patches.
+- added contrib program "mtx-changer" (an Amanda tape changer script for
+ ?Solaris? that uses mtx rather than stc)
+- Jiggered Linux SCSI module for smarter error conditions handling (there are
+ some error conditions that are normal for READ of tape drives).
+- Added contrib program "config_sgen_solaris.sh" which should ease
+ setting up the 'sgen' driver on Solaris 8 (still no easy Solaris 7 or
+ below config).
+
+CHANGES, mtx 1.2.10:
+- Added FAQ and COMPATIBILITY (feel free to send me patches to these files!)
+- Added LICENSE
+- Added serial number to 'tapeinfo' output.
+- Fixed stupid syntax error in mtx.c (compiled with gcc, not with others!)
+- Fixed spec file for building rpms (maybe).
+- Added an 'erase' command (undocumented) for use on Linux for doing
+ short erases on tapes (the Linux device driver defaults to a long erase).
+- Made mtx inventory return an error code if the inventory
+ fails, so that we can wait for inventory to be completed at system
+ startup for libraries that auto-inventory (sigh).
+
+CHANGES, mtx 1.2.9:
+- Added an 'eject' command that, if directed to a tape drive, will eject the
+ tape, and for some autoloaders, if directed to LUN 1, will eject the entire
+ magazine.
+- Fixed the 'transfer' command to be 1 based rather than 0 based (sigh)
+- Now properly reports bar code for the tape that's in the tape drive.
+- Added some miscellaneous Python and Perl scripts to 'contrib'. Thanks
+ to Frank Samuelson for the Perl scripts.
+
+CHANGES, mtx 1.2.8:
+- Spec file has been changed to use the "portable" patch supplied by Red
+ Hat so it should work on Linux Alpha and Linux SPARC too... maybe...
+- Now will accept 4-byte element status for most element types, despite fact
+ that these don't comply with SCSI standards :-(. This should make many
+ older changers work, including HP optical changers.
+- Fixed PeripheralDeviceType table, courtesy of Rob Turk.
+- Now looks for CHANGER environment variable if a device is not specified
+ on the command line. If can't find CHANGER, then tries TAPE environment
+ variable.
+- Properly sets TransportElementAddress in the CDB for the MOVE MEDIUM command
+ with what was discovered via the READ_ELEMENT_STATUS command, rather
+ than setting them to zero (SCSI spec says that zero should be the default
+ arm, but at least one changer out there didn't like it).
+- Added a '--version' command (sigh).
+- Added an 'inventory' command for Breece Hill libraries that don't
+ automatically do an inventory at powerup.
+
+CHANGES, mtx 1.2.7:
+- Fixed problem w/single drive Exabyte 220 reporting element status data for
+ both drives (sigh).
+- some general cleanup in the barcode fallback code (what a cruft!). Discovered
+ that ADIC DAT AUTOCHANGER does not work w/mtx because it produces
+ gibberish (will apparently only produce one element status page per request).
+- Fixed the RPM .spec file to have updated file locations, doc locations.
+- Fixed MoveMedium to say 'Output' for direction, to make it work with
+ Solaris 8
+- Some changes to the Solaris low-level module to report more errors (though
+ it still doesn't work as well as the Linux low-level module). Should now
+ work properly with Solaris 2.6/7/8. (Solaris changes courtesy of Richard
+ Fish of Enhanced Software Technologies).
+
+CHANGES, mtx 1.2.6:
+- Fixed 'eepos' stuff to use | rather than || (whoops!)
+- Accept a 4-byte element descriptor for the robot arm for certain older
+ autochangers.
+
+CHANGES, mtx 1.2.5:
+- Added 'noattach' command. If on command line prior to other commands, forces
+ them to use the regular SCSI changer API rather than the _ATTACHED API,
+ no matter what the _ATTACHED bit in the Inquiry page said.
+- Created 'tapeinfo' program.
+
+CHANGES, mtx 1.2.4:
+- Major overhaul of element guts to dynamically allocate the arrays
+ using the result of a MODE_SENSE on the Element Address Assignment
+ Page. If mtx 1.2.3 works for you and mtx 1.2.4 does NOT work for you,
+ please un-comment the '#define DEBUG_MODE_SENSE' in file 'mtxl.c' and
+ EMAIL me the results.
+
+CHANGES, mtx 1.2.3:
+- Fixed the source storage element number stuff (again, sigh)
+- Because of above fix, 'next' etc. ought to work right again.
+
+CHANGES, mtx 1.2.2:
+- Fixed that it was saying everything was an Import/Export element (oops!)
+- Properly update the Import/Export element count.
+
+CHANGES, mtx 1.2.1:
+- Now explicitly output that a Storage element is in fact an Import/Export
+ element.
+- Added 'transfer' command to transfer between two Storage elements (so that
+ you can get a tape to an Import/Export element.
+- Added 'eepos' command for controlling tray retraction on the Breecehill
+ import/export trays. (Works with "load" and "unload" commands too, though
+ that is not documented on "mtx -h").
+
+CHANGES, mtx 1.2.0:
+- Re-numbered now that Leonard has asked me to take over maintenance of the
+ 'mtx' program.
+- Temporarily treat Import/Export elements the same as Storage elements. Need
+ to fix this eventually so that the GUI knows what kind of element we're
+ talking about.
+- Removed quotes from the source element # to make it easier to parse
+ from Perl or Python (just do a split on spaces).
+- Added sample program, 'mam2debug', showing how to use mtxl library for
+ your own programs (this happens to dump the Exabyte Mammoth 2's internal
+ debug buffer to a file, using the Mammoth2-specific SCSI commands to do so).
+
+CHANGES, mtxl 1.4.8:
+- Whoops, report logical rather than physical when I have to scan for
+ open slots :-).
+
+CHANGES, mtxl 1.4.7:
+- Update comment to reflect mtxl 1.4.6 stuff :-).
+- Fix the part of the code that scans for open slots as sources for media.
+
+CHANGES, mtxl 1.4.6:
+- Don't use _ATTACHED interface if it reports itself as a Medium Changer!
+
+CHANGES, mtxl 1.4.5:
+- Changed "whoops" compile error on Linux (teach me to release w/o testing on
+ the most popular platform!)
+- Changed declarations to remove compile-time warnings.
+
+CHANGES, mtxl 1.4.4:
+- Added support for FreeBSD. (uses pass device, NOT native FreeBSD ch device).
+- Change all 'int' DeviceFD to DEVICE_TYPE DeviceFD. Note that SGI and FreeBSD
+ use a struct * to access the CAM SCSI layer, rather than a file fd.
+- Fixed goof where I'd hard-wired max # of elements to 127 for testing
+ purposes (it should be sum of MAX_STORAGE_ELEMENTS + MAX_TRANSFER_ELEMENTS
+ + MAX_TRANSPORT_ELEMENTS from mtx.h -- change those if you need more
+ elements, bearing in mind that the code for ReadElementStatus in
+ mtxl.c maxes out at 255 elements unless you fix that too).
+- Cleaned some cruft out of the MOVE_MEDIUM code.
+- Must have GNU Make to process Makefile. In reality, I don't know of
+ any machine where we voluntarily use the native 'make' command, because
+ a) there's a half dozen native 'make' all with their own perverted
+ syntaxes, and b) most of them are brain dead beyond belief.
+
+CHANGES, mtxl 1.4.3:
+- Do an INQUIRY prior to doing a MOVE_MEDIUM or READ_ELEMENT_STATUS so that I
+ can detect the MChanger bit and use MOVE_MEDIUM_ATTACHED or
+ READ_ELEMENT_STATUS_ATTACHED commands instead.
+- Successfully tested with dual drives!
+- first, next, last now working
+- Created a man page
+- Created a 'make install', edit Makefile to alter destinations.
+
+CHANGES, mtxl 1.4.2:
+- Found the problem with the DAT changer! It was burping on the
+ 'bar code' bit... so I intercept that sense key, re-issue w/out the
+ 'bar code' bit, and success!
+- Added a 'TODO' file...
+
+CHANGES, mtxl 1.4.1:
+- Added 'invert' qualifier to 'load' and 'unload' commands to invert
+ the media (for HP optical jukeboxes). Type './mtx' by itself to
+ see the syntax.
+- Figured out why my code wasn't properly detecting errors --
+ turns out the 'sg' device can return ok
+ status even when there is sense data to be reported!
+- Still to fix: *still* isn't working right with my Seagate
+ 6-tape DDS-4 DAT changer... also need to put the
+ second drive into the Exabyte 220 to make sure the dual-drive stuff
+ works properly (!).
+
+CHANGES, mtxl 1.4:
+- Have now tested the barcode (volume tag) stuff. It works! (Well, there was
+an index-by-one problem that I had to squash, but after that...)
+- Changed to use SCSI Generic device API on Linux rather than
+SCSI_IOCTL_SEND_COMMAND API, which cut things off at 4095 bytes on i386
+Linux.
+- Added a bunch of debugging output that needs to be ripped out :-(.
+Make sure you remove the -DDEBUG from the Makefile, and probably
+ -DLONG_PRINT_REQUEST_SENSE too (unless you LIKE sense results that make
+sense!)
+- Still have annoying bug on Linux of only reading 1st 16 bytes of sense
+data. Alas, this appears to be a problem in the Linux 2.2 kernel, not in
+anything that we're doing :-(. Hmm... cdrecord has the same problem, Mr.
+Schilling says he's been saying it's a problem since 1997. Sigh.
+- Still need to test the dual-drive stuff!
+
+CHANGES, mtxl 1.3:
+- Hacked in the barcode (volume tag) stuff. NEED SOMEONE TO TEST
+WHETHER IT WORKS!
+- started issuing redundant initial READ_ELEMENT_STATUS with Allocation Length
+of 8 in order to get a BYTE_COUNT_OF_REPORT_AVAILABLE in order to calculate a
+better Allocation Length for the "real" READ_ELEMENT_STATUS. Trying to send a
+query to a small 6-tape changer with an Allocation Length suited for a
+200-element tape library was resulting in some errors and lockups on the
+part of the tape changer device.
+- first, last, next, previous are STILL broken. Sorry :-(.
+
+CHANGES, mtxl 1.2:
+
+- Changed many output messages to make them more easily parsed by
+scripts written in awk/perl/python
+- Extracted out a library of SCSI tape library routines usable by "C"
+programs (must be GPL'ed). Extensive re-arranging of code.
+- Added support for multiple drives.
+- Started adding support for tape changers that use the "MCHangr"
+bit rather than a separate ID or LUN.
+- Increased limits so we could deal with LARGE tape libraries.
+- Started adding support for barcode readers in said tape libraries
+- broke first, last, next, previous. Sorry :-(.
+- Added ability to chain commands on command line. Thus could say 'mtx -f
+/dev/sg4 unload 4 0 load 7 0' to unload a tape from drive 0 and load the
+tape in slot 7 into drive 0.
+
+