Skip to content

Commit

Permalink
sync to upstream sdparm svn rev 355
Browse files Browse the repository at this point in the history
See ChangeLog file for changes [20210925].
  • Loading branch information
doug-gilbert committed Sep 26, 2021
1 parent 9262f43 commit fb4757c
Show file tree
Hide file tree
Showing 27 changed files with 1,846 additions and 325 deletions.
6 changes: 4 additions & 2 deletions ChangeLog
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@ The version number is hardcoded into sdparm.c (in a C string);
the rpm spec file: sdparm.spec ; the debian/changelog file;
and the configure.ac file (in the AC_INIT item).

ChangeLog for pre-release sdparm-1.13 [20210503] [svn: r351]
- point svn:externals to sg3_utils revision 899
ChangeLog for pre-release sdparm-1.13 [20210925] [svn: r355]
- format presets vpd: expand for schema type 4
- block device characteristics vpd: add MACT field
- point svn:externals to sg3_utils revision 914

ChangeLog for released sdparm-1.12 [20210421] [svn: r347]
- add Command duration limits T2A and T2B mpages
Expand Down
2 changes: 1 addition & 1 deletion debian/changelog
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ sdparm (1.13-0.1) unstable; urgency=low

* see ChangeLog

-- Douglas Gilbert <[email protected]> Sat, 01 May 2021 21:00:00 -0400
-- Douglas Gilbert <[email protected]> Sat, 25 Sep 2021 22:00:00 -0400

sdparm (1.12-0.1) unstable; urgency=low

Expand Down
2 changes: 1 addition & 1 deletion doc/sdparm.8
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH SDPARM "8" "May 2021" "sdparm\-1.13" SDPARM
.TH SDPARM "8" "September 2021" "sdparm\-1.13" SDPARM
.SH NAME
sdparm \- access SCSI modes pages; read VPD pages; send simple SCSI commands.
.SH SYNOPSIS
Expand Down
2 changes: 2 additions & 0 deletions include/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,8 @@ localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
os_cflags = @os_cflags@
os_libs = @os_libs@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
Expand Down
14 changes: 12 additions & 2 deletions include/sg_lib.h
Original file line number Diff line number Diff line change
Expand Up @@ -189,9 +189,11 @@ struct sg_scsi_sense_hdr {
uint8_t additional_length; /* zero for fixed format sense data */
};

/* Returns true when status is SAM_STAT_GOOD or SAM_STAT_CONDITION_MET,
* returns false otherwise. Ignores bit 0. */
/* The '_is_good()' returns true when status is SAM_STAT_GOOD or
* SAM_STAT_CONDITION_MET, returns false otherwise. Ignores bit 0. The
* '_is_bad() variant is the logical inverse. */
bool sg_scsi_status_is_good(int sstatus);
bool sg_scsi_status_is_bad(int sstatus);

/* Maps the salient data from a sense buffer which is in either fixed or
* descriptor format into a structure mimicking a descriptor format
Expand Down Expand Up @@ -323,6 +325,11 @@ const char * sg_get_desig_code_set_str(int val);
* otherwise returns NULL. */
const char * sg_get_desig_assoc_str(int val);

/* Yield string associated with zone type (see ZBC and ZBC-2) [e.g. REPORT
* ZONES command response]. Returns 'buff' unless buff_len < 1 in which
* NULL is returned. */
char * sg_get_zone_type_str(uint8_t zt, int buff_len, char * buff);

/* Yield SCSI Feature Set (sfs) string. When 'peri_type' is < -1 (or > 31)
* returns pointer to string (same as 'buff') associated with 'sfs_code'.
* When 'peri_type' is between -1 (for SPC) and 31 (inclusive) then a match
Expand Down Expand Up @@ -465,6 +472,7 @@ bool sg_exit2str(int exit_status, bool longer, int b_len, char * b);
#define SG_LIB_CAT_MISCOMPARE 14 /* sense key, probably verify
* [sk,asc,ascq: 0xe,*,*] */
#define SG_LIB_FILE_ERROR 15 /* device or other file problem */
/* for 17 and 18, see below */
#define SG_LIB_CAT_NO_SENSE 20 /* sense data with key of "no sense"
* [sk,asc,ascq: 0x0,*,*] */
#define SG_LIB_CAT_RECOVERED 21 /* Successful command after recovered err
Expand All @@ -483,8 +491,10 @@ bool sg_exit2str(int exit_status, bool longer, int b_len, char * b);
#define SG_LIB_CAT_TASK_ABORTED 29 /* SCSI status, this command aborted by? */
#define SG_LIB_CONTRADICT 31 /* error involving two or more cl options */
#define SG_LIB_LOGIC_ERROR 32 /* unexpected situation in code */
/* for 33 see SG_LIB_CAT_TIMEOUT below */
#define SG_LIB_WINDOWS_ERR 34 /* Windows error number don't fit in 7 bits so
* map to a single value for exit statuses */
#define SG_LIB_TRANSPORT_ERROR 35 /* driver or interconnect */
#define SG_LIB_OK_FALSE 36 /* no error, reporting false (cf. no error,
* reporting true is SG_LIB_OK_TRUE(0) ) */
#define SG_LIB_CAT_PROTECTION 40 /* subset of aborted command (for PI, DIF)
Expand Down
1 change: 1 addition & 0 deletions include/sg_lib_data.h
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,7 @@ extern struct sg_lib_value_name_t sg_lib_zoning_in_arr[];
extern struct sg_lib_value_name_t sg_lib_read_attr_arr[];
extern struct sg_lib_value_name_t sg_lib_read_pos_arr[];
extern struct sg_lib_asc_ascq_range_t sg_lib_asc_ascq_range[];
extern struct sg_lib_simple_value_name_t sg_lib_sstatus_str_arr[];
extern struct sg_lib_asc_ascq_t sg_lib_asc_ascq[];
extern struct sg_lib_value_name_t sg_lib_scsi_feature_sets[];
extern const char * sg_lib_sense_key_desc[];
Expand Down
29 changes: 29 additions & 0 deletions lib/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,15 @@ libsgutils2_la_SOURCES = \
sg_pt_common.c

if OS_LINUX
if PT_DUMMY
libsgutils2_la_SOURCES += sg_pt_dummy.c
else
libsgutils2_la_SOURCES += \
sg_pt_linux.c \
sg_io_linux.c \
sg_pt_linux_nvme.c
endif
endif

if OS_WIN32_MINGW
libsgutils2_la_SOURCES += sg_pt_win32.c
Expand All @@ -23,8 +27,12 @@ libsgutils2_la_SOURCES += sg_pt_win32.c
endif

if OS_FREEBSD
if PT_DUMMY
libsgutils2_la_SOURCES += sg_pt_dummy.c
else
libsgutils2_la_SOURCES += sg_pt_freebsd.c
endif
endif

if OS_SOLARIS
libsgutils2_la_SOURCES += sg_pt_solaris.c
Expand All @@ -34,6 +42,26 @@ if OS_OSF
libsgutils2_la_SOURCES += sg_pt_osf1.c
endif

if OS_HAIKU
if PT_DUMMY
libsgutils2_la_SOURCES += sg_pt_dummy.c
else
libsgutils2_la_SOURCES += sg_pt_haiku.c
endif
endif

if OS_NETBSD
libsgutils2_la_SOURCES += sg_pt_dummy.c
endif

if OS_OPENBSD
libsgutils2_la_SOURCES += sg_pt_dummy.c
endif

if OS_OTHER
libsgutils2_la_SOURCES += sg_pt_dummy.c
endif

if DEBUG
# This is active if --enable-debug given to ./configure
# removed -Wduplicated-branches because needs gcc-8
Expand All @@ -56,6 +84,7 @@ endif
# -Wall is no longer all warnings. Add -W (since renamed to -Wextra) for more
AM_CPPFLAGS = -iquote ${top_srcdir}/include -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 $(DBG_CPPFLAGS)
AM_CFLAGS = -Wall -W $(DBG_CFLAGS)
# AM_CFLAGS = -Wall -W $(DBG_CFLAGS) -fanalyzer
# AM_CFLAGS = -Wall -W -Wextra -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wnull-dereference -Wshadow -Wjump-misses-init
# AM_CFLAGS = -Wall -W -pedantic -std=c11
# AM_CFLAGS = -Wall -W -pedantic -std=c11 --analyze
Expand Down
75 changes: 53 additions & 22 deletions lib/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -88,16 +88,23 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
@OS_LINUX_TRUE@am__append_1 = \
@OS_LINUX_TRUE@ sg_pt_linux.c \
@OS_LINUX_TRUE@ sg_io_linux.c \
@OS_LINUX_TRUE@ sg_pt_linux_nvme.c

@OS_WIN32_MINGW_TRUE@am__append_2 = sg_pt_win32.c
@OS_WIN32_CYGWIN_TRUE@am__append_3 = sg_pt_win32.c
@OS_FREEBSD_TRUE@am__append_4 = sg_pt_freebsd.c
@OS_SOLARIS_TRUE@am__append_5 = sg_pt_solaris.c
@OS_OSF_TRUE@am__append_6 = sg_pt_osf1.c
@OS_LINUX_TRUE@@PT_DUMMY_TRUE@am__append_1 = sg_pt_dummy.c
@OS_LINUX_TRUE@@PT_DUMMY_FALSE@am__append_2 = \
@OS_LINUX_TRUE@@PT_DUMMY_FALSE@ sg_pt_linux.c \
@OS_LINUX_TRUE@@PT_DUMMY_FALSE@ sg_io_linux.c \
@OS_LINUX_TRUE@@PT_DUMMY_FALSE@ sg_pt_linux_nvme.c

@OS_WIN32_MINGW_TRUE@am__append_3 = sg_pt_win32.c
@OS_WIN32_CYGWIN_TRUE@am__append_4 = sg_pt_win32.c
@OS_FREEBSD_TRUE@@PT_DUMMY_TRUE@am__append_5 = sg_pt_dummy.c
@OS_FREEBSD_TRUE@@PT_DUMMY_FALSE@am__append_6 = sg_pt_freebsd.c
@OS_SOLARIS_TRUE@am__append_7 = sg_pt_solaris.c
@OS_OSF_TRUE@am__append_8 = sg_pt_osf1.c
@OS_HAIKU_TRUE@@PT_DUMMY_TRUE@am__append_9 = sg_pt_dummy.c
@OS_HAIKU_TRUE@@PT_DUMMY_FALSE@am__append_10 = sg_pt_haiku.c
@OS_NETBSD_TRUE@am__append_11 = sg_pt_dummy.c
@OS_OPENBSD_TRUE@am__append_12 = sg_pt_dummy.c
@OS_OTHER_TRUE@am__append_13 = sg_pt_dummy.c
subdir = lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
Expand Down Expand Up @@ -139,20 +146,31 @@ am__installdirs = "$(DESTDIR)$(libdir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
am__libsgutils2_la_SOURCES_DIST = sg_lib.c sg_lib_data.c \
sg_cmds_basic.c sg_cmds_basic2.c sg_cmds_extra.c sg_cmds_mmc.c \
sg_pt_common.c sg_pt_linux.c sg_io_linux.c sg_pt_linux_nvme.c \
sg_pt_win32.c sg_pt_freebsd.c sg_pt_solaris.c sg_pt_osf1.c
@OS_LINUX_TRUE@am__objects_1 = sg_pt_linux.lo sg_io_linux.lo \
@OS_LINUX_TRUE@ sg_pt_linux_nvme.lo
@OS_WIN32_MINGW_TRUE@am__objects_2 = sg_pt_win32.lo
@OS_WIN32_CYGWIN_TRUE@am__objects_3 = sg_pt_win32.lo
@OS_FREEBSD_TRUE@am__objects_4 = sg_pt_freebsd.lo
@OS_SOLARIS_TRUE@am__objects_5 = sg_pt_solaris.lo
@OS_OSF_TRUE@am__objects_6 = sg_pt_osf1.lo
sg_pt_common.c sg_pt_dummy.c sg_pt_linux.c sg_io_linux.c \
sg_pt_linux_nvme.c sg_pt_win32.c sg_pt_freebsd.c \
sg_pt_solaris.c sg_pt_osf1.c sg_pt_haiku.c
@OS_LINUX_TRUE@@PT_DUMMY_TRUE@am__objects_1 = sg_pt_dummy.lo
@OS_LINUX_TRUE@@PT_DUMMY_FALSE@am__objects_2 = sg_pt_linux.lo \
@OS_LINUX_TRUE@@PT_DUMMY_FALSE@ sg_io_linux.lo \
@OS_LINUX_TRUE@@PT_DUMMY_FALSE@ sg_pt_linux_nvme.lo
@OS_WIN32_MINGW_TRUE@am__objects_3 = sg_pt_win32.lo
@OS_WIN32_CYGWIN_TRUE@am__objects_4 = sg_pt_win32.lo
@OS_FREEBSD_TRUE@@PT_DUMMY_TRUE@am__objects_5 = sg_pt_dummy.lo
@OS_FREEBSD_TRUE@@PT_DUMMY_FALSE@am__objects_6 = sg_pt_freebsd.lo
@OS_SOLARIS_TRUE@am__objects_7 = sg_pt_solaris.lo
@OS_OSF_TRUE@am__objects_8 = sg_pt_osf1.lo
@OS_HAIKU_TRUE@@PT_DUMMY_TRUE@am__objects_9 = sg_pt_dummy.lo
@OS_HAIKU_TRUE@@PT_DUMMY_FALSE@am__objects_10 = sg_pt_haiku.lo
@OS_NETBSD_TRUE@am__objects_11 = sg_pt_dummy.lo
@OS_OPENBSD_TRUE@am__objects_12 = sg_pt_dummy.lo
@OS_OTHER_TRUE@am__objects_13 = sg_pt_dummy.lo
am_libsgutils2_la_OBJECTS = sg_lib.lo sg_lib_data.lo sg_cmds_basic.lo \
sg_cmds_basic2.lo sg_cmds_extra.lo sg_cmds_mmc.lo \
sg_pt_common.lo $(am__objects_1) $(am__objects_2) \
$(am__objects_3) $(am__objects_4) $(am__objects_5) \
$(am__objects_6)
$(am__objects_6) $(am__objects_7) $(am__objects_8) \
$(am__objects_9) $(am__objects_10) $(am__objects_11) \
$(am__objects_12) $(am__objects_13)
libsgutils2_la_OBJECTS = $(am_libsgutils2_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
Expand Down Expand Up @@ -181,7 +199,8 @@ am__depfiles_remade = ./$(DEPDIR)/sg_cmds_basic.Plo \
./$(DEPDIR)/sg_cmds_basic2.Plo ./$(DEPDIR)/sg_cmds_extra.Plo \
./$(DEPDIR)/sg_cmds_mmc.Plo ./$(DEPDIR)/sg_io_linux.Plo \
./$(DEPDIR)/sg_lib.Plo ./$(DEPDIR)/sg_lib_data.Plo \
./$(DEPDIR)/sg_pt_common.Plo ./$(DEPDIR)/sg_pt_freebsd.Plo \
./$(DEPDIR)/sg_pt_common.Plo ./$(DEPDIR)/sg_pt_dummy.Plo \
./$(DEPDIR)/sg_pt_freebsd.Plo ./$(DEPDIR)/sg_pt_haiku.Plo \
./$(DEPDIR)/sg_pt_linux.Plo ./$(DEPDIR)/sg_pt_linux_nvme.Plo \
./$(DEPDIR)/sg_pt_osf1.Plo ./$(DEPDIR)/sg_pt_solaris.Plo \
./$(DEPDIR)/sg_pt_win32.Plo
Expand Down Expand Up @@ -339,6 +358,8 @@ localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
os_cflags = @os_cflags@
os_libs = @os_libs@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
Expand All @@ -355,7 +376,10 @@ top_srcdir = @top_srcdir@
libsgutils2_la_SOURCES = sg_lib.c sg_lib_data.c sg_cmds_basic.c \
sg_cmds_basic2.c sg_cmds_extra.c sg_cmds_mmc.c sg_pt_common.c \
$(am__append_1) $(am__append_2) $(am__append_3) \
$(am__append_4) $(am__append_5) $(am__append_6)
$(am__append_4) $(am__append_5) $(am__append_6) \
$(am__append_7) $(am__append_8) $(am__append_9) \
$(am__append_10) $(am__append_11) $(am__append_12) \
$(am__append_13)
@DEBUG_FALSE@DBG_CFLAGS =

# This is active if --enable-debug given to ./configure
Expand All @@ -370,6 +394,7 @@ libsgutils2_la_SOURCES = sg_lib.c sg_lib_data.c sg_cmds_basic.c \
# -Wall is no longer all warnings. Add -W (since renamed to -Wextra) for more
AM_CPPFLAGS = -iquote ${top_srcdir}/include -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 $(DBG_CPPFLAGS)
AM_CFLAGS = -Wall -W $(DBG_CFLAGS)
# AM_CFLAGS = -Wall -W $(DBG_CFLAGS) -fanalyzer
# AM_CFLAGS = -Wall -W -Wextra -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wnull-dereference -Wshadow -Wjump-misses-init
# AM_CFLAGS = -Wall -W -pedantic -std=c11
# AM_CFLAGS = -Wall -W -pedantic -std=c11 --analyze
Expand Down Expand Up @@ -466,7 +491,9 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_lib.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_lib_data.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_pt_common.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_pt_dummy.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_pt_freebsd.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_pt_haiku.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_pt_linux.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_pt_linux_nvme.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_pt_osf1.Plo@am__quote@ # am--include-marker
Expand Down Expand Up @@ -642,7 +669,9 @@ distclean: distclean-am
-rm -f ./$(DEPDIR)/sg_lib.Plo
-rm -f ./$(DEPDIR)/sg_lib_data.Plo
-rm -f ./$(DEPDIR)/sg_pt_common.Plo
-rm -f ./$(DEPDIR)/sg_pt_dummy.Plo
-rm -f ./$(DEPDIR)/sg_pt_freebsd.Plo
-rm -f ./$(DEPDIR)/sg_pt_haiku.Plo
-rm -f ./$(DEPDIR)/sg_pt_linux.Plo
-rm -f ./$(DEPDIR)/sg_pt_linux_nvme.Plo
-rm -f ./$(DEPDIR)/sg_pt_osf1.Plo
Expand Down Expand Up @@ -701,7 +730,9 @@ maintainer-clean: maintainer-clean-am
-rm -f ./$(DEPDIR)/sg_lib.Plo
-rm -f ./$(DEPDIR)/sg_lib_data.Plo
-rm -f ./$(DEPDIR)/sg_pt_common.Plo
-rm -f ./$(DEPDIR)/sg_pt_dummy.Plo
-rm -f ./$(DEPDIR)/sg_pt_freebsd.Plo
-rm -f ./$(DEPDIR)/sg_pt_haiku.Plo
-rm -f ./$(DEPDIR)/sg_pt_linux.Plo
-rm -f ./$(DEPDIR)/sg_pt_linux_nvme.Plo
-rm -f ./$(DEPDIR)/sg_pt_osf1.Plo
Expand Down
Loading

0 comments on commit fb4757c

Please sign in to comment.