From b69a2c0d6bc0643b98ace2489cbcc2d40b99baeb Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 7 Feb 2005 12:10:38 +0000 Subject: r5261: translate nbt rcode errors to NTSTATUS codes (This used to be commit 554d1b70e73faeb1f5ecf88f31c5810d86d76200) --- source4/libcli/nbt/nbtsocket.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'source4/libcli/nbt/nbtsocket.c') diff --git a/source4/libcli/nbt/nbtsocket.c b/source4/libcli/nbt/nbtsocket.c index f6566e8a6e..38b356338c 100644 --- a/source4/libcli/nbt/nbtsocket.c +++ b/source4/libcli/nbt/nbtsocket.c @@ -484,3 +484,29 @@ NTSTATUS nbt_set_incoming_handler(struct nbt_name_socket *nbtsock, return NT_STATUS_OK; } + +/* + turn a NBT rcode into a NTSTATUS +*/ +NTSTATUS nbt_rcode_to_ntstatus(uint8_t rcode) +{ + int i; + struct { + enum nbt_rcode rcode; + NTSTATUS status; + } map[] = { + { NBT_RCODE_FMT, NT_STATUS_INVALID_PARAMETER }, + { NBT_RCODE_SVR, NT_STATUS_SERVER_DISABLED }, + { NBT_RCODE_NAM, NT_STATUS_OBJECT_NAME_NOT_FOUND }, + { NBT_RCODE_IMP, NT_STATUS_NOT_SUPPORTED }, + { NBT_RCODE_RFS, NT_STATUS_ACCESS_DENIED }, + { NBT_RCODE_ACT, NT_STATUS_ADDRESS_ALREADY_EXISTS }, + { NBT_RCODE_ACT, NT_STATUS_CONFLICTING_ADDRESSES } + }; + for (i=0;i