[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Memory Leak - Bash 4.3.x30
From: |
Jordi Ferrer |
Subject: |
Memory Leak - Bash 4.3.x30 |
Date: |
Tue, 26 Mar 2024 18:33:08 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 |
Just in case for people running old servers:
This simple code cause a memory leak in bash:
#!/bin/bash
#
Array=("S" "E")
while [ 1 ]; do
A=${Array[0]}
done
But, adding colons to the assignment it doesn't:
#!/bin/bash
#
Array=("S" "E")
while [ 1 ]; do
A="${Array[0]}"
done
Just reading the array content it doesn't:
#!/bin/bash
#
Array=("S" "E")
while [ 1 ]; do
echo ${Array[0]}
done
So looks it like it's indexing the array and assigning it to another
variable without "" causes a memory leak.
# bash --version
GNU bash, version 4.3.30(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
[1]<http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
# ldd /bin/bash
linux-vdso.so.1 (0x00007ffcd2f27000)
libncurses.so.5 => /lib/x86_64-linux-gnu/libncurses.so.5
(0x00007f26f4dbf000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5
(0x00007f26f4b95000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f26f4991000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f26f45e6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f26f4fe4000)
# dpkg -l |grep libncurses
ii libncurses5:amd64
5.9+20140913-1+deb8u3 amd64 shared libraries for
terminal handling
ii libncurses5-dev:amd64
5.9+20140913-1+deb8u3 amd64 developer's libraries
for ncurses
ii libncursesw5:amd64
5.9+20140913-1+deb8u3 amd64 shared libraries for
terminal handling (wide character support)
# dpkg -l |grep libtinfo
ii libtinfo-dev:amd64
5.9+20140913-1+deb8u3 amd64 developer's library
for the low-level terminfo library
ii libtinfo5:amd64
5.9+20140913-1+deb8u3 amd64 shared low-level
terminfo library for terminal handling
# cat /etc/debian_version
8.11
# uname -a
Linux city 4.9.110-Mod #1 SMP Mon Oct 19 12:46:42 CEST 2020 x86_64
GNU/Linux
--
Jordi Ferrer
INSTAL·LACIONS, TELECOMUNICACIONS I INFORMÀTICA
[2]jferrer@wattia.cat
(+34) 634 631 625
Wattia Innova S.L. | C/ Bòsnia, 6-8 | 17800 - Olot, Girona
Tel. (+34) 972 26 80 02 | [3]http://wattia.cat
Avis Legal. La informació que conté aquest missatge de correu electrònic és CONF
IDENCIAL i pot incloure dades de caràcter reservat.
El seu accés o ús per part d'una tercera persona no autoritzada pot ser il·legal
. Si vostè no n'és el destinatari, si us plau elimini'l
i ens ho faci saber immediatament per aquesta mateixa via o pel telèfon (+34 972
26 80 02). El correu electrònic no permet assegurar la
confidencialitat dels missatges, ni la seva recepció íntegra i correcta. No assu
mim cap responsabilitat per aquestes circumstàncies.
Si el destinatari no autoritza l'ús del correu electrònic o l'arxivament dels mi
ssatges, li preguem que ens ho comuniqui.
Abans d'imprimir aquest missatge pensi bé si és realment necessari fer-ho: El me
di ambient és cosa de tots!
References
1. http://gnu.org/licenses/gpl.html
2. mailto:jferrer@wattia.cat
3. http://wattia.cat/
- Memory Leak - Bash 4.3.x30,
Jordi Ferrer <=