summaryrefslogtreecommitdiff
path: root/usr/src/lib/libiscsitgt/common/xml.c
diff options
context:
space:
mode:
authormcneal <none@none>2006-12-19 15:46:00 -0800
committermcneal <none@none>2006-12-19 15:46:00 -0800
commit1be9ca8d9aa4f3f02da8b5fd32c5b5eacdb88d68 (patch)
tree7be09e478109936d190aa6b3b741ddbb45d64330 /usr/src/lib/libiscsitgt/common/xml.c
parenta2b32d33e8dc5630e1b64ff81bbc8db5642253c3 (diff)
downloadillumos-gate-1be9ca8d9aa4f3f02da8b5fd32c5b5eacdb88d68.tar.gz
6495328 daemon should use msync on mmap'd files
6496416 iscsitadm modify admin -d <basedir> will report error if there are targets created by zvol directly 6496424 targets can not be seen if created by zvol with shareiscsi property 6499244 libiscsitgt leaks like a sieve 6505266 SUNWiscsitgtu doesn't correctly disable target during package removal
Diffstat (limited to 'usr/src/lib/libiscsitgt/common/xml.c')
-rw-r--r--usr/src/lib/libiscsitgt/common/xml.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/usr/src/lib/libiscsitgt/common/xml.c b/usr/src/lib/libiscsitgt/common/xml.c
index 7f59ae219e..9a4a540572 100644
--- a/usr/src/lib/libiscsitgt/common/xml.c
+++ b/usr/src/lib/libiscsitgt/common/xml.c
@@ -457,6 +457,7 @@ tgt_node_add(tgt_node_t *p, tgt_node_t *c)
if ((p == NULL) || (c == NULL))
return;
+ c->x_parent = p;
if (p->x_child == NULL)
p->x_child = c;
else {
@@ -683,10 +684,12 @@ tgt_node_dup(tgt_node_t *n)
return (NULL);
if (node_name(d, (xmlChar *)n->x_name) == False)
return (NULL);
- if (node_value(d, (xmlChar *)n->x_value, True) == False)
+ if (n->x_value && (node_value(d, (xmlChar *)n->x_value, True) == False))
return (NULL);
for (c = n->x_child; c; c = c->x_sibling)
(void) tgt_node_add(d, tgt_node_dup(c));
+ for (c = n->x_attr; c; c = c->x_sibling)
+ (void) tgt_node_add_attr(d, tgt_node_dup(c));
return (d);
}