X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=ChangeLog;h=df34cf2aa948cdc2fbcd349d3528f06a37fde019;hb=HEAD;hp=2afff63d08a23088f66096fa412521110b9d4681;hpb=6b80b4d2c7b80037c557bae53e7ff42cfda4a2cb;p=mirror_smartmontools-debian.git diff --git a/ChangeLog b/ChangeLog index 2afff63..df34cf2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,1987 @@ -$Id: ChangeLog 4214 2016-01-24 22:53:37Z samm2 $ +$Id: ChangeLog 4883 2018-12-30 14:48:54Z chrfranke $ + +2018-12-30 Christian Franke + + smartmontools 7.0 + +2018-12-29 Christian Franke + + smartctl.8.in: Remove extra quote. + + INSTALL: Update or remove various outdated info. + +2018-12-28 Christian Franke + + configure.ac: Set drivedb.h branch to 7.0. + update-smart-drivedb.in: Update public key block. + update-smart-drivedb.8.in: Update key ID. + + Create new branch RELEASE_7_0_DRIVEDB. + Sign drivedb.h using new key ID 721042C5. + +2018-12-27 Christian Franke + + do_release: Add quotes to AC_INIT regex. + + configure.ac: Update PACKAGE_HOMEPAGE. + + configure.ac: Set release number to 7.0 + + smartctl.cpp: Set JSON format version to 1.0 (#766). + + scsiprint.cpp: Omit JSON values for unavailable counters from + Format Status log page. This ensures that each JSON value always + has the same type. + + drivedb.h: + - SandForce Driven SSDs: Kingston E50 (#756) + - WDC HGST Ultrastar He10 (#959, #997, #1093, #1111) + - Toshiba 2.5" HDD MQ04UBF... (USB 3.0) (#937) + - Seagate Barracuda 7200.10: HP OEM 160GB (#1037) + - Seagate Constellation ES.3: HP OEM 4TB + - Seagate Exos 5E8 (#1058) + - Seagate IronWolf Pro (#1076, GH issues/10, GH issues/14) + - WD Blue and Green SSDs: Rename, add Green (#980, #1073) + +2018-12-20 Donald Pierce <...> + + drivedb.h: + - Dell Certified Intel S3520 Series SSDs (#1147) + - Dell Certified Intel S4x00/D3-S4x10 Series SSDs (#1148) + +2018-12-20 Christian Franke + + drivedb.h: + - SandForce Driven SSDs: Kingston HyperX Fury (#805) + - Phison Driven SSDs: PNY CS2211 (#992) + - JMicron based SSDs: ADATA SX390 (#818), + KingSpec KDM-SA.51-008GMJ (#741) + - SiliconMotion based SSDs: KingSpec KSD, KingSpec T60, + Team Group L5Lite 3D (#1144), Transcend ESD400 + - USB: Transcend ESD400 (0x2174:0x2000) + + smartd.cpp: Remove unneeded '.c_str()' call. Update a comment. + + configure.ac: Use AS_HELP_STRING instead of AC_HELP_STRING + as suggested by autoupdate. Add missing check for 'enableval'. + +2018-12-16 Christian Franke + + smartd.8.in: Don't use empty lines before '.SH' macros. + + smartd.cpp: [_WIN32] Remove check for '-m [sys]msgbox'. + + nvmeprint.cpp: Don't print NSID in SMART/Health Information title + line. This log is always read with broadcast NSID. + +2018-12-16 Giuseppe Iuculano + + cciss.cpp: Fix kFreeBSD build (Debian kfreebsd.patch). + + smartd.service.in: Declaring After=syslog.target is unnecessary by + now because syslog is socket-activated and will therefore be started + when needed (Debian removesyslogtarget.patch). + +2018-12-11 Christian Franke + + smartd.conf.5.in: Update DEVICESCAN info and move it up to a + new section. Add section header for DEFAULT SETTINGS. + + smartctl.8.in, smartd.8.in, smartd.conf.5.in: Remove EXPERIMENTAL + notes for features added before 6.5. + + os_linux.cpp: Call realpath() with full /sys/* path instead of + device name (GH pull/23). This fixes detection of hpsa devices + (regression from r4603). + +2018-12-11 Harry Mallon + + scsinvme.cpp: Fix debug message. + +2018-12-05 Christian Franke + + smartctl.8.in, smartd.conf.5.in: Mark '-d sntjmicron' as + EXPERIMENTAL. + + drivedb.h: Enable JMicron JMS583 entry, use an internal -d option. + scsinvme.cpp: Detect this internal -d option and ask user to test + '-d sntjmicron'. + + scsinvme.cpp: Add missing include of config.h. + +2018-12-05 Harry Mallon + + Add '-d sntjmicron[,NSID]' device type for NVMe drives behind + JMicron USB to NVMe bridges (JMS583). + +2018-12-04 Christian Franke + + os_linux.cpp: Add '-d by-id' option to device scanning. + If specified, scan '/dev/disk/by-id/*' for symlinks to '/dev/sdX' + and remove duplicates. + +2018-12-02 Christian Franke + + drivedb.h: + - Samsung based SSDs: CM851 (#1109), SM863a (#1140) + - SiliconMotion based SSDs: Transcend 420K (GH issues/20), + Transcend 630 (#1038) + - Western Digital Gold: Re-add 8TB *2 variant + - USB: Buffalo HD-PNTU3 (0x0411:0x01e7), HD-LC3 (0x0411:0x027e) + - USB: ADATA NH13 (0x125f:0xa13a), HD710P (0x125f:0xa75a) + - USB: Verbatim External Hard Drive (0x18a5:0x0408) (#1107) + + AUTHORS: Add Harry Mallon. + +2018-12-02 Harry Mallon + + drivedb.h: USB: LaCie Rugged Mini HDD (0x059f:0x106b) + + Fix many typos. + + ataprint.cpp: Fix Form Factor string with bits set in reserved area + - Happens with APPLE SSD SD0256F + +2018-11-27 Christian Franke + + os_linux.cpp: Add USB ID detection for '/dev/sgN'. + + smartd_warning.sh.in: Fix typo (#1138). + +2018-11-27 Harry Mallon + + autogen.sh: allow automake 1.16 and 1.16.1. + +2018-11-25 Christian Franke + + drivedb.h: + - Crucial/Micron BX/MX1/2/3/500, M5/600, 1100 SSDs: Micron 1100 + alternative ID string (#1131) + - SandForce Driven SSDs: Comay BladeDrive E28 (#823), + MX-DS FUSION (#900), OCZ Deneva 2 *.C (#1119), OCZ-VERTEX3 LT + - Phison Driven SSDs: Kingston A400 with extra space in ID (#801) + - Samsung based SSDs: SM951 *HDGM variant (patch from #1113) + - SiliconMotion based SSDs: KingDian S400 (#1116) + - Western Digital Gold: 1TB, 2TB (#1035, #1047), 8TB (#1033), + 12TB, attribute 22 "Helium_Level" (patch from #1115) + +2018-11-25 Cameron Costa + + drivedb.h: Intel S4510 M.2 (#1121, #1122, #1123, #1133) + +2018-11-13 Christian Franke + + os_linux.cpp: Drop device scan support for obsolete devfs. + Implement new version of scan_smart_devices(). This avoids + duplicates if multiple '-d TYPE' options are specified. + + dev_interface.cpp, dev_interface.h: Add default implementation for + old version of scan_smart_devices(). + +2018-11-02 Oleksii Samorukov + + os_darwin.cpp, os_freebsd.cpp: fix return value in error paths + patch provided by rikard.falkeborn (github) + +2018-11-02 Christian Franke + + json.cpp: Allow UTF-8 characters in strings. + + ataprint.cpp: Add JSON support for '-l defects'. + Add numeric values to JSON 'interface_speed' info. + Replace local 'le*_to_uint()' with 'sg_get_unaligned_le*()'. + + ataprint.cpp, ataprint.h: Remove request to send '-l defects' output. + Remove 'pending_defects_info' flag. + smartctl.cpp, smartctl.8.in: Add '-l defects' to '-x' output. + +2018-10-25 Christian Franke + + json.cpp, json.h: Add 'pretty' print option. + smartctl.cpp, smartctl.8.in: Add '--json=c' option to disable + pretty-printing. + + ataprint.cpp, nvmeprint.cpp, smartctl.cpp: Use const references + for json::ref function parameters. + + json.cpp, json.h: Clean up usage of 'int64_t' and 'long long'. + Use PRI?64 instead of "ll?" in printf() format strings. + This re-enables build on older versions of MinGW. + +2018-10-23 Christian Franke + + json.cpp: Remove extra space after JSON key names. + + json.cpp, json.h: Remove return of self reference from operator=(). + + json.cpp, json.h: Change handling of unsafe and 128-bit integers: + Output as string 'KEY_s' and LE byte array 'KEY_le' if range exceeded + or verbose mode enabled. + smartctl.cpp, smartctl.8.in: Add '--json=v' option. + +2018-10-17 Christian Franke + + os_win32/popen_win32.cpp, os_win32/popen.h: New popen()/pclose() + for Windows. Unlike MSVCRT _popen(), it does not open a new console. + os_win32.cpp: Remove run_cmd(), use popen() instead. + os_win32/daemon_win32.cpp, os_win32/daemon_win32.h: Remove + daemon_spawn(). + smartd.cpp: Remove _WIN32 specific usage of daemon_spawn(), + use generic code with popen() also on Windows. + Place quotes around warning script path on Windows. + Makefile.am, os_win32/vc14/smart*.vcxproj*: Add new files. + +2018-10-17 Rick Chen + + scsiprint.cpp: Add SCSI information to JSON output as below: + - Drive trip temperature (#1079) + - Error counter log read/write/verify (#1079) + - Grown defect list (#1082) + - Percentage used endurance indicator (#1083) + +2018-10-14 Christian Franke + + drivedb.h: + - Crucial/Micron BX/MX1/2/3/500, M5/600, 1100 SSDs: MX500 M.2 + - Samsung based SSDs: Samsung SM841 (#1043), PM841 (#1052), + Samsung 860 EVO (#1034, #1040, #1051, #1059), + Samsung 860 PRO (#1010, #1068, #1102, #1103, #1104), + Samsung Portable SSD T5 (#1050) + - USB: Samsung Portable SSD T5 (0x04e8:0x61f5) (#1050) + + os_darwin.cpp: Add missing braces to SMART RETURN STATUS LBA register + setting. Detected by g++ 7.3 -Wmisleading-indentation. + +2018-10-11 Christian Franke + + os_win32.cpp: Decode Windows 10 1809 and Server 2019 build number. + Move "(64)" to end of version info. + + os_linux.cpp: Fix '-d megaraid' open crash on missing /proc/devices. + There is no /proc/devices on ESXi (see #800) and WSL. + +2018-10-09 Christian Franke + + smartd.cpp: Move code for '--capabilities' to separate functions. + + smartd.cpp: Rework main loop. + + smartctl.cpp, smartd.cpp, os_linux.cpp, os_solaris.cpp: + Replace all uses of EXIT() macro. Use early return where possible, + use throw otherwise. + utility.h: Remove EXIT() macro. + + utility.cpp: Detect more C++ language versions for -V option. + + drivedb.h: + - Crucial/Micron BX/MX1/2/3/500, M5/600, 1100 SSDs: Rename, + BX500 (#1095) + - Seagate Samsung SpinPoint F4 EG (AF) (#1090) + - Seagate Momentus 5400.6: Add '-F xerrorlba' (#1094) + - USB: JMicron JM562 (0x152d:0x0562) (IDENTIFY only, see #966) + - USB: VIA VL715 (0x2109:0x0715) (#1098) + +2018-10-09 Anthony D'Atri + + drivedb.h: (#1096) + - Samsung based SSDs: Samsung PM863a (#951, #952, #961, #962, #972) + - Intel 730 and DC S35x0/3610/3700 Series SSDs: Dell-flavor S3500 + +2018-10-09 Thomas Niedermeier + + drivedb.h: Samsung PM883 and SM883 (GH pull/19) + +2018-09-27 Christian Franke + + INSTALL: Update list of default ./configure options. + + utility.cpp: Add check of sg_get_unaligned_[bl]e16() and *32 to + check_endianness(). + + utility.cpp, utility.h: Optionally use C++11 'std::regex' instead of + POSIX regex(3). + configure.ac: Add option '--with-cxx11-regex'. + + utility.cpp, utility.h: Simplify 'class regular_expression', remove + unneeded flag parameters, remove unused function. + atacmds.cpp, knowndrives.cpp, os_win32.cpp, smartd.cpp: Adjust usage + accordingly. + + configure.ac, utility.cpp, utility.h: Remove replacement for missing + 'strtoull()'. + + configure.ac: Change default for '--with-nvme-devicescan' to 'yes' + on Linux and Windows. Keep 'no' on FreeBSD, NetBSD and Darwin. + +2018-09-26 Christian Franke + + configure.ac: Print warning if systemd(1) is present but + libsystemd-dev package is missing. + + smartd.cpp: Notify READY=1 to systemd just before first sleep() to + ensure that the signal handlers are set. + + smartd.cpp: Always ignore failure of ATA SMART ENABLE command if + '-T permissive' is specified. Useful for testing on virtual + machines. + +2018-09-21 Christian Franke + + configure.ac, os_linux.cpp: Remove redundant define WITH_SELINUX. + + configure.ac: Check for 'libcap-ng' only on Linux. + Rework __USE_MINGW_ANSI_STDIO test for MinGW runtime. + Print 'deprecated' warning for '--without-working-snprintf'. + + Add systemd(1) notify support to smartd (#1081): + configure.ac: Add option '--with-libsystemd'. + Makefile.am: Add linker flag and man page conditional. + smartd.cpp: If environment variable NOTIFY_SOCKET is set, use + sd_notify(3) to inform the service manager about state changes. + smartd.service.in: Set 'Type=notify'. + smartd.8.in: Document new functionality. + +2018-09-16 Christian Franke + + atacmds.cpp: Avoid possible virtual call in dtor + (cppcheck 1.84: virtualCallInConstructor). + + os_win32.cpp: Use unsigned int for bit shifts + (cppcheck 1.84: shiftTooManyBitsSigned). + + Makefile.am: Set HAVE_WORKING_SNPRINTF also in VC14 config.h. + + os_netbsd.cpp: Add spaces between string literals and macros for + C++11 (g++ -Wliteral-suffix). + + ataprint.cpp: Add JSON support for '-l selective'. + + drivedb.h: Update or remove links in warning messages. + + drivedb.h: Crucial/Micron BX300, MX1/2/3/500, M5/600, 1100 SSDs: + - Rename, + - Crucial BX300 (GH pull/16, #963), + - Crucial MX300 750GB, + - Crucial MX500 (#977, #994, #995, #1004, #1024), + - Micron M500IT (#958), + - Micron 1100 OEM (GH pull/17), + - fix name of attribute 202 and 248. + +2018-09-12 Christian Franke + + ataprint.cpp: Get JSON values 'temperature.op_limit_min/max' from + Device Statistics. + + atacmds.h, ataprint.cpp: Print ACS-4 max operating temperature + from SCT Status. + + Makefile.am: Remove define of 'HAVE_GETOPT_LONG'. + os*.cpp: Remove remaining checks for 'HAVE_GETOPT_LONG'. + + configure.ac: Remove check for 'uname()'. + os_generic.cpp, os_qnxnto.cpp: Remove function 'unsupported()'. + + drivedb.h: + - HGST Deskstar NAS: *6040ALE614 (#935, #1089) + - HGST Ultrastar DC HC520 (He12) (#1086) + +2018-09-12 Anthony D'Atri + + drivedb.h: Micron 5100 Pro / 5200 SSDs (#1071) + +2018-09-11 Oleksii Samorukov + + os_freebsd.cpp: Fix build on FreeBSD 12, patch by fernape@ + +2018-09-10 Christian Franke + + drivedb.h: + - Seagate Enterprise Capacity 3.5 HDD: V5.1 (#1087) + - Seagate Exos X12 HDD (#1042, #1046) + - Western Digital VelociRaptor (AF): WD5000BHTZ (patch from #1041) + +2018-09-10 David Purdy + + drivedb.h: Phison Driven SSDs: Kingston A400 (#801) + +2018-09-02 Christian Franke + + dev_intelliprop.h: Fix copyright info. + + ataprint.cpp, nvmeprint.cpp: Change JSON value 'power_on_hours' + to 'power_on_time.hours'. Add '.minutes' if available. + scsiprint.cpp: Add JSON values 'power_on_time.hours/minutes' from + Seagate factory lpage or from background scan lpage. + +2018-08-20 Christian Franke + + Add missing license headers to some source files. + +2018-08-19 Christian Franke + + Add SPDX-License-Identifier to all files with GPL header (#919). + Remove GPL headers. Remove outdated info about smartsuite. + + getopt/*, regex/*: Replace with current version from glibc 2.28 + (2018-08-01). Add _GETOPT/REGEX*_STANDALONE configurations. + Makefile.am, os_win32/vc14/smart*.vcxproj*: Set *_STANDALONE. + Add new files. + + examplescripts/README: Update mailing list address. + os_solaris_ata.s: Remove old mailing list address. + + os_win32/wbemcli_small.h: Remove this file. + The file is usually provided by recent MinGW packages. + configure.ac: Remove check for . + Makefile.am, os_win32/wmiquery.h, os_win32/vc14/smart*.vcxproj*: + Remove usage of 'wbemcli_small.h'. + + ataprint.cpp, nvmeprint.cpp: Add JSON values 'power_cycle_count' + and 'power_on_hours'. + json.cpp, json.h: Add 'set_if_safe_*' member functions. + +2018-08-13 Christian Franke + + ataprint.cpp: Add JSON support for '-l devstat'. + Add JSON support also for old SCT Status format. + +2018-08-10 Christian Franke + + smartctl.cpp, os_win32/wmiquery.h: Add missing printf() format checks. + This also silences -Wformat-nonliteral warnings from clang++ 5.0. + + os_win32.cpp: Increase IOCTL_ATA_PASS_THROUGH timeout to 60 seconds. + +2018-08-10 Zhdan Bybin + + drivedb.h: + - Intel S3520 Series SSDs (#985) + - Intel S4510/S4610/S4500/S4600 Series SSDs (#912, #928, #1000) + +2018-08-04 Christian Franke + + Remove int64.h, use or instead. + + configure.ac, utility.cpp, utility.h: Add 128-bit unsigned integer + to string conversion. Provides full integer precision if compiler + supports '__int128' (e.g. x86_64 GCC and CLang). + json.cpp, nvmeprint.cpp: Use these new functions. + Makefile.am: Adjust config-vc14 target. + +2018-08-02 Christian Franke + + scsicmds.h, scsiprint.cpp: Add support for SAS host managed drives + (patch from #1045). + +2018-08-01 Christian Franke + + dev_interface.cpp, scsiata.cpp, smartctl.8.in, smartd.conf.5.in: + Add option '-d scsi+TYPE' to disable SAT auto detection. + Useful in conjunction with TYPEs 'aacraid' and 'cciss' (#871). + +2018-07-31 Christian Franke + + drivedb.h: + - Phison Driven SSDs: Kingston DC400 (#933, #1011), move GOODRAM to ... + - Phison Driven OEM SSDs: ... here, PC Engines msata16d (#967), + INTENSO SATA III TOP (#1053) + - USB: Iomega MDHD500-U (0x059b:0x0274) (#1003) + - USB: Freecom (0x07ab:0xfc17) (#1049) + - USB: JMicron JMS539 (0x152d:0x0539/0x2801) (patch from #970) + - USB: JMicron (0x152d:0x0561) (#945) + - USB: JMicron JMS567 (0x152d:0x2567) (#948) + - USB: JMicron (0x152d:0x578e) (#987) + + json.cpp: Add missing ';' to '--json=g' output of 128-bit values. + +2018-07-29 Christian Franke + + os_win32.cpp: Decode Windows Server 1803 build number. + Improve search for actual CSMI port number. + +2018-06-21 Christian Franke + + os_linux.cpp: Rework handling of glob() return code. + Don't abort device scan on missing '/dev/discs' (#1036). + + os_win32.cpp: Decode Windows 10 1803 build number. + Silence g++ 7.3 -Wformat-truncation warning. + +2018-04-19 Christian Franke + + utility.cpp, utility.h: Use array reference for buffer parameter + of dateandtimezoneepoch(). Remove no longer used dateandtimezone(). + + utility.cpp: Add check of sg_get_unaligned_[bl]e64() to + check_endianness(). + +2018-04-16 Douglas Gilbert + + switch usage of unaligned.h to sg_unaligned.h which is functionally + the same. sg_unaligned.h is the same header used by libsgutils which + is the basis of the sg3_utils, sdparm and ddpt packages available on + many of the same architectures as smartmontools is. This change + introduces a "sg_" prefix on the inline functions defined + sg_unaligned.h . The new header has specializations for big and little + endian machines that depends on the non-standard bswap_16(), bswap_32() + and bswap_64() calls. They are defined in the byteswap.h header which is + a GNU extension. According to the 'net both gcc and clang use intrinsics + {assembler ?} to implement these calls. If the byteswap.h header is not + present on the build machine, the generic implementations will be + used for the "unaligned" family of functions. Additionally the generic + implementations can be imposed with './configure --disable-fast-lebe'. + Developers may need to use './autogen.sh' prior to their normal build + sequence. Please report any problems to the author. + +2018-03-28 Christian Franke + + ataprint.cpp, nvmeprint.cpp, scsiprint.cpp: + Output JSON 'user_capacity' as 'blocks' and 'bytes'. + Handle both as unsafe ints. + + smartd.cpp: Ignore remaining percentage in initial check of + self-test execution status. + + scsiata.cpp: Fix device type info for 'usbcypress'. + + os_linux.cpp: Fix device scan crash on missing /proc/devices. + + update-smart-drivedb.in, update-smart-drivedb.8.in: + Add option '-u github'. + +2018-03-20 Christian Franke + + nvmeprint.cpp: Add initial JSON support for '-i', '-H' and '-A'. + + json.cpp, json.h: Add support for 64 and 128 bit unsigned + integers. Add 'set_unsafe_*()' member functions to print unsigned + integers >= 53 bit as JSON number and string. + +2018-03-07 Douglas Gilbert + + smartd.cpp: + - continue to use READ CAPACITY(10) first on unseen + SCSI devices but once we discover the need for + READ CAPACITY(16) use it for subsequent accesses + dev_interface.h: + - struct scsi_device: add set_rcap16_first() and + use_rcap16() const methods + scsicmds.cpp: + - use scsi_device::set_rcap16_first() when READ + CAPACITY(10) reports 32 bits can't represent the + number of blocks + +2018-03-06 Alex Samorukov + + drivedb.h: + - add Transcend PSD SSD family (#979) + - add Toshiba HK4R Series SSD (#898) + - extend Western Digital Re regexp (#896) + - extend Wester Digital Se regexp (#953) + - add Smartbuy ignition plus (#976) + +2018-03-05 Gabriele Pohl + + drivedb.h: + - Add Seagate IronWolf 12TB ST12000VN0007-2GS116 (#988) + +2018-03-05 Alex Samorukov + + drivedb.h: add Seagate Barracuda Pro family (#981) + +2018-03-01 Alex Samorukov + + os_freebsd.cpp: Fix build under -CURRENT (patch by cy@) + +2018-02-28 Alex Samorukov + + drivedb.h: + - Add SanDisk SDSSDH2128G (#982) + +2018-02-27 Alex Samorukov + + drivedb.h: + - extend PLEXTOR PX regexp (#934) + - add Seagate Enterprise NAS HDD family (#946) + - add SanDisk SDSA6MM-* family (#965) + - fix Seagate Laptop HDD regexp (#955) + - add Seagate Barracuda Compute series (#927) + - extend Seagate Enterprise Capacity 3.5 HDD regexp (#956) + +2018-02-26 Alex Samorukov + + drivedb.h: + - add Seagate XF1230 SSD (GH: issues/4) + - add Intel SSD Pro 5400s Series (GH: pull/5) + - add SanDisk-SD8SN8U-256G-1006 (GH: pull/3) + - add Toshiba Q300 SSD series (#932) + - extend HGST Deskstar NAS regexp (#975) + - add KINGSTON SNS4151S316GD SSD (#902) + +2018-02-20 Christian Franke + + os_netbsd.cpp: Apply patch-os_netbsd.cpp 1.1 (2017-12-15) from + pkgsrc.se/sysutils/smartmontools: Add missing . + + configure.ac, int64.h: Remove support for pre-C99 environments without + and . + + configure.ac: Add '-Wformat=2 -fstack-protector-strong' unless + CXXFLAGS include other '-W' or '-f' options. + +2018-02-16 Christian Franke + + drivedb.h: + - USB: Default to '-d sat' for Toshiba (0x0480), Seagate (0x0bc2), + Western Digital (0x1058), Initio (0x13fd), ASMedia (0x174c). + Keep known exceptions. Merge some entries. + +2018-02-08 Douglas Gilbert + + nvme on windows: just some code comments. Seems as though + W10 tries to completely neuter the idea of a pass-through. + +2018-01-06 Douglas Gilbert + + scsi subsystem: improve dStrHex() signature, adjust + invocations. Adjust scsi_format_id_string() signature. + Add smartctl support for Pending Defects (sub-)log page; + seems similar to 'smartctl -l defects' but that is ATA + only. Needs to be generalized (as it will probably appear + in NVMe also). + +2018-01-04 Douglas Gilbert + + scsi subsystem: preparation for decoding more log pages. + +2018-01-01 Alex Samorukov + + os_freebsd.cpp: fix build with CLANG/6. Patch provided by + Dimitry Andric, PR 224826 + +2018-01-01 Christian Franke + + Happy New Year! Update copyright year in version info. + +2017-12-30 Douglas Gilbert + + scsi subsystem: add code to check for both log pages + and subpages, subpages were not checked for previously. + Add decoding for Format Status log page. Associated + cleanups. Tighten checking for Seagate and Hitachi + vendor specific log pages; '-T permissive' will relax + checks back to the situation before this patch + +2017-12-29 Douglas Gilbert + + unaligned.h: fix inconsistency in function argument + of get_unaligned_be24() + +2017-12-29 Douglas Gilbert + + Add --enable-scsi-cdb-check option to ./configure that + results in a SCSI cdb sanity check prior to SCSI generic + pass-through in Linux. [So it does not sanity check + Megaraid and 3ware (etc) pass-throughs (but could).] When + selected defines SCSI_CDB_CHECK in config.h . This may be + temporary. This patch is an attempt to catch strange + frames (perhaps SATA FIS) being sent to the SCSI + pass-through. + +2017-12-29 Douglas Gilbert + + Rework scsiGetSize() and remove scsiGetProtPBInfo(). + Convert scsicmds.cpp to use unaligned.h get and put. + +2017-12-27 Alex Samorukov + + Add unaligned.h header file to the Makefile.am + +2017-12-27 Douglas Gilbert + + Add unaligned.h header file; has get and put variants of + unaligned be16,24,32,48,64 and le16,24,32,48,64 copies + plus all_zeros() and all_ffs() helpers. All inline. + +2017-12-27 Douglas Gilbert + + Remove UINT8, INT8, UINT32 and INT32 typedefs in favour + of the types from ; for example uint8_t + +2017-12-27 Douglas Gilbert + + nvmecmds.cpp: according to NVMe 1.3a spec, the SMART/ + health information log page is global and should take + the global nsid (all ff_s). It also says the Error + info lpage is "global. Broke WD Black PCIe (NVMe) + SSD but worked on Intel SSDs. Fix; could break others. + +2017-12-27 Douglas Gilbert + + os_freebsd.cpp: on error was setting set_nvme_err() to 1, + not the actual NVMe status value; fix. + +2017-12-24 Alex Samorukov + CircleCI: add FreeBSD cross compilation + +2017-12-22 Alex Samorukov + configure.ac: add -lsbuf to FreeBSD libs to fix static builds. + +2017-12-21 Douglas Gilbert + + scsiprint.cpp: Start some JSON work. Other cleanups and helper + functions; potentially new header for those helpers. + +2017-12-17 Christian Franke + + ataprint.cpp: Add JSON support for '-g all', '-l scterc' and + '-l scttemp'. + + ataprint.cpp: Don't print obsolete SCT Support Level (#940). + +2017-12-14 Christian Franke + + ataprint.cpp: JSON '-A' output: Add booleans and string for attribute + flags. Remove string array. Rename table. + + ataprint.cpp: Add JSON support for '-l [x]error'. + +2017-12-13 Christian Franke + + smartctl.cpp, smartctl.8.in: Rename '--json=a' to '--json=o'. + + smartctl.cpp: Show command line error messages in JSON output. + + ataprint.cpp: Add JSON support for '-l [x]selftest' and + '-l directory'. + + atacmds.cpp, atacmds.h: Move self-test print functions to ... + ataprint.cpp: ... here. + smartd.cpp: Rework self-test error counting. + + ataprint.cpp: Add JSON support for '-c'. + + atacmds.cpp, atacmds.h: Change return type of capability checks to + bool. Declare simple checks inline. + +2017-12-07 Christian Franke + + json.cpp: Avoid 'cbegin()' and 'cend()' to fix build with older + libstdc++. + + json.cpp, json.h, smartctl.cpp, smartctl.8.in: Add '--json=s' option. + Outputs JSON object elements sorted by key. + Add '--json=g' option. Outputs JSON structure suitable for grep. + +2017-12-05 Christian Franke + + ataprint.cpp: Add JSON support for '-l sataphy'. + + smartctl.cpp: Add JSON support for '--scan'. + Add similar device info to regular JSON output. + ataprint.cpp, scsiprint.cpp: Remove now duplicate "protocol" element. + + smartctl.cpp: Silence false positive warnings from clang analyzer. + +2017-12-02 Christian Franke + + Add initial support for smartctl JSON output mode (#766): + json.cpp, json.h: New files with JSON support class. + Makefile.am, os_win32/vc14/smartctl.vcxproj*: Add new files. + ataprint.cpp: Add initial JSON support for -i, -H, -A and -l [x]error. + scsiprint.cpp: Add initial JSON support for -i and -H. + smartctl.cpp, smartctl.h: Add '-j, --json' option, global JSON object + and new print functions. + smartctl.8.in: Document new functionality. + + atacmds.cpp: Remove no longer needed variable 'must_swap'. + + os_win32.cpp: Remove include of smartctl.h, add extern declaration. + Decode Windows Server 1709 build number. + + configure.ac, os_linux.cpp: Always include if available. + This silences a 'deprecated' warning from glibc 2.25 headers. + +2017-11-20 Alex Samorukov + + os_netbsd.cpp (fix regressions in smartmontools 6.6) + - fix BE platforms support, tested on sparc64 (#943) + - fix name based device type detection (#943) + - Add byte-swapping for IDENTIFY command and remove related hacks from the + atacmds.cpp (#117) + +2017-11-18 Alex Samorukov + + drivedb.h: + - Add Swissbit C440 industrial cf card series (#942) + - Fix Innolite Satadom D150QV entry (#939) + +2017-11-16 Christian Franke + + smartd.initd.in: Remove FreeBSD section. + + os_linux.cpp: Add missing braces to 3ware SELinux code. + This possibly harmless bug was introduced ~10 years ago in r2510. + It is now detected by g++ 6.3 -Wmisleading-indentation warning. + + update-smart-drivedb.in: Include configured PATH in help and + error messages. Allow digits in SVN Id user name. + + configure.ac: Prepend '/usr/local/bin' to default for + '--with-scriptpath' (#941). + +2017-11-15 Christian Franke + + smartd.cpp: Use 'sigaction()' instead of deprecated 'sigset()' + or 'signal()'. + configure.ac: Add '--with-signal-func' to select old function + if needed. + + configure.ac: Remove '-with-initscriptdir=[auto|yes]' heuristics. + The default init script is no longer useful on most platforms. + INSTALL: Update related documentation. + + configure.ac, Makefile.am: Use smartd.cygwin.initd.in on Cygwin. + smartd.cygwin.initd.in: New file. + smartd.initd.in: Remove Cygwin section. + + configure.ac: Make some header checks platform specific. + Print '--with-nvme-devicescan' warning also on FreeBSD. + Remove '--with-solaris-sparc-ata' warning. + + examplescripts/Example6: Add enhancements from Fedora package. + +2017-11-13 Christian Franke + + drivedb.h: + - Western Digital Red: WD80EZZX + - USB: WD My Book (0x1058:0x25ee) (Red Hat Bugzilla 1446533) + +2017-11-13 Matt Coates + + drivedb.h: USB: Seagate Backup Plus 4TB (0x0bc2:0xab43) (#926) + +2017-11-10 Alex Samorukov + + drivedb.h: add SanDisk iSSD SDIS6BM (#923) + +2017-11-08 Christian Franke + + Makefile.am, os_win32/installer.nsi: Add VERSIONINFO resource to + installer. + + os_win32/installer.nsi: Remove get/set of old 'Install_Dir' registry + entry. No longer needed for recent versions of GSmartControl. + Remove deletion of old .exe.manifest files. + Search also for 64-bit version of Notepad++. + + ataprint.cpp: Fix detection of Device Statistics log with + 256 sectors (#922). + + os_linux.cpp: Use 'realpath()' (BSD, POSIX) instead of + 'canonicalize_file_name()' (GNU extension). + This fixes build on systems with musl libc (#921). + +2017-11-06 Alex Samorukov + + os_freebsd.cpp: implement NVMe device scan (#687) + os_freebsd.cpp: show hint if /dev/nvd* is specified as device name + +2017-11-05 Christian Franke + + configure.ac: Add separate version number for drivedb.h branch. + +2017-11-05 Christian Franke + + smartmontools 6.6 + +2017-11-04 Christian Franke + + drivedb.h: + - Apple SD/SM/TS...E/F/G SSDs: Rename, add 1TB + - Innodisk 3IE3/3ME3/3ME4 SSDs: Rename, add 3ME4 + - Intel 730 and DC S35x0/3610/3700 Series SSDs: 150GB, *G7 + (ticket #750) + - USB: Toshiba Canvio (0x0480:0xa202, 0xa207) + - USB: Seagate Expansion Desktop (0x0bc2:0x3330) + - USB: Maxtor D3 Station 3TB (0x0bc2:0x6123) + - USB: Seagate Backup Plus 4TB (0x0bc2:0xab1e) + - USB: JMicron (0x152d:0x0579) + - USB: Hitachi Touro Mobile (0x4971:0x1023) + - USB: JMicron JMS566 (0xa152:0xb566) + - USB: LogiLink PCCloneEX Lite (0xabcd:0x6104) + + smartd.conf.5.in: Fix conditionals of platform specific samples. + + smartctl.8.in, smartd.conf.5.in: Shorten or remove info about + very old 3ware controllers. + + smartctl.8.in: Add '-g' to '-x' documentation. + Avoid a very long line. + + smartctl.cpp: Improve help text formatting. + +2017-11-03 Christian Franke + + update-smart-drivedb.8.in: Update mailing list link. + update-smart-drivedb.in: Update mailing list comment. + + utility.cpp: Silence g++ 7.1 -Wformat-truncation warning. + + atacmds.cpp, dev_areca.cpp, os_linux.cpp: Add comments to silence + g++ 7.1 -Wimplicit-fallthrough=[1-4] warnings. + + os_linux.cpp: Fix indentation (g++ 6.3: -Wmisleading-indentation). + + nvmeprint.cpp: Print IEEE EUI-64 of namespace. + +2017-10-29 Christian Franke + + smartctl.8.in: Add notes about SMART commands obsoleted in ACS-4. + Remove some outdated info. + + smartctl.8.in, smartd.8.in, smartd.conf.5.in: Enable NVMe sections + for Darwin. + + os_win32/installer.nsi: Update links. + Remove outdated uninstall commands. + + INSTALL: Update ./configure description and OS info. + + ataidentify.cpp, ataprint.cpp: Minor ACS-4 additions. + + ataprint.cpp, ataprint.h, smartctl.cpp: Add option '-l defects' + to print ATA ACS-4 Pending Defects log (ticket #909). + smartctl.8.in: Document '-l defects'. + +2017-10-25 Christian Franke + + drivedb.h: + - Samsung based SSDs: PM871b (tickets #895, #903) + - Seagate Enterprise Capacity 3.5 HDD: 4TB (fix for #913) + - Western Digital Red Pro: 6TB (ticket #785) + + os_win32/smartd_warning.cmd: Add ability to run PowerShell scripts + with '-M exec'. + smartd.conf.5.in: Document new functionality. Fix typo. + +2017-10-25 Alex Samorukov + + drivedb.h: + - add SATA Voyager GTX (#893) + +2017-10-24 Christian Franke + + do_release: Update code signing key id. + + update-smart-drivedb.in: Add new mailing list address to database + signing key. + +2017-10-24 Alex Samorukov + + drivedb.h: + - add USB Voyager GTX (#893) + - add Phison based OEM SSD based on the firmware name (#853, #831) + - add Ultrastar 7K2 series (#892) + - add LITEON ZETA (LMH-*V2M-*) (#794) + +2017-10-22 Christian Franke + + os_win32.cpp: Decode Windows 10 1709 build number. + + configure.ac: Fail instead of warn if no compiler option to accept + C++11 found and '--with-cxx11-option' is not specified. + +2017-10-19 Alex Samorukov + + scsicmds.h: increase SCSI_TIMEOUT_DEFAULT to 1 minute to work on the + big JBOD arrays (#917) + +2017-10-15 Christian Franke + + smartd.cpp: Use also device identify information to detect for + duplicate devices (ticket #313). + + atacmds.cpp: Don't pass possibly unaligned pointers to swapx(). + This silences '-Waddress-of-packed-member' warning from clang++ 4.0 + (ticket #915). + +2017-10-12 Alex Samorukov + + os_linux.cpp: implemented support for the SG_IO V4 API. This should + fix kernel warnings and other issues on the /dev/bsg SCSI devices. + Based on the patch created by Circuitsoft (#782) + +2017-10-11 Alex Samorukov + + os_darwin.cpp: fix crash on --scan (regression from r4549) + +2017-10-10 Christian Franke + + configure.ac, os_darwin.cpp: Align Darwin NVMe device scanning with + other platforms: Disable unless '--with-nvme-devicescan' or '-d nvme' + is specified. Print related configure warning. + +2017-10-09 Alex Samorukov + + drivedb.h: + - Extend Seagate Barracuda 7200.12 regexp (#910) + - Extend Seagate NAS HDD regexp (#778) + - Extend Seagate Surveillance regexp (#807) + - Extend Seagate Enterprise Capacity 3.5 HDD regexp (#864, #913) + - Fix Seagate Barracuda 2.5 5400 regexp to add new models and + avoid false matches (#796) + - Add Seagate IronWolf HDD series (#760) + - Fix attribute 183 for the Seagate Barracuda 2.5 5400 HDD (#816) + - Added Mushkin Triactor series (#905) + - Extend Samsung PM830 regexp (#897) + +2017-10-08 Alex Samorukov + + drivedb.h: + - Add TOSHIBA MQ03UBB... series (#901) + - extend TOSHIBA THNSF regexp (#790) + +2017-10-08 Christian Franke + + configure.ac: Check for compiler option to accept C++11. + If none found, print warning and ask user to provide info. + Add '--with-cxx11-option' to suppress this warning. + This is intended to check whether C++11 could be used in some + future smartmontools release. The current build is not affected. + + configure.ac, Makefile.am: Add Windows VERSIONINFO resource also to + runcmd*.exe and wtssendmsg.exe. Include application manifests if + needed. This also fixes manifests with older MinGW binutils which + do not support more than one resource objects. + os_win32/smart*_res.rc.in: Replace by os_win32/versioninfo.rc.in. + +2017-10-06 Christian Franke + + Makefile.am: Add PDF man page formatting. + os_win32/installer.nsi: Add PDF man pages, remove TXT man pages. + + drivedb.h: + - SMART Modular Technologies mSATA XL+ SSDs (patch from ticket #802) + - StorFly CFast SATA: Add missing space. + - Fix regexp from tickets #882, #885. + +2017-10-05 Alex Samorukov + + drivedb.h: add StorFly CFast SATA 6Gbps SSDs (#911) + +2017-10-05 Christian Franke + + drivedb.h: + - Western Digital Red: WD80EFAX (tickets #857, #899) + - USB: Toshiba Canvio (0x0480:0xb207) + - USB: Apple/TOSHIBA MQ01UBB200 (0x05ac:0x8406) + - USB: Seagate Expansion Portable 2TB (0x0bc2:0x231a) + - USB: Maxtor M3 Portable 4TB (0x0bc2:0x61b7) (ticket #875) + - USB: WD Elements / My Passport (0x1058:0x259f) (ticket #833) + - USB: WD Elements / My Passport (0x1058:0x25e2) + - USB: WD Elements / My Passport (0x1058:0x25fa) (ticket #840) + - USB: WD My Book / Easystore (0x1058:0x1230) (ticket #835) + - USB: WD My Book / Easystore (0x1058:0x25fb) (tickets #857, #899) + - USB: JMicron JMS561U (0x152d:0x8561) (ticket #860) + - USB: Innostor IS888 (0x1f75:0x0888): -d sat works (ticket #827) + +2017-10-04 Alex Samorukov + + smartctl.8.in: update information about NVMe in Darwin and OS/2 support + smartd.cpp, utility.cpp: fix compiler warnings related to vprintf + +2017-10-03 Christian Franke + + nvmeprint.cpp: Print new NVMe 1.3 feature flags. + +2017-10-02 Christian Franke + + smartd.cpp: Add strict tests of /dev/null redirection and chdir("/"). + + configure.ac: Use '-fstack-protector' if '-strong' is not supported. + +2017-10-01 Christian Franke + + configure.ac: Set default LDFLAGS for MinGW only if LDFLAGS is unset. + Add '-Wformat=2 -fstack-protector-strong' if supported and CXXFLAGS + is unset. + + drivedb.h: + - Fix regexp from tickets #714, #721, #759, #789, #797, #798, #806, + #824, #825, #866, #872, #880. + - SK hynix SATA SSDs (based on patch from ticket #874) + +2017-09-25 Alex Samorukov + + NVME: + - extend controller and smart log page structures to match 1.3 specification. + - Print thermal temperature transition statistic + drivedb.h: + - Added support for more LaCie and Freecom devices (patch from #891) + +2017-09-24 Alex Samorukov + + drivedb.h: + - Added Toshiba MK..34GSX series (#886) and MK..32GSX series (#887) + - Added GOODRAM CX200 SSD (#838) + - Added Mushkin SSD family (#797) + - Added Samsung PM871 to the Samsung SSD family (#798) + - Added PNY CS1311 family (#890) + - Added 0x152d:0x0578 Jmicron USB->SATA + - Added Transcend MTS800 drives (#787) + - Added Transcend MSA 630 series (#759) + - Extended Hitachi Deskstar 7K3000 regexp (#858) + +2017-09-23 Alex Samorukov + + drivedb.h: + - Fix HGST HDS724040ALE640 (#885) + - Add Toshiba MQ03ABB300 (#884) + - Fixed Hitachi 7K1000 (#883) + - Added Seagate Barracuda 2.5 5400 series (#882) + - Added new Seagate Barracuda 3.5 7200 series (#880) + - Added Toshiba P300 series (#881) + - Added SK hynix SSD SC300 series (#699) + - Added Toshiba HG6 Series SSD (#721) + - Added Hynix SSD series + - Added AMD Radeon Solid State Drives (#762) + - Added USB Bridge 0x3538:0x0064 (#855) + - Added Seagate ST4000NM0085 to the Capacity family + - Added Sandisk SATA Cloudspeed Max and GEN2 ESS SSDs and Sandisk SATA CS1K + GEN1 ESS SSDs (#846) + - Added Seagate FireCuda drives (#825) + - Added Transcend MTS400 drives (#847) + - Added Transcend MTS420 drives (#869) + - Added Transcend SSD230 drives (#879) + - Added Transcend SSD220S drives (#821) + - Added Intel 540 Series SSDs (#803) + - Added Intel 3710 Series SSDs (#824) + - Added Micron 5100 ECO, PRO, and MAX Models (#861) + - Added Samsung EVO SSD series - make regexp match less strict (#806) + - Added Hitachi CinemaStar 5K1000 series (#758) + - Added WDC WD4004FZWX disk to the Digital Black family (#765) + - Added Samsung SSD 845DC EVO series (#866) + - Added SK hynix SL308 family (#808) + - Added WD Blue PC SSD family (#767) + - Corrected Crucial M4 drivedb entry to include 32Gb model (#844) + +2017-09-20 Alex Samorukov + + os_freebsd: use /dev/nvme/nvme.h on the recent versions + os_darwin: + - initial NVMe support for the darwin platform. + - NVMe device scan support + - Add device type autodetection + +2017-08-08 Christian Franke + + ataprint.cpp: Fix ATA Security Level check. + + configure.ac: Detect MinGW libstdc++ problems with high + '--image-base'. + + Update smartmontools-support mailing list address. + Remove old mailing list address from all source files. + +2017-05-03 Christian Franke + + smartctl.8.in, smartd.8.in, smartd.conf.5.in, + update-smart-drivedb.8.in: + Rework vertical space and '.nf...fi' (no-fill) sections + for better formatting with various tools (groff, mandoc, + man2html) and output formats (text, pdf, html). + Use default vertical space instead of an empty line + between paragraphs. + Use '.br' instead of '.nf...fi' where applicable. + Use CW font in remaining no-fill sections. + + smartctl.8.in: Replace UTF-8 quotes. + +2017-05-02 Christian Franke + + smartctl.8.in, smartd.8.in, smartd.conf.5.in, + update-smart-drivedb.8.in: + Various man/groff syntax fixes (ticket #656): + Split long lines. + Insert two spaces or newline between sentences. + Use ' for apostrophes. + Use groff extension \(aq (apostrophe quote, ASCII 0x27) + or ' for quotes. + Use \- (minus sign) for options and examples. + Use \(en (en-dash) for numeric ranges. + Protect . with \& if not at end of sentence. + +2017-04-24 Alex Samorukov + + os_freebsd.cpp: remove duplicated code which checks ATA SMART + status (#746) + +2017-04-23 Alex Samorukov + + os_os2.cpp: + - code cleanup + - add os2ahci driver initial support + - fix selftest command + - add device scan support + +2017-04-19 Alex Samorukov + + OS/2 - many fixes: + - autodetect and build os_os2.o on OS/2 + - fix os_os2.cpp/os_os2.h compilation (thanks to franke@) + - get rid from the os_os/hdreg.h - use constants from the atacmd.h + - remove most of the dead code and unused functions + +2017-04-17 Christian Franke + + os_win32.cpp: Decode Windows 10 1703 build number. + + atacmds.h, ataprint.cpp: Use STANDBY instead of IDLE command if + '-s standby,[N|off]' and '-s standby,now' are both specified. + smartctl.8.in: Document new behaviour of '-s standby,*'. + +2017-04-01 Christian Franke + + atacmds.cpp, atacmds.h, ataprint.cpp: Print minimum supported ERC + Time Limit from SCT Status. + + ataidentify.cpp, ataprint.cpp: Add ACS-4 and SATA 3.3 major + versions, log pages, device statistic values and feature bits. + +2017-03-27 Christian Franke + + scsiprint.cpp: Suppress "SAS address" if '-q noserial' is + specified (ticket #822). + + scsicmds.cpp: Remove useless variable + (cppcheck 1.77: knownConditionTrueFalse). + + smartd.cpp: Always suppress "failed to read Temperature" message + if SCSI device does not support temperature (ticket #817). + Fix initial check for SCSI temperature support. + Log SCSI temperature regardless of its origin. + +2017-03-11 Christian Franke + + smartctl.8.in, smartd.8.in, smartd.conf.5.in, + update-smart-drivedb.8.in: Update EXPERIMENTAL notes. + Update links. Update or remove various outdated info. + + smartctl.8.in: Fix documentation of the '-g all' option. + + smartctl.cpp: Add '-g dsn' to '-x' output. + +2017-03-11 Jonghwan Choi + + ataprint.cpp: Fix false positive DSN support detection. + +2017-03-09 Jean Delvare <...> + + smartctl.8.in: Fix documentation of the '-q' option. + +2017-03-09 Christian Franke + + AUTHORS: Add Jonghwan Choi. + +2017-03-09 Jonghwan Choi + + Add options to get/set ATA DSN (Device Statistics Notification) + feature (ticket #815): + atacmds.h: Add DSN feature subcommand code. + ataprint.cpp, ataprint.h, smartctl.cpp: Add '-g/s dsn' options. + smartd.cpp: Add '-e dsn' directive. + smartctl.8.in, smartd.conf.5.in: Document the new options. + +2017-03-04 Christian Franke + + smartctl.cpp, smartd.cpp: Fix help text for '-B' option. + + smartd.cpp: Unify indent style, replace tabs. + Move ATA/SCSI/NVMe device open to new common function. + Suppress warning emails and repeated log messages on open error if + '-d removable' is specified (Debian Bug 770872, Ubuntu Bug 1451572). + smartd.conf.5.in: Document new behaviour of '-d removable'. + +2017-03-02 Christian Franke + + smartd.cpp: Move single device registration to new function. + Exit smartd on device open error unless '-q never' or '-d removable' + is specified (regression from r2602). + Prevent retry if registration failed and '-q never' is specified. + Add enum for '-q, --quit' option. + +2017-02-27 Christian Franke + + drivedb.h: + - Crucial/Micron RealSSD C300/P300: Rename, add P300, remove M500 + - Crucial/Micron RealSSD m4/C400/P400: P400e micro SATA + - Crucial/Micron MX1/2/300, M5/600, 1100 Client SSDs: Rename, + add MX300 (tickets #763, #791), M550 M.2 (ticket #810), + 1100 (ticket #783) + +2017-02-22 Christian Franke + + configure.ac: Set various default LDFLAGS for MinGW builds: + Link statically, indicate DEP and TS compatibility, enable ASLR. + Add '--with-mingw-aslr' option. + +2017-02-20 Christian Franke + + os_win32.cpp: Decode Windows Server 2016 build number. + + os_win32.cpp: Rework CSMI port mapping. This fixes access to + ports != 0 behind IRST driver 15.2 (ticket #804). + +2017-01-30 Alex Samorukov + + os_freebsd.cpp: unblock 48bit ATACAM commands for the legacy controllers + if FreeBSD version is >= 9.2-RELEASE, tested on FreeBSD 10.3 + +2017-01-28 Christian Franke + + ataidentify.cpp: Don't shift negative values + (g++ 6.3: -Wshift-negative-value, cppcheck 1.77: shiftNegativeLHS). + + os_win32.cpp, scsiata.cpp, scsicmds.cpp, scsiprint.cpp: Fix 'if' + and 'else' clause indentations (g++ 6.3: -Wmisleading-indentation). + + Add indent style configuration for EditorConfig + (http://editorconfig.org/): + .editorconfig: New file. + Makefile.am: Add new file to source tarball. + +2017-01-21 Christian Franke + + drivedb.h: + - Marvell based SanDisk SSDs: X300 OEM (ticket #747), + X400 (ticket #715), Ultra II (ticket #744) + - USB: Renesas uPD720231A (0x045b:0x0229) + - USB: Maxtor D3 Station 5TB (0x0bc2:0x6126) + - USB: Seagate Backup Plus 8TB (0x0bc2:0xab38) (ticket #786) + - USB: WD Elements / My Passport (0x1058:0x107d) (ticket #772) + - USB: WD Elements / My Passport (0x1058:0x25a1) (ticket #773) + - USB: WD My Book 4TB (0x1058:0x25a3) (ticket #784) + - USB: WD Elements / My Passport: Merge entries + - USB: WD My Book: Merge entries + +2017-01-14 Christian Franke + + scsiata.cpp: Remove redundant assignment + (cppcheck: redundantAssignment). + + ataprint.cpp, ataprint.h, smartctl.cpp, smartctl.8.in: + Add STATUS parameter to '-n POWERMODE' option (ticket #697). + +2017-01-13 Christian Franke + + configure.ac: Rework CXXFLAGS settings, use shell intrinsics. + + os_win32.cpp: Fix harmless buffer overflow bug + (found by VC14 code analyser). + +2017-01-12 Christian Franke + + drivedb.h: + - Innodisk 1ME3/3ME/3SE SSDs: Rename, add 1ME3 (ticket #713), 3SE + - Innodisk 3IE2/3ME2/3MG2/3SE2 SSDs: Rename, add 3ME2 + - Samsung based SSDs: 750 EVO, PM810(470), 840, PM830, PM851, + CM871 (ticket #754), CM871a, PM871a (tickets #745, #775), + SM951 (ticket #704) + +2017-01-11 Christian Franke + + smartctl.8.in: Make '-d intelliprop' visible on all platforms. + Add warning. + smartd.conf.5.in: Document '-d intelliprop'. + + os_win32/vc14/smart*.vcxproj*: Add new files. + + AUTHORS: Add Casey Biemiller + +2017-01-11 Casey Biemiller + + Add '-d intelliprop' device type for drives behind IntelliProp + RAID controllers (ticket #730): + atacmds.cpp, atacmds.h: Add function ataWriteLogExt(). + dev_intelliprop.cpp, dev_intelliprop.h: New files. + dev_interface.cpp: Add '-d intelliprop,N[+TYPE]' option. + Makefile.am: Add new files. + smartctl.8.in, smartd.conf.5.in: Document it. + +2017-01-09 Alex Samorukov + + os_freebsd.cpp: fix panic on INVARIANTS enabled kernel, patch + provided (#780) by Oliver Pinter + +2017-01-01 Christian Franke + + Happy New Year! Update copyright year in version info. + +2016-11-12 Christian Franke + + atacmds.h, freebsd_nvme_ioctl.h: Apply patch-atacmds.h 1.1 + and patch-freebsd_nvme_ioctl.h 1.1 (2016-11-04) from + pkgsrc.se/sysutils/smartmontools: + Build fix for FreeBSD-11 and newer. Don't redefine now + existing things, ATA_SET_FEATURES and nvme_command. + +2016-11-10 Christian Franke + + os_linux.cpp: Don't detect devices behind hpsa driver as regular + SCSI devices. Suggest to use '-d cciss,N' instead. + + Based on patch provided by Stanislav Brabec. + +2016-11-05 Christian Franke + + update-smart-drivedb.in: Fix 'mv' error on first update with new + script. + + configure.ac, update-smart-drivedb.in: Add '--with-gnupg' option. + + configure.ac: Add '--with-update-smart-drivedb=X.Y' option to + backport drive database update script and man page to older + version X.Y. + + configure.ac: Remove checks for no longer supported options + --disable-drivedb, --enable-savestates and --enable-attributelog. + +2016-11-04 Christian Franke + + Add authentication to update-smart-drivedb (ticket #751): + Create missing branches RELEASE_6_5_DRIVEDB and RELEASE_6_6_DRIVEDB. + Add signature files drivedb.h.raw.asc to each maintained branch. + + update-smart-drivedb.in: Include new public key block ID DFD22559. + Download also drivedb.h.raw.asc. + Do no longer download from trunk if branch does not exist. + Create drivedb.h.raw. Verify signature. + Add options '--trunk', '--no-verify' and '--export-key'. + update-smart-drivedb.8.in: Document new behaviour and options. + +2016-10-23 Christian Franke + + smartd.8.in: Document Windows PARAMCHANGE service control command. + + smartctl.8.in, smartd.8.in, smartd.conf.5.in: Enable NVMe sections + for NetBSD. + + configure.ac, os_netbsd.cpp: Add --with-nvme-devicescan for NetBSD. + + drivedb.h: + - Toshiba 3.5" MG04ACA... Enterprise HDD (ticket #732) + - Toshiba X300 (ticket #716) + - Seagate Laptop HDD: Rename, add 3/4TB (ticket #738) + - Seagate Constellation ES: HP OEM + - Western Digital RE4: *ABYZ variant + - Western Digital Re: Add attribute 16 (ticket #742) + - Western Digital Black: Remove *BEK[TX] variants + - Western Digital Black Mobile: 1TB, *BEKT, *LPLX variants + - Western Digital Elements / My Passport (USB, AF): 4TB + - USB: Neodio Technologies (0x0aec:0x3050) + - USB: Dura Micro (0x0c0b:0xb136) + - USB: My Passport Ultra 4TB (0x1058:0x2599) + +2016-10-17 Christian Franke + + configure.ac: Add --with-scriptpath option. + smartd_warning.sh.in, update-smart-drivedb.in: Set PATH variable. + +2016-10-03 Christian Franke + + os_win32/vc14/*.vcxproj: Add platform x64. + + os_win32.cpp: Use new enhanced version of IOCTL_STORAGE_QUERY_PROPERTY + to access NVMe info. This works with Windows 10 NVMe driver + (stornvme.sys) (ticket #691). + smartctl.8.in, smartd.8.in: Document device names. + +2016-09-28 Christian Franke + + drivedb.h: + - USB: Buffalo MiniStation HD-PZU3 (0x0411:0x01f9) (ticket #739) + - USB: Iomega Prestige (0x059b:0x0571) + - USB: LaCie P9223 (0x059f:0x1070) + - USB: Seagate Expansion Desktop (0x0bc2:0x331a) (ticket #725) + - USB: Seagate Backup Plus (0x0bc2:0xab28) (ticket #738) + - USB: WD My Passport Ultra (0x1058:0x259d) (ticket #736) + - USB: ASMedia ASM1351 (0x174c:0x1351) + +2016-09-25 Christian Franke + + AUTHORS: Add Kimihiro Nonaka. + +2016-09-25 Kimihiro Nonaka <...> + + os_netbsd.cpp: Migrate to new dev_interface (ticket #101). + Add NVMe support (ticket #728). + Implement netbsd_ata_device::ata_pass_through(). + netbsd_nvme_ioctl.h: New file based on "sys/dev/ic/nvmeio.h" from + NetBSD kernel sources. + Makefile.am: Add new file. + +2016-09-07 Christian Franke + + Makefile.am: clean-vc14 targets. + + os_win32.cpp: Decode Windows 10 build number. + + os_win32/smartd_warning.cmd: Use delayed variable expansion. + + os_win32/smartd_mailer.ps1: Use domainname for default sender address. + os_win32/smartd_mailer.conf.sample.ps1: Update related comment. + os_win32/smartd_warning.cmd: Remove trailing '\r' from USERDNSDOMAIN. + +2016-08-28 Christian Franke + + os_win32/installer.nsi: Fix quoting of EDITOR shortcuts. + + Send warning mails via PowerShell script on Windows (ticket #731): + Makefile.am, os_win32/installer.nsi: Add new files. + os_win32/smartd_mailer.ps1: New PowerShell script using Send-MailMessage + cmdlet to send mail. + os_win32/smartd_mailer.conf.sample.ps1: New sample config file. + os_win32/smartd_warning.cmd: Call new script if configured. + Improve error handling. Add setlocal. + smartd.conf.5.in: Document it. + +2016-08-17 Christian Franke + + AUTHORS: Add Song Liu. + + smartctl.cpp: Reduce scope of 'persistent' flag + (cppcheck: variableScope). + +2016-08-17 Song Liu + + ataprint.cpp, ataprint.h, smartctl.cpp, smartctl.8.in: + Add persistent option ',p' to '-s wcreorder,on|off' (ticket #726). + + atacmds.cpp, atacmds.h, ataprint.cpp, ataprint.h, smartctl.cpp, + smartctl.8.in: Add ability to control ATA drive write cache through + SCT Feature control. The new smartctl options are + '-s wcache-sct,ata|on|off[,p]' and '-g wcache-sct' (ticket #723). + +2016-08-06 Christian Franke + + os_win32.cpp: Add Windows 10 build number to get_os_version_str(). + + Update MSVC10 (VS2010) for VC14 (VS2015): + os_win32/vc14/*: Move from os_win32/vc10/*. + os_win32/vc14/*.vcxproj: Update for VC14. + Remove '__func__' workaround (revert r4225). + Makefile.am: Rename and update config-vc14 target. + utility.cpp: Add workaround for missing 'tzname'. + + drivedb.h: + - OCZ/Toshiba Trion SSDs: Rename, add TOSHIBA-TR150 (ticket #722) + - HGST Ultrastar 7K6000 (ticket #708) + - HGST Ultrastar He10 + - Seagate Desktop HDD.15: 6TB, 8TB + - Seagate Enterprise Capacity 3.5 HDD: 8TB, 10TB (ticket #717), + attribute 240 + - Seagate SV35: 4TB + - Western Digital Gold (ticket #711) + - USB: LaCie (0x059f:0x1075) (ticket #718) + - USB: Seagate Expansion External (0x0bc2:0x3322) (ticket #706) + - USB: Seagate FreeAgent GoFlex (0x0bc2:0x5030) (ticket #720) + - USB: Seagate Backup Plus Desktop (0x0bc2:0xab34) (ticket #700) + +2016-05-31 Christian Franke + + drivedb.h: + - Intel 311/313 Series SSDs: mSATA, *H (HP) variant + - Intel 520 Series SSDs: *L (Lenovo) variant + - HGST Ultrastar He6/He8: attribute 22 "Helium_Level" + - Western Digital Red: 8TB, attribute 22 "Helium_Level" + - USB: WD My Passport Ultra (0x1058:0x0837) (ticket #696) + - USB: WD My Passport (0x1058:0x083a) + - USB: WD My Book (0x1058:0x111d) + +2016-05-10 Christian Franke + + os_openbsd.cpp: Compile fix (regression from r4156). + + os_netbsd.cpp: Apply patch-os__netbsd.cpp 1.3 (2016-05-08) from + pkgsrc.se/sysutils/smartmontools: + - Compile fix (regression from r4156). + - Use a raw disk device file on NetBSD. + +2016-05-07 Christian Franke + + smartmontools 6.5 + +2016-05-06 Christian Franke + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + scsiprint.cpp: improve handling when no tape cartridge is + in the tape drive. + +2016-04-12 Alex Samorukov + + 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 + + drivedb.h: add Samsung SM863 series, ticket #681 + +2016-04-10 Christian Franke + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + os_freebsd.cpp: Add initial FreeBSD NVMe support (ticket #657) + +2016-03-27 Christian Franke + + ataprint.cpp: Support POWER MODE values introduced in ATA ACS-2 + (ticket #184, smartctl only). + +2016-03-27 Thomas Gatterweh + + atacmds.cpp, smartd.cpp: Support POWER MODE values introduced + in ATA ACS-2 (ticket #184, smartd only). + +2016-03-26 Christian Franke + + 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 + + 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 + + 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 + + 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 + + scsiprint.cpp: work on LB provisioning corner cases; LBPRZ now + 3 bits wide (in response to ticket #664) + +2016-03-14 Alex Samorukov + + drivedb.h: + - extend Apple SSD regexp (ticket #668) + - Add OCZ VeloDrive R (ticket #667) + +2016-03-12 Alex Samorukov + + drivedb.h: Add Phison Driven SSDs: + - Kingston UV300 SSD series (ticket #663) + - Kingston SSDNow KC310/V310 + - HyperX Savage + +2016-03-11 Alex Samorukov + + drivedb.h: Add Kingston UV300 SSD series + +2016-03-06 Christian Franke + + drivedb.h: Samsung based SSDs: Fix PM863 regexp, attribute IDs and + name length (regression from r4227). + +2016-03-03 Alex Samorukov + + drivedb.h: Adata HD710 1TB USB3 (ticket #662) + +2016-02-29 Alex Samorukov + + drivedb.h: PM863 Series (ticket #661) + +2016-02-28 Alex Samorukov + + drivedb.h: OWC Aura Pro 480 GB (ticket #660) + +2016-02-26 Christian Franke + + 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 + + drivedb.h: APPLE SSD TS064E (ticket #655) + +2016-02-02 Douglas Gilbert + + scsiprint.cpp: output unavailable rather than 255C for Drive + Trip temperature; skip background scan lpage for tape drives + +2016-02-02 Christian Franke + + 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 + + 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