|
Description
|
libpool assumes things it shouldn't about the values of some pools properties.
See usr/src/lib/libpool/common/pool_commit.c:1313 -
1313 /* The temporary property needs special handling */
1314 if (strstr(name, ".temporary") != NULL)
1315 return (pool_set_temporary(TO_CONF(tgt), tgt) ==
1316 PO_FAIL ? PO_FAIL : PO_SUCCESS);
1317 else
1318 return (pool_put_property(TO_CONF(tgt), tgt, name, pv) ==
1319 PO_FAIL ? PO_FAIL : PO_SUCCESS);
It doesn't check the actual value of the temporary property, it just assumes it's true. This is certainly a *working* assumption for the current implementation, but not one which should be made. It should be checked that this property is actually being set to true.
|