Sync usage with man page.
[netbsd-mini2440.git] / external / gpl2 / lvm2 / dist / tools / lvm2cmd.h
blob5217ce90c50a9e3346ec4fa8415c225ded88104b
1 /* $NetBSD$ */
3 /*
4 * Copyright (C) 2003-2004 Sistina Software, Inc. All rights reserved.
5 * Copyright (C) 2004 Red Hat, Inc. All rights reserved.
7 * This file is part of LVM2.
9 * This copyrighted material is made available to anyone wishing to use,
10 * modify, copy, or redistribute it subject to the terms and conditions
11 * of the GNU Lesser General Public License v.2.1.
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program; if not, write to the Free Software Foundation,
15 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #ifndef _LVM_CMDLIB_H
19 #define _LVM_CMDLIB_H
21 #ifndef _LVM_LOG_H
22 typedef void (*lvm2_log_fn_t) (int level, const char *file, int line,
23 int dm_errno, const char *message);
25 #endif
27 #define LVM2_LOG_SUPPRESS 0
29 /* Logging levels */
30 #define LVM2_LOG_FATAL 2
31 #define LVM2_LOG_ERROR 3
32 #define LVM2_LOG_PRINT 4
33 #define LVM2_LOG_VERBOSE 5
34 #define LVM2_LOG_VERY_VERBOSE 6
35 #define LVM2_LOG_DEBUG 7
38 * Define external function to replace the built-in logging function.
39 * It receives output line-by-line.
41 * level is the logging level (see above)
42 * file & line refer to the source code where the message originates.
44 void lvm2_log_fn(lvm2_log_fn_t log_fn);
47 * Initialise library.
48 * Returns a handle so repeated use of lvm2_run is more efficient.
49 */
50 void *lvm2_init(void);
53 * Set log level (as above) if using built-in logging function.
54 * Default is LVM2_LOG_PRINT. Use LVM2_LOG_SUPPRESS to suppress output.
56 void lvm2_log_level(void *handle, int level);
59 * Run an LVM2 command.
60 * Use NULL handle if the call is a one-off and you don't want to bother
61 * calling lvm2_init/lvm2_exit.
63 int lvm2_run(void *handle, const char *cmdline);
65 /* Release handle */
66 void lvm2_exit(void *handle);
68 #endif