Your message dated Tue, 03 Jul 2012 19:18:11 +0000
with message-id <e1sm8bz-0001vx...@franck.debian.org>
and subject line Bug#632632: fixed in libaal 1.0.5-5.1
has caused the Debian Bug report #632632,
regarding libaal-dev: Casts 64 bit integers to "int", breaking operations on 
filesystems with large bitmaps
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
632632: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=632632
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: libaal-dev
Version: 1.0.5-5
Severity: critical
Justification: causes serious data loss


In bitops.c, several functions get offsets and sizes with type bit_t, which is
64 bit, but local variables which hold the result of calculations on those
bit_t variables are of type int, which of causes incorrect results for
filesystems with block bitmaps that are larger than 2 GiB. I'm marking this
critical as this causes fsck.reiserfs to work incorrectly on such filesystems,
potentially breaking it beyond repair.

I have attached a patch, but please have a good look at it to see if I did not
miss anything.

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.39-2-amd64 (SMP w/6 CPU cores)
Locale: LANG=nl_NL.UTF-8, LC_CTYPE=nl_NL.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libaal-dev depends on:
ii  libc6-dev [libc-dev]          2.13-8     Embedded GNU C Library: Developmen

libaal-dev recommends no packages.

libaal-dev suggests no packages.

-- no debconf information
--- libaal-1.0.5.orig/src/bitops.c
+++ libaal-1.0.5/src/bitops.c
@@ -80,7 +80,7 @@
 				    bit_t size,
 				    bit_t offset) 
 {
-	int bit = offset & 7, res;
+	bit_t bit = offset & 7, res;
 	unsigned char *addr = map;
 	unsigned char *p = addr + (offset >> 3);
   
@@ -100,7 +100,7 @@
 
 /* Finds zero bit in @byte starting from @offset */
 static inline int aal_find_nzb(unsigned char byte, bit_t offset) {
-        int i = offset;
+        bit_t i = offset;
         unsigned char mask = 1 << offset;
 
         while ((byte & mask) != 0) {
@@ -119,9 +119,9 @@
 				   bit_t offset)
 {
         unsigned char *addr = map;
-        unsigned int byte_nr = offset >> 3;
-        unsigned int bit_nr = offset & 0x7;
-        unsigned int max_byte_nr = (size - 1) >> 3;
+        bit_t byte_nr = offset >> 3;
+        bit_t bit_nr = offset & 0x7;
+        bit_t max_byte_nr = (size - 1) >> 3;
 
         if (bit_nr != 0) {
 		unsigned int b = ~(unsigned int)addr[byte_nr];
@@ -152,8 +152,8 @@
 			   bit_t start, 
 			   bit_t count)
 {
-	int end_byte;
-	int start_byte;
+	bit_t end_byte;
+	bit_t start_byte;
 	char *addr = map;
 	bit_t left, right;
 	
@@ -185,8 +185,8 @@
 			 bit_t start, 
 			 bit_t count)
 {
-	int end_byte;
-	int start_byte;
+	bit_t end_byte;
+	bit_t start_byte;
 	char *addr = map;
 	bit_t left, right;
 

--- End Message ---
--- Begin Message ---
Source: libaal
Source-Version: 1.0.5-5.1

We believe that the bug you reported is fixed in the latest version of
libaal, which is due to be installed in the Debian FTP archive:

libaal-dev_1.0.5-5.1_i386.deb
  to main/liba/libaal/libaal-dev_1.0.5-5.1_i386.deb
libaal_1.0.5-5.1.diff.gz
  to main/liba/libaal/libaal_1.0.5-5.1.diff.gz
libaal_1.0.5-5.1.dsc
  to main/liba/libaal/libaal_1.0.5-5.1.dsc



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 632...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Luk Claes <l...@debian.org> (supplier of updated libaal package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Tue, 03 Jul 2012 00:31:28 +0000
Source: libaal
Binary: libaal-dev
Architecture: source i386
Version: 1.0.5-5.1
Distribution: unstable
Urgency: low
Maintainer: Felix Zielcke <fziel...@z-51.de>
Changed-By: Luk Claes <l...@debian.org>
Description: 
 libaal-dev - Reiser4's application abstraction library
Closes: 632632
Changes: 
 libaal (1.0.5-5.1) unstable; urgency=low
 .
   * Non-maintainer upload.
   * Use bit_t instead of int (Closes: #632632).
Checksums-Sha1: 
 9d623bf3b7c60dc081348a5bbc88b1f2fa2a4b86 1020 libaal_1.0.5-5.1.dsc
 3848da028a9d7e04cce26181a465f1031b66c214 317388 libaal_1.0.5-5.1.diff.gz
 ccec58e8818938590cab4386f34713b1a4b06cdd 34312 libaal-dev_1.0.5-5.1_i386.deb
Checksums-Sha256: 
 99aae7f4f683204814dc71fb7d175faf99c9dba38542f7004c13c9d6e0f4e4e6 1020 
libaal_1.0.5-5.1.dsc
 ba6f7c21afc672c51113c8f4ed2c27c178d353fe6ac96bdaec1f37b44fd9e99e 317388 
libaal_1.0.5-5.1.diff.gz
 6d00291f909cf5b84e868fa465318d568fd9c6dd5dc9b6c16300996a7e0b144f 34312 
libaal-dev_1.0.5-5.1_i386.deb
Files: 
 bce20d8692c10f62e5262a9c0558f521 1020 libs extra libaal_1.0.5-5.1.dsc
 6aec2f836157ca5698fb13ec5b4ea8c6 317388 libs extra libaal_1.0.5-5.1.diff.gz
 213febb505ac6421591c05f2672aa7c4 34312 libdevel extra 
libaal-dev_1.0.5-5.1_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAk/zLC4ACgkQ+C5cwEsrK56PfQCeLdfKtplxOFVz6G1Wr/8b3fDQ
KeoAnjef7sxNxSnQZKmoM/s9owtioTM2
=NnMC
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to