On 01.06.2018 22:19, Farhan Ali wrote: > > > On 05/31/2018 11:21 PM, Thomas Huth wrote: >>> Just a question do we want to clear cfgbuf here, before calling >>> pxelinux_load_parse_cfg? >> That's theoretically not necessary. The buffer either gets populated >> with data, or the function errors out. The code also makes sure that >> there is a final NUL-character in the buffer: >> >> https://github.com/aik/SLOF/blob/64c526a/lib/libnet/pxelinux.c#L169 >> >> ... but I think I've got to double check that there is also a >> NUL-character immediately at the end of the downloaded data ... so >> there's indeed a change required, but likely rather in the SLOF code >> than here. > > Can't we do that in net_try_direct_tftp_load, or it is better to put > that in SLOF code?
I've now submitted a patch to SLOF to fix two issues with regards to the NUL-termination handling there: https://lists.ozlabs.org/pipermail/slof/2018-June/002201.html Now it's the duty of the caller to take care of proper NUL-termination. There is already this line in net_try_direct_tftp_load(): cfgbuf[rc] = 0; /* Make sure that it is NUL-terminated */ ... so I think we should be fine there. Thomas