via_raid.c revision 2603474ff9be2418900581da1af5cccc9f13cae1
/*
* volume_id - reads filesystem label and uuid
*
* Copyright (C) 2005 Kay Sievers <kay.sievers@vrfy.org>
*
* Based on information taken from dmraid:
* Copyright (C) 2004-2006 Heinz Mauelshagen, Red Hat GmbH
*
* under the terms of the GNU General Public License as published by the
* Free Software Foundation version 2 of the License.
*/
#ifndef _GNU_SOURCE
#define _GNU_SOURCE 1
#endif
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <errno.h>
#include <ctype.h>
#include "libvolume_id.h"
#include "libvolume_id-private.h"
#include "util.h"
struct via_meta {
struct via_array {
} PACKED;
#define VIA_SIGNATURE 0xAA55
/* 8 bit checksum on first 50 bytes of metadata. */
{
while (i--)
}
{
dbg("probing at offset 0x%llx, size 0x%llx\n",
if (size < 0x10000)
return -1;
return -1;
return -1;
return -1;
if (!meta_checksum(via))
return -1;
return 0;
}