+++ /dev/null
-Index: new/block.c
-===================================================================
---- new.orig/block.c 2013-02-12 12:05:14.000000000 +0100
-+++ new/block.c 2013-02-12 12:06:52.000000000 +0100
-@@ -3162,6 +3162,28 @@
- return -ENOTSUP;
- }
-
-+int bdrv_snapshot_find(BlockDriverState *bs, QEMUSnapshotInfo *sn_info,
-+ const char *name)
-+{
-+ QEMUSnapshotInfo *sn_tab, *sn;
-+ int nb_sns, i, ret;
-+
-+ ret = -ENOENT;
-+ nb_sns = bdrv_snapshot_list(bs, &sn_tab);
-+ if (nb_sns < 0)
-+ return ret;
-+ for(i = 0; i < nb_sns; i++) {
-+ sn = &sn_tab[i];
-+ if (!strcmp(sn->id_str, name) || !strcmp(sn->name, name)) {
-+ *sn_info = *sn;
-+ ret = 0;
-+ break;
-+ }
-+ }
-+ g_free(sn_tab);
-+ return ret;
-+}
-+
- int bdrv_snapshot_load_tmp(BlockDriverState *bs,
- const char *snapshot_name)
- {
-Index: new/include/block/block.h
-===================================================================
---- new.orig/include/block/block.h 2013-02-12 12:05:14.000000000 +0100
-+++ new/include/block/block.h 2013-02-12 12:06:52.000000000 +0100
-@@ -331,6 +331,8 @@
- int bdrv_snapshot_delete(BlockDriverState *bs, const char *snapshot_id);
- int bdrv_snapshot_list(BlockDriverState *bs,
- QEMUSnapshotInfo **psn_info);
-+int bdrv_snapshot_find(BlockDriverState *bs, QEMUSnapshotInfo *sn_info,
-+ const char *name);
- int bdrv_snapshot_load_tmp(BlockDriverState *bs,
- const char *snapshot_name);
- char *bdrv_snapshot_dump(char *buf, int buf_size, QEMUSnapshotInfo *sn);
-Index: new/savevm.c
-===================================================================
---- new.orig/savevm.c 2013-02-12 12:05:14.000000000 +0100
-+++ new/savevm.c 2013-02-12 12:06:52.000000000 +0100
-@@ -2055,28 +2055,6 @@
- return ret;
- }
-
--static int bdrv_snapshot_find(BlockDriverState *bs, QEMUSnapshotInfo *sn_info,
-- const char *name)
--{
-- QEMUSnapshotInfo *sn_tab, *sn;
-- int nb_sns, i, ret;
--
-- ret = -ENOENT;
-- nb_sns = bdrv_snapshot_list(bs, &sn_tab);
-- if (nb_sns < 0)
-- return ret;
-- for(i = 0; i < nb_sns; i++) {
-- sn = &sn_tab[i];
-- if (!strcmp(sn->id_str, name) || !strcmp(sn->name, name)) {
-- *sn_info = *sn;
-- ret = 0;
-- break;
-- }
-- }
-- g_free(sn_tab);
-- return ret;
--}
--
- /*
- * Deletes snapshots of a given name in all opened images.
- */