smartmontools  SVN Rev 4071
Utility to control and monitor storage systems with "S.M.A.R.T."
os_solaris.h
Go to the documentation of this file.
1 /*
2  * os_solaris.h
3  *
4  * Home page of code is: http://smartmontools.sourceforge.net
5  *
6  * Copyright (C) 2003-8 SAWADA Keiji <smartmontools-support@lists.sourceforge.net>
7  * Copyright (C) 2003-8 Casper Dik <smartmontools-support@lists.sourceforge.net>
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2, or (at your option)
12  * any later version.
13  *
14  * You should have received a copy of the GNU General Public License
15  * (for example COPYING); if not, write to the Free Software Foundation,
16  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17  *
18  * This code was originally developed as a Senior Thesis by Michael Cornwell
19  * at the Concurrent Systems Laboratory (now part of the Storage Systems
20  * Research Center), Jack Baskin School of Engineering, University of
21  * California, Santa Cruz. http://ssrc.soe.ucsc.edu/
22  *
23  */
24 
25 #ifndef OS_SOLARIS_H_
26 #define OS_SOLARIS_H_
27 
28 #define OS_SOLARIS_H_CVSID "$Id: os_solaris.h 3728 2012-12-13 17:57:50Z chrfranke $\n"
29 
30 // Additional material should start here. Note: to keep the '-V' CVS
31 // reporting option working as intended, you should only #include
32 // system include files <something.h>. Local #include files
33 // <"something.h"> should be #included in os_solaris.c
34 
35 #include <sys/types.h>
36 #include <sys/stat.h>
37 #include <fcntl.h>
38 
39 // function prototypes for functions defined in os_solaris_ata.s
40 extern "C" {
41  int smart_read_data(int fd, void *data);
42  int smart_read_thresholds(int fd, void *data);
43  int smart_read_log(int fd, int s, int count, void *data);
44  int ata_identify(int fd, void *data);
45  int ata_pidentify(int fd, void *data);
46  int smart_enable(int fd);
47  int smart_disable(int fd);
48  int smart_status(int fd);
49  int smart_auto_offline(int fd, int s);
50  int smart_auto_save(int fd, int s);
51  int smart_immediate_offline(int fd, int s);
52  int smart_status_check(int fd);
53 }
54 
55 // wrapper macros
56 #define smart_enable_auto_save(fd) smart_auto_save(fd, 0xf1)
57 #define smart_disable_auto_save(fd) smart_auto_save(fd, 0x00)
58 
59 #endif /* OS_SOLARIS_H_ */
u16 s[6]
Definition: megaraid.h:97
int smart_auto_save(int fd, int s)
int ata_identify(int fd, void *data)
int smart_status_check(int fd)
u32 count
Definition: megaraid.h:80
int smart_read_thresholds(int fd, void *data)
int smart_status(int fd)
ptr_t data
Definition: megaraid.h:94
int smart_auto_offline(int fd, int s)
int smart_read_log(int fd, int s, int count, void *data)
int smart_read_data(int fd, void *data)
int ata_pidentify(int fd, void *data)
int smart_disable(int fd)
int smart_immediate_offline(int fd, int s)
int smart_enable(int fd)