xref: /netbsd-src/external/gpl2/lvm2/lib/libdevmapper/libdm-netbsd.h (revision 971d420649f43878970da4ce2eea63a9d689fb1b)
1*971d4206Swiz /*        $NetBSD: libdm-netbsd.h,v 1.4 2014/11/19 10:37:29 wiz Exp $ */
2980e8904Shaad 
3980e8904Shaad /*
4980e8904Shaad  * Copyright (c) 2008 The NetBSD Foundation, Inc.
5980e8904Shaad  * All rights reserved.
6980e8904Shaad  *
7980e8904Shaad  * This code is derived from software contributed to The NetBSD Foundation
8980e8904Shaad  * by Adam Hamsik.
9980e8904Shaad  *
10980e8904Shaad  * Redistribution and use in source and binary forms, with or without
11980e8904Shaad  * modification, are permitted provided that the following conditions
12980e8904Shaad  * are met:
13980e8904Shaad  * 1. Redistributions of source code must retain the above copyright
14980e8904Shaad  *    notice, this list of conditions and the following disclaimer.
15980e8904Shaad  * 2. Redistributions in binary form must reproduce the above copyright
16980e8904Shaad  *    notice, this list of conditions and the following disclaimer in the
17980e8904Shaad  *    documentation and/or other materials provided with the distribution.
18980e8904Shaad  *
19980e8904Shaad  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20980e8904Shaad  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21980e8904Shaad  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22980e8904Shaad  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23980e8904Shaad  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24980e8904Shaad  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25980e8904Shaad  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26980e8904Shaad  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27980e8904Shaad  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28980e8904Shaad  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29980e8904Shaad  * POSSIBILITY OF SUCH DAMAGE.
30980e8904Shaad  */
31980e8904Shaad 
32980e8904Shaad #ifndef __LIB_DM_H__
33980e8904Shaad #define __LIB_DM_H__
34980e8904Shaad 
35980e8904Shaad #include <prop/proplib.h>
368adab652Srmind #include <dm.h>
37980e8904Shaad 
38980e8904Shaad #  define MAJOR(x) major((x))
39980e8904Shaad #  define MINOR(x) minor((x))
40980e8904Shaad #  define MKDEV(x,y) makedev((x),(y))
41980e8904Shaad 
42980e8904Shaad /* Name of device-mapper driver in kernel */
43980e8904Shaad #define DM_NAME "dm"
44980e8904Shaad 
45980e8904Shaad /* Types for nbsd_get_dm_major */
46980e8904Shaad #define DM_CHAR_MAJOR 1
47980e8904Shaad #define DM_BLOCK_MAJOR 2
48980e8904Shaad 
49980e8904Shaad /* libdm_netbsd.c */
50980e8904Shaad int nbsd_get_dm_major(uint32_t *, int); /* Get dm device major numbers */
51980e8904Shaad 
520527bde8Shaad int nbsd_dmi_add_cmd(const char *, libdm_task_t);
530527bde8Shaad int nbsd_dmi_add_version(const int [3], libdm_task_t);
54980e8904Shaad 
550527bde8Shaad struct dm_ioctl* nbsd_dm_dict_to_dmi(libdm_task_t, const int);
56980e8904Shaad 
57980e8904Shaad #endif /* __NETBSD_DM_H__ */
58