[syslinux] [PATCH 2/2] core: Fix stack overflow when reloading config

H. Peter Anvin hpa at zytor.com
Thu Jan 21 18:27:51 PST 2016


On January 21, 2016 6:23:49 PM PST, Celelibi <celelibi at gmail.com> wrote:
>2016-01-21 21:51 UTC+01:00, H. Peter Anvin <hpa at zytor.com>:
>> On 10/12/15 21:04, celelibi--- via Syslinux wrote:
>>> From: Sylvain Gault <sylvain.gault at gmail.com>
>>>
>>> The behavior when running a "CONFIG" command line is to reload
>>> ldlinux.c32 with the new file as argument. This call never return.
>>>
>>> In order to avoid stacking up the calls to start_ldlinux, this patch
>>> introduce a setjmp/longjmp to return to the first call to
>start_ldlinux,
>>> thus freeing all the stack space.
>>>
>>> Signed-off-by: Sylvain Gault <sylvain.gault at gmail.com>
>>
>> We don't re*load* ldlinux.c32, I hope?  I assume we just re-execute
>it?
>>
>> 	-hpa
>
>Well, ldlinux.c32 is unloaded explicitely in the function
>start_ldlinux. It is then actually reloaded by a call to spawn_load.
>Network capture just confirmed it.
>
>Do you wish something else to happen?
>
>It is, indeed, a waste of time reloading the very same file again and
>again. But I hope it was made this way for simplicity.
>
>
>Celelibi

Yes, but we should fix that.
-- 
Sent from my Android device with K-9 Mail. Please excuse brevity and formatting.


More information about the Syslinux mailing list