diff options
author | Andrew Bartlett <abartlet@samba.org> | 2008-01-21 20:56:27 +1100 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2008-01-21 20:56:27 +1100 |
commit | 8623c981b4a67dafc19234faffced1796f33b975 (patch) | |
tree | 3f04b6e4527b841d038a85c533627f6592748174 | |
parent | 66871f9950f1998c97f97c9a095953c66ab4ab64 (diff) | |
download | samba-8623c981b4a67dafc19234faffced1796f33b975.tar.gz samba-8623c981b4a67dafc19234faffced1796f33b975.tar.bz2 samba-8623c981b4a67dafc19234faffced1796f33b975.zip |
Be sure to pass iconv handle down to compression subcontexts (fixes
segfaults in NET-API-BECOME-DC)
Andrew Bartlett
(This used to be commit 70c1e918e6bd01946425e2d89cb680f14152f9fc)
-rw-r--r-- | source4/librpc/ndr/ndr_compression.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source4/librpc/ndr/ndr_compression.c b/source4/librpc/ndr/ndr_compression.c index 310f8c4ce4..86a5a2560e 100644 --- a/source4/librpc/ndr/ndr_compression.c +++ b/source4/librpc/ndr/ndr_compression.c @@ -112,6 +112,8 @@ static enum ndr_err_code ndr_pull_compression_mszip(struct ndr_pull *subndr, comndr->data_size = uncompressed.length; comndr->offset = 0; + comndr->iconv_convenience = talloc_reference(comndr, subndr->iconv_convenience); + NDR_CHECK(ndr_pull_uint32(comndr, NDR_SCALARS, &payload_header[0])); NDR_CHECK(ndr_pull_uint32(comndr, NDR_SCALARS, &payload_header[1])); NDR_CHECK(ndr_pull_uint32(comndr, NDR_SCALARS, &payload_header[2])); @@ -215,6 +217,8 @@ static enum ndr_err_code ndr_pull_compression_xpress(struct ndr_pull *subndr, comndr->data_size = uncompressed.length; comndr->offset = 0; + comndr->iconv_convenience = talloc_reference(comndr, subndr->iconv_convenience); + *_comndr = comndr; return NDR_ERR_SUCCESS; } |