[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 05/32] blockdev: Move cloop probe to its own file
From: |
Colin Lord |
Subject: |
[Qemu-devel] [PATCH v4 05/32] blockdev: Move cloop probe to its own file |
Date: |
Thu, 14 Jul 2016 15:03:01 -0400 |
Isolates cloop probing function as part of the modularization process.
Signed-off-by: Colin Lord <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
---
block/Makefile.objs | 2 +-
block/cloop-probe.c | 17 +++++++++++++++++
block/cloop.c | 16 +---------------
include/block/probe.h | 1 +
4 files changed, 20 insertions(+), 16 deletions(-)
create mode 100644 block/cloop-probe.c
diff --git a/block/Makefile.objs b/block/Makefile.objs
index 9d4be3b..1a8d7c0 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -24,7 +24,7 @@ block-obj-y += accounting.o dirty-bitmap.o
block-obj-y += write-threshold.o
block-obj-y += crypto.o
-block-obj-y += bochs-probe.o
+block-obj-y += bochs-probe.o cloop-probe.o
common-obj-y += stream.o
common-obj-y += backup.o
diff --git a/block/cloop-probe.c b/block/cloop-probe.c
new file mode 100644
index 0000000..955c29c
--- /dev/null
+++ b/block/cloop-probe.c
@@ -0,0 +1,17 @@
+#include "qemu/osdep.h"
+#include "block/probe.h"
+
+int cloop_probe(const uint8_t *buf, int buf_size, const char *filename)
+{
+ const char *magic_version_2_0 = "#!/bin/sh\n"
+ "#V2.0 Format\n"
+ "modprobe cloop file=$0 && mount -r -t iso9660 /dev/cloop $1\n";
+ int length = strlen(magic_version_2_0);
+ if (length > buf_size) {
+ length = buf_size;
+ }
+ if (!memcmp(magic_version_2_0, buf, length)) {
+ return 2;
+ }
+ return 0;
+}
diff --git a/block/cloop.c b/block/cloop.c
index 7b75f7e..c897e58 100644
--- a/block/cloop.c
+++ b/block/cloop.c
@@ -25,6 +25,7 @@
#include "qapi/error.h"
#include "qemu-common.h"
#include "block/block_int.h"
+#include "block/probe.h"
#include "qemu/module.h"
#include "qemu/bswap.h"
#include <zlib.h>
@@ -44,21 +45,6 @@ typedef struct BDRVCloopState {
z_stream zstream;
} BDRVCloopState;
-static int cloop_probe(const uint8_t *buf, int buf_size, const char *filename)
-{
- const char *magic_version_2_0 = "#!/bin/sh\n"
- "#V2.0 Format\n"
- "modprobe cloop file=$0 && mount -r -t iso9660 /dev/cloop $1\n";
- int length = strlen(magic_version_2_0);
- if (length > buf_size) {
- length = buf_size;
- }
- if (!memcmp(magic_version_2_0, buf, length)) {
- return 2;
- }
- return 0;
-}
-
static int cloop_open(BlockDriverState *bs, QDict *options, int flags,
Error **errp)
{
diff --git a/include/block/probe.h b/include/block/probe.h
index 6450ca1..ed1a60b 100644
--- a/include/block/probe.h
+++ b/include/block/probe.h
@@ -2,5 +2,6 @@
#define PROBE_H
int bochs_probe(const uint8_t *buf, int buf_size, const char *filename);
+int cloop_probe(const uint8_t *buf, int buf_size, const char *filename);
#endif
--
2.5.5
- [Qemu-devel] [PATCH v4 00/32] Dynamic module loading for block drivers, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 01/32] blockdev: prepare iSCSI block driver for dynamic loading, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 06/32] blockdev: Move luks probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 02/32] blockdev: Add dynamic generation of module_block.h, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 03/32] blockdev: Add dynamic module loading for block drivers, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 08/32] blockdev: Move parallels probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 05/32] blockdev: Move cloop probe to its own file,
Colin Lord <=
- [Qemu-devel] [PATCH v4 04/32] blockdev: Move bochs probe into separate file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 07/32] blockdev: Move dmg probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 11/32] blockdev: Move qed probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 10/32] blockdev: Move qcow2 probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 09/32] blockdev: Move qcow probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 12/32] blockdev: Move raw probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 13/32] blockdev: Move vdi probe to its own file, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 24/32] blockdev: Separate qed probe from its driver, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 25/32] blockdev: Separate raw probe from its driver, Colin Lord, 2016/07/14
- [Qemu-devel] [PATCH v4 17/32] blockdev: Separate bochs probe from its driver, Colin Lord, 2016/07/14