[Linux-ha-dev] Re: [Linux-ha-cvs] Linux-HA CVS: lib by zhenh from

Lars Marowsky-Bree lmb at suse.de
Thu Sep 16 02:31:26 MDT 2004


On 2004-09-15T19:07:36,
   Alan Robertson <alanr at unix.sh> said:

> >>>IMHO strndup will not work if there is '\0' in middle of binary values
> >Sure.
> >However, in this context, we just need get string type data from message.
> >>Right, that very likely should be a ha_malloc() + memcpy.
> 
> Then what you want to do is verify that it's a string, and exit with an 
> error if it's not.  Simply assuming it's a string isn't sufficient.

If it is not, it'll get truncated to the first \0 or the length of the
field (and add a terminating \0). I've got to admit that this seems
fairly sane, and is about the only option available to recover.

A LOG_WARN may be in order though if the strlen of the new field differs
from the output_len before.

(I guess we are nitpicking quite badly here ;-)


Sincerely,
    Lars Marowsky-Brée <lmb at suse.de>

-- 
High Availability & Clustering
SUSE Labs, Research and Development
SUSE LINUX AG - A Novell company




More information about the Linux-HA-Dev mailing list