Your message dated Tue, 29 Nov 2011 22:47:22 +0000
with message-id <[email protected]>
and subject line Bug#649689: fixed in e2fsprogs 1.42-1
has caused the Debian Bug report #649689,
regarding e2fsprogs: FTBFS on hurd-i386
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 [email protected]
immediately.)


-- 
649689: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=649689
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: e2fsprogs
Version: 1.42~WIP-2011-11-20-1
Severity: important
Tags: patch
User: [email protected]
Usertags: hurd

Hello,

The attached patch fixes the FTBFS problems for GNU/Hurd due to the lack
of a PATH_MAX definition. Instead of fixed length strings dynamic
allocation is used.  

Additionally, the call to msync() is made conditional on HAVE_MSYNC
instead of MS_SYNC by a test in configure.in for that function. On
GNU/Hurd msync() is only a stub, so with this test a potential run-time
error is avoided.

Thanks!

diff -ur e2fsprogs-1.42~WIP-2011-11-20/configure.in e2fsprogs-1.42~WIP-2011-11-20.modified/configure.in
--- e2fsprogs-1.42~WIP-2011-11-20/configure.in	2011-11-12 03:28:46.000000000 +0100
+++ e2fsprogs-1.42~WIP-2011-11-20.modified/configure.in	2011-11-23 08:27:58.000000000 +0100
@@ -914,7 +914,7 @@
   AC_SEARCH_LIBS([blkid_probe_all], [blkid])
 fi
 dnl
-AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 fstat64 ftruncate64 getmntinfo strtoull strcasecmp srandom jrand48 fchown mallinfo fdatasync quotactl strnlen strptime strdup sysconf pathconf posix_memalign memalign valloc __secure_getenv prctl mmap utime setresuid setresgid usleep nanosleep getdtablesize getrlimit sync_file_range posix_fadvise fallocate fallocate64 blkid_probe_get_topology mbstowcs backtrace)
+AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 fstat64 ftruncate64 getmntinfo strtoull strcasecmp srandom jrand48 fchown mallinfo fdatasync quotactl strnlen strptime strdup sysconf pathconf posix_memalign memalign valloc __secure_getenv prctl mmap utime setresuid setresgid usleep nanosleep getdtablesize getrlimit sync_file_range posix_fadvise fallocate fallocate64 blkid_probe_get_topology mbstowcs backtrace msync)
 dnl
 dnl Check to see if -lsocket is required (solaris) to make something
 dnl that uses socket() to compile; this is needed for the UUID library
diff -ur e2fsprogs-1.42~WIP-2011-11-20/e2fsck/quota.c e2fsprogs-1.42~WIP-2011-11-20.modified/e2fsck/quota.c
--- e2fsprogs-1.42~WIP-2011-11-20/e2fsck/quota.c	2011-11-14 16:55:54.000000000 +0100
+++ e2fsprogs-1.42~WIP-2011-11-20.modified/e2fsck/quota.c	2011-11-23 08:50:43.000000000 +0100
@@ -24,7 +24,7 @@
 	ext2_ino_t		ino;
 	struct ext2_inode	inode;
 	errcode_t		retval;
-	char			qf_name[255];
+	char			*qf_name;
 
 	if (ext2fs_read_inode(fs, from_ino, &inode))
 		return;
@@ -38,9 +38,10 @@
 
 	ext2fs_write_new_inode(fs, to_ino, &inode);
 	/* unlink the old inode */
-	quota_get_qf_name(qtype, QFMT_VFS_V1, qf_name);
+	qf_name = quota_get_qf_name(qtype, QFMT_VFS_V1);
 	ext2fs_unlink(fs, EXT2_ROOT_INO, qf_name, from_ino, 0);
 	ext2fs_inode_alloc_stats(fs, from_ino, -1);
+	free(qf_name);
 }
 
 void e2fsck_hide_quota(e2fsck_t ctx)
diff -ur e2fsprogs-1.42~WIP-2011-11-20/lib/ext2fs/tdb.c e2fsprogs-1.42~WIP-2011-11-20.modified/lib/ext2fs/tdb.c
--- e2fsprogs-1.42~WIP-2011-11-20/lib/ext2fs/tdb.c	2011-11-05 19:54:22.000000000 +0100
+++ e2fsprogs-1.42~WIP-2011-11-20.modified/lib/ext2fs/tdb.c	2011-11-23 08:44:38.000000000 +0100
@@ -1752,7 +1752,7 @@
 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction: fsync failed\n"));
 		return -1;
 	}
-#ifdef MS_SYNC
+#ifdef HAVE_MSYNC
 	if (tdb->map_ptr) {
 		tdb_off_t moffset = offset & ~(tdb->page_size-1);
 		if (msync(moffset + (char *)tdb->map_ptr,
diff -ur e2fsprogs-1.42~WIP-2011-11-20/lib/quota/mkquota.c e2fsprogs-1.42~WIP-2011-11-20.modified/lib/quota/mkquota.c
--- e2fsprogs-1.42~WIP-2011-11-20/lib/quota/mkquota.c	2011-11-14 17:36:12.000000000 +0100
+++ e2fsprogs-1.42~WIP-2011-11-20.modified/lib/quota/mkquota.c	2011-11-23 08:50:57.000000000 +0100
@@ -67,17 +67,19 @@
  */
 int quota_file_exists(ext2_filsys fs, int qtype, int fmt)
 {
-	char qf_name[256];
+	char *qf_name;
 	errcode_t ret;
 	ext2_ino_t ino;
 
 	if (qtype >= MAXQUOTAS)
 		return -EINVAL;
 
-	quota_get_qf_name(qtype, fmt, qf_name);
+	if ((qf_name = quota_get_qf_name(qtype, fmt)) == NULL)
+		return 0;
 
 	ret = ext2fs_lookup(fs, EXT2_ROOT_INO, qf_name, strlen(qf_name), 0,
 			    &ino);
+	free(qf_name);
 	if (ret)
 		return 0;
 
diff -ur e2fsprogs-1.42~WIP-2011-11-20/lib/quota/mkquota.h e2fsprogs-1.42~WIP-2011-11-20.modified/lib/quota/mkquota.h
--- e2fsprogs-1.42~WIP-2011-11-20/lib/quota/mkquota.h	2011-11-14 16:58:28.000000000 +0100
+++ e2fsprogs-1.42~WIP-2011-11-20.modified/lib/quota/mkquota.h	2011-11-22 12:53:05.000000000 +0100
@@ -61,7 +61,7 @@
 void quota_set_sb_inum(ext2_filsys fs, ext2_ino_t ino, int qtype);
 
 /* In quotaio.c */
-const char *quota_get_qf_name(int type, int fmt, char *buf);
+char *quota_get_qf_name(int type, int fmt);
 const char *quota_get_qf_path(const char *mntpt, int qtype, int fmt,
 			      char *path_buf, size_t path_buf_size);
 
diff -ur e2fsprogs-1.42~WIP-2011-11-20/lib/quota/quotaio.c e2fsprogs-1.42~WIP-2011-11-20.modified/lib/quota/quotaio.c
--- e2fsprogs-1.42~WIP-2011-11-20/lib/quota/quotaio.c	2011-11-14 17:37:26.000000000 +0100
+++ e2fsprogs-1.42~WIP-2011-11-20.modified/lib/quota/quotaio.c	2011-11-23 08:52:25.000000000 +0100
@@ -52,11 +52,15 @@
 /**
  * Creates a quota file name for given type and format.
  */
-const char *quota_get_qf_name(int type, int fmt, char *buf)
+char *quota_get_qf_name(int type, int fmt)
 {
-	if (!buf)
+	int len;
+	char *buf = NULL;
+
+	len = strlen(basenames[fmt]) + 1 + strlen(extensions[type]) + 1;
+	if( (buf = malloc(len)) == NULL)
 		return NULL;
-	snprintf(buf, PATH_MAX, "%s.%s",
+	snprintf(buf, len, "%s.%s",
 		 basenames[fmt], extensions[type]);
 
 	return buf;
@@ -66,16 +70,19 @@
 			      char *path_buf, size_t path_buf_size)
 {
 	struct stat	qf_stat;
-	char qf_name[PATH_MAX] = {0};
+	char *qf_name = NULL;
 
 	if (!mntpt || !path_buf || !path_buf_size)
 		return NULL;
 
 	strncpy(path_buf, mntpt, path_buf_size);
 	strncat(path_buf, "/", 1);
-	strncat(path_buf, quota_get_qf_name(qtype, fmt, qf_name),
+	if ((qf_name = quota_get_qf_name(qtype, fmt)) == NULL)
+		return NULL;
+	strncat(path_buf, qf_name,
 		path_buf_size - strlen(path_buf));
 
+	free(qf_name);
 	return path_buf;
 }
 

--- End Message ---
--- Begin Message ---
Source: e2fsprogs
Source-Version: 1.42-1

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

comerr-dev_2.1-1.42-1_i386.deb
  to main/e/e2fsprogs/comerr-dev_2.1-1.42-1_i386.deb
e2fsck-static_1.42-1_i386.deb
  to main/e/e2fsprogs/e2fsck-static_1.42-1_i386.deb
e2fslibs-dbg_1.42-1_i386.deb
  to main/e/e2fsprogs/e2fslibs-dbg_1.42-1_i386.deb
e2fslibs-dev_1.42-1_i386.deb
  to main/e/e2fsprogs/e2fslibs-dev_1.42-1_i386.deb
e2fslibs_1.42-1_i386.deb
  to main/e/e2fsprogs/e2fslibs_1.42-1_i386.deb
e2fsprogs-dbg_1.42-1_i386.deb
  to main/e/e2fsprogs/e2fsprogs-dbg_1.42-1_i386.deb
e2fsprogs-udeb_1.42-1_i386.udeb
  to main/e/e2fsprogs/e2fsprogs-udeb_1.42-1_i386.udeb
e2fsprogs_1.42-1.debian.tar.gz
  to main/e/e2fsprogs/e2fsprogs_1.42-1.debian.tar.gz
e2fsprogs_1.42-1.dsc
  to main/e/e2fsprogs/e2fsprogs_1.42-1.dsc
e2fsprogs_1.42-1_i386.deb
  to main/e/e2fsprogs/e2fsprogs_1.42-1_i386.deb
e2fsprogs_1.42.orig.tar.gz
  to main/e/e2fsprogs/e2fsprogs_1.42.orig.tar.gz
libcomerr2-dbg_1.42-1_i386.deb
  to main/e/e2fsprogs/libcomerr2-dbg_1.42-1_i386.deb
libcomerr2_1.42-1_i386.deb
  to main/e/e2fsprogs/libcomerr2_1.42-1_i386.deb
libss2-dbg_1.42-1_i386.deb
  to main/e/e2fsprogs/libss2-dbg_1.42-1_i386.deb
libss2_1.42-1_i386.deb
  to main/e/e2fsprogs/libss2_1.42-1_i386.deb
ss-dev_2.0-1.42-1_i386.deb
  to main/e/e2fsprogs/ss-dev_2.0-1.42-1_i386.deb



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 [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Theodore Y. Ts'o <[email protected]> (supplier of updated e2fsprogs 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 [email protected])


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

Format: 1.8
Date: Tue, 29 Nov 2011 15:50:07 -0500
Source: e2fsprogs
Binary: e2fsck-static libcomerr2 comerr-dev libss2 ss-dev e2fsprogs-udeb 
e2fslibs e2fslibs-dev e2fsprogs e2fsprogs-dbg e2fslibs-dbg libcomerr2-dbg 
libss2-dbg
Architecture: source i386
Version: 1.42-1
Distribution: unstable
Urgency: low
Maintainer: Theodore Y. Ts'o <[email protected]>
Changed-By: Theodore Y. Ts'o <[email protected]>
Description: 
 comerr-dev - common error description library - headers and static libraries
 e2fsck-static - statically-linked version of the ext2/ext3/ext4 filesystem 
checke
 e2fslibs   - ext2/ext3/ext4 file system libraries
 e2fslibs-dbg - debugging information for e2fslibs
 e2fslibs-dev - ext2/ext3/ext4 file system libraries - headers and static 
librari
 e2fsprogs  - ext2/ext3/ext4 file system utilities
 e2fsprogs-dbg - debugging information for e2fsprogs
 e2fsprogs-udeb - stripped-down versions of e2fsprogs, for debian-installer 
(udeb)
 libcomerr2 - common error description library
 libcomerr2-dbg - debugging information for libcomerr2
 libss2     - command-line interface parsing library
 libss2-dbg - debugging information for libss2
 ss-dev     - command-line interface parsing library - headers and static libra
Closes: 649689
Changes: 
 e2fsprogs (1.42-1) unstable; urgency=low
 .
   * New upstream release
   * Fixed hurd FTBFS (Closes: #649689)
   * Optimized e2fsck speed on large file systems when using [scratch_files]
   * Fixed e2fsck handling of blocks claimed by multiple inodes in
     bigalloc file systems
   * Fixed e2fsck's calculation of max file size for non-extent based
     files when huge_file is enabled
   * Update Czech and Swedish translations
Checksums-Sha1: 
 f32a656276c8129bf8666e026b2826f4350de3c9 1814 e2fsprogs_1.42-1.dsc
 e69bc63bc319e4d1e4242cc278bfd442a60646e6 5709827 e2fsprogs_1.42.orig.tar.gz
 c92f2518ddb28596b2af2877b259970bf541aa5b 71522 e2fsprogs_1.42-1.debian.tar.gz
 b71f65108675c048866169a10c16500c2e95bc9a 481762 e2fsck-static_1.42-1_i386.deb
 88183b6478ae37a9680c3d06e9bd988316e491cc 53366 libcomerr2_1.42-1_i386.deb
 18453d6edf8dba29de2a904ed1b82eaa209a4b28 57938 libss2_1.42-1_i386.deb
 af348974f3f76aaf5f3458079346a3da698a219a 185716 e2fslibs_1.42-1_i386.deb
 73a1f586fd53ff2f6551d80a7169c010a55d0c11 221542 e2fslibs-dev_1.42-1_i386.deb
 4a7a3160bdfe572c202d959ea28c6444b0a76b4e 955202 e2fsprogs_1.42-1_i386.deb
 e8961e3bef6bdb0309eb5bf99bd57f504361bd5d 155702 e2fsprogs-dbg_1.42-1_i386.deb
 6cd9f476df7cc24d891b1994ee96fd553916368e 64090 e2fslibs-dbg_1.42-1_i386.deb
 8d5f6f5e36ca5d31b43299c660bdc9c26b8bd733 49574 libcomerr2-dbg_1.42-1_i386.deb
 2f41e6fd1d82e45721a339fbc7d7099153ef9213 50324 libss2-dbg_1.42-1_i386.deb
 1aef97553c789da29c32f752a45dce609638aece 42810 comerr-dev_2.1-1.42-1_i386.deb
 cecdd71787f17283e1c32b2fa759861793d45398 17924 ss-dev_2.0-1.42-1_i386.deb
 a64833e23cca6c27200b45d552397830189e5b79 324596 e2fsprogs-udeb_1.42-1_i386.udeb
Checksums-Sha256: 
 9644349480d5a1874c02aac46aa699bf3fb433d1cedcba1855af4917c15bb536 1814 
e2fsprogs_1.42-1.dsc
 55b46db0cec3e2eb0e5de14494a88b01ff6c0500edf8ca8927cad6da7b5e4a46 5709827 
e2fsprogs_1.42.orig.tar.gz
 5c116ba526f30fdb666ea6c6e818a18cfe909f92c9602ea612f4ee12d21f177d 71522 
e2fsprogs_1.42-1.debian.tar.gz
 762557d32f475a680763b373e48fa113d69e6b0fe6fd275c3b4d739f5f587bba 481762 
e2fsck-static_1.42-1_i386.deb
 49ef6f7676719c04c8811276aa16457d2e648b68141a11a9d872acb40409c446 53366 
libcomerr2_1.42-1_i386.deb
 b12ee37552f1ccf950188c1e650db373f644a2a2b0a3bd5d5ed97d7a638d8f61 57938 
libss2_1.42-1_i386.deb
 551b0f8b8d79fcdc586b18d138779f644f13a9da2d5f66a3f69bff6d975cd7bc 185716 
e2fslibs_1.42-1_i386.deb
 2d502c04dd0189ed3ee2ac174fadd4b6711ac3829a4a7c605123a2df59066ed3 221542 
e2fslibs-dev_1.42-1_i386.deb
 12aba0793f2b14f7c307f3120a692e966076b1b98b0a90ab81aef662232966cb 955202 
e2fsprogs_1.42-1_i386.deb
 6d27a06ce7fea353476ff30421389183ff27c7faea486c8a9b86331625458da1 155702 
e2fsprogs-dbg_1.42-1_i386.deb
 ae25940ab0f4bec8984e99252c43cac693fffa48026e26d4ce2596a67ca36b72 64090 
e2fslibs-dbg_1.42-1_i386.deb
 b2677ede09bcda3fe9defd76fdd3a38c3cadebe8bdb37831dbc2012d6110b296 49574 
libcomerr2-dbg_1.42-1_i386.deb
 7180fa7a363fe37bedaf946b7d7b31c47c2ddf7d55e02624ffbd19cd2f0e9620 50324 
libss2-dbg_1.42-1_i386.deb
 7a043b6faf26898655639d20abf2dabd10d22c39842a51f3061568e31930e53d 42810 
comerr-dev_2.1-1.42-1_i386.deb
 fc12780d7134a51d272ad24c5b7ca494a8e4c4ae814ed14373c35a4f9eb97b49 17924 
ss-dev_2.0-1.42-1_i386.deb
 277045fd1a90d2dc42ed4258fd7f66b30e294a845a0c6ce9f00442ea9e481ed9 324596 
e2fsprogs-udeb_1.42-1_i386.udeb
Files: 
 74b32bd0f9c108a2b02bdf7966b2af6b 1814 admin required e2fsprogs_1.42-1.dsc
 a3c4ffd7352310ab5e9412965d575610 5709827 admin required 
e2fsprogs_1.42.orig.tar.gz
 d70b9e1c21c1e3b61619f83c07d680a7 71522 admin required 
e2fsprogs_1.42-1.debian.tar.gz
 5f7601fca1f0e77806ac9876a4cd2bb1 481762 admin optional 
e2fsck-static_1.42-1_i386.deb
 0555d6e6eab06ee82c4d67165cc5146f 53366 libs required libcomerr2_1.42-1_i386.deb
 1ebc3b57b35f3615d156d9d3b8c59625 57938 libs required libss2_1.42-1_i386.deb
 3f10d1385ae2e9271f6d3845fc4fac35 185716 libs required e2fslibs_1.42-1_i386.deb
 7aac5b956ef0c1e9e26cbc6689f4e0e4 221542 libdevel extra 
e2fslibs-dev_1.42-1_i386.deb
 861661ed048308a790311cf0483f18fe 955202 admin required 
e2fsprogs_1.42-1_i386.deb
 b9f76039b7e8f947485b99a1c6fd6f21 155702 debug extra 
e2fsprogs-dbg_1.42-1_i386.deb
 f7cc3af7f136d2da9bbd76e19a8239f1 64090 debug extra e2fslibs-dbg_1.42-1_i386.deb
 aa1af534b9b49a7c275735bbf12e716c 49574 debug extra 
libcomerr2-dbg_1.42-1_i386.deb
 5c17793f0b324dff7cbd16db8632a4e8 50324 debug extra libss2-dbg_1.42-1_i386.deb
 37ad2386f1e63cb3aa9eaf073d4f4b01 42810 libdevel extra 
comerr-dev_2.1-1.42-1_i386.deb
 13bea01a6d235d4cfdc8f636410dc780 17924 libdevel extra 
ss-dev_2.0-1.42-1_i386.deb
 2903d932eabe4d3c795c506877d2c67d 324596 debian-installer optional 
e2fsprogs-udeb_1.42-1_i386.udeb
Package-Type: udeb

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

iEYEARECAAYFAk7VXlMACgkQ7To545NnTEDFkwCfYyQF3p9qpJpZZAmA5qvFU3W0
QzAAnRgZBpTqUgk8SqkVH/X85I+jldoa
=O1E2
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to