]> git.proxmox.com Git - mirror_smartmontools-debian.git/blame - scsiprint.h
Closes #831504
[mirror_smartmontools-debian.git] / scsiprint.h
CommitLineData
832b75ed
GG
1/*
2 * scsiprint.h
3 *
6b80b4d2 4 * Home page of code is: http://www.smartmontools.org
832b75ed 5 *
2127e193 6 * Copyright (C) 2002-9 Bruce Allen <smartmontools-support@lists.sourceforge.net>
832b75ed
GG
7 * Copyright (C) 2000 Michael Cornwell <cornwell@acm.org>
8 *
9 * Additional SCSI work:
ee38a438 10 * Copyright (C) 2003-13 Douglas Gilbert <dgilbert@interlog.com>
832b75ed
GG
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2, or (at your option)
15 * any later version.
16 *
17 * You should have received a copy of the GNU General Public License
ee38a438
GI
18 * (for example COPYING); if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
832b75ed
GG
20 *
21 * This code was originally developed as a Senior Thesis by Michael Cornwell
22 * at the Concurrent Systems Laboratory (now part of the Storage Systems
23 * Research Center), Jack Baskin School of Engineering, University of
24 * California, Santa Cruz. http://ssrc.soe.ucsc.edu/
25 *
26 */
27
28
832b75ed
GG
29#ifndef SCSI_PRINT_H_
30#define SCSI_PRINT_H_
31
6b80b4d2 32#define SCSIPRINT_H_CVSID "$Id: scsiprint.h 4120 2015-08-27 16:12:21Z samm2 $\n"
832b75ed 33
2127e193 34// Options for scsiPrintMain
2127e193
GI
35struct scsi_print_options
36{
37 bool drive_info;
38 bool smart_check_status;
39 bool smart_vendor_attrib;
40 bool smart_error_log;
41 bool smart_selftest_log;
42 bool smart_background_log;
d008864d 43 bool smart_ss_media_log;
2127e193
GI
44
45 bool smart_disable, smart_enable;
46 bool smart_auto_save_disable, smart_auto_save_enable;
47
48 bool smart_default_selftest;
49 bool smart_short_selftest, smart_short_cap_selftest;
50 bool smart_extend_selftest, smart_extend_cap_selftest;
51 bool smart_selftest_abort;
ee38a438 52 bool smart_selftest_force; // Ignore already running test
2127e193
GI
53
54 bool sasphy, sasphy_reset;
ee38a438
GI
55
56 bool get_wce, get_rcd;
57 short int set_wce, set_rcd; // disable(-1), enable(1) cache
2127e193
GI
58
59 scsi_print_options()
60 : drive_info(false),
61 smart_check_status(false),
62 smart_vendor_attrib(false),
63 smart_error_log(false),
64 smart_selftest_log(false),
65 smart_background_log(false),
d008864d 66 smart_ss_media_log(false),
2127e193
GI
67 smart_disable(false), smart_enable(false),
68 smart_auto_save_disable(false), smart_auto_save_enable(false),
69 smart_default_selftest(false),
70 smart_short_selftest(false), smart_short_cap_selftest(false),
71 smart_extend_selftest(false), smart_extend_cap_selftest(false),
72 smart_selftest_abort(false),
ee38a438
GI
73 smart_selftest_force(false),
74 sasphy(false), sasphy_reset(false),
75 get_wce(false), get_rcd(false),
76 set_wce(0), set_rcd(0)
2127e193
GI
77 { }
78};
79
80int scsiPrintMain(scsi_device * device, const scsi_print_options & options);
832b75ed
GG
81
82#endif