@@ -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
new file mode 100644
@@ -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;
+}
@@ -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)
{
@@ -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