Your message dated Sun, 30 Nov 2008 11:02:06 +0000
with message-id <[EMAIL PROTECTED]>
and subject line Bug#470280: fixed in htop 0.8.1-1
has caused the Debian Bug report #470280,
regarding htop: Segmentation fault when parsing configuration file due to
(low) arbitrary limit
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.)
--
470280: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=470280
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: htop
Version: 0.6.6+svn20070915-1
Severity: important
Tags: patch
Hi,
the limit of line length when parsing configuration file is currently
512, which is too low when it comes to 128 or 256 CPUs. Please either
raise the limit to e.g. 4k, which should be sufficient to handle a bunch
of cases, or think of using a loop reallocating memory as needed, which
would be even smarter.
I'm attaching gdb output as well as the tiny patch we're using.
Cheers,
--
Cyril Brulebois
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.24-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages htop depends on:
ii libc6 2.7-9 GNU C Library: Shared libraries
ii libncurses5 5.6+20080203-1 Shared libraries for
terminal hand
htop recommends no packages.
-- no debconf information
--
Cyril Brulebois
--- a/Settings.c
+++ b/Settings.c
@@ -96,7 +96,7 @@
if (fd == NULL) {
return false;
}
- const int maxLine = 512;
+ const int maxLine = 4096;
char buffer[maxLine];
bool readMeters = false;
while (!feof(fd)) {
Starting program: /usr/bin/htop
Program received signal SIGSEGV, Segmentation fault.
0x00000000004099b0 in Meter_setMode (this=0x0, modeIndex=1) at Meter.c:215
215 if (modeIndex > 0 && modeIndex == this->mode)
#0 0x00000000004099b0 in Meter_setMode (this=0x0, modeIndex=1) at Meter.c:215
#1 0x00000000004061cd in Header_setMode (this=0x61a980, i=63,
mode=BAR_METERMODE, side=LEFT_HEADER) at Header.c:77
#2 0x000000000040f823 in Settings_readMeterModes (this=0x61aaf0,
line=0x61b700 "1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n",
side=LEFT_HEADER) at Settings.c:86
#3 0x000000000040fdac in Settings_read (this=0x61aaf0, fileName=0x61ab20
"/home/cyril/.htoprc") at Settings.c:157
#4 0x000000000040f690 in Settings_new (pl=0x61a100, header=0x61a980) at
Settings.c:47
#5 0x0000000000407bfc in main (argc=1, argv=0x7fff56c2d2a8) at htop.c:270
The program is running. Exit anyway? (y or n) Starting program: /usr/bin/htop
Program received signal SIGSEGV, Segmentation fault.
0x00000000004099b0 in Meter_setMode (this=0x0, modeIndex=1) at Meter.c:215
215 if (modeIndex > 0 && modeIndex == this->mode)
#0 0x00000000004099b0 in Meter_setMode (this=0x0, modeIndex=1) at Meter.c:215
#1 0x00000000004061cd in Header_setMode (this=0x61a980, i=63,
mode=BAR_METERMODE, side=LEFT_HEADER) at Header.c:77
#2 0x000000000040f823 in Settings_readMeterModes (this=0x61aaf0,
line=0x61b700 "1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n",
side=LEFT_HEADER) at Settings.c:86
#3 0x000000000040fdac in Settings_read (this=0x61aaf0, fileName=0x61ab20
"/home/cyril/.htoprc") at Settings.c:157
#4 0x000000000040f690 in Settings_new (pl=0x61a100, header=0x61a980) at
Settings.c:47
#5 0x0000000000407bfc in main (argc=1, argv=0x7fffee921f98) at htop.c:270
#0 0x00000000004099b0 in Meter_setMode (this=0x0, modeIndex=1) at Meter.c:215
No locals.
#1 0x00000000004061cd in Header_setMode (this=0x61a980, i=63,
mode=BAR_METERMODE, side=LEFT_HEADER) at Header.c:77
meters = (Vector *) 0x61a9b0
meter = (Meter *) 0x0
#2 0x000000000040f823 in Settings_readMeterModes (this=0x61aaf0,
line=0x61b700 "1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n",
side=LEFT_HEADER) at Settings.c:86
mode = 1
trim = 0x61b790 "P¸a"
ids = (char **) 0x61ec90
i = 63
#3 0x000000000040fdac in Settings_read (this=0x61aaf0, fileName=0x61ab20
"/home/cyril/.htoprc") at Settings.c:157
option = (char **) 0x61b6a0
fd = (FILE *) 0x61ab40
maxLine = 512
buffer = 0x7fffee91cd60 "left_meter_modes=1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 \n"
readMeters = true
#4 0x000000000040f690 in Settings_new (pl=0x61a100, header=0x61a980) at
Settings.c:47
this = (Settings *) 0x61aaf0
home = 0x7fffee923e91 "/home/cyril"
rcfile = 0x0
ok = false
#5 0x0000000000407bfc in main (argc=1, argv=0x7fffee921f98) at htop.c:270
delay = -1
userOnly = false
userId = 0
sortKey = 0
arg = 1
panel = (Panel *) 0x2b9ebcbb65c8
quit = 0
refreshTimeout = 0
resetRefreshTimeout = 5
doRefresh = true
settings = (Settings *) 0x2b9ebc871fd8
killPanel = (Panel *) 0x0
incSearchBuffer = '\0' <repeats 39 times>
incSearchIndex = 0
incSearchMode = false
pl = (ProcessList *) 0x61a100
ut = (UsersTable *) 0x61a010
header = (Header *) 0x61a980
headerHeight = 32767
searchFunctions = {0x0, 0x0, 0x0}
searchKeys = {0x0, 0x0, 0x0}
searchEvents = {0, 0, 0}
searchBar = (FunctionBar *) 0x7fffee921ea8
defaultFunctions = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}
defaultBar = (FunctionBar *) 0xf63d4e2e
acc = -292413808
follow = false
tv = {tv_sec = 0, tv_usec = 0}
newTime = 0
oldTime = 2.3695764148749076e-310
recalculate = false
ch = -1128569400
closeTimeout = 11166
signature.asc
Description: OpenPGP digital signature
--- End Message ---
--- Begin Message ---
Source: htop
Source-Version: 0.8.1-1
We believe that the bug you reported is fixed in the latest version of
htop, which is due to be installed in the Debian FTP archive:
htop_0.8.1-1.diff.gz
to pool/main/h/htop/htop_0.8.1-1.diff.gz
htop_0.8.1-1.dsc
to pool/main/h/htop/htop_0.8.1-1.dsc
htop_0.8.1-1_i386.deb
to pool/main/h/htop/htop_0.8.1-1_i386.deb
htop_0.8.1.orig.tar.gz
to pool/main/h/htop/htop_0.8.1.orig.tar.gz
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.
Eugene V. Lyubimkin <[EMAIL PROTECTED]> (supplier of updated htop 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: Sun, 16 Nov 2008 20:36:18 +0200
Source: htop
Binary: htop
Architecture: source i386
Version: 0.8.1-1
Distribution: experimental
Urgency: low
Maintainer: Eugene V. Lyubimkin <[EMAIL PROTECTED]>
Changed-By: Eugene V. Lyubimkin <[EMAIL PROTECTED]>
Description:
htop - interactive processes viewer
Closes: 470280 480541 484771 486213 488912 494646 499928
Changes:
htop (0.8.1-1) experimental; urgency=low
.
* New maintainer. Thanks for work, Bartosz Fenski!
* New upstream release:
- Changes in 0.8.1 (Closes: #499928):
- Linux-VServer support.
- Battery meter (Closes: #484771).
- Fixed collection of IO stats in multithreaded processes.
- Removed assertion that fails on hardened kernels.
- Changes in 0.8.0 (Closes: #494646, #486213):
- Ability to change sort column with the mouse by
clicking column titles.
- Added support for Linux per-process IO statistics.
- Added Unicode support.
- Fixed display of CPU count for threaded processes.
- Avoid crashing when using many meters.
- Other fixes:
- Significantly increased line length limit (to 65535).
(Closes: #470280)
* debian/control:
- Bumped 'Standards-Version' to 3.8.0, no changes needed.
- Changed Build-Depends on debhelper to (>= 7) and 'libncurses5-dev' ->
'libncursesw5-dev'. Added dependency on quilt (>= 0.40).
* debian/rules:
- Some cleanup, used debhelper v7 commands.
- Pass '--enable-taskstats' and '--enable-unicode' options to configure.
- Pass '--enable-openvz' to configure. (Closes: #480541)
* debian/patches:
- New 010-make-desktop-file-valid.patch: makes desktop file valid.
Thanks to Nathan Handler <[EMAIL PROTECTED]> (Closes: #488912)
* debian/copyright:
- Fixed path for GPLv2 license.
* debian/menu:
- Set proper section, removed hint (now useless).
Checksums-Sha1:
70581d5422e35821e65eff94007295b800192ae5 1016 htop_0.8.1-1.dsc
b41b4d83ab7ac40b79f6eeb730cd561293b62fd4 414870 htop_0.8.1.orig.tar.gz
4aa3097c0b01424303fc3c00dabde4fd18e162be 3775 htop_0.8.1-1.diff.gz
7b3732c6491aa98caaa9ee70a9065e9b4efff804 53244 htop_0.8.1-1_i386.deb
Checksums-Sha256:
5ee0975841ea0edaad0247062bdd20288aa93530a994cd076ea19abf84481964 1016
htop_0.8.1-1.dsc
25ae28202fa4b782ed0e1298d3feee407bdeb56eaf9c652d0a6f9dbf22125d28 414870
htop_0.8.1.orig.tar.gz
ab7a6367495dc3e667133bd5ec0860f0b62d140b9283d2c4203a9edb54b2417c 3775
htop_0.8.1-1.diff.gz
fc91c95d8b77e5ee4021433cf5fc01076bfcc7ee5a8fe711932bfdb5bbbf27c7 53244
htop_0.8.1-1_i386.deb
Files:
20216bce37de0840ac8b2ab1cc9bc007 1016 utils optional htop_0.8.1-1.dsc
f0b259ca29175656de48bf0fa0a2e619 414870 utils optional htop_0.8.1.orig.tar.gz
929aa39ba8938886ff31d5256a0fb601 3775 utils optional htop_0.8.1-1.diff.gz
81e42b7f0696396e6337e6ba5d222741 53244 utils optional htop_0.8.1-1_i386.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkkycXMACgkQhQui3hP+/EDOVACfZQt3t0KMmlGwk09NaVEzUiAH
HdUAn2Aay+Ri7mfUGcSRjEXJGqQCfhgz
=0PEN
-----END PGP SIGNATURE-----
--- End Message ---