diff options
author | Stefan Metzmacher <metze@samba.org> | 2005-11-30 13:10:44 +0000 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2005-11-30 13:10:44 +0000 |
commit | 973d771f70d4fb8cece612ac7fc5e0a39f212d05 (patch) | |
tree | 0ca14e5ac565ee123248f9d74f3b2d8b64048a8a /source/librpc | |
parent | ceb25f66099b2361a102e76b72d13023e485343f (diff) | |
download | samba-973d771f70d4fb8cece612ac7fc5e0a39f212d05.tar.gz samba-973d771f70d4fb8cece612ac7fc5e0a39f212d05.tar.xz samba-973d771f70d4fb8cece612ac7fc5e0a39f212d05.zip |
r11973: make it easier to find bugs
metze
Diffstat (limited to 'source/librpc')
-rw-r--r-- | source/librpc/ndr/libndr.h | 3 | ||||
-rw-r--r-- | source/librpc/ndr/ndr_basic.c | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/source/librpc/ndr/libndr.h b/source/librpc/ndr/libndr.h index 7df3650e4af..ca660786143 100644 --- a/source/librpc/ndr/libndr.h +++ b/source/librpc/ndr/libndr.h @@ -166,7 +166,8 @@ enum ndr_err_code { NDR_ERR_BUFSIZE, NDR_ERR_ALLOC, NDR_ERR_RANGE, - NDR_ERR_TOKEN + NDR_ERR_TOKEN, + NDR_ERR_IPV4ADDRESS }; enum ndr_compression_alg { diff --git a/source/librpc/ndr/ndr_basic.c b/source/librpc/ndr/ndr_basic.c index d76fa45ec38..f22e7989bfd 100644 --- a/source/librpc/ndr/ndr_basic.c +++ b/source/librpc/ndr/ndr_basic.c @@ -570,7 +570,11 @@ NTSTATUS ndr_pull_ipv4address(struct ndr_pull *ndr, int ndr_flags, const char ** NTSTATUS ndr_push_ipv4address(struct ndr_push *ndr, int ndr_flags, const char *address) { uint32_t addr; - if (!is_ipaddress(address)) return NT_STATUS_INVALID_PARAMETER_MIX; + if (!is_ipaddress(address)) { + return ndr_push_error(ndr, NDR_ERR_IPV4ADDRESS, + "Invalid IPv4 address: '%s'", + address); + } addr = inet_addr(address); NDR_CHECK(ndr_push_uint32(ndr, ndr_flags, htonl(addr))); return NT_STATUS_OK; |