Index: create.patch.sh
===================================================================
--- create.patch.sh (nonexistent)
+++ create.patch.sh (revision 5)
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+VERSION=3.6.27
+
+tar --files-from=file.list -xJvf ../reiserfsprogs-$VERSION.tar.xz
+mv reiserfsprogs-$VERSION reiserfsprogs-$VERSION-orig
+
+cp -rf ./reiserfsprogs-$VERSION-new ./reiserfsprogs-$VERSION
+
+diff --unified -Nr reiserfsprogs-$VERSION-orig reiserfsprogs-$VERSION > reiserfsprogs-$VERSION-glibc228.patch
+
+mv reiserfsprogs-$VERSION-glibc228.patch ../patches
+
+rm -rf ./reiserfsprogs-$VERSION
+rm -rf ./reiserfsprogs-$VERSION-orig
Property changes on: create.patch.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: file.list
===================================================================
--- file.list (nonexistent)
+++ file.list (revision 5)
@@ -0,0 +1,2 @@
+reiserfsprogs-3.6.27/include/misc.h
+reiserfsprogs-3.6.27/include/reiserfs_lib.h
Index: reiserfsprogs-3.6.27-new/include/misc.h
===================================================================
--- reiserfsprogs-3.6.27-new/include/misc.h (nonexistent)
+++ reiserfsprogs-3.6.27-new/include/misc.h (revision 5)
@@ -0,0 +1,325 @@
+/*
+ * Copyright 1996-2004 by Hans Reiser, licensing governed by
+ * reiserfsprogs/README
+ */
+
+/* nothing abount reiserfs here */
+
+#ifndef REISERFSPROGS_MISC_H
+#define REISERFSPROGS_MISC_H
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <stdio.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <stdlib.h>
+#include <sys/sysmacros.h>
+
+#include <linux/major.h>
+
+#if defined(MAJOR_IN_MKDEV)
+# include <sys/mkdev.h>
+#elif defined(MAJOR_IN_SYSMACROS)
+# include <sys/sysmacros.h>
+#endif
+
+#include "swab.h"
+
+#define POSITION_FOUND 8
+#define POSITION_NOT_FOUND 9
+
+#define INVAL_PTR (void *)-1
+
+void check_memory_msg(void);
+void die(const char *fmt, ...) __attribute__ ((format(printf, 1, 2)));
+void *getmem(int size);
+void *mem_alloc(int size);
+void freemem(void *p);
+void checkmem(const char *p, int size);
+void *expandmem(void *p, int size, int by);
+unsigned int get_mem_size(const char *p);
+void check_and_free_mem(void);
+char *kdevname(int dev);
+
+typedef enum mount_flags {
+ MF_NOT_MOUNTED = 0x0,
+ MF_RO = 0x1,
+ MF_RW = 0x2
+} mount_flags_t;
+
+typedef struct mount_hint {
+ char *point; /* Mount point. */
+ __u32 psize; /* Mount point buffer size. */
+ __u32 flags; /* Mount flags. */
+} mount_hint_t;
+
+struct mntent *misc_mntent(const char *device);
+int misc_device_mounted(const char *device);
+
+typedef struct dma_info {
+ int fd;
+ struct stat st;
+ int support_type;
+ int dma;
+ __u64 speed;
+} dma_info_t;
+
+int prepare_dma_check(dma_info_t *dma_info);
+int get_dma_info(dma_info_t *dma_info);
+void clean_after_dma_check(int fd, dma_info_t *dma_info);
+
+int valid_offset(int fd, off_t offset);
+unsigned long count_blocks(const char *filename, int blocksize);
+
+void print_how_far(FILE * fp, unsigned long *passed, unsigned long total,
+ unsigned int inc, int quiet);
+void print_how_fast(unsigned long total, unsigned long passed, int cursor_pos,
+ int reset_time);
+__u32 get_random(void);
+
+int user_confirmed(FILE * fp, const char *q, const char *yes);
+
+/* Only le bitops operations are used. */
+static inline int misc_set_bit(unsigned long long nr, void *addr)
+{
+ __u8 *p, mask;
+ int retval;
+
+ p = (__u8 *) addr;
+ p += nr >> 3;
+ mask = 1 << (nr & 0x7);
+ /*cli(); */
+ retval = (mask & *p) != 0;
+ *p |= mask;
+ /*sti(); */
+ return retval;
+}
+
+static inline int misc_clear_bit(unsigned long long nr, void *addr)
+{
+ __u8 *p, mask;
+ int retval;
+
+ p = (__u8 *) addr;
+ p += nr >> 3;
+ mask = 1 << (nr & 0x7);
+ /*cli(); */
+ retval = (mask & *p) != 0;
+ *p &= ~mask;
+ /*sti(); */
+ return retval;
+}
+
+static inline int misc_test_bit(unsigned long long nr, const void *addr)
+{
+ __u8 *p, mask;
+
+ p = (__u8 *) addr;
+ p += nr >> 3;
+ mask = 1 << (nr & 0x7);
+ return ((mask & *p) != 0);
+}
+
+static inline unsigned long long misc_find_first_zero_bit(const void *vaddr,
+ unsigned long long
+ size)
+{
+ const __u8 *p = vaddr, *addr = vaddr;
+ unsigned long long res;
+
+ if (!size)
+ return 0;
+
+ size = (size >> 3) + ((size & 0x7) > 0);
+ while (*p++ == 255) {
+ if (--size == 0)
+ return (unsigned long long)(p - addr) << 3;
+ }
+
+ --p;
+ for (res = 0; res < 8; res++)
+ if (!misc_test_bit(res, p))
+ break;
+ return res + (p - addr) * 8;
+}
+
+static inline unsigned long long misc_find_next_zero_bit(const void *vaddr,
+ unsigned long long
+ size,
+ unsigned long long
+ offset)
+{
+ const __u8 *addr = vaddr;
+ const __u8 *p = addr + (offset >> 3);
+ int bit = offset & 7;
+ unsigned long long res;
+
+ if (offset >= size)
+ return size;
+
+ if (bit) {
+ /* Look for zero in first char */
+ for (res = bit; res < 8; res++)
+ if (!misc_test_bit(res, p))
+ return res + (p - addr) * 8;
+ p++;
+ }
+ /* No zero yet, search remaining full bytes for a zero */
+ res = misc_find_first_zero_bit(p, size - 8 * (p - addr));
+ return res + (p - addr) * 8;
+}
+
+static inline unsigned long long misc_find_first_set_bit(const void *vaddr,
+ unsigned long long
+ size)
+{
+ const __u8 *p = vaddr, *addr = vaddr;
+ unsigned long long res;
+
+ if (!size)
+ return 0;
+
+ size = (size >> 3) + ((size & 0x7) > 0);
+ while (*p++ == 0) {
+ if (--size == 0)
+ return (unsigned long long)(p - addr) << 3;
+ }
+
+ --p;
+ for (res = 0; res < 8; res++)
+ if (misc_test_bit(res, p))
+ break;
+
+ return res + (p - addr) * 8;
+}
+
+static inline unsigned long long misc_find_next_set_bit(const void *vaddr,
+ unsigned long long size,
+ unsigned long long
+ offset)
+{
+ const __u8 *addr = vaddr;
+ const __u8 *p = addr + (offset >> 3);
+ int bit = offset & 7;
+ unsigned long long res;
+
+ if (offset >= size)
+ return size;
+
+ if (bit) {
+ /* Look for zero in first char */
+ for (res = bit; res < 8; res++)
+ if (misc_test_bit(res, p))
+ return res + (p - addr) * 8;
+ p++;
+ }
+ /* No set bit yet, search remaining full bytes for a 1 */
+ res = misc_find_first_set_bit(p, size - 8 * (p - addr));
+ return res + (p - addr) * 8;
+}
+
+#define STAT_FIELD(Field, Type) \
+static inline Type misc_device_##Field(const char *device) \
+{ \
+ struct stat st; \
+ \
+ if (stat(device, &st) == 0) \
+ return st.st_##Field; \
+ \
+ fprintf(stderr, "Stat of the device '%s' failed.", device); \
+ exit(8); \
+}
+
+STAT_FIELD(mode, mode_t);
+STAT_FIELD(rdev, dev_t);
+STAT_FIELD(size, off_t);
+STAT_FIELD(blocks, blkcnt_t);
+
+__u16 mask16(int from, int count);
+__u32 mask32(int from, int count);
+__u64 mask64(int from, int count);
+
+int reiserfs_bin_search(const void *key, void *base, __u32 num, int width,
+ __u32 * ppos, __compar_fn_t comp_func);
+
+struct block_handler {
+ __u32 blocknr;
+ dev_t device;
+};
+
+int blocklist__is_block_saved(struct block_handler **base, __u32 * count,
+ __u32 blocknr, dev_t device, __u32 * position);
+void blocklist__insert_in_position(void *block_h, void **base, __u32 * count,
+ int elem_size, __u32 * position);
+int blockdev_list_compare(const void *block1, const void *block2);
+
+#define set_bit_field_XX(XX,vp,val,from,count) \
+{\
+ __le##XX * p;\
+ __u##XX tmp;\
+\
+ /* make sure that given value can be put in 'count' bits */\
+ if (val > (1 << count))\
+ die ("set_bit_field: val %d is too big for %d bits", val, count);\
+\
+ p = (__le##XX *)vp;\
+ tmp = le##XX##_to_cpu (*p);\
+\
+ /* clear 'count' bits starting from 'from'-th one */\
+ tmp &= ~mask##XX (from, count);\
+\
+ /* put given value in proper bits */\
+ tmp |= (val << from);\
+\
+ *p = cpu_to_le##XX (tmp);\
+}
+
+#define get_bit_field_XX(XX,vp,from,count) \
+\
+ __le##XX * p;\
+ __u##XX tmp;\
+\
+ p = (__le##XX *)vp;\
+ tmp = le##XX##_to_cpu (*p);\
+\
+ /* clear all bits but 'count' bits starting from 'from'-th one */\
+ tmp &= mask##XX (from, count);\
+\
+ /* get value written in specified bits */\
+ tmp >>= from;\
+ return tmp;
+
+#ifndef major
+#define major(rdev) ((rdev)>>8)
+#define minor(rdev) ((rdev) & 0xff)
+#endif /* major */
+
+#ifndef SCSI_DISK_MAJOR
+#define SCSI_DISK_MAJOR(maj) ((maj) == SCSI_DISK0_MAJOR || \
+ ((maj) >= SCSI_DISK1_MAJOR && (maj) <= SCSI_DISK7_MAJOR))
+#endif /* SCSI_DISK_MAJOR */
+
+#ifndef SCSI_BLK_MAJOR
+#define SCSI_BLK_MAJOR(maj) (SCSI_DISK_MAJOR(maj) || (maj) == SCSI_CDROM_MAJOR)
+#endif /* SCSI_BLK_MAJOR */
+
+#ifndef IDE_DISK_MAJOR
+#ifdef IDE9_MAJOR
+#define IDE_DISK_MAJOR(maj) ((maj) == IDE0_MAJOR || (maj) == IDE1_MAJOR || \
+ (maj) == IDE2_MAJOR || (maj) == IDE3_MAJOR || \
+ (maj) == IDE4_MAJOR || (maj) == IDE5_MAJOR || \
+ (maj) == IDE6_MAJOR || (maj) == IDE7_MAJOR || \
+ (maj) == IDE8_MAJOR || (maj) == IDE9_MAJOR)
+#else
+#define IDE_DISK_MAJOR(maj) ((maj) == IDE0_MAJOR || (maj) == IDE1_MAJOR || \
+ (maj) == IDE2_MAJOR || (maj) == IDE3_MAJOR || \
+ (maj) == IDE4_MAJOR || (maj) == IDE5_MAJOR)
+#endif /* IDE9_MAJOR */
+#endif /* IDE_DISK_MAJOR */
+
+#endif /* REISERFS_MISC_H */
Index: reiserfsprogs-3.6.27-new/include/reiserfs_lib.h
===================================================================
--- reiserfsprogs-3.6.27-new/include/reiserfs_lib.h (nonexistent)
+++ reiserfsprogs-3.6.27-new/include/reiserfs_lib.h (revision 5)
@@ -0,0 +1,440 @@
+/*
+ * Copyright 2000-2004 by Hans Reiser, licensing governed by
+ * reiserfsprogs/README
+ */
+
+#ifndef REISERFSPROGS_LIB_H
+#define REISERFSPROGS_LIB_H
+
+#define BADBLOCK_DIRID 1
+#define BADBLOCK_OBJID (__u32)-1
+
+typedef struct reiserfs_filsys * reiserfs_filsys_t;
+
+#include <com_err.h>
+#include "reiserfs_fs.h"
+
+struct _bitmap {
+ unsigned long bm_byte_size;
+ unsigned long bm_bit_size;
+ char *bm_map;
+ unsigned long bm_set_bits;
+ int bm_dirty; /* used for fetched bitmap */
+};
+
+typedef struct _bitmap reiserfs_bitmap_t;
+
+typedef __u32(*hashf_t) (const char *, int);
+
+struct reiserfs_filsys {
+ unsigned int fs_blocksize;
+ int fs_format; /* on-disk format version */
+ hashf_t fs_hash_function; /* pointer to function which is used to sort
+ names in directory. It is set by
+ reiserfs_open if it is set in the super
+ block, otherwise it is set by first
+ is_properly_hashed */
+
+ char *fs_file_name; /* file name of underlying device */
+ int fs_dev; /* descriptor of opened block device file */
+ struct buffer_head *fs_super_bh; /* buffer containing super block */
+ struct reiserfs_super_block *fs_ondisk_sb; /* pointer to its b_data */
+
+ reiserfs_bitmap_t *fs_bitmap2; /* ondisk bitmap after
+ reiserfs_open_ondisk_bitmap */
+
+ /* opened journal fields */
+ char *fs_j_file_name; /* file name of relocated journal device */
+ int fs_journal_dev; /* descriptor of opened journal device */
+ struct buffer_head *fs_jh_bh; /* buffer containing journal header */
+
+ /* badblocks */
+ reiserfs_bitmap_t *fs_badblocks_bm;
+
+ int fs_dirt;
+ int fs_flags;
+ void *fs_vp;
+ int (*block_allocator) (reiserfs_filsys_t fs,
+ unsigned long *free_blocknrs,
+ unsigned long start, int amount_needed);
+ int (*block_deallocator) (reiserfs_filsys_t fs, unsigned long block);
+};
+
+struct _transaction {
+ unsigned long mount_id;
+ unsigned long trans_id;
+ unsigned long desc_blocknr;
+ unsigned long trans_len;
+ unsigned long commit_blocknr;
+ unsigned long next_trans_offset;
+};
+
+typedef struct _transaction reiserfs_trans_t;
+
+/* reiserfslib.c */
+
+void init_tb_struct(struct tree_balance *tb, reiserfs_filsys_t ,
+ struct reiserfs_path *path, int size);
+
+reiserfs_filsys_t reiserfs_open(const char *filename, int flags, long *error,
+ void *vp, int skip_check);
+reiserfs_filsys_t reiserfs_create(const char *filename, int version,
+ unsigned long block_count, int block_size,
+ int default_journal, int new_format,
+ long *error);
+void reiserfs_flush(reiserfs_filsys_t );
+void reiserfs_free(reiserfs_filsys_t );
+void reiserfs_close(reiserfs_filsys_t );
+void reiserfs_reopen(reiserfs_filsys_t , int flags);
+int is_opened_rw(reiserfs_filsys_t fs);
+
+/*
+void reiserfs_read_bitmap_blocks (reiserfs_filsys_t );
+void reiserfs_free_bitmap_blocks (reiserfs_filsys_t );
+*/
+int no_reiserfs_found(reiserfs_filsys_t );
+int is_block_count_correct(unsigned long block_of_super_block,
+ unsigned int block_size, unsigned long block_count,
+ unsigned long journal_size);
+//unsigned long min_block_amount (int block_size, unsigned long journal_size);
+unsigned long get_size_of_journal_or_reserved_area(struct reiserfs_super_block
+ *sb);
+
+int reiserfs_new_blocknrs(reiserfs_filsys_t ,
+ unsigned long *free_blocknrs, unsigned long start,
+ int amount_needed);
+int reiserfs_free_block(reiserfs_filsys_t , unsigned long block);
+int spread_bitmaps(reiserfs_filsys_t );
+int filesystem_dirty(reiserfs_filsys_t );
+void mark_filesystem_dirty(reiserfs_filsys_t );
+
+void reiserfs_paste_into_item(reiserfs_filsys_t , struct reiserfs_path *path,
+ const void *body, int size);
+void reiserfs_insert_item(reiserfs_filsys_t , struct reiserfs_path *path,
+ struct item_head *ih, const void *body);
+
+int reiserfs_locate_entry(reiserfs_filsys_t , struct reiserfs_key *dir,
+ const char *name, struct reiserfs_path *path);
+int reiserfs_find_entry(reiserfs_filsys_t , const struct reiserfs_key *dir,
+ const char *name, unsigned int *min_gen_counter,
+ struct reiserfs_key *key);
+int reiserfs_add_entry(reiserfs_filsys_t , const struct reiserfs_key *dir,
+ const char *name, int name_len,
+ const struct reiserfs_key *key, __u16 fsck_need);
+
+struct reiserfs_key *uget_lkey(const struct reiserfs_path *path);
+struct reiserfs_key *uget_rkey(const struct reiserfs_path *path);
+int reiserfs_search_by_key_3(reiserfs_filsys_t , const struct reiserfs_key *key,
+ struct reiserfs_path *path);
+int reiserfs_search_by_key_4(reiserfs_filsys_t , const struct reiserfs_key *key,
+ struct reiserfs_path *path);
+int reiserfs_search_by_entry_key(reiserfs_filsys_t,
+ const struct reiserfs_key *key,
+ struct reiserfs_path *path);
+int reiserfs_search_by_position(reiserfs_filsys_t , struct reiserfs_key *key,
+ int version, struct reiserfs_path *path);
+struct reiserfs_key *reiserfs_next_key(const struct reiserfs_path *path);
+void copy_key(void *to, const void *from);
+void copy_short_key(void *to, const void *from);
+int comp_keys(const void *k1, const void *k2);
+int comp_keys_3(const void *k1, const void *k2);
+int comp_short_keys(const void *p_s_key1, const void *p_s_key2);
+int comp_items(struct item_head *p_s_ih, struct reiserfs_path *p_s_path);
+
+__u32 hash_value(hashf_t func, const char *name, int namelen);
+
+int create_dir_sd(reiserfs_filsys_t fs,
+ struct reiserfs_path *path, const struct reiserfs_key *key,
+ void (*modify_item) (struct item_head *, void *));
+void make_sure_root_dir_exists(reiserfs_filsys_t fs,
+ void (*modyfy_item) (struct item_head *, void *),
+ int ih_flags);
+
+typedef void (*badblock_func_t) (reiserfs_filsys_t fs,
+ struct reiserfs_path *badblock_path,
+ void *data);
+
+void mark_badblock(reiserfs_filsys_t fs, struct reiserfs_path *badblock_path,
+ void *data);
+int create_badblock_bitmap(reiserfs_filsys_t fs, const char *badblocks_file);
+void add_badblock_list(reiserfs_filsys_t fs, int no_badblock_in_tree_yet);
+void badblock_list(reiserfs_filsys_t fs, badblock_func_t action, void *data);
+#define reiserfs_fs_bmap_nr(fs) reiserfs_bmap_nr(get_sb_block_count(fs->fs_ondisk_sb), fs->fs_blocksize)
+#define reiserfs_bmap_nr(count, blk_size) ((count - 1) / (blk_size * 8) + 1)
+#define reiserfs_bmap_over(nr) (nr > ((1LL << 16) - 1))
+
+typedef int (*reiserfs_file_iterate_indirect_fn)(reiserfs_filsys_t fs,
+ __u64 position, __u64 size,
+ int num_blocks, __u32 *blocks,
+ void *data);
+typedef int (*reiserfs_file_iterate_direct_fn)(reiserfs_filsys_t fs,
+ __u64 position, __u64 size,
+ const char *body, size_t len,
+ void *data);
+int reiserfs_iterate_file_data(reiserfs_filsys_t fs,
+ const struct reiserfs_key const *short_key,
+ reiserfs_file_iterate_indirect_fn indirect_fn,
+ reiserfs_file_iterate_direct_fn direct_fn,
+ void *data);
+
+typedef int (*reiserfs_iterate_dir_fn)(reiserfs_filsys_t fs,
+ const struct reiserfs_key const *dir_short_key,
+ const char *name, size_t len,
+ __u32 deh_dirid, __u32 deh_objectid, void *data);
+int reiserfs_iterate_dir(reiserfs_filsys_t fs,
+ const struct reiserfs_key const *dir_short_key,
+ const reiserfs_iterate_dir_fn callback, void *data);
+
+
+extern struct reiserfs_key root_dir_key;
+extern struct reiserfs_key parent_root_dir_key;
+extern struct reiserfs_key lost_found_dir_key;
+extern __u16 root_dir_format;
+extern __u16 lost_found_dir_format;
+
+/* bitmap.c */
+int reiserfs_open_ondisk_bitmap(reiserfs_filsys_t );
+int reiserfs_create_ondisk_bitmap(reiserfs_filsys_t );
+void reiserfs_free_ondisk_bitmap(reiserfs_filsys_t );
+void reiserfs_close_ondisk_bitmap(reiserfs_filsys_t );
+int reiserfs_flush_to_ondisk_bitmap(reiserfs_bitmap_t *bm,
+ reiserfs_filsys_t fs);
+unsigned int reiserfs_calc_bmap_nr(reiserfs_filsys_t fs, unsigned int blocks);
+
+reiserfs_bitmap_t *reiserfs_create_bitmap(unsigned int bit_count);
+int reiserfs_expand_bitmap(reiserfs_bitmap_t *bm, unsigned int bit_count);
+void reiserfs_shrink_bitmap(reiserfs_bitmap_t *bm, unsigned int bit_count);
+void reiserfs_delete_bitmap(reiserfs_bitmap_t *bm);
+void reiserfs_bitmap_copy(reiserfs_bitmap_t *to, reiserfs_bitmap_t *from);
+int reiserfs_bitmap_compare(reiserfs_bitmap_t *bm1, reiserfs_bitmap_t *bm2);
+void reiserfs_bitmap_disjunction(reiserfs_bitmap_t *disk,
+ reiserfs_bitmap_t *cont);
+void reiserfs_bitmap_delta(reiserfs_bitmap_t *base,
+ reiserfs_bitmap_t *exclude);
+void reiserfs_bitmap_set_bit(reiserfs_bitmap_t *bm, unsigned int bit_number);
+void reiserfs_bitmap_clear_bit(reiserfs_bitmap_t *bm, unsigned int bit_number);
+
+int reiserfs_bitmap_test_bit(reiserfs_bitmap_t *bm, unsigned int bit_number);
+int reiserfs_bitmap_find_zero_bit(reiserfs_bitmap_t *bm, unsigned long *start);
+/*int reiserfs_fetch_ondisk_bitmap (reiserfs_bitmap_t *bm, reiserfs_filsys_t );*/
+/*int reiserfs_flush_bitmap (reiserfs_bitmap_t *bm, reiserfs_filsys_t );*/
+void reiserfs_bitmap_zero(reiserfs_bitmap_t *bm);
+void reiserfs_bitmap_fill(reiserfs_bitmap_t *bm);
+unsigned int reiserfs_bitmap_ones(reiserfs_bitmap_t *bm);
+unsigned int reiserfs_bitmap_zeros(reiserfs_bitmap_t *bm);
+
+FILE *open_file(const char *filename, char *option);
+void close_file(FILE * fp);
+void reiserfs_bitmap_save(FILE * fp, reiserfs_bitmap_t *bm);
+
+/* this probably should be in fsck */
+void reiserfs_begin_stage_info_save(FILE * file, unsigned long stage);
+void reiserfs_end_stage_info_save(FILE * file);
+int is_stage_magic_correct(FILE * fp);
+//void reiserfs_stage_info_save(struct fsck_data *, FILE * file);
+
+reiserfs_bitmap_t *reiserfs_bitmap_load(FILE * fp);
+void reiserfs_bitmap_invert(reiserfs_bitmap_t *bm);
+
+int reiserfs_remove_entry(reiserfs_filsys_t, const struct reiserfs_key *key);
+
+/* node_formats.c */
+
+#define THE_LEAF 1
+#define THE_INTERNAL 2
+#define THE_SUPER 3
+#define THE_JDESC 4
+#define HAS_IH_ARRAY 5
+#define THE_UNKNOWN 6
+
+int is_blocksize_correct(unsigned int blocksize);
+int is_reiserfs_3_5_magic_string(struct reiserfs_super_block *rs);
+int is_reiserfs_3_6_magic_string(struct reiserfs_super_block *rs);
+int is_reiserfs_jr_magic_string(struct reiserfs_super_block *rs);
+int does_look_like_super_block(struct reiserfs_super_block *rs);
+int is_any_reiserfs_magic_string(struct reiserfs_super_block *rs);
+int get_reiserfs_format(struct reiserfs_super_block *sb);
+int reiserfs_super_block_size(struct reiserfs_super_block *rs);
+/*int magic_2_version (struct reiserfs_super_block * rs);*/
+int is_prejournaled_reiserfs(struct reiserfs_super_block *rs);
+int who_is_this(const char *buf, int blocksize);
+
+int leaf_count_ih(const char *buf, int blocksize);
+int leaf_free_space_estimate(const char *buf, int blocksize);
+int is_a_leaf(const char *buf, int blocksize);
+int leaf_item_number_estimate(const struct buffer_head *bh);
+
+char *which_block(int code);
+int get_journal_size(reiserfs_filsys_t );
+int not_data_block(reiserfs_filsys_t , unsigned long block);
+int not_journalable(reiserfs_filsys_t , unsigned long block);
+int block_of_bitmap(reiserfs_filsys_t , unsigned long block);
+int block_of_journal(reiserfs_filsys_t , unsigned long block);
+int is_tree_node(struct buffer_head *bh, int level);
+int is_properly_hashed(reiserfs_filsys_t ,
+ const char *name, int namelen, __u32 offset);
+int dir_entry_bad_location(struct reiserfs_de_head *deh,
+ struct item_head *ih, int first);
+void make_dir_stat_data(int blocksize, int key_format,
+ __u32 dirid, __u32 objectid,
+ struct item_head *ih, void *sd);
+void make_empty_dir_item_v1(char *body, __u32 dirid, __u32 objid,
+ __u32 par_dirid, __u32 par_objid);
+void make_empty_dir_item(char *body, __u32 dirid, __u32 objid,
+ __u32 par_dirid, __u32 par_objid);
+int reiserfs_is_fs_consistent(reiserfs_filsys_t fs);
+
+typedef void (*item_action_t) (struct buffer_head * bh, struct item_head * ih);
+typedef void (*item_head_action_t) (struct item_head * ih);
+
+void for_every_item(struct buffer_head *bh, item_head_action_t action,
+ item_action_t *actions);
+int key_format(const struct reiserfs_key *key);
+unsigned long long get_offset(const struct reiserfs_key *key);
+int uniqueness2type(__u32 uniqueness);
+__u32 type2uniqueness(int type);
+int get_type(const struct reiserfs_key *key);
+char *key_of_what(const struct reiserfs_key *key);
+int type_unknown(const struct reiserfs_key *key);
+void set_type(int format, struct reiserfs_key *key, int type);
+void set_offset(int format, struct reiserfs_key *key, off_t offset);
+void set_type_and_offset(int format, struct reiserfs_key *key, off_t offset,
+ int type);
+
+typedef int (*check_unfm_func_t) (reiserfs_filsys_t , __u32);
+int is_it_bad_item(reiserfs_filsys_t , struct item_head *, const char *,
+ check_unfm_func_t, int bad_dir);
+
+#define hash_func_is_unknown(fs) ((fs)->fs_hash_function == NULL)
+#define reiserfs_hash(fs) ((fs)->fs_hash_function)
+
+int known_hashes(void);
+char *code2name(unsigned int code);
+int func2code(hashf_t func);
+hashf_t code2func(unsigned int code);
+hashf_t name2func(const char *hash);
+int find_hash_in_use(const char *name, int namelen, __u32 deh_offset,
+ unsigned int code_to_try_first);
+
+int entry_length(const struct item_head *ih, const struct reiserfs_de_head *deh,
+ int pos_in_item);
+char *name_in_entry(const struct reiserfs_de_head *deh, int pos_in_item);
+int name_in_entry_length(const struct item_head *ih,
+ const struct reiserfs_de_head *deh, int pos_in_item);
+int name_length(const char *name, int key_format);
+
+/* access to stat data fields */
+void get_set_sd_field(int field, struct item_head *ih, void *sd,
+ void *value, int set);
+#define GET_SD_MODE 0
+#define GET_SD_SIZE 1
+#define GET_SD_NLINK 2
+#define GET_SD_BLOCKS 3
+#define GET_SD_FIRST_DIRECT_BYTE 4
+
+#define get_sd_mode(ih,sd,pmode) get_set_sd_field (GET_SD_MODE, ih, sd, pmode, 0/*get*/)
+#define set_sd_mode(ih,sd,pmode) get_set_sd_field (GET_SD_MODE, ih, sd, pmode, 1/*set*/)
+
+#define get_sd_size(ih,sd,psize) get_set_sd_field (GET_SD_SIZE, ih, sd, psize, 0/*get*/)
+#define set_sd_size(ih,sd,psize) get_set_sd_field (GET_SD_SIZE, ih, sd, psize, 1/*set*/)
+
+#define get_sd_blocks(ih,sd,pblocks) get_set_sd_field (GET_SD_BLOCKS, ih, sd, pblocks, 0/*get*/)
+#define set_sd_blocks(ih,sd,pblocks) get_set_sd_field (GET_SD_BLOCKS, ih, sd, pblocks, 1/*set*/)
+
+//#define get_sd_rdev(ih,sd,pblocks) get_set_sd_field (GET_SD_RDEV, ih, sd, pblocks, 0/*get*/)
+//#define set_sd_rdev(ih,sd,pblocks) get_set_sd_field (GET_SD_RDEV, ih, sd, pblocks, 1/*set*/)
+
+//#define get_sd_generation(ih,sd,pblocks) get_set_sd_field (GET_SD_GENER, ih, sd, pblocks, 0/*get*/)
+//#define set_sd_generation(ih,sd,pblocks) get_set_sd_field (GET_SD_GENER, ih, sd, pblocks, 1/*set*/)
+
+#define get_sd_nlink(ih,sd,pnlink) get_set_sd_field (GET_SD_NLINK, ih, sd, pnlink, 0/*get*/)
+#define set_sd_nlink(ih,sd,pnlink) get_set_sd_field (GET_SD_NLINK, ih, sd, pnlink, 1/*set*/)
+
+#define get_sd_first_direct_byte(ih,sd,pfdb) get_set_sd_field (GET_SD_FIRST_DIRECT_BYTE, ih, sd, pfdb, 0/*get*/)
+#define set_sd_first_direct_byte(ih,sd,pfdb) get_set_sd_field (GET_SD_FIRST_DIRECT_BYTE, ih, sd, pfdb, 1/*set*/)
+
+int is_objectid_used(reiserfs_filsys_t fs, __u32 objectid);
+void mark_objectid_used(reiserfs_filsys_t fs, __u32 objectid);
+
+/* journal.c */
+int get_boundary_transactions(reiserfs_filsys_t , reiserfs_trans_t *,
+ reiserfs_trans_t *);
+int next_transaction(reiserfs_filsys_t , reiserfs_trans_t *, reiserfs_trans_t);
+
+int replay_one_transaction(reiserfs_filsys_t , reiserfs_trans_t *);
+
+typedef void (*action_on_trans_t) (reiserfs_filsys_t , reiserfs_trans_t *);
+void for_each_transaction(reiserfs_filsys_t , action_on_trans_t);
+
+typedef void (*action_on_block_t) (reiserfs_filsys_t , reiserfs_trans_t *,
+ unsigned int index,
+ unsigned long in_journal,
+ unsigned long in_place);
+void for_each_block(reiserfs_filsys_t fs, reiserfs_trans_t *trans,
+ action_on_block_t action);
+
+int reiserfs_open_journal(reiserfs_filsys_t , const char *, int flags);
+int reiserfs_journal_params_check(reiserfs_filsys_t fs);
+int reiserfs_create_journal(reiserfs_filsys_t fs, const char *j_filename,
+ unsigned long offset, unsigned long len,
+ int transaction_max_size, int force);
+int reiserfs_journal_opened(reiserfs_filsys_t );
+void reiserfs_flush_journal(reiserfs_filsys_t fs);
+void reiserfs_free_journal(reiserfs_filsys_t fs);
+void reiserfs_close_journal(reiserfs_filsys_t );
+void reiserfs_reopen_journal(reiserfs_filsys_t fs, int flag);
+__u32 advise_journal_max_trans_age(void);
+__u32 advise_journal_max_commit_age(void);
+__u32 advise_journal_max_batch(unsigned long journal_trans_max);
+__u32 advise_journal_max_trans_len(__u32 desired, __u32 journal_size,
+ int blocksize, int verbose);
+
+/* prints.c */
+void print_indirect_item(FILE * fp, struct buffer_head *bh, int item_num);
+void print_block(FILE * fp, reiserfs_filsys_t , struct buffer_head *bh, ...); //int print_mode, int first, int last);
+int print_super_block(FILE * fp, reiserfs_filsys_t , const char *file_name,
+ struct buffer_head *bh, int short_print);
+void print_journal(reiserfs_filsys_t );
+void print_journal_header(reiserfs_filsys_t fs);
+void reiserfs_warning(FILE * fp, const char *fmt, ...);
+char ftypelet(mode_t mode);
+void reiserfs_print_item(FILE * fp, struct buffer_head *bh,
+ struct item_head *ih);
+void print_filesystem_state(FILE * fp, reiserfs_filsys_t fs);
+void print_one_transaction(reiserfs_filsys_t fs, reiserfs_trans_t *trans);
+void print_journal_params(FILE * fp, struct journal_params *jp);
+char *get_reiserfs_version(__u16 version);
+int can_we_format_it(const char *device_name, int force);
+
+#define reiserfs_panic(fmt, list...) \
+{\
+ fflush (stdout);\
+ fprintf (stderr, "%s %d %s\n", __FILE__, __LINE__, __FUNCTION__);\
+ reiserfs_warning (stderr, (const char *)fmt, ## list);\
+ reiserfs_warning (stderr, "\n" );\
+ abort ();\
+}
+#define reiserfs_exit(val, fmt, list...) \
+{\
+ fflush (stdout);\
+ reiserfs_warning (stderr, (const char *)fmt, ## list);\
+ reiserfs_warning (stderr, "\n" );\
+ exit (val);\
+}
+
+#define check_forcing_ask_confirmation(force) \
+ if (force < 1) {\
+ /* avoid formatting it without being forced */\
+ reiserfs_warning (stderr, "Use -f to force over\n");\
+ return 0;\
+ }\
+ if (force < 2) {\
+ if (!user_confirmed (stderr, "Continue (y/n):", "y\n"))\
+ return 0;\
+ }\
+
+/* xattr.c */
+__u32 reiserfs_xattr_hash(const char *msg, int len);
+int reiserfs_check_xattr(const void *body, int len);
+int reiserfs_acl_count(size_t size);
+#endif /* REISERFSPROGS_LIB_H */
Index: reiserfsprogs-3.6.27-new/include
===================================================================
--- reiserfsprogs-3.6.27-new/include (nonexistent)
+++ reiserfsprogs-3.6.27-new/include (revision 5)
Property changes on: reiserfsprogs-3.6.27-new/include
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: reiserfsprogs-3.6.27-new
===================================================================
--- reiserfsprogs-3.6.27-new (nonexistent)
+++ reiserfsprogs-3.6.27-new (revision 5)
Property changes on: reiserfsprogs-3.6.27-new
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: .
===================================================================
--- . (nonexistent)
+++ . (revision 5)
Property changes on: .
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~