summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/idl/nbt.idl4
-rw-r--r--source4/librpc/ndr/ndr_basic.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/source4/librpc/idl/nbt.idl b/source4/librpc/idl/nbt.idl
index 35fc7d90c4..caca7fa336 100644
--- a/source4/librpc/idl/nbt.idl
+++ b/source4/librpc/idl/nbt.idl
@@ -139,8 +139,8 @@ interface nbt
nb_flags nb_flags;
} nbt_status_name;
- typedef [gensize] struct {
- [value(ndr_size_nbt_rdata_status(r, ndr->flags)-2)] uint16 length;
+ typedef struct {
+ [value(r->num_names * 18 + 47)] uint16 length;
uint8 num_names;
nbt_status_name names[num_names];
nbt_statistics statistics;
diff --git a/source4/librpc/ndr/ndr_basic.c b/source4/librpc/ndr/ndr_basic.c
index e38b9d394a..61b3c9ec4d 100644
--- a/source4/librpc/ndr/ndr_basic.c
+++ b/source4/librpc/ndr/ndr_basic.c
@@ -887,7 +887,7 @@ NTSTATUS ndr_push_string(struct ndr_push *ndr, int ndr_flags, const char *s)
d_len = (flags & LIBNDR_FLAG_STR_FIXLEN32)?32:15;
NDR_PUSH_NEED_BYTES(ndr, byte_mul*d_len);
ret = convert_string(CH_UNIX, chset,
- s, s_len + 1,
+ s, s_len,
ndr->data+ndr->offset, byte_mul*d_len);
if (ret == -1) {
return ndr_push_error(ndr, NDR_ERR_CHARCNV,