de02167584
istdup() is documented as having the same behavior as strdup(). However, it may cause confusion as it allocates a block of input length, without an extra byte for \0 delimiter. This behavior is incoherent as in case of an empty string however a single \0 is allocated. This API inconsistency could cause a bug anywhere an IST is used as a C-string after istdup() invocation. Currently, the only found issue is with 'wait' CLI command using 'srv-unused'. This causes a buffer overflow due to ist0() invocation after istdup() for be_name and sv_name. Backport should be done to all stable releases. Even if no bug has been found outside of wait CLI implementation, it ensures the code is more consistent on every releases.