ntstatus.h
来自「samba最新软件」· C头文件 代码 · 共 676 行 · 第 1/3 页
H
676 行
/* Unix SMB/CIFS implementation. NT error code constants Copyright (C) Andrew Tridgell 1992-2000 Copyright (C) John H Terpstra 1996-2000 Copyright (C) Luke Kenneth Casson Leighton 1996-2000 Copyright (C) Paul Ashton 1998-2000 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.*/#ifndef _NTSTATUS_H#define _NTSTATUS_H/* the following rather strange looking definitions of NTSTATUS are there in order to catch common coding errors where different error types are mixed up. This is especially important as we slowly convert Samba from using bool for internal functions */#if defined(HAVE_IMMEDIATE_STRUCTURES)typedef struct {uint32_t v;} NTSTATUS;#define NT_STATUS(x) ((NTSTATUS) { x })#define NT_STATUS_V(x) ((x).v)#elsetypedef uint32_t NTSTATUS;#define NT_STATUS(x) (x)#define NT_STATUS_V(x) (x)#endif/* Win32 Status codes. */#define STATUS_BUFFER_OVERFLOW NT_STATUS(0x80000005)#define STATUS_NO_MORE_FILES NT_STATUS(0x80000006)#define STATUS_NO_MORE_EAS NT_STATUS(0x80000012) #define STATUS_INVALID_EA_NAME NT_STATUS(0x80000013)#define STATUS_EA_LIST_INCONSISTENT NT_STATUS(0x80000014)#define STATUS_INVALID_EA_FLAG NT_STATUS(0x80000015)#define NT_STATUS_NO_MORE_ENTRIES NT_STATUS(0x8000001a)#define STATUS_PENDING NT_STATUS(0x0103)#define STATUS_MORE_ENTRIES NT_STATUS(0x0105)#define STATUS_SOME_UNMAPPED NT_STATUS(0x0107)#define STATUS_NOTIFY_CLEANUP NT_STATUS(0x010b)#define STATUS_NOTIFY_ENUM_DIR NT_STATUS(0x010c)#define ERROR_INVALID_PARAMETER NT_STATUS(0x0057)#define ERROR_INSUFFICIENT_BUFFER NT_STATUS(0x007a)#define ERROR_INVALID_DATATYPE NT_STATUS(0x070c)/* Win32 Error codes extracted using a loop in smbclient then printing a netmon sniff to a file. *//* -------------- / \ / REST \ / IN \ / PEACE \ / \ | NT_STATUS_NOPROBLEMO | | | | | | 4 September | | | | 2001 | *| * * * | * _________)/\\_//(\/(/\)/\//\/\///|_)_______*/#define NT_STATUS_OK NT_STATUS(0x0000)#define NT_STATUS_UNSUCCESSFUL NT_STATUS(0xC0000000 | 0x0001)#define NT_STATUS_NOT_IMPLEMENTED NT_STATUS(0xC0000000 | 0x0002)#define NT_STATUS_INVALID_INFO_CLASS NT_STATUS(0xC0000000 | 0x0003)#define NT_STATUS_INFO_LENGTH_MISMATCH NT_STATUS(0xC0000000 | 0x0004)#define NT_STATUS_ACCESS_VIOLATION NT_STATUS(0xC0000000 | 0x0005)#define NT_STATUS_IN_PAGE_ERROR NT_STATUS(0xC0000000 | 0x0006)#define NT_STATUS_PAGEFILE_QUOTA NT_STATUS(0xC0000000 | 0x0007)#define NT_STATUS_INVALID_HANDLE NT_STATUS(0xC0000000 | 0x0008)#define NT_STATUS_BAD_INITIAL_STACK NT_STATUS(0xC0000000 | 0x0009)#define NT_STATUS_BAD_INITIAL_PC NT_STATUS(0xC0000000 | 0x000a)#define NT_STATUS_INVALID_CID NT_STATUS(0xC0000000 | 0x000b)#define NT_STATUS_TIMER_NOT_CANCELED NT_STATUS(0xC0000000 | 0x000c)#define NT_STATUS_INVALID_PARAMETER NT_STATUS(0xC0000000 | 0x000d)#define NT_STATUS_NO_SUCH_DEVICE NT_STATUS(0xC0000000 | 0x000e)#define NT_STATUS_NO_SUCH_FILE NT_STATUS(0xC0000000 | 0x000f)#define NT_STATUS_INVALID_DEVICE_REQUEST NT_STATUS(0xC0000000 | 0x0010)#define NT_STATUS_END_OF_FILE NT_STATUS(0xC0000000 | 0x0011)#define NT_STATUS_WRONG_VOLUME NT_STATUS(0xC0000000 | 0x0012)#define NT_STATUS_NO_MEDIA_IN_DEVICE NT_STATUS(0xC0000000 | 0x0013)#define NT_STATUS_UNRECOGNIZED_MEDIA NT_STATUS(0xC0000000 | 0x0014)#define NT_STATUS_NONEXISTENT_SECTOR NT_STATUS(0xC0000000 | 0x0015)#define NT_STATUS_MORE_PROCESSING_REQUIRED NT_STATUS(0xC0000000 | 0x0016)#if 0/* this demonstrates a little trick when tracking down error codes */#define NT_STATUS_NO_MEMORY (printf("no memory at %s\n", __location__), NT_STATUS(0xC0000000 | 0x0017))#else#define NT_STATUS_NO_MEMORY NT_STATUS(0xC0000000 | 0x0017)#endif#define NT_STATUS_CONFLICTING_ADDRESSES NT_STATUS(0xC0000000 | 0x0018)#define NT_STATUS_NOT_MAPPED_VIEW NT_STATUS(0xC0000000 | 0x0019)#define NT_STATUS_UNABLE_TO_FREE_VM NT_STATUS(0xC0000000 | 0x001a)#define NT_STATUS_UNABLE_TO_DELETE_SECTION NT_STATUS(0xC0000000 | 0x001b)#define NT_STATUS_INVALID_SYSTEM_SERVICE NT_STATUS(0xC0000000 | 0x001c)#define NT_STATUS_ILLEGAL_INSTRUCTION NT_STATUS(0xC0000000 | 0x001d)#define NT_STATUS_INVALID_LOCK_SEQUENCE NT_STATUS(0xC0000000 | 0x001e)#define NT_STATUS_INVALID_VIEW_SIZE NT_STATUS(0xC0000000 | 0x001f)#define NT_STATUS_INVALID_FILE_FOR_SECTION NT_STATUS(0xC0000000 | 0x0020)#define NT_STATUS_ALREADY_COMMITTED NT_STATUS(0xC0000000 | 0x0021)#if 0/* this demonstrates a little trick when tracking down error codes */#define NT_STATUS_ACCESS_DENIED (printf("access denied at %s\n", __location__), NT_STATUS(0xC0000000 | 0x0022))#else#define NT_STATUS_ACCESS_DENIED NT_STATUS(0xC0000000 | 0x0022)#endif#define NT_STATUS_BUFFER_TOO_SMALL NT_STATUS(0xC0000000 | 0x0023)#define NT_STATUS_OBJECT_TYPE_MISMATCH NT_STATUS(0xC0000000 | 0x0024)#define NT_STATUS_NONCONTINUABLE_EXCEPTION NT_STATUS(0xC0000000 | 0x0025)#define NT_STATUS_INVALID_DISPOSITION NT_STATUS(0xC0000000 | 0x0026)#define NT_STATUS_UNWIND NT_STATUS(0xC0000000 | 0x0027)#define NT_STATUS_BAD_STACK NT_STATUS(0xC0000000 | 0x0028)#define NT_STATUS_INVALID_UNWIND_TARGET NT_STATUS(0xC0000000 | 0x0029)#define NT_STATUS_NOT_LOCKED NT_STATUS(0xC0000000 | 0x002a)#define NT_STATUS_PARITY_ERROR NT_STATUS(0xC0000000 | 0x002b)#define NT_STATUS_UNABLE_TO_DECOMMIT_VM NT_STATUS(0xC0000000 | 0x002c)#define NT_STATUS_NOT_COMMITTED NT_STATUS(0xC0000000 | 0x002d)#define NT_STATUS_INVALID_PORT_ATTRIBUTES NT_STATUS(0xC0000000 | 0x002e)#define NT_STATUS_PORT_MESSAGE_TOO_LONG NT_STATUS(0xC0000000 | 0x002f)#define NT_STATUS_INVALID_PARAMETER_MIX NT_STATUS(0xC0000000 | 0x0030)#define NT_STATUS_INVALID_QUOTA_LOWER NT_STATUS(0xC0000000 | 0x0031)#define NT_STATUS_DISK_CORRUPT_ERROR NT_STATUS(0xC0000000 | 0x0032)#define NT_STATUS_OBJECT_NAME_INVALID NT_STATUS(0xC0000000 | 0x0033)#define NT_STATUS_OBJECT_NAME_NOT_FOUND NT_STATUS(0xC0000000 | 0x0034)#define NT_STATUS_OBJECT_NAME_COLLISION NT_STATUS(0xC0000000 | 0x0035)#define NT_STATUS_HANDLE_NOT_WAITABLE NT_STATUS(0xC0000000 | 0x0036)#define NT_STATUS_PORT_DISCONNECTED NT_STATUS(0xC0000000 | 0x0037)#define NT_STATUS_DEVICE_ALREADY_ATTACHED NT_STATUS(0xC0000000 | 0x0038)#define NT_STATUS_OBJECT_PATH_INVALID NT_STATUS(0xC0000000 | 0x0039)#define NT_STATUS_OBJECT_PATH_NOT_FOUND NT_STATUS(0xC0000000 | 0x003a)#define NT_STATUS_OBJECT_PATH_SYNTAX_BAD NT_STATUS(0xC0000000 | 0x003b)#define NT_STATUS_DATA_OVERRUN NT_STATUS(0xC0000000 | 0x003c)#define NT_STATUS_DATA_LATE_ERROR NT_STATUS(0xC0000000 | 0x003d)#define NT_STATUS_DATA_ERROR NT_STATUS(0xC0000000 | 0x003e)#define NT_STATUS_CRC_ERROR NT_STATUS(0xC0000000 | 0x003f)#define NT_STATUS_SECTION_TOO_BIG NT_STATUS(0xC0000000 | 0x0040)#define NT_STATUS_PORT_CONNECTION_REFUSED NT_STATUS(0xC0000000 | 0x0041)#define NT_STATUS_INVALID_PORT_HANDLE NT_STATUS(0xC0000000 | 0x0042)#define NT_STATUS_SHARING_VIOLATION NT_STATUS(0xC0000000 | 0x0043)#define NT_STATUS_QUOTA_EXCEEDED NT_STATUS(0xC0000000 | 0x0044)#define NT_STATUS_INVALID_PAGE_PROTECTION NT_STATUS(0xC0000000 | 0x0045)#define NT_STATUS_MUTANT_NOT_OWNED NT_STATUS(0xC0000000 | 0x0046)#define NT_STATUS_SEMAPHORE_LIMIT_EXCEEDED NT_STATUS(0xC0000000 | 0x0047)#define NT_STATUS_PORT_ALREADY_SET NT_STATUS(0xC0000000 | 0x0048)#define NT_STATUS_SECTION_NOT_IMAGE NT_STATUS(0xC0000000 | 0x0049)#define NT_STATUS_SUSPEND_COUNT_EXCEEDED NT_STATUS(0xC0000000 | 0x004a)#define NT_STATUS_THREAD_IS_TERMINATING NT_STATUS(0xC0000000 | 0x004b)#define NT_STATUS_BAD_WORKING_SET_LIMIT NT_STATUS(0xC0000000 | 0x004c)#define NT_STATUS_INCOMPATIBLE_FILE_MAP NT_STATUS(0xC0000000 | 0x004d)#define NT_STATUS_SECTION_PROTECTION NT_STATUS(0xC0000000 | 0x004e)#define NT_STATUS_EAS_NOT_SUPPORTED NT_STATUS(0xC0000000 | 0x004f)#define NT_STATUS_EA_TOO_LARGE NT_STATUS(0xC0000000 | 0x0050)#define NT_STATUS_NONEXISTENT_EA_ENTRY NT_STATUS(0xC0000000 | 0x0051)#define NT_STATUS_NO_EAS_ON_FILE NT_STATUS(0xC0000000 | 0x0052)#define NT_STATUS_EA_CORRUPT_ERROR NT_STATUS(0xC0000000 | 0x0053)#define NT_STATUS_FILE_LOCK_CONFLICT NT_STATUS(0xC0000000 | 0x0054)#define NT_STATUS_LOCK_NOT_GRANTED NT_STATUS(0xC0000000 | 0x0055)#define NT_STATUS_DELETE_PENDING NT_STATUS(0xC0000000 | 0x0056)#define NT_STATUS_CTL_FILE_NOT_SUPPORTED NT_STATUS(0xC0000000 | 0x0057)#define NT_STATUS_UNKNOWN_REVISION NT_STATUS(0xC0000000 | 0x0058)#define NT_STATUS_REVISION_MISMATCH NT_STATUS(0xC0000000 | 0x0059)#define NT_STATUS_INVALID_OWNER NT_STATUS(0xC0000000 | 0x005a)#define NT_STATUS_INVALID_PRIMARY_GROUP NT_STATUS(0xC0000000 | 0x005b)#define NT_STATUS_NO_IMPERSONATION_TOKEN NT_STATUS(0xC0000000 | 0x005c)#define NT_STATUS_CANT_DISABLE_MANDATORY NT_STATUS(0xC0000000 | 0x005d)#define NT_STATUS_NO_LOGON_SERVERS NT_STATUS(0xC0000000 | 0x005e)#define NT_STATUS_NO_SUCH_LOGON_SESSION NT_STATUS(0xC0000000 | 0x005f)#define NT_STATUS_NO_SUCH_PRIVILEGE NT_STATUS(0xC0000000 | 0x0060)#define NT_STATUS_PRIVILEGE_NOT_HELD NT_STATUS(0xC0000000 | 0x0061)#define NT_STATUS_INVALID_ACCOUNT_NAME NT_STATUS(0xC0000000 | 0x0062)#define NT_STATUS_USER_EXISTS NT_STATUS(0xC0000000 | 0x0063)#define NT_STATUS_NO_SUCH_USER NT_STATUS(0xC0000000 | 0x0064)#define NT_STATUS_GROUP_EXISTS NT_STATUS(0xC0000000 | 0x0065)#define NT_STATUS_NO_SUCH_GROUP NT_STATUS(0xC0000000 | 0x0066)#define NT_STATUS_MEMBER_IN_GROUP NT_STATUS(0xC0000000 | 0x0067)#define NT_STATUS_MEMBER_NOT_IN_GROUP NT_STATUS(0xC0000000 | 0x0068)#define NT_STATUS_LAST_ADMIN NT_STATUS(0xC0000000 | 0x0069)#define NT_STATUS_WRONG_PASSWORD NT_STATUS(0xC0000000 | 0x006a)#define NT_STATUS_ILL_FORMED_PASSWORD NT_STATUS(0xC0000000 | 0x006b)#define NT_STATUS_PASSWORD_RESTRICTION NT_STATUS(0xC0000000 | 0x006c)#define NT_STATUS_LOGON_FAILURE NT_STATUS(0xC0000000 | 0x006d)#define NT_STATUS_ACCOUNT_RESTRICTION NT_STATUS(0xC0000000 | 0x006e)#define NT_STATUS_INVALID_LOGON_HOURS NT_STATUS(0xC0000000 | 0x006f)#define NT_STATUS_INVALID_WORKSTATION NT_STATUS(0xC0000000 | 0x0070)#define NT_STATUS_PASSWORD_EXPIRED NT_STATUS(0xC0000000 | 0x0071)#define NT_STATUS_ACCOUNT_DISABLED NT_STATUS(0xC0000000 | 0x0072)#define NT_STATUS_NONE_MAPPED NT_STATUS(0xC0000000 | 0x0073)#define NT_STATUS_TOO_MANY_LUIDS_REQUESTED NT_STATUS(0xC0000000 | 0x0074)#define NT_STATUS_LUIDS_EXHAUSTED NT_STATUS(0xC0000000 | 0x0075)#define NT_STATUS_INVALID_SUB_AUTHORITY NT_STATUS(0xC0000000 | 0x0076)#define NT_STATUS_INVALID_ACL NT_STATUS(0xC0000000 | 0x0077)#define NT_STATUS_INVALID_SID NT_STATUS(0xC0000000 | 0x0078)#define NT_STATUS_INVALID_SECURITY_DESCR NT_STATUS(0xC0000000 | 0x0079)#define NT_STATUS_PROCEDURE_NOT_FOUND NT_STATUS(0xC0000000 | 0x007a)#define NT_STATUS_INVALID_IMAGE_FORMAT NT_STATUS(0xC0000000 | 0x007b)#define NT_STATUS_NO_TOKEN NT_STATUS(0xC0000000 | 0x007c)#define NT_STATUS_BAD_INHERITANCE_ACL NT_STATUS(0xC0000000 | 0x007d)#define NT_STATUS_RANGE_NOT_LOCKED NT_STATUS(0xC0000000 | 0x007e)#define NT_STATUS_DISK_FULL NT_STATUS(0xC0000000 | 0x007f)#define NT_STATUS_SERVER_DISABLED NT_STATUS(0xC0000000 | 0x0080)#define NT_STATUS_SERVER_NOT_DISABLED NT_STATUS(0xC0000000 | 0x0081)#define NT_STATUS_TOO_MANY_GUIDS_REQUESTED NT_STATUS(0xC0000000 | 0x0082)#define NT_STATUS_GUIDS_EXHAUSTED NT_STATUS(0xC0000000 | 0x0083)#define NT_STATUS_INVALID_ID_AUTHORITY NT_STATUS(0xC0000000 | 0x0084)#define NT_STATUS_AGENTS_EXHAUSTED NT_STATUS(0xC0000000 | 0x0085)#define NT_STATUS_INVALID_VOLUME_LABEL NT_STATUS(0xC0000000 | 0x0086)#define NT_STATUS_SECTION_NOT_EXTENDED NT_STATUS(0xC0000000 | 0x0087)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?