2018-05-14 14:16:43 +03:00
/*
* Copyright ( C ) 2001 - 2004 Sistina Software , Inc . All rights reserved .
* Copyright ( C ) 2004 - 2006 Red Hat , Inc . All rights reserved .
*
* This file is part of the device - mapper userspace tools .
*
* This copyrighted material is made available to anyone wishing to use ,
* modify , copy , or redistribute it subject to the terms and conditions
* of the GNU Lesser General Public License v .2 .1 .
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program ; if not , write to the Free Software Foundation ,
* Inc . , 51 Franklin Street , Fifth Floor , Boston , MA 02110 - 1301 USA
*/
# ifndef LIB_DMTARGETS_H
# define LIB_DMTARGETS_H
# include <inttypes.h>
# include <sys/types.h>
struct dm_ioctl ;
struct target {
uint64_t start ;
uint64_t length ;
char * type ;
char * params ;
struct target * next ;
} ;
struct dm_task {
int type ;
char * dev_name ;
char * mangled_dev_name ;
struct target * head , * tail ;
int read_only ;
uint32_t event_nr ;
int major ;
int minor ;
int allow_default_major_fallback ;
uid_t uid ;
gid_t gid ;
mode_t mode ;
uint32_t read_ahead ;
uint32_t read_ahead_flags ;
union {
struct dm_ioctl * v4 ;
} dmi ;
char * newname ;
char * message ;
char * geometry ;
uint64_t sector ;
int no_flush ;
int no_open_count ;
int skip_lockfs ;
int query_inactive_table ;
int suppress_identical_reload ;
2019-11-21 01:07:27 +03:00
int skip_reload_params_compare ;
2018-05-14 14:16:43 +03:00
dm_add_node_t add_node ;
uint64_t existing_table_size ;
int cookie_set ;
int new_uuid ;
int secure_data ;
int retry_remove ;
int deferred_remove ;
int enable_checks ;
int expected_errno ;
int ioctl_errno ;
2021-09-22 18:30:42 +03:00
int ima_measurement ;
2018-05-14 14:16:43 +03:00
int record_timestamp ;
char * uuid ;
char * mangled_uuid ;
} ;
struct cmd_data {
const char * name ;
const unsigned cmd ;
const int version [ 3 ] ;
} ;
int dm_check_version ( void ) ;
uint64_t dm_task_get_existing_table_size ( struct dm_task * dmt ) ;
# endif