In order to use reiserfs functionality in external programs, we need to
make a shared library and includes available.
This converts both libmisc and libreiserfscore into shared libraries, and
links libmisc into libreiserfscore. We also export the includes and
a pkg-config file.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
By annotating structure members and other on-disk structures as little
endian, we can catch bugs more easily.
The code was already endian safe except for three minor spots:
1) The badblock list code was initializing its key in an endian-unsafe way.
2) Indirect block pointer sequence printing was treating cpu-order values
as little endian.
3) reiserfsck was trying to do endian switching on the lost+found key,
but it was before it was even initialized to anything, so we can
just remove that completely.
These issues were fixed as part of this commit.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
This patch does a quick search and replace:
B_N_PITEM_HEAD() -> item_head()
B_N_PDELIM_KEY() -> internal_key()
B_N_PKEY() -> leaf_key()
B_N_PITEM() -> item_body()
And the item_head version:
B_I_PITEM() -> ih_item_body()
I_ENTRY_COUNT() -> ih_entry_count()
And the treepath variants:
get_ih() -> tp_item_head()
PATH_PITEM_HEAD() -> tp_item_head()
get_item() -> tp_item_body()
... which makes the code much easier on the eyes.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Over the years, the reiserfs kernel code has been gradually cleaned up
to be more readable. This patch does the same to the progs code.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
In order to convert reiserfscore into a externally-usable library,
we need to rename structures so they won't collide with other
namespaces.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
While Namesys drove almost all reiserfs development and was instrumental
in supporting it for many years, it has been offline for the past
6 years. All of its founders and employees have moved on to other
endeavors or are otherwise unavailable. This can be confusing to users
since the documentation points there either for background information
or to have bugs fixed.
This patch removes most of the non-historical references to
namesys.com and directs users to the reiserfs-devel list on vger.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
We create links like fsck.reiserfs to reiserfsck but don't provide
the corresponding links to the man pages.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
This allows you to build out of tree like:
mkdir build
../configure
make
This also fixes `make distcheck` since that uses the above mechanism.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Every other fsck util out there supports non-interactive forcing and this
change brings reiserfsck into line.
Signed-off-by: Roy Marples <roy@marples.name>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
This patch fixes:
main.c:968:11: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘time_t’ [-Wformat]
prints.c:152:7: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘__u32’ [-Wformat]
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
These files change every time configure.in or Makefile.am is changed,
we can autogenerate them when exporting a tarball.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Now that we handle file systems > 8 TB, we end up printing large negative
numbers instead of actual block numbers. This patch fixes those places
to use unsigned ints for block numbers.
Signed-by: Jeff Mahoney <jeffm@suse.com>
fsck_progress uses fs to get the log file handle but fs is freed before
fsck_progress is caleld when it's about to print the "finished" message.
When glibc is run with:
MALLOC_CHECK_=3
MALLOC_PERTURB_=69
as is the default on newer versions of openSUSE, it poisons freed memory
to detect conditions like this. As a result, reiserfsck segfaults on these
systems.
This patch fixes fsck to close the file system after printing the completion
message.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Since utilities expect to be able to run `mkfs.$FS` and `fsck.$FS`,
reiserfs should install symlinks for these to the right place.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Jeff Mahoney <jeffm@suse.com>