|
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17 System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64 User : nobody ( 99) PHP Version : 5.2.17 Disable Function : NONE Directory : /proc/21585/root/usr/include/ |
Upload File : |
/*
* lockdev.h
* (c) 1997, 1999 by Fabrizio Polacco <fpolacco@debian.org>
* this source program is part of the liblockdev library.
*
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License (LGPL) as published by the Free Software Foundation;
* version 2.1 dated February 1999.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU Lesser General
* Public License (LGPL) along with this program; if not, write
* to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* On Debian GNU/Linux systems, the complete text of the
* GNU Library General Public License can be found in
* `/usr/share/common-licenses/LGPL'.
*
*
*
* This library provides a stable way to lock devices on a Linux or
* Unix system, both following FSSTND 1.2 and SVr4 device locking
* methods, and it's built to be portable and to avoid conflicts
* with other programs.
* It is highly reccommended that all programs that needs to lock a
* device (or test if it is locked), call the functions defined in
* the public interface of this library.
*
*/
#ifndef _LOCKDEV_H_
#define _LOCKDEV_H_
#ifdef __cplusplus
extern "C" {
#endif
#ifndef __P
# if defined (__STDC__) || defined (_AIX) \
|| (defined (__mips) && defined (_SYSTYPE_SVR4)) \
|| defined(WIN32) || defined(__cplusplus)
# define __P(protos) protos
# else
# define __P(protos) ()
# endif
#endif
#include <sys/types.h>
#include <errno.h>
/* API of the library */
void liblockdev_incr_debug __P(());
void liblockdev_reset_debug __P(());
pid_t dev_getpid __P(( void ));
pid_t dev_setpid __P(( pid_t pid ));
pid_t dev_testlock __P(( const char * devname));
pid_t dev_lock __P(( const char * devname));
pid_t dev_relock __P(( const char * devname, const pid_t old_pid));
pid_t dev_unlock __P(( const char * devname, const pid_t pid));
#ifdef __cplusplus
};
#endif
#endif /* _LOCKDEV_H_ */