diff options
author | tuxoko <[email protected]> | 2015-04-26 16:09:41 +0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2015-04-28 09:43:50 -0700 |
commit | ecfb0b5f42c3662e36d5cd444c0aa2ebc8501589 (patch) | |
tree | 988f78f85df534ffb404ede03a4609efaa041f1e /lib/libzpool/kernel.c | |
parent | 52d5a1cc57820adda5499c537c553bc4f2e7976a (diff) |
Fix misuse of input argument in traverse_visitbp
In traverse_visitbp(), the input argument dnp is modified in the middle to
point to a temporary buffer. Originally this doesn't matter, because no user
of TRAVERSE_POST dereferences it. However, in fbeddd6 a piece of code is added
dereferencing dnp after the modification, creating a possible bug.
We fix this by creating a new local variable cdnp for the DMU_OT_DNODE case,
so we don't modify the input argument. Also we introduce different local
variables in the DMU_OT_OBJSET case to prevent confusion between the input
argument.
Signed-off-by: Chunwei Chen <[email protected]>
Signed-off-by: Richard Yao <[email protected]>
Signed-off-by: Tim Chase <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #2060
Diffstat (limited to 'lib/libzpool/kernel.c')
0 files changed, 0 insertions, 0 deletions