2001-11-21 12:20:05 +03:00
/*
2004-03-30 23:35:44 +04:00
* Copyright ( C ) 2001 - 2004 Sistina Software , Inc . All rights reserved .
* Copyright ( C ) 2004 Red Hat , Inc . All rights reserved .
2001-11-21 12:20:05 +03:00
*
2004-03-30 23:35:44 +04:00
* This file is part of LVM2 .
*
* 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 General Public License v .2 .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to the Free Software Foundation ,
* Inc . , 59 Temple Place , Suite 330 , Boston , MA 02111 - 1307 USA
2001-11-21 12:20:05 +03:00
*/
# ifndef _LVM_FORMAT_TEXT_H
# define _LVM_FORMAT_TEXT_H
2001-12-20 14:52:54 +03:00
# include "lvm-types.h"
# include "metadata.h"
2002-11-18 17:04:08 +03:00
2002-01-07 12:05:31 +03:00
/*
2002-02-08 14:58:18 +03:00
* Archives a vg config . ' retain_days ' is the minimum number of
* days that an archive file must be held for . ' min_archives ' is
* the minimum number of archives required to be kept for each
* volume group .
2002-01-07 12:05:31 +03:00
*/
2002-02-08 14:58:18 +03:00
int archive_vg ( struct volume_group * vg ,
const char * dir ,
2002-11-18 17:04:08 +03:00
const char * desc , uint32_t retain_days , uint32_t min_archive ) ;
2001-12-17 22:46:10 +03:00
2002-02-11 14:43:17 +03:00
/*
* Displays a list of vg backups in a particular archive directory .
*/
2003-09-15 19:03:22 +04:00
int archive_list ( struct cmd_context * cmd , const char * dir , const char * vgname ) ;
int backup_list ( struct cmd_context * cmd , const char * dir , const char * vgname ) ;
2001-11-21 12:20:05 +03:00
2002-01-07 12:05:31 +03:00
/*
* The text format can read and write a volume_group to a file .
*/
2002-04-24 22:20:51 +04:00
struct format_type * create_text_format ( struct cmd_context * cmd ) ;
2002-11-18 17:04:08 +03:00
void * create_text_context ( struct cmd_context * cmd , const char * path ,
2002-04-24 22:20:51 +04:00
const char * desc ) ;
2002-01-07 12:05:31 +03:00
2002-12-20 02:25:55 +03:00
struct labeller * text_labeller_create ( const struct format_type * fmt ) ;
2002-11-18 17:04:08 +03:00
int pvhdr_read ( struct device * dev , char * buf ) ;
2006-05-11 21:58:58 +04:00
int add_da ( struct dm_pool * mem , struct list * das ,
2002-11-18 17:04:08 +03:00
uint64_t start , uint64_t size ) ;
void del_das ( struct list * das ) ;
2005-10-17 03:03:59 +04:00
int add_mda ( const struct format_type * fmt , struct dm_pool * mem , struct list * mdas ,
2002-11-18 17:04:08 +03:00
struct device * dev , uint64_t start , uint64_t size ) ;
void del_mdas ( struct list * mdas ) ;
2006-04-11 17:55:59 +04:00
const char * vgname_from_mda ( const struct format_type * fmt ,
2006-04-11 21:42:15 +04:00
struct device_area * dev_area , struct id * vgid ,
2006-04-13 21:32:24 +04:00
uint32_t * vgstatus , char * * creation_host ) ;
2002-11-18 17:04:08 +03:00
2001-11-21 12:20:05 +03:00
# endif