ovsdb-idl: Don't even try to modify synthetic rows, instead of segfaulting.
authorBen Pfaff <blp@nicira.com>
Wed, 26 Oct 2011 22:46:48 +0000 (15:46 -0700)
committerBen Pfaff <blp@nicira.com>
Thu, 27 Oct 2011 17:36:30 +0000 (10:36 -0700)
commit9b446bfaa25c3cf44ace4821bd06c675d432df56
tree83dec2d731e86879c8877cbfb4f0bf4558fe5f58
parent23edef9e61fd8c89db4a238c5526b8f44e938aaf
ovsdb-idl: Don't even try to modify synthetic rows, instead of segfaulting.

Synthetic rows lack a lot of important metadata that the IDL adds to rows
actually obtained from the database, and it's impractical to add that
metadata to synthetic rows.  This means that the IDL functions to modify
these rows dereference null pointers and segfault.  So, it's really
important not to pass synthetic rows to such functions.  However, we've
screwed this up a number of times now and in the end it seems that it's
probably better to just ignore attempts to modify these rows.  This commit
implements that.

Feature #8013.
Reported-by: Ethan Jackson <ethan@nicira.com>
lib/ovsdb-idl.c