Glusterfs Client 3.0.5 crashes with buffer overflow
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
glusterfs |
Unknown
|
Unknown
|
|||
glusterfs (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Natty |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: glusterfs-client
After upgrading glusterfs-client from maverick (3.0.4) to natty (3.0.5) all glusterfs volumes failed to mount as the clients immediately dump core.
Manually reverting to 3.0.4 allows the volumes to be mounted.
root@test16:/tmp# cat test.vol
volume default
type protocol/client
option transport-type tcp
option remote-host 192.168.2.15
option transport.
option transport.
option remote-port 6996
option remote-subvolume brick-1
end-volume
root@test16:/tmp# apt-get install libglusterfs0=
[...]
root@test16:/tmp# glusterfs -f /tmp/test.vol /mnt
root@test16:/tmp# touch /mnt/foo
root@test16:/tmp# umount /mnt
root@test16:/tmp# apt-get install libglusterfs0=
[...]
root@test16:/tmp# glusterfs -f /tmp/test.vol /mnt
root@test16:/tmp# touch /mnt/foo
touch: cannot touch `/mnt/foo': Transport endpoint is not connected
root@test16:/tmp# umount /mnt
(Note: the remote glusterfs server is running 3.0.5)
Ubuntu 11.04
summary: |
- Client 3.0.5 crashes with buffer overflow + Glusterfs Client 3.0.5 crashes with buffer overflow |
This seems to be caused by compiling glusterfs with -D_FORTIFY_ SOURCE= 2, which also seems to be the default in gcc. I rebuilt gluster-client with -D_FORTIFY_SOURCE=1 and that "fixes" the problem.
Details: http:// gcc.gnu. org/ml/ gcc-patches/ 2004-09/ msg02055. html
Quick workaround:
mkdir glusterfs APPEND= "-D_FORTIFY_ SOURCE= 1" debuild -us -uc client_ 3.0.5-1_ *.deb 3.0.5-1_ *.deb
cd glusterfs
apt-get source glusterfs-client
sudo apt-get build-dep glusterfs-client
cd glusterfs-3.0.5
DEB_CFLAGS_
cd ..
sudo dpkg --install glusterfs-
sudo dpkg --install libglusterfs0_