summaryrefslogtreecommitdiff
path: root/extras/multipath/libdevmapper/ioctl/libdm-targets.h
diff options
context:
space:
mode:
authorchristophe.varoqui@free.fr <christophe.varoqui@free.fr>2003-12-07 08:44:59 -0800
committerGreg KH <gregkh@suse.de>2005-04-26 21:13:06 -0700
commit2bf80b67d1a64f1219bd366cee355e897596b2cf (patch)
tree4417e2d94c900bdeccc556db9ef89e42a7e102fe /extras/multipath/libdevmapper/ioctl/libdm-targets.h
parent83fa40fc2a9ad7790f4d1289c9e918d8e6ebe99d (diff)
[PATCH] extras/multipath update
here is the next update which brings this multipath to the state i'm not ashamed of it being in udev :) * drop a libdevmapper copy in extras/multipath; maybe discussions w/ Sistina folks will bring a better solution in the future. * drop a putchar usage in libdevmapper to compile cleanly with klibc * drop another such usage of my own in main.c * massage the Makefile to compile libdevmapper against klibc * use "ld" to produce the binary rather than "gcc -static" * stop being stupid w/ uneeded major, minor & dev in main.c:dm_mk_node() * reverse to creating striped target for now because the multipath target is more hairy than expected initialy * push the version code to 009 to be in synch w/ udev builds & run here. binary size is 43ko, which is fairly gratifying after all the efforts I've put to compiling it with klibc :)
Diffstat (limited to 'extras/multipath/libdevmapper/ioctl/libdm-targets.h')
-rw-r--r--extras/multipath/libdevmapper/ioctl/libdm-targets.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/extras/multipath/libdevmapper/ioctl/libdm-targets.h b/extras/multipath/libdevmapper/ioctl/libdm-targets.h
new file mode 100644
index 0000000000..a8c0e20547
--- /dev/null
+++ b/extras/multipath/libdevmapper/ioctl/libdm-targets.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2001 Sistina Software (UK) Limited.
+ *
+ * This file is released under the LGPL.
+ */
+
+#ifndef LIB_DMTARGETS_H
+#define LIB_DMTARGETS_H
+
+#include <inttypes.h>
+
+struct dm_ioctl;
+struct dm_ioctl_v1;
+
+struct target {
+ uint64_t start;
+ uint64_t length;
+ char *type;
+ char *params;
+
+ struct target *next;
+};
+
+struct dm_task {
+ int type;
+ char *dev_name;
+
+ struct target *head, *tail;
+
+ int read_only;
+ uint32_t event_nr;
+ int major;
+ int minor;
+ union {
+ struct dm_ioctl *v4;
+ struct dm_ioctl_v1 *v1;
+ } dmi;
+ char *newname;
+
+ char *uuid;
+};
+
+struct cmd_data {
+ const char *name;
+ const int cmd;
+ const int version[3];
+};
+
+int dm_check_version(void);
+
+#endif