$Id: ChangeLog 4318 2016-05-07 11:18:20Z chrfranke $

2016-05-07  Christian Franke  <franke@computer.org>

	smartmontools 6.5

2016-05-06  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Samsung SpinPoint P80 SD: *J/P variant
	- Seagate Samsung SpinPoint M7E
	- Hitachi/HGST Travelstar Z5K500: *E680 variant
	- Hitachi Travelstar 7K500: HITACHI variant
	- Hitachi Ultrastar 7K3000: *A641 variant
	- HGST Ultrastar He8
	- Toshiba 2.5" HDD MQ01ABD...: *V variant
	- Seagate Desktop HDD.15: 5TB
	- Seagate SV35.3
	- Seagate SV35: *0001 variant
	- Seagate DB35: SATA variant
	- Western Digital Blue: 2-6TB, *Z variant
	- Western Digital RE4-GP: *2003* variant
	- Western Digital Re: Rename, 2-6TB
	- Western Digital Caviar Green: SATA 6Gb/s variant
	- Western Digital Caviar Black: *7501AAES*
	- Western Digital Blue Mobile: 2TB
	- Western Digital Elements / My Passport (USB, AF): *7500B*, 3TB

2016-05-01  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Samsung based SSDs: 840 EVO 750GB (ticket #692), 850 EVO M.2,
	  SM843T *HCFV* variant
	- USB: WD My Passport (0x1058:0x07ae) (ticket #686)
	- USB: JMicron JMS561 (0x152d:0x9561)

	nvmecmds.cpp: Enhance debug hex dump to sizeof Identify structs.
	Do not dump trailing zero bytes.

2016-04-27  Christian Franke  <franke@computer.org>

	nvmeprint.cpp, nvmeprint.h, smartctl.cpp, smartctl.8.in:
	Add NVMe support for 'smartctl -c'.  Print various drive and
	namespace capabilites.  Remove related info from '-i' output.

2016-04-24  Christian Franke  <franke@computer.org>

	nvmeprint.cpp: Fix formatting of error log with unset LBA fields.

	utility.cpp, utility.h: Skip leading blanks in format_char_array().
	Some NVMe devices return right aligned text fields.

	configure.ac, smartd.cpp: Remove include of netdb.h.
	No longer needed since r3712.

	smartd.cpp, smartd.conf.5.in: Remove support for '-m [sys]msgbox'.

2016-04-23  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Innodisk 3ME SSDs
	- Innodisk 3IE2/3MG2/3SE2-P SSDs: Rename, add 3SE2-P
	- Innodisk 3IE3/3ME3 SSDs: Rename, add 3IE3
	- USB: Buffalo MiniStation HD-PNFU3 (0x0411:0x0251) (ticket #683)
	- USB: Renesas uPD720231A (0x045b:0x022a)
	- USB: Toshiba Canvio (0x0480:0x0210, 0x0480:0xa20c)
	- USB: Samsung G2 Portable (0x04e8:0x6032): 2nd entry with -d sat
	- USB: Iomega LDHD-UPS (0x059b:0x0278)
	- USB: Iomega LPHD-UP (0x059b:0x0470)
	- USB: LaCie Desktop Hard Drive (0x059f:0x1016)
	- USB: SanDisk SDCZ80 Flash Drive (0x0781:0x5588)
	- USB: Seagate Backup Plus USB 3.0 (0x0bc2:0xab2[05])
	- USB: WD My Passport Ultra (0x1058:0x0822)
	- USB: WD Elements (0x1058:0x25a2)
	- USB: JMicron JMS561 (0x152d:0x1561)
	- USB: VIA VL711 (0x2109:0x0711): change to -d sat (ticket #594)
	- USB: Sharkoon QuickPort XT USB 3.0 (0x357d:0x7788)

2016-04-16  Christian Franke  <franke@computer.org>

	smartctl.cpp: Allow NVMe debug messages during --scan.
	Suppress "Device open changed type ..." message unless debug
	mode is enabled.

	atacmds.cpp: Remove duplicate POWER MODE error message.

	smartd.cpp: Remove dead increment (cppcheck: unreadVariable).
	Do not write localized decimal point to syslog().

	configure.ac, Makefile.am: Add '--with-update-smart-drivedb=no'
	option to disable drive database update script.  Useful if
	maintainers do not want the script due to security concerns
	and/or want to provide database updates as a separate package
	(Debian bug 804299, FreeBSD Bugzilla 208398).
	smartctl.8.in, smartd.8.in: Hide references to script if disabled.

	nvmeprint.cpp: Add Power State and Namespace info to '-i' output.
	Do not print unset or duplicate info unless debug mode is enabled.
	nvmecmds.cpp, nvmecmds.h: Add Identify Namespace support.

2016-04-15  Christian Franke  <franke@computer.org>

	os_linux.cpp: Fix harmless bug in errno check of HPTIO_CTL ioctl()
	calls.  Bug was introduced 10 years ago in r2237.

2016-04-15  Yuriy M. Kaminskiy  <yumkam@gmail.com>

	os_linux.cpp: Fix harmless bug in errno check of HDIO_DRIVE_TASK*
	ioctl() calls.  Bug was introduced 12 years ago in r1609, the fix
	in r4003 was incomplete.

2016-04-14  Christian Franke  <franke@computer.org>

	nvmeprint.cpp: Fix size factor of Data Units Read/Written counters.
	os_win32.cpp: Fix device count in win_nvme_device::open().

	Thanks to Oliver Bruchmann for bug reports and testing.

2016-04-12  Douglas Gilbert  <dgilbert@interlog.com>

	scsiprint.cpp: improve handling when no tape cartridge is
	in the tape drive.

2016-04-12  Alex Samorukov  <samm@os2.kiev.ua>

	scsiprint.cpp, smartd.cpp: workaround for the buggy ST8000NM0075/E001,
	request log page list with a fixed length (ticket #678).

2016-04-11  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: add Samsung SM863 series, ticket #681

2016-04-10  Christian Franke  <franke@computer.org>

	os_win32.cpp: Include also unknown and unsupported USB devices
	in device scan result.  Move USB device handling to new function.
	Add Windows Server 2016 to get_os_version_str().

	AUTHORS: Add Thomas Gatterweh.
	smartd.cpp: Check is_powered_down() also with '-n sleep'.

2016-04-10  Thomas Gatterweh  <thomas_gatterweh@hotmail.com>

	Prevent drive spin up by '-n standby' check on Windows (ticket #677):
	dev_interface.cpp, dev_interface.h:
	Add smart_device::is_powered_down().
	os_win32.cpp: Add win_ata_device::is_powered_down().  Open device
	without READ or WRITE access to prevent spin up.
	smartctl.cpp, smartd.cpp: Add check for is_powered_down().

2016-04-09  Christian Franke  <franke@computer.org>

	configure.ac, os_win32.cpp, smartd.8.in: Add NVMe DEVICESCAN
	support for Windows.

	smartctl.8.in, smartd.8.in, smartd.conf.5.in: Document NVMe
	support for Windows.

	nvmecmds.cpp, os_win32.cpp: Use NSID=0 for Identify Controller
	command.  This fixes NVMe access via Samsung driver on Windows.

2016-04-08  Christian Franke  <franke@computer.org>

	os_win.cpp: Add initial NVMe support for Windows.
	Successfully tested with Intel driver.
	Does not work with Samsung driver.

	Thanks to Minkyu Kim for testing.

2016-04-02  Christian Franke  <franke@computer.org>

	Fix memory leak if get_sat_device() is called with unknown 'type':
	scsiata.cpp: get_sat_device(): Delete 'scsidev' on error.
	dev_interface.h: Update documentation of get_sat_device().
	dev_interface.cpp: Fix use of get_sat_device().
	(All other uses of get_sat_device() are already sane).

	dev_interface.cpp, dev_interface.h: Add counter for objects derived
	from 'smart_device'.
	smartctl.cpp, smartd.cpp: Print error message if any objects remain
	on exit.

	os_linux.cpp: linux_megaraid_device: Remove unused member variable
	'm_busnum' (clang++: -Wunused-private-field) and the related ctor
	parameter.

	os_linux.cpp: Fixes suggested by clang analyser:
	Add or remove inconsistent nullptr checks.
	Remove dead increments.

2016-04-01  Douglas Gilbert  <dgilbert@interlog.com>

	scsiprint.cpp: add missing commas in peripheral_dt_arr and
        add number of elements (2**5) so that won't happen again.

2016-03-31  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: 
	 - add samsung SAMSUNG-MZ7PC series (ticket #679)
	 - add KINGSTON SKC400S37128G (SSDNow KC400) (ticket #673, patch provided
	   by the reporter)
	 - add SanDisk SSD Plus series (ticket #674)
	 - add XceedIOPS SSD series (ticket #672)
	 - add Crucial BX200 SSD (ticket #643)

2016-03-30  Christian Franke  <franke@computer.org>

	Add support for multiple '-d TYPE' options for device scanning:
	dev_interface.cpp, dev_interface.cpp: Add new version of
	scan_smart_devices() which accepts list of types.
	smartctl.cpp, smartd.cpp: Allow multiple '-d TYPE' options.
	Use new scan_smart_devices().
	smartctl.8.in, smartd.conf.5.in: Document it.

	Makefile.am: Add man page support for --with-nvme-devicescan.
	smartd.8.in: Document NVMe DEVICESCAN for Linux.

	configure.ac: Use `...` instead of $(...) due to possible parsing
	problems since r4260.  Remove workaround for related bash bug.

2016-03-28  Christian Franke  <franke@computer.org>

	Add NVMe DEVICESCAN support for Linux:
	configure.ac: Add --with-nvme-devicescan option.
	os_linux.cpp: Scan for '/dev/nvme[0-99]' if '-d nvme' is specified
	or --with-nvme-devicescan is set.
	smartctl.cpp: Add "NVMe" to --scan info.

	smartctl.8.in, smartd.8.in, smartd.conf.5.in: Enable NVMe
	sections also for FreeBSD.

	configure.ac: Write configuration summary also to config.log.

2016-03-28  Alex Samorukov  <samm@os2.kiev.ua>

	os_freebsd.cpp: Add initial FreeBSD NVMe support (ticket #657)

2016-03-27  Christian Franke  <franke@computer.org>

	ataprint.cpp: Support POWER MODE values introduced in ATA ACS-2
	(ticket #184, smartctl only).

2016-03-27  Thomas Gatterweh  <thomas_gatterweh@hotmail.com>

	atacmds.cpp, smartd.cpp: Support POWER MODE values introduced
	in ATA ACS-2 (ticket #184, smartd only).

2016-03-26  Christian Franke  <franke@computer.org>

	os_win32.cpp: Rearrange code such that no forward declarations
	are needed.

	os_freebsd.cpp, os_netbsd.cpp, os_openbsd.cpp, os_solaris.cpp,
	utility.cpp: Remove variable 'bytes'.  Only used for a memory
	leak check which was removed in r2629 (2008-08-29).

	os_solaris.cpp, utility.cpp, utility.h:
	Remove CustomStrDup(), use strdup() instead.

	dev_legacy.cpp, utility.cpp, utility.h:
	Remove FreeNonZero(), use free() instead.

	smartctl.cpp, smartd.cpp, utility.cpp, utility.h:
	Remove split_report_arg(), use sscanf() instead.

	Add basic NVMe support for smartd (-H -l error -W):
	Makefile.am, os_win32/vc10/smartd.vcxproj: Add nvmecmds.cpp to smartd.
	smartd.cpp: Add NVMeDeviceScan() and NVMeCheckDevice().
	smartd.8.in, smartd.conf.5.in: Document NVMe support.

	nvmeprint.cpp: Remove ary_to_str().
	utility.cpp, utility.h: Add format_char_array().

2016-03-24  Christian Franke  <franke@computer.org>

	dev_interface.cpp: Add missing 'usbprolific' to help text.

	nvmecmds.cpp, nvmeprint.cpp: Add support for '-q noserial'.

	smartd.cpp: Remove outdated declaration of getdomainname().

	utility.cpp: Add C++ language version to output of -V option.

2016-03-20  Christian Franke  <franke@computer.org>

	nvmecmds.cpp, nvmecmds.h, nvmeprint.cpp, nvmeprint.h, smartctl.cpp:
	Add options '-l error[,NUM]' and '-l nvmelog,PAGE,SIZE' for NVMe
	devices.
	scsicmds.cpp: dStrHex(): Don't print trailing spaces.
	smartctl.8.in: Document '-l error[,NUM]', '-l nvmelog,PAGE,SIZE'
	and '-r nvmeioctl'.

2016-03-18  Christian Franke  <franke@computer.org>

	Add basic NVMe support for smartctl (-i -H -A) on Linux:
	Makefile.am: Add new files.
	dev_interface.cpp, dev_interface.h: Add class nvme_device.
	linux_nvme_ioctl.h: New file imported from Linux kernel sources
	(include/uapi/linux/nvme_ioctl.h 9d99a8d 2015-10-09).
	nvmecmds.cpp, nvmecmds.h: New module with NVMe command wrapper
	functions for smartctl and smartd.
	nvmeprint.cpp, nvmeprint.h: New module with nvmePrintMain().
	smartctl.cpp: Add nvmePrintMain() support.
	os_linux.cpp: Add class linux_nvme_device.
	os_win32/vc10/smart*.vcxproj*: Add new files.
	smartctl.8.in: Document NVMe support.

2016-03-14  Douglas Gilbert  <dgilbert@interlog.com>

	scsiprint.cpp: work on LB provisioning corner cases; LBPRZ now
	3 bits wide (in response to ticket #664)

2016-03-14  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h:
	 - extend Apple SSD regexp (ticket #668)
	 - Add OCZ VeloDrive R (ticket #667)

2016-03-12  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: Add Phison Driven SSDs:
	 - Kingston UV300 SSD series (ticket #663)
	 - Kingston SSDNow KC310/V310
	 - HyperX Savage

2016-03-11  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: Add Kingston UV300 SSD series

2016-03-06  Christian Franke  <franke@computer.org>

	drivedb.h: Samsung based SSDs: Fix PM863 regexp, attribute IDs and
	name length (regression from r4227).

2016-03-03  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: Adata HD710 1TB USB3 (ticket #662)

2016-02-29  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: PM863 Series (ticket #661)

2016-02-28  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: OWC Aura Pro 480 GB (ticket #660)

2016-02-26  Christian Franke  <franke@computer.org>

	update-smart-drivedb.in: Use HTTPS for '-u sf' (ticket #659).
	Improve file modification check.
	update-smart-drivedb.8.in: Document changed URL.

	os_win32/vc10/smartctl.vcxproj: Workaround for missing support of
	'__func__' (included in C99 and C++11, but not in C++03).

2016-02-15  Alex Samorukov  <samm@os2.kiev.ua>

	drivedb.h: APPLE SSD TS064E (ticket #655)

2016-02-02  Douglas Gilbert  <dgilbert@interlog.com>

	scsiprint.cpp: output unavailable rather than 255C for Drive
        Trip temperature; skip background scan lpage for tape drives

2016-02-02  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Crucial/Micron MX100/MX200/M5x0/M600 Client SSDs: 250GB MX200
	  (ticket #644), M500 mSATA and M.2
	- OCZ Trion SSDs: Rename, add Trion 150
	- Innodisk 3ME3 SSDs: SATADOM-SL 3IE3

2016-01-25  Alex Samorukov  <samm@os2.kiev.ua>

	os_darwin: add launchctl script for the smartd and remove depricated one.
	"On current systems there is only one recommend way: launchd"

2016-01-24  Alex Samorukov  <samm@os2.kiev.ua>

	os_freebsd.cpp: fix possible reallocf with 0 bytes arg (ticket #640)
	drivedb.h: add Corsair Extreme SSD (ticket #642)
	os_darwin.cpp: fix error reporting if open fails

2016-01-23  Alex Samorukov  <samm@os2.kiev.ua>

	os_darwin.cpp: do not print bogus memory allocation error message if
	  there are no devices found

2016-01-22  Christian Franke  <franke@computer.org>

	Various fixes suggested by clang analyser (ticket #640):
	dev_areca.cpp: Fix check of ARCMSR_READ_RQBUFFER result.
	knowndrives.cpp: Add missing member initialization.
	smartd.cpp: Fix crash on missing argument to '-s' directive.
	Add missing variable initialization.  Remove redundant assignment.

2016-01-21  Alex Samorukov <samm@os2.kiev.ua>

	drivedb.h: Added ADATA SP550 SSD (ticket #638)
	os_freebsd.cpp: Reduce variable scope where possible (cppcheck: variableScope)
	os_openbsd/os_netbsd - removed never used warning code defines (cppcheck)

2016-01-21  Christian Franke  <franke@computer.org>

	ataprint.cpp, smartd.cpp: Don't issue SCT commands if ATA Security
	is locked (ticket #637).

2016-01-19  Alex Samorukov <samm@os2.kiev.ua>

	drivedb.h:
	 - Samsung PM871 SSD family (ticket #636)
	 - Fixed detection for Samsung SSD 850 EVO mSATA 120GB (ticket #635)
	 - Fixed Western Digital Caviar Black regexp, extended WD Black (ticket #631)

2016-01-06  Christian Franke  <franke@computer.org>

	drivedb.h:
	- SandForce Driven SSDs: Extra warning entry for buggy Corsair Force LS
	  (ticket #628)
	- Innodisk 3MG2-P SSDs: 1.8" variant
	- Innodisk 3ME3 SSDs
	- USB: Seagate Expansion Portable (0x0bc2:0x2322) (ticket #627)
	- USB: Jess-Link (0x0dbf:0x9001)

2016-01-01  Christian Franke  <franke@computer.org>

	Happy New Year! Update copyright year in version info.

2015-12-19  Christian Franke  <franke@computer.org>

	Makefile.am: Fix path of 'smart-pkg-uninstall' (Regression from r4190).

	update-smart-drivedb.8.in: Fix platform specific formatting.

2015-12-18  Alex Samorukov <samm@os2.kiev.ua>

	os_netbsd.cpp, os_openbsd.cpp: fix ioctl returtn value check
	os_darwin.cpp: fix error handling
	os_darwin: use /usr/local/ prefix to install on 10.11 (El Capitan)

2015-12-16  Douglas Gilbert  <dgilbert@interlog.com>

	scsiprint.cpp: stop tape drive looking for Solid State media
	log page (ticket #314).

2015-12-14  Douglas Gilbert  <dgilbert@interlog.com>

	scsiprint.cpp: fix compiler warning for is_tape. Clean code around
	handling of tape drives.

2015-12-14  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Intel 320 Series SSDs: 1.8" microSATA
	- Intel 53x and Pro 2500 Series SSDs: Rename, add 535 (ticket #625),
	  add Pro 2500
	- Intel 730 and DC S35x0/3610/3700 Series SSDs: Rename,
	  add S3510/3610, 1.2TB, 1.6TB
	- USB: LaCie (0x059f:0x106f) (ticket #624)
	- USB: WD My Passport (0x1058:0x071a, 0x1058:0x0816)
	- USB: Initio (0x13fd:0x1650)
	- USB: Unknown (0xabcd:0x6103)

	update-smart-drivedb.in: Add '-s SMARTCTL' option.
	update-smart-drivedb.8.in: Document it.

2015-12-07  Christian Franke  <franke@computer.org>

	configure.ac: Append 'svn' to list of download tools.

	update-smart-drivedb.in: Use HTTPS download by default.
	Add options '-t TOOL', '-u LOCATION', '--cacert FILE',
	'--capath DIR', '--insecure' and '--dryrun'.
	Add 'svn' as new download tool.
	Ignore differences in SVN Id string (re-added).
	Remove usage of 'which' command.

	update-smart-drivedb.8.in: Document the new options.

2015-11-23  Christian Franke  <franke@computer.org>

	atacmds.cpp: parse_attribute_def(): Init buffers before sscanf() call
	(cppcheck-1.71: uninitvar).

	scsiprint.cpp: Fix GLTSD bit set/cleared info messages (ticket #621).

2015-11-22  Christian Franke  <franke@computer.org>

	Makefile.am: Add NEWS file to svnversion.h target.

	os_win32/installer.nsi: Select 64-bit version on 64-bit Windows.
	Fix installation of runcmda.exe.  Update links.

2015-11-15  Christian Franke  <franke@computer.org>

	configure.ac: Check whether MinGW adds an application manifest.

	Makefile.am: Add default manifest for MinGW builds.

	os_win32/default.manifest: New default application manifest.
	Remove external application manifests.

	os_win32/installer.nsi: Use macros from 'LogicLib.nsh' where possible.
	Add missing MessageBox /SD options.
	Remove external application manifests.

2015-11-07  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Micron M500DC/M510DC Enterprise SSDs: Rename, add M510DC
	- SandForce Driven SSDs: Mushkin Chronos 7mm/MX/G2, Enhanced ECO2
	- Innodisk 3MG2-P SSDs
	- SiliconMotion based SSDs: Crucial BX100 (ticket #597)

2015-10-31  Christian Franke  <franke@computer.org>

	atacmds.cpp, atacmds.h, knowndrives.cpp, knowndrives.h:
	Read default SMART attribute settings from drivedb.h (ticket #465).
	Remove hard-coded attribute names and format settings.

	drivedb.h: Uncomment default settings to create the "DEFAULT" entry.
	Add ",HDD" or ",SSD" to HDD/SSD specific settings.

	smartctl.cpp, smartd.cpp: Use new database initialization function.

	Create branch RELEASE_6_4_DRIVEDB with last drivedb.h file
	compatible with smartmontools 6.4.

2015-10-22  Paul Grabinar  <pgrabinar@ocz.com>

	drivedb.h:
	- SandForce Driven SSDs: OCZ RevoDrive 350, Z-Drive 4500
	- Indilinx Barefoot 3 based SSDs: Add attributes,
	  OCZ ARC 100, Saber 1000, Vector 180, Vertex 460A
	- OCZ Intrepid 3000 SSDs: Intrepid 3700
	- OCZ Trion

2015-10-20  Christian Franke  <franke@computer.org>

	Reduce variable scope where possible (cppcheck: variableScope).

	Makefile.am: Remove *.s from files used to generate svnversion.h.

2015-10-18  Alex Samorukov <samm@os2.kiev.ua>

	fixes suggested by cppcheck:
	Check realloc result to avoid memory leak (memleakOnRealloc)
	Fix printf() signednsess (invalidPrintfArgType_sint)

2015-10-17  Christian Franke  <franke@computer.org>

	Various fixes suggested by cppcheck:
	Close FILE pointer before reopening it (cppcheck: publicAllocationError).
	Add missing member initializations to ctors (cppcheck: uninitMemberVar).
	Remove redundant nullptr check (cppcheck: nullPointerRedundantCheck).
	Remove redundant assignments (cppcheck: redundantAssignment).
	Clarify calculation precedence (cppcheck: clarifyCalculation).
	Use C++-style casts for pointer types (cppcheck: cstyleCast).
	Remove duplicate on both sides of '||' (cppcheck: duplicateExpression).
	Declare ctors with one argument as 'explicit'
	(cppcheck: noExplicitConstructor).
	Remove unread variables and assignments (cppcheck: unreadVariable).
	Fix signedness of sscanf() formats strings
	(cppcheck: invalidScanfArgType_int).

2015-10-14  Christian Franke  <franke@computer.org>

	configure.ac: Disable os_solaris_ata.o by default.
	Add --with-solaris-sparc-ata option to enable.
	Makefile.am: Exclude os_solaris_ata.s from source tarball
	(Debian bug 729842).
	os_solaris.cpp: Check for WITH_SOLARIS_SPARC_ATA instead of __sparc.

2015-10-13  Christian Franke  <franke@computer.org>

	Makefile.am: Fix error handling in various shell scripts.

2015-10-13  Casper Dik  <...>

	os_solaris.cpp: Detect SATA devices as SCSI devices.  This adds
	support for auto detection of SATA devices behind SAT layer.
	Set USCSI_SILENT flag to suppress /dev/console messages on command
	error.

2015-10-11  Christian Franke  <franke@computer.org>

	drivedb.h: SiliconMotion based SSDs: Transcend SSD370S, SSD420,
	update attribute 245 (ticket #595, ticket #602).

2015-10-10  Christian Franke  <franke@computer.org>

	Makefile.am: Use MKDIR_P to create directories
	(available since automake 1.10).

	os_win32.cpp: Detect USB ID if WMI reports type name "SCSI" instead
	of "USBSTOR".
	Detect USB ID also if drive letter is specified as device name.

2015-10-04  Christian Franke  <franke@computer.org>

	drivedb.h:
	- USB: Genesys Logic (0x05e3:0x0735)
	- USB: Addonics (0x0bf6:0x1001): unsupported (ticket #609)
	- USB: Initio (0x13fd:0x3920)
	- USB: JMicron JMS539 (0x152d:0x0539, 0x0100): Set from -d usbjmicron to
	  unsupported because some devices may require -d sat instead (ticket #552).
	- USB: JMicron (0x152d:0x0565) (ticket #607)
	- USB: VIA VL711 (0x2109:0x0711): unsupported (ticket #594)
	- USB: Hitachi Touro Mobile (0x4971:0x1024)

2015-09-25  Christian Franke  <franke@computer.org>

	scsiata.cpp: Ignore SAT ATA PASS-THROUGH fixed format sense data if no
	ATA status bit is set (ticket #612).

2015-09-23 Alex Samorukov <samm@os2.kiev.ua>

	drivedb.h: Innostor USB3.0 to SATAIII bridge (#611)

2015-09-21 Alex Samorukov <samm@os2.kiev.ua>

	drivedb.h: decode 188 attribute for the "Seagate Enterprise Capacity
	3.5 HDD" drives family, (see #551).

2015-09-04 Alex Samorukov <samm@os2.kiev.ua>

	Makefile.am: integrate darwin dmg build process to the Makefile

2015-09-03 Alex Samorukov <samm@os2.kiev.ua>

	os_darwin: Initial import of the files required to build
	OSX/smartmontools native package (see #555).

2015-08-27  Alex Samorukov <samm@os2.kiev.ua>

	Homepage URL updated from the sourceforge to smartmontools.org (r4120)

2015-08-26  Alex Samorukov <samm@os2.kiev.ua>

	os_darwin.cpp: Implement get_os_version_str() for the darwin.

2015-08-17  Christian Franke  <franke@computer.org>

	scsiata.cpp: Ignore bogus SCSI sense_key if ATA status in
	SAT ATA Return Descriptor indicates success (ticket #548).

2015-08-08  Christian Franke  <franke@computer.org>

	os_win32.cpp: Fix get_os_version_str() for Windows >= 8.1.
	Add Windows 10 Final.

2015-08-02  Christian Franke  <franke@computer.org>

	configure.ac: Remove '--disable-drivedb',
	'--enable-savestates', '--enable-attributelog'.
	Print error message if used.

2015-07-15  Christian Franke  <franke@computer.org>

	autogen.sh: Drop support for automake 1.7 - 1.9.x.
	Rework search for automake-VERSION.
	configure.ac: Drop support for autoconf 2.5x.
	Drop support for automake 1.7 - 1.9.x.
	Remove --with-docdir option.

2015-06-24  Alex Samorukov <samm@os2.kiev.ua>

	drivedb.h:
	- USB: SimpleTech 3.0 bridge (0x4971:0x8017), reported in #554

2015-06-04  Christian Franke  <franke@computer.org>

	smartmontools 6.4

2015-06-03  Christian Franke  <franke@computer.org>

	drivedb.h:
	- InnoDisk iCF 9000 CompactFlash Cards
	- SanDisk based SSDs: ReadyCache SSD
	- Seagate Barracuda 7200.14 (AF): Apple OEM
	- USB: Toshiba Canvio Basics (0x0480:0xa200)

	ataprint.cpp: Read General Purpose Log Directory only if GPL
	feature set is supported.  Improve support check of old logs
	for older drives which return empty SMART Log Directory.

2015-06-01  Christian Franke  <franke@computer.org>

	Makefile.am, smartd.8.in: Hide initscript documentation if
	initscriptdir is not configured.
	smartd.conf.5.in: Remove outdated info about default shell.

2015-05-30  Christian Franke  <franke@computer.org>

	Fixes for aacraid patch:
	aacraid.h: Fix _WIN32/_WIN64 checks.
	os_win32.cpp: Clarify copyright info in GPL header.
	Improve source code formatting.
	Fix build on Cygwin.  Fix HKEY leak.
	Fix member initialization order.
	Fix info_name and dev_type parameter order.
	Improve error handling.  Avoid unsafe sprintf().
	Remove unused variables.  Add help text.
	Use 0 as number of first aacraid controller as on Linux.

	smartctl.8.in, smartd.conf.5.in: Update '-d aacraid' documentation.
	AUTHORS: Add Nidhi Malhotra.

2015-05-30  Nidhi Malhotra  <nidhi.malhotra@pmcs.com>

	aacraid.h, os_win32.cpp:
	Add aacraid support for Windows (ticket #496).

2015-05-27  Christian Franke  <franke@computer.org>

	INSTALL: Update ./configure description.
	Remove info about old Linux kernel series.
	Update Windows info.

2015-05-19  Christian Franke  <franke@computer.org>

	ataprint.cpp: Print the Additional Product Identifier (OEM Id)
	regardless of '-q noserial' option.

	smartctl.8.in, smartd.conf.5.in: Clarify '-H' option and directive.

2015-05-17  Christian Franke  <franke@computer.org>

	drivedb.h:
	- USB: ViPowER USB3.0 Storage (0x0350:0x0038)
	- USB: Buffalo DriveStation HD-LBU2 (0x0411:0x01ea)
	- USB: Toshiba Stor.E Basics; (0x0480:0xa00e)
	- USB: Toshiba Canvio Desktop (0x0480:0xd011)
	- USB: Samsung M3 Portable USB 3.0 (0x04e8:0x61b3)
	- USB: Iomega (0x059b:0x0575)
	- USB: Genesys Logic GL3310 (0x05e3:0x0731)
	- USB: Freecom HD (0x07ab:0xfcd6)
	- USB: Apricorn SATA Wire (0x0984:0x0040)
	- USB: WD My Passport (0x1058:0x0830)
	- USB: WD My Book: Merge entries, add 0x1058:0x0900, 0x1058:0x1104
	- USB: Initio (0x13fd:0x3940)
	- USB: Super Top (0x14cd:0x6116): change to -d sat
	- USB: JMicron (0x152d:0x2590) (ticket #550)
	- USB: ASMedia ASM1053/1153 (0x174c:0x1[01]53)
	- USB: Verbatim Pocket Hard Drive (0x18a5:0x0237)
	- USB: Verbatim External Hard Drive (0x18a5:0x0400)
	- USB: VIA VL701 (0x2109:0x0701)
	- USB: Unknown (0x2537:0x106[68])
	- USB: Hitachi Touro Mobile (0x4971:0x1020)

2015-05-16  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Samsung SpinPoint T166: 250GB
	- Seagate Samsung SpinPoint M8 (AF): Rename, add Apple OEM
	- Seagate Samsung SpinPoint M9T
	- Seagate Samsung SpinPoint M9TU (USB)
	- Hitachi/HGST Travelstar Z5K320
	- HGST Travelstar Z5K1000
	- HGST Deskstar NAS: 128MB cache variants
	- HGST Ultrastar He6
	- Toshiba 2.5" HDD MK..51GSY
	- Toshiba 2.5" HDD MK..61GSY[N]: -v 9,minutes
	- Toshiba 2.5" HDD MK..61GSYB
	- Toshiba 2.5" HDD MK..75GSX
	- Toshiba 2.5" HDD MQ01ABB...
	- Toshiba 2.5" HDD MQ01ABC...
	- Toshiba 2.5" HDD MQ01ABF...
	- Toshiba 2.5" HDD MQ01UBB... (USB 3.0)
	- Toshiba 3.5" MD04ACA... Enterprise HDD
	- Toshiba 3.5" DT01ABA... Desktop HDD
	- Seagate Laptop Thin HDD: 7200 rpm variants
	- Seagate Constellation ES.2 (SATA 6Gb/s): HP OEM
	- Seagate Constellation.2 (SATA): HP OEM
	- Seagate Enterprise Capacity 3.5 HDD
	- Seagate Archive HDD
	- Western Digital AV-GP (AF): 500MB, EURX variants
	- Western Digital Red Pro
	- Western Digital Purple

2015-05-14  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Crucial/Micron MX100/MX200/M5x0/M600 Client SSDs:
	  MX200 *00 sizes (ticket #545)
	- Samsung based SSDs: PM851, SM841N, 850 EVO
	- Marvell based SanDisk SSDs: Extreme Pro, Ultra II (ticket #544)
	- Marvell based SanDisk SSDs: X110 mSATA, X300
	- SanDisk based SSDs: pSSD (USB), U110
	- USB: Samsung D3 Station 4TB (0x04e8:0x6125) (ticket #549)
	- USB: Seagate Backup Plus USB 3.0 (0x0bc2:0xa003)
	- USB: Seagate Backup Plus Desktop USB 3.0 5TB (0x0bc2:0xab31)
	- USB: JMicron (0x152d:0x3569) (ticket #546)

2015-05-10  Christian Franke  <franke@computer.org>

	scsicmds.cpp, scsicmds.h: Remove unused functions
	scsiReceiveDiagnostic() and scsiSmartIBMOfflineTest().
	Found by cppcheck.

2015-05-05  Christian Franke  <franke@computer.org>

	ataprint.cpp: Print ACS-3 device statistics DSN flags.
	Print device statistics page numbers in hex.
	smartctl.cpp: Allow hex argument for '-l devstat,PAGE'.

2015-05-02  Christian Franke  <franke@computer.org>

	ataprint.cpp: Print Transport Type for PATA and PCIe.
	Print diagnostic values if SATA version or speed is unknown.
	smartctl.8.in, smartd.8.in: Add Volker Kuhlmann to AUTHORS section.

2015-05-01  Christian Franke  <franke@computer.org>

	ataidentify.cpp: ACS-3/4 updates.
	ataprint.cpp: Add recent ACS-3/4 minor revisions.
	Add ACS-4 log 0x0f.  Add ACS-4 device statistics values and
	vendor specific statistics page.

2015-04-28  Christian Franke  <franke@computer.org>

	os_win32/installer.nsi: Fix possible loss of user PATH environment
	variable with length greater than NSIS max string length.

2015-04-26  Christian Franke  <franke@computer.org>

	do_release: New Signing Key.
	Makefile.am: Use make variables instead of autoconf variables
	if possible.

2015-04-24  Christian Franke  <franke@computer.org>

	smartctl.8.in, smartd.8.in: Rework AUTHORS section.
	INSTALL, Makefile.am, os_win32/installer.nsi:
	Remove WARNINGS file.
	WARNINGS: Remove this file.

2015-04-23  Christian Franke  <franke@computer.org>

	configure.ac: Add '--with-systemdenvfile=auto' option as new default.
	Remove no longer needed ENABLE_CAPABILITIES conditional.
	Makefile.am: Silence build of smartd.service file.
	Integrate all ENABLE_* conditionals in MAN_FILTER script.

2015-04-21  Christian Franke  <franke@computer.org>

	configure.ac: Print 'deprecated' warning for '--disable-drivedb',
	'--enable-savestates', '--enable-attributelog' options.
	Add 'yes|no' support to corresponding '--with-...' options.

2015-04-19  Christian Franke  <franke@computer.org>

	AUTHORS: Remove smartmontools-support list address.
	Remove defunct mail addresses.  Update smartsuite info.
	Add recent contributors.
	README: Refer to AUTHORS.

2015-04-18  Christian Franke  <franke@computer.org>

	os_win32.cpp: Add SAT autodetection based on vendor string from
	IOCTL_STORAGE_QUERY_PROPERTY.
	smartd.cpp: If SMART ENABLE command failed, continue if SMART is
	already enabled.

2015-04-17  Christian Franke  <franke@computer.org>

	os_win32.cpp: Detect SAT layer of certain Intel AHCI drivers.

2015-04-15  Christian Franke  <franke@computer.org>

	smartctl.8.in, smartd.8.in, update-smart-drivedb.8.in:
	Add REPORTING BUGS section.
	smartctl.8.in, smartd.8.in:
	Rename RETURN VALUE section to EXIT STATUS.
	smartd.8.in: Remove no longer used exit status 9.

2015-04-14  Christian Franke  <franke@computer.org>

	autogen.sh: automake 1.15 works.
	Print 'deprecated' warning if automake < 1.10 is used.

2015-04-08  Christian Franke  <franke@computer.org>

	configure.ac: Print 'deprecated' warning if autoconf 2.5x or
	--with-docdir option is used.
	Add comments to fix vim syntax coloring.
	smartctl.8.in, smartd.8.in, smartd.conf.5.in:
	Remove EXPERIMENTAL notes for features added before 6.3.

2015-03-29  Christian Franke  <franke@computer.org>

	ataprint.cpp: Read only required log pages of Extended Comprehensive
	Error log.  This adds support for logs with many pages (ticket #498).
	atacmds.cpp, atacmds.h, smartd.cpp: Add 'page' parameter to function
	ataReadExtErrorLog().

2015-03-22  Christian Franke  <franke@computer.org>

	os_linux.cpp, smartctl.8.in, smartd.8.in, smartd.conf, smartd.conf.5.in,
	smartd.cpp: Remove old Linux IDE device names (/dev/hdX) in man pages
	and help texts.

2015-03-21  Christian Franke  <franke@computer.org>

	smartd.8.in, smartd.cpp: Clarify smartd '--capabilities' option
	(ticket #523).

2015-03-20  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Crucial/Micron MX100/MX200/M5x0/M600 Client SSDs: Rename, add MX200
	- Sandforce Driven SSDs: ATP Velocity MIV, Mushkin Chronos Enhanced
	- Indilinx Barefoot 3 based SSDs: OCZ VERTEX 460, OCZ AMD Radeon R7
	- Intel 530 Series SSDs: mSATA variant
	- JMicron based SSDs: ADATA SP310
	- Plextor M3/M5/M6 Series SSDs: Rename, add M6M, M6S

2015-03-13  Douglas Gilbert  <dgilbert@interlog.com>

	scsiata.cpp
	- SCSI to ATA translation: from SAT-2 and later a SAT layer may
	  return ATA registers via fixed format sense data. Change to
	  additionally accept (partial) fixed format sense. In response
	  to ticket #296 and FreeBSD Bug 191717.

2015-03-10  Douglas Gilbert  <dgilbert@interlog.com>

	scsicmds.cpp, scsiprint.cpp
	- SCSI: when READ DEFECT yields sense of "... defect list not found"
	  bypass the corresponding report quietly. (ticket #343)

2015-02-08  Christian Franke  <franke@computer.org>

	drivedb.h:
	- USB: Buffalo Drivestation Duo (0x0411:0x01ce)
	- USB: Toshiba Canvio Basics (0x0480:0x0201, 0xa00d)
	- USB: Toshiba Stor.E Basics (0x0480:0xa00c)
	- USB: Toshiba Canvio ALU (0x0480:0xa100)
	- USB: Toshiba Canvio Desktop (0x0480:0xd000)
	- USB: Samsung S2 Portable (0x04e8:0x1f0a)
	- USB: Samsung S3 Portable (0x04e8:0x61c8)
	- USB: LaCie Rugged Triple Interface (0x059f:0x100c)
	- USB: Initio (0x13fd:0x3910)
	- USB: ASMedia (0x174c:0x5516)
	- USB: Innostor IS611 (0x1f75:0x0611)

2015-02-02  Christian Franke  <franke@computer.org>

	drivedb.h:
	- USB: Seagate FreeAgent XTreme (0x0bc2:0x3101)
	- USB: Seagate Expansion Portable (0x0bc2:0x232[01])
	- USB: Seagate Expansion External (0x0bc2:0x3321)
	- USB: Seagate FreeAgent GoFlex (0x0bc2:0x5070, 0x50a7, 0x6121)
	- USB: Seagate Slim Portable Drive (0x0bc2:0xab00) (ticket #517)
	- USB: Seagate Backup Plus Slim (0x0bc2:0xab21)
	- USB: ADATA HD650 (0x125f:0xa35a)
	- USB: JMicron JMS567 (0x152d:0x3562) (ticket #508)
	- USB: Innostor IS621 (0x1f75:0x0621) (ticket #517)

2015-01-25  Christian Franke  <franke@computer.org>

	drivedb.h:
	- JMicron based SSDs: Transcend SSD340 (ticket #348)
	- SiliconMotion based SSDs: Transcend SSD370 (ticket #468)

2015-01-24  Christian Franke  <franke@computer.org>

	os_win32.cpp: Add Windows 10 to get_os_version_str().

2015-01-01  Christian Franke  <franke@computer.org>

	Happy New Year! Update copyright year in version info.

2014-12-13  Christian Franke  <franke@computer.org>

	drivedb.h:
	- USB: SanDisk SDCZ80 Flash Drive (0x0781:0x5580)
	- USB: WD My Passport: Merge entries, add 0x1058:0x0810
	- USB: WD Elements Desktop: Merge entries, add 0x1058:0x107c
	- USB: WD Elements: Merge entries
	- USB: JMicron JMS539 (0x152d:0x0539): 2.06 and 28.03 support SAT
	  (ticket #504)
	- USB: JMicron JMS567 (0x152d:0x0567) (ticket #504)
	- USB: JMicron JMS566 (0x152d:0x2566)
	- USB: Hitachi Touro (0x4971:0x1014)

2014-12-13  Christian Franke  <franke@computer.org>

	utility.cpp, utility.h: Remove unused functions Calloc() and
	CheckFree().

2014-12-10  Christian Franke  <franke@computer.org>

	drivedb.h:
	- Western Digital Blue: Rename, *AZLX variant
	- Western Digital RE4: *FBYZ variant
	- Western Digital Green: Rename, add 5TB, 6TB
	- Western Digital AV: Rename, add 1TB, *BUCT variant
	- Western Digital Red: Rename, add 750GB, 5TB, 6TB
	- Western Digital Black Mobile
[--snip--]
