summaryrefslogtreecommitdiff
path: root/extra/gpart
diff options
context:
space:
mode:
authorNicolás Reynolds <fauno@endefensadelsl.org>2013-12-27 23:55:53 +0000
committerNicolás Reynolds <fauno@endefensadelsl.org>2013-12-27 23:55:53 +0000
commit65eeff79fff8a1bfdf67ca51d147384f46f4d5c0 (patch)
treefbfdff322b28d9a3c37e6e31c94caf1d8e48dac1 /extra/gpart
parentd53c44f055929b18d7d1b25f8367ee5836c435fc (diff)
Fri Dec 27 23:54:04 UTC 2013
Diffstat (limited to 'extra/gpart')
-rw-r--r--extra/gpart/PKGBUILD37
-rw-r--r--extra/gpart/gpart-0.1h-errno.patch20
-rw-r--r--extra/gpart/gpart-0.1h-l64seek.patch71
-rw-r--r--extra/gpart/gpart-0.1h-ntfs.patch75
-rw-r--r--extra/gpart/gpart-0.1h-openmode.patch11
-rw-r--r--extra/gpart/gpart-0.1h-reiserfs-3.6.patch443
-rw-r--r--extra/gpart/gpart-0.1h-vfat.patch17
7 files changed, 8 insertions, 666 deletions
diff --git a/extra/gpart/PKGBUILD b/extra/gpart/PKGBUILD
index 65c5e9fa5..26c81ea6d 100644
--- a/extra/gpart/PKGBUILD
+++ b/extra/gpart/PKGBUILD
@@ -1,49 +1,28 @@
-# $Id: PKGBUILD 143745 2011-11-28 20:14:39Z giovanni $
+# $Id: PKGBUILD 201253 2013-12-06 19:56:50Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: dale <dale@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=gpart
-pkgver=0.1h
-pkgrel=5
+pkgver=0.2.1
+pkgrel=1
pkgdesc="Partition table rescue/guessing tool"
arch=('i686' 'x86_64')
-url="http://www.stud.uni-hannover.de/user/76201/gpart/"
+url="https://github.com/baruch/gpart"
license=('GPL')
depends=('glibc')
-source=("http://www.sfr-fresh.com/linux/misc/${pkgname}-${pkgver}.tar.gz"
- 'gpart-0.1h-errno.patch'
- 'gpart-0.1h-vfat.patch'
- 'gpart-0.1h-ntfs.patch'
- 'gpart-0.1h-reiserfs-3.6.patch'
- 'gpart-0.1h-l64seek.patch'
- 'gpart-0.1h-openmode.patch')
-md5sums=('ee3a2d2dde70bcf404eb354b3d1ee6d4'
- '81eee5d9985df9bf9c23624e46cf945f'
- 'ae6d86b0268618d34e618824dcd82754'
- '8161c02116ee4575906587eb09e35bde'
- '5da425c355740cbf06286755c902b996'
- '9cd7f91c321a83cc1aa202744d1c7cd2'
- 'c982a01385e99b86b32de536c1fbecfb')
+source=("https://github.com/baruch/${pkgname}/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz")
+md5sums=('465870b72b647a3aa22b335ba527e869')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i ${srcdir}/gpart-0.1h-errno.patch
- patch -Np1 -i ${srcdir}/gpart-0.1h-vfat.patch
- patch -Np1 -i ${srcdir}/gpart-0.1h-ntfs.patch
- patch -Np2 -i ${srcdir}/gpart-0.1h-reiserfs-3.6.patch
- patch -Np1 -i ${srcdir}/gpart-0.1h-l64seek.patch
- patch -Np1 -i ${srcdir}/gpart-0.1h-openmode.patch
-
- sed -i -e "/^CFLAGS/s: -O2 : ${CFLAGS} :" make.defs
- sed -i -e "/^LDFLAGS/s:=:=${LDFLAGS} :" make.defs
-
+ ./configure --prefix=/usr
make
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
- make prefix=${pkgdir}/usr mandir=${pkgdir}/usr/share/man install
+ make prefix=${pkgdir}/usr install
}
diff --git a/extra/gpart/gpart-0.1h-errno.patch b/extra/gpart/gpart-0.1h-errno.patch
deleted file mode 100644
index 13041c202..000000000
--- a/extra/gpart/gpart-0.1h-errno.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- gpart-0.1h/src/l64seek.c
-+++ gpart-0.1h-working/src/l64seek.c
-@@ -16,6 +16,7 @@
-
- #include "l64seek.h"
-
-+#include <errno.h>
-
- #define OSTACKLEN 16
- static struct
---- gpart-0.1h/src/disku.c
-+++ gpart-0.1h-working/src/disku.c
-@@ -20,6 +20,7 @@
- #include <string.h>
- #include <sys/ioctl.h>
- #include "gpart.h"
-+#include <errno.h>
-
- #if defined(__linux__)
- #include <sys/mount.h>
diff --git a/extra/gpart/gpart-0.1h-l64seek.patch b/extra/gpart/gpart-0.1h-l64seek.patch
deleted file mode 100644
index 8a14411a5..000000000
--- a/extra/gpart/gpart-0.1h-l64seek.patch
+++ /dev/null
@@ -1,71 +0,0 @@
---- gpart-0.1h.orig/src/l64seek.c
-+++ gpart-0.1h/src/l64seek.c
-@@ -25,30 +25,11 @@
- } ostck[OSTACKLEN];
- static int osptr = -1;
-
--#if defined(__linux__) && defined(__i386__)
--_syscall5(int,_llseek,uint,fd,ulong,hi,ulong,lo,loff_t *,res,uint,wh)
--#endif
--
--
--
- off64_t l64seek(int fd,off64_t offset,int whence)
- {
- off64_t ret = (off64_t)-1;
-
--#if defined(__linux__) && defined(__i386__)
-- int iret;
-- unsigned long ohi, olo;
--
-- ohi = (unsigned long)((offset >> 32) & 0xFFFFFFFF);
-- olo = (unsigned long)(offset & 0xFFFFFFFF);
-- iret = _llseek(fd,ohi,olo,&ret,whence);
-- if (iret == -1)
-- ret = (off64_t)-1;
--#endif
--
--#if defined(__FreeBSD__) || (defined(__linux__) && defined(__alpha__))
- ret = lseek(fd,offset,whence);
--#endif
-
- return (ret);
- }
---- gpart-0.1h.orig/src/l64seek.h
-+++ gpart-0.1h/src/l64seek.h
-@@ -17,6 +17,8 @@
- #ifndef _L64SEEK_H
- #define _L64SEEK_H
-
-+#include <sys/stat.h>
-+#include <sys/types.h>
- #include <unistd.h>
-
- /*
-@@ -25,19 +27,7 @@
- * offsets.
- */
-
--
--#if defined(__linux__)
--# include <linux/unistd.h>
--# include <sys/types.h>
-- typedef int64_t off64_t;
--#endif
--
--
--#if defined(__FreeBSD__)
-- typedef off_t off64_t;
--#endif
--
--
-+typedef loff_t off64_t;
- typedef off64_t s64_t;
-
- off64_t l64seek(int fd, off64_t offset, int whence);
-@@ -45,5 +35,4 @@
- int l64opush(int);
- s64_t l64opop(int);
-
--
- #endif
diff --git a/extra/gpart/gpart-0.1h-ntfs.patch b/extra/gpart/gpart-0.1h-ntfs.patch
deleted file mode 100644
index 1f887ac47..000000000
--- a/extra/gpart/gpart-0.1h-ntfs.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-Ripped out of debian
-
---- gpart-0.1h.orig/src/gm_ntfs.h
-+++ gpart-0.1h/src/gm_ntfs.h
-@@ -14,6 +14,9 @@
- *
- */
-
-+#include <stdint.h>
-+#include <asm/byteorder.h>
-+
- #ifndef _GM_NTFS_H
- #define _GM_NTFS_H
-
-@@ -29,32 +32,38 @@
- /* 'NTFS' in little endian */
- #define NTFS_SUPER_MAGIC 0x5346544E
-
--#if defined(i386) || defined(__i386__) || defined(__alpha__)
--
- /* unsigned integral types */
- #ifndef NTFS_INTEGRAL_TYPES
- #define NTFS_INTEGRAL_TYPES
--typedef unsigned char ntfs_u8;
--typedef unsigned short ntfs_u16;
--typedef unsigned int ntfs_u32;
--typedef s64_t ntfs_u64;
-+typedef uint8_t ntfs_u8;
-+typedef uint16_t ntfs_u16;
-+typedef uint32_t ntfs_u32;
-+typedef uint64_t ntfs_u64;
-+typedef int8_t ntfs_s8;
-+typedef int16_t ntfs_s16;
- #endif /* NTFS_INTEGRAL_TYPES */
--#endif /* defined(i386) || defined(__i386__) || defined(__alpha__) */
--
--
--/* Macros reading unsigned integers from a byte pointer */
--/* these should work for all little endian machines */
--#define NTFS_GETU8(p) (*(ntfs_u8*)(p))
--#define NTFS_GETU16(p) (*(ntfs_u16*)(p))
--#define NTFS_GETU24(p) (NTFS_GETU32(p) & 0xFFFFFF)
--#define NTFS_GETU32(p) (*(ntfs_u32*)(p))
--#define NTFS_GETU64(p) (*(ntfs_u64*)(p))
--
--/* Macros reading signed integers, returning int */
--#define NTFS_GETS8(p) ((int)(*(char*)(p)))
--#define NTFS_GETS16(p) ((int)(*(short*)(p)))
--#define NTFS_GETS24(p) (NTFS_GETU24(p) < 0x800000 ? (int)NTFS_GETU24(p) :
--
-
-+#define CPU_TO_LE16(a) __cpu_to_le16(a)
-+#define CPU_TO_LE32(a) __cpu_to_le32(a)
-+#define CPU_TO_LE64(a) __cpu_to_le64(a)
-+
-+#define LE16_TO_CPU(a) __cpu_to_le16(a)
-+#define LE32_TO_CPU(a) __cpu_to_le32(a)
-+#define LE64_TO_CPU(a) __cpu_to_le64(a)
-+
-+/* Macros reading unsigned integers */
-+#define NTFS_GETU8(p) (*(ntfs_u8*)(p))
-+#define NTFS_GETU16(p) ((ntfs_u16)LE16_TO_CPU(*(ntfs_u16*)(p)))
-+#define NTFS_GETU24(p) ((ntfs_u32)NTFS_GETU16(p) | \
-+ ((ntfs_u32)NTFS_GETU8(((char*)(p)) + 2) << 16))
-+#define NTFS_GETU32(p) ((ntfs_u32)LE32_TO_CPU(*(ntfs_u32*)(p)))
-+#define NTFS_GETU64(p) ((ntfs_u64)LE64_TO_CPU(*(ntfs_u64*)(p)))
-+
-+/* Macros reading signed integers */
-+#define NTFS_GETS8(p) ((*(ntfs_s8*)(p)))
-+#define NTFS_GETS16(p) ((ntfs_s16)LE16_TO_CPU(*(short*)(p)))
-+#define NTFS_GETS24(p) (NTFS_GETU24(p) < 0x800000 ? \
-+ (int)NTFS_GETU24(p) : \
-+ (int)(NTFS_GETU24(p) - 0x1000000))
-
- #endif /* _GM_NTFS_H */
diff --git a/extra/gpart/gpart-0.1h-openmode.patch b/extra/gpart/gpart-0.1h-openmode.patch
deleted file mode 100644
index ca13cc942..000000000
--- a/extra/gpart/gpart-0.1h-openmode.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- gpart.orig/src/gpart.c 2008-10-19 15:06:06.000000000 +0000
-+++ gpart/src/gpart.c 2008-11-25 07:34:47.000000000 +0000
-@@ -1221,7 +1221,7 @@ static int make_mbr_backup(disk_desc *d,
- {
- int fd, ret = 0;
-
-- if ((fd = open(bfile,O_WRONLY|O_CREAT)) < 0)
-+ if ((fd = open(bfile,O_WRONLY|O_CREAT, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH)) < 0)
- return (ret);
-
- if (write(fd,d->d_pt.t_boot,512) == 512)
diff --git a/extra/gpart/gpart-0.1h-reiserfs-3.6.patch b/extra/gpart/gpart-0.1h-reiserfs-3.6.patch
deleted file mode 100644
index 257015d2b..000000000
--- a/extra/gpart/gpart-0.1h-reiserfs-3.6.patch
+++ /dev/null
@@ -1,443 +0,0 @@
-diff -rupN ./gpart-0.1h.orig/README ./gpart-0.1h/README
---- ./gpart-0.1h.orig/README Wed Feb 7 20:58:12 2001
-+++ ./gpart-0.1h/README Fri Jan 10 16:29:43 2003
-@@ -24,25 +24,25 @@
-
- - Currently recognized partitions/filesystems types ---------------------
-
-- Modname Typ Description
-- fat 0x01 "Primary DOS with 12 bit FAT"
-- 0x04 "Primary DOS with 16 bit FAT (<= 32MB)"
-- 0x06 "Primary 'big' DOS (> 32MB)"
-- 0x0B "DOS or Windows 95 with 32 bit FAT"
-- 0x0C "DOS or Windows 95 with 32 bit FAT, LBA"
-- ntfs 0x07 "OS/2 HPFS, NTFS, QNX or Advanced UNIX"
-- hpfs 0x07 "OS/2 HPFS, NTFS, QNX or Advanced UNIX"
-- ext2 0x83 "Linux ext2 filesystem"
-- lswap 0x82 "Linux swap"
-- bsddl 0xA5 "FreeBSD/NetBSD/386BSD"
-- s86dl 0x82 "Solaris/x86 disklabel"
-- minix 0x80 "Minix V1"
-- 0x81 "Minix V2"
-- rfs 0x83 "Reiser filesystem"
-- hmlvm 0xFE "Linux LVM physical volumes"
-- qnx4 0x4F "QNX 4.x"
-- beos 0xEB "BeOS fs"
-- xfs 0x83 "SGI XFS filesystem"
-+ Modname Typ Description
-+ fat 0x01 "Primary DOS with 12 bit FAT"
-+ 0x04 "Primary DOS with 16 bit FAT (<= 32MB)"
-+ 0x06 "Primary 'big' DOS (> 32MB)"
-+ 0x0B "DOS or Windows 95 with 32 bit FAT"
-+ 0x0C "DOS or Windows 95 with 32 bit FAT, LBA"
-+ ntfs 0x07 "OS/2 HPFS, NTFS, QNX or Advanced UNIX"
-+ hpfs 0x07 "OS/2 HPFS, NTFS, QNX or Advanced UNIX"
-+ ext2 0x83 "Linux ext2 filesystem"
-+ lswap 0x82 "Linux swap"
-+ bsddl 0xA5 "FreeBSD/NetBSD/386BSD"
-+ s86dl 0x82 "Solaris/x86 disklabel"
-+ minix 0x80 "Minix V1"
-+ 0x81 "Minix V2"
-+ reiserfs 0x83 "ReiserFS filesystem"
-+ hmlvm 0xFE "Linux LVM physical volumes"
-+ qnx4 0x4F "QNX 4.x"
-+ beos 0xEB "BeOS fs"
-+ xfs 0x83 "SGI XFS filesystem"
-
-
-
-diff -rupN ./gpart-0.1h.orig/man/gpart.man ./gpart-0.1h/man/gpart.man
---- ./gpart-0.1h.orig/man/gpart.man Wed Feb 7 20:54:18 2001
-+++ ./gpart-0.1h/man/gpart.man Fri Jan 10 16:31:52 2003
-@@ -63,8 +63,8 @@ MS Windows NT/2000 filesystem.
- .I qnx4
- QNX 4.x filesystem.
- .TP
--.I rfs
--The Reiser filesystem (version 3.5.X, X > 11).
-+.I reiserfs
-+The Reiser filesystem (version 3.5.X, X > 11, 3.6.X).
- .TP
- .I s86dl
- Sun Solaris on Intel platforms uses a sub-partitioning
-diff -rupN ./gpart-0.1h.orig/src/Makefile ./gpart-0.1h/src/Makefile
---- ./gpart-0.1h.orig/src/Makefile Tue Jan 30 20:01:08 2001
-+++ ./gpart-0.1h/src/Makefile Fri Jan 10 16:32:24 2003
-@@ -19,7 +19,7 @@ CFLAGS+=-DGPART_LANG=\'$(GPART_LANG)\'
- endif
-
-
--mod=ext2 lswap fat bsddl ntfs hpfs s86dl minix rfs hmlvm qnx4 beos xfs
-+mod=ext2 lswap fat bsddl ntfs hpfs s86dl minix reiserfs hmlvm qnx4 beos xfs
- modobj=$(foreach m,$(mod),gm_$(m).o)
- obj=gpart.o gmodules.o disku.o l64seek.o $(modobj)
- src=$(obj:.o=.c)
-diff -rupN ./gpart-0.1h.orig/src/gm_reiserfs.c ./gpart-0.1h/src/gm_reiserfs.c
---- ./gpart-0.1h.orig/src/gm_reiserfs.c Thu Jan 1 03:00:00 1970
-+++ ./gpart-0.1h/src/gm_reiserfs.c Fri Jan 10 17:25:30 2003
-@@ -0,0 +1,91 @@
-+/*
-+ * gm_reiserfs.c -- gpart ReiserFS guessing module
-+ *
-+ * gpart (c) 1999-2001 Michail Brzitwa <mb@ichabod.han.de>
-+ * Guess PC-type hard disk partitions.
-+ *
-+ * gpart is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published
-+ * by the Free Software Foundation; either version 2, or (at your
-+ * option) any later version.
-+ *
-+ * Created: 21.01.1999 <mb@ichabod.han.de>
-+ * Modified: 26.12.2000 Francis Devereux <francis@devereux.tc>
-+ * Added reiserfs 3.5.28 support.
-+ * Modified: 10.01.2003 Yury Umanets <umka@namesys.com>
-+ * Added reiserfs 3.6.x support.
-+ *
-+ */
-+
-+#include <string.h>
-+#include <errno.h>
-+#include "gpart.h"
-+#include "gm_reiserfs.h"
-+
-+static const char rcsid[] = "$Id: gm_reiserfs.c,v 1.5 2003/01/10 16:38:08 mb Exp mb $";
-+
-+
-+int reiserfs_init(disk_desc *d,g_module *m)
-+{
-+ if ((d == 0) || (m == 0))
-+ return (0);
-+
-+ m->m_desc = "ReiserFS filesystem";
-+ return (REISERFS_FIRST_BLOCK * 1024 + SB_V35_SIZE);
-+}
-+
-+
-+
-+int reiserfs_term(disk_desc *d)
-+{
-+ return (1);
-+}
-+
-+
-+
-+int reiserfs_gfun(disk_desc *d,g_module *m)
-+{
-+ struct reiserfs_super_block_v35 *sb;
-+ dos_part_entry *pt = &m->m_part;
-+ s64_t size;
-+
-+ m->m_guess = GM_NO;
-+ sb = (struct reiserfs_super_blockv35 *)(d->d_sbuf + REISERFS_FIRST_BLOCK * 1024);
-+ if (strncmp(sb->s_magic,REISERFS_SUPER_V35_MAGIC,12) == 0 ||
-+ strncmp(sb->s_magic,REISERFS_SUPER_V36_MAGIC,12) == 0)
-+ {
-+ /*
-+ * sanity checks.
-+ */
-+
-+ if (sb->s_block_count < sb->s_free_blocks)
-+ return (1);
-+
-+ if (sb->s_block_count < REISERFS_MIN_BLOCK_AMOUNT)
-+ return (1);
-+
-+ if ((sb->s_state != REISERFS_VALID_FS) &&
-+ (sb->s_state != REISERFS_ERROR_FS))
-+ return (1);
-+
-+ if (sb->s_oid_maxsize % 2) /* must be even */
-+ return (1);
-+
-+ if (sb->s_oid_maxsize < sb->s_oid_cursize)
-+ return (1);
-+
-+ if ((sb->s_blocksize != 4096) && (sb->s_blocksize != 8192))
-+ return (1);
-+
-+ /*
-+ * ok.
-+ */
-+
-+ m->m_guess = GM_YES;
-+ pt->p_start = d->d_nsb;
-+ size = sb->s_block_count; size *= sb->s_blocksize; size /= d->d_ssize;
-+ pt->p_size = (unsigned long)size;
-+ pt->p_typ = 0x83;
-+ }
-+ return (1);
-+}
-diff -rupN ./gpart-0.1h.orig/src/gm_reiserfs.h ./gpart-0.1h/src/gm_reiserfs.h
---- ./gpart-0.1h.orig/src/gm_reiserfs.h Thu Jan 1 03:00:00 1970
-+++ ./gpart-0.1h/src/gm_reiserfs.h Fri Jan 10 17:25:55 2003
-@@ -0,0 +1,82 @@
-+/*
-+ * gm_reiserfs.h -- gpart ReiserFS guessing module header
-+ *
-+ * gpart (c) 1999-2001 Michail Brzitwa <mb@ichabod.han.de>
-+ * Guess PC-type hard disk partitions.
-+ *
-+ * gpart is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published
-+ * by the Free Software Foundation; either version 2, or (at your
-+ * option) any later version.
-+ *
-+ * Created: 21.01.1999 <mb@ichabod.han.de>
-+ * Modified: 26.12.2000 Francis Devereux <francis@devereux.tc>
-+ * Update support reiserfs version 3.5.28
-+ * Modified: 10.01.2003 Yury Umanets <umka@namesys.com>
-+ * Added reiserfs 3.6.x support.
-+ *
-+ */
-+
-+#ifndef _GM_reiserfs_H
-+#define _GM_reiserfs_H
-+
-+/* imported from asm/types.h */
-+typedef __signed__ char __s8;
-+typedef unsigned char __u8;
-+
-+typedef __signed__ short __s16;
-+typedef unsigned short __u16;
-+
-+typedef __signed__ int __s32;
-+typedef unsigned int __u32;
-+
-+/*
-+ * taken from ReiserFS v3.5.28, v3.6.x. Reiserfs Copyright 1996-2000 Hans Reiser
-+ */
-+
-+#define REISERFS_SUPER_V35_MAGIC "ReIsErFs"
-+#define REISERFS_SUPER_V36_MAGIC "ReIsEr2Fs"
-+
-+#define REISERFS_FIRST_BLOCK 64
-+#define REISERFS_VALID_FS 1
-+#define REISERFS_ERROR_FS 2
-+#define REISERFS_MIN_BLOCK_AMOUNT 100
-+
-+struct reiserfs_super_block_v35
-+{
-+ __u32 s_block_count; /* blocks count */
-+ __u32 s_free_blocks; /* free blocks count */
-+ __u32 s_root_block; /* root block number */
-+ __u32 s_journal_block; /* journal block number */
-+ __u32 s_journal_dev; /* journal device number */
-+ __u32 s_orig_journal_size; /* size of the journal on FS creation. used to make sure they don't overflow it */
-+ __u32 s_journal_trans_max; /* max number of blocks in a transaction. */
-+ __u32 s_journal_block_count; /* total size of the journal. can change over time */
-+ __u32 s_journal_max_batch; /* max number of blocks to batch into a trans */
-+ __u32 s_journal_max_commit_age; /* in seconds, how old can an async commit be */
-+ __u32 s_journal_max_trans_age; /* in seconds, how old can a transaction be */
-+ __u16 s_blocksize; /* block size */
-+ __u16 s_oid_maxsize; /* max size of object id array, see get_objectid() commentary */
-+ __u16 s_oid_cursize; /* current size of object id array */
-+ __u16 s_state; /* valid or error */
-+ char s_magic[12]; /* reiserfs magic string indicates that file system is reiserfs */
-+ __u32 s_hash_function_code; /* indicate, what hash fuction is being use to sort names in a directory*/
-+ __u16 s_tree_height; /* height of disk tree */
-+ __u16 s_bmap_nr; /* amount of bitmap blocks needed to address each block of file system */
-+ __u16 s_reserved;
-+};
-+
-+#define SB_V35_SIZE (sizeof(struct reiserfs_super_block_v35))
-+
-+struct reiserfs_super_block_v36 {
-+ struct reiserfs_super_block_v35 s_v35;
-+ __u32 s_inode_generation;
-+ __u32 s_flags;
-+ char s_uuid[16];
-+ char s_label[16];
-+ char s_unused[88];
-+};
-+
-+#define SB_V36_SIZE (sizeof(struct reiserfs_super_block_v36))
-+
-+#endif /* _GM_REISERFS_H */
-diff -rupN ./gpart-0.1h.orig/src/gm_rfs.c ./gpart-0.1h/src/gm_rfs.c
---- ./gpart-0.1h.orig/src/gm_rfs.c Wed Feb 7 21:08:08 2001
-+++ ./gpart-0.1h/src/gm_rfs.c Thu Jan 1 03:00:00 1970
-@@ -1,88 +0,0 @@
--/*
-- * gm_rfs.c -- gpart ReiserFS guessing module
-- *
-- * gpart (c) 1999-2001 Michail Brzitwa <mb@ichabod.han.de>
-- * Guess PC-type hard disk partitions.
-- *
-- * gpart is free software; you can redistribute it and/or modify
-- * it under the terms of the GNU General Public License as published
-- * by the Free Software Foundation; either version 2, or (at your
-- * option) any later version.
-- *
-- * Created: 21.01.1999 <mb@ichabod.han.de>
-- * Modified: 26.12.2000 Francis Devereux <francis@devereux.tc>
-- * Added reiserfs 3.5.28 support.
-- *
-- */
--
--#include <string.h>
--#include <errno.h>
--#include "gpart.h"
--#include "gm_rfs.h"
--
--static const char rcsid[] = "$Id: gm_rfs.c,v 1.5 2001/02/07 18:08:08 mb Exp mb $";
--
--
--int rfs_init(disk_desc *d,g_module *m)
--{
-- if ((d == 0) || (m == 0))
-- return (0);
--
-- m->m_desc = "Reiser filesystem";
-- return (REISERFS_FIRST_BLOCK * 1024 + SB_SIZE);
--}
--
--
--
--int rfs_term(disk_desc *d)
--{
-- return (1);
--}
--
--
--
--int rfs_gfun(disk_desc *d,g_module *m)
--{
-- struct reiserfs_super_block *sb;
-- dos_part_entry *pt = &m->m_part;
-- s64_t size;
--
-- m->m_guess = GM_NO;
-- sb = (struct reiserfs_super_block *)(d->d_sbuf + REISERFS_FIRST_BLOCK * 1024);
-- if (strncmp(sb->s_magic,REISERFS_SUPER_MAGIC,12) == 0)
-- {
-- /*
-- * sanity checks.
-- */
--
-- if (sb->s_block_count < sb->s_free_blocks)
-- return (1);
--
-- if (sb->s_block_count < REISERFS_MIN_BLOCK_AMOUNT)
-- return (1);
--
-- if ((sb->s_state != REISERFS_VALID_FS) &&
-- (sb->s_state != REISERFS_ERROR_FS))
-- return (1);
--
-- if (sb->s_oid_maxsize % 2) /* must be even */
-- return (1);
--
-- if (sb->s_oid_maxsize < sb->s_oid_cursize)
-- return (1);
--
-- if ((sb->s_blocksize != 4096) && (sb->s_blocksize != 8192))
-- return (1);
--
-- /*
-- * ok.
-- */
--
-- m->m_guess = GM_YES;
-- pt->p_start = d->d_nsb;
-- size = sb->s_block_count; size *= sb->s_blocksize; size /= d->d_ssize;
-- pt->p_size = (unsigned long)size;
-- pt->p_typ = 0x83;
-- }
-- return (1);
--}
-diff -rupN ./gpart-0.1h.orig/src/gm_rfs.h ./gpart-0.1h/src/gm_rfs.h
---- ./gpart-0.1h.orig/src/gm_rfs.h Mon Jan 29 16:34:35 2001
-+++ ./gpart-0.1h/src/gm_rfs.h Thu Jan 1 03:00:00 1970
-@@ -1,68 +0,0 @@
--/*
-- * gm_rfs.h -- gpart ReiserFS guessing module header
-- *
-- * gpart (c) 1999-2001 Michail Brzitwa <mb@ichabod.han.de>
-- * Guess PC-type hard disk partitions.
-- *
-- * gpart is free software; you can redistribute it and/or modify
-- * it under the terms of the GNU General Public License as published
-- * by the Free Software Foundation; either version 2, or (at your
-- * option) any later version.
-- *
-- * Created: 21.01.1999 <mb@ichabod.han.de>
-- * Modified: 26.12.2000 Francis Devereux <francis@devereux.tc>
-- * Update support reiserfs version 3.5.28
-- *
-- */
--
--#ifndef _GM_RFS_H
--#define _GM_RFS_H
--
--/* imported from asm/types.h */
--typedef __signed__ char __s8;
--typedef unsigned char __u8;
--
--typedef __signed__ short __s16;
--typedef unsigned short __u16;
--
--typedef __signed__ int __s32;
--typedef unsigned int __u32;
--
--/*
-- * taken from ReiserFS v3.5.28. Reiserfs Copyright 1996-2000 Hans Reiser
-- */
--
--#define REISERFS_SUPER_MAGIC "ReIsErFs"
--#define REISERFS_FIRST_BLOCK 64
--#define REISERFS_VALID_FS 1
--#define REISERFS_ERROR_FS 2
--#define REISERFS_MIN_BLOCK_AMOUNT 100
--
--struct reiserfs_super_block
--{
-- __u32 s_block_count; /* blocks count */
-- __u32 s_free_blocks; /* free blocks count */
-- __u32 s_root_block; /* root block number */
-- __u32 s_journal_block; /* journal block number */
-- __u32 s_journal_dev; /* journal device number */
-- __u32 s_orig_journal_size; /* size of the journal on FS creation. used to make sure they don't overflow it */
-- __u32 s_journal_trans_max; /* max number of blocks in a transaction. */
-- __u32 s_journal_block_count; /* total size of the journal. can change over time */
-- __u32 s_journal_max_batch; /* max number of blocks to batch into a trans */
-- __u32 s_journal_max_commit_age; /* in seconds, how old can an async commit be */
-- __u32 s_journal_max_trans_age; /* in seconds, how old can a transaction be */
-- __u16 s_blocksize; /* block size */
-- __u16 s_oid_maxsize; /* max size of object id array, see get_objectid() commentary */
-- __u16 s_oid_cursize; /* current size of object id array */
-- __u16 s_state; /* valid or error */
-- char s_magic[12]; /* reiserfs magic string indicates that file system is reiserfs */
-- __u32 s_hash_function_code; /* indicate, what hash fuction is being use to sort names in a directory*/
-- __u16 s_tree_height; /* height of disk tree */
-- __u16 s_bmap_nr; /* amount of bitmap blocks needed to address each block of file system */
-- __u16 s_reserved;
--};
--
--#define SB_SIZE (sizeof(struct reiserfs_super_block))
--
--
--#endif /* _GM_RFS_H */
-diff -rupN ./gpart-0.1h.orig/src/gmodules.c ./gpart-0.1h/src/gmodules.c
---- ./gpart-0.1h.orig/src/gmodules.c Tue Jan 30 20:01:00 2001
-+++ ./gpart-0.1h/src/gmodules.c Fri Jan 10 16:31:28 2003
-@@ -154,7 +154,7 @@ void g_mod_addinternals()
- GMODINS(bsddl);
- GMODINS(lswap);
- GMODINS(qnx4);
-- GMODINS(rfs);
-+ GMODINS(reiserfs);
- GMODINS(ntfs);
- GMODINS(hpfs);
- GMODINS(minix);
-diff -rupN ./gpart-0.1h.orig/src/gmodules.h ./gpart-0.1h/src/gmodules.h
---- ./gpart-0.1h.orig/src/gmodules.h Tue Jan 30 20:00:47 2001
-+++ ./gpart-0.1h/src/gmodules.h Fri Jan 10 16:31:23 2003
-@@ -63,7 +63,7 @@ g_module *g_mod_setweight(char *,float);
-
- GMODDECL(bsddl); GMODDECL(ext2); GMODDECL(fat);
- GMODDECL(hpfs); GMODDECL(lswap); GMODDECL(ntfs);
--GMODDECL(s86dl); GMODDECL(minix); GMODDECL(rfs);
-+GMODDECL(s86dl); GMODDECL(minix); GMODDECL(reiserfs);
- GMODDECL(hmlvm); GMODDECL(qnx4); GMODDECL(beos);
- GMODDECL(xfs);
-
diff --git a/extra/gpart/gpart-0.1h-vfat.patch b/extra/gpart/gpart-0.1h-vfat.patch
deleted file mode 100644
index 7234ac689..000000000
--- a/extra/gpart/gpart-0.1h-vfat.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Ripped out of debian
-
---- gpart-0.1h.orig/src/gm_fat.h
-+++ gpart-0.1h/src/gm_fat.h
-@@ -60,6 +60,10 @@
- __u16 info_sector; /* filesystem info sector */
- __u16 backup_boot; /* backup boot sector */
- __u16 reserved2[6]; /* Unused */
--};
--
-+} __attribute__ ((packed));
-+/* "__attribute__ ((packed))"
-+ added by davidc@debian.org,
-+ as suggested by falk@zxmjz18.extern.uni-tuebingen.de
-+ Fri Jul 07 18:04:15 2000
-+ in debian bug report #66893 "FAT detection broken on Alpha" */
- #endif /* _GM_FAT_H */