/*
 *  lmerrlog.h  LAN Manager error log
 *
 * =========================================================================
 *
 *                          Open Watcom Project
 *
 * Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
 *
 *    This file is automatically generated. Do not edit directly.
 *
 * =========================================================================
 */

#ifndef _LMERRLOG_
#define _LMERRLOG_

#ifndef _ENABLE_AUTODEPEND
 #pragma read_only_file;
#endif

#ifdef __cplusplus
extern "C" {
#endif

#ifndef _LMHLOGDEFINED_
#define _LMHLOGDEFINED_

/* Log flags */
#define LOGFLAGS_FORWARD    0x00000000L
#define LOGFLAGS_BACKWARD   0x00000001L
#define LOGFLAGS_SEEK       0x00000002L

/* Error log handle */
typedef struct _HLOG {
    DWORD   time;
    DWORD   last_flags;
    DWORD   offset;
    DWORD   rec_offset;
} HLOG;
typedef HLOG    *PHLOG;
typedef HLOG    *LPHLOG;

#endif /* _LMHLOGDEFINED_ */

/* Error log error codes */
#define ERRLOG_BASE                                 3100L
#define NELOG_Internal_Error                        (ERRLOG_BASE + 0)
#define NELOG_Resource_Shortage                     (ERRLOG_BASE + 1)
#define NELOG_Unable_To_Lock_Segment                (ERRLOG_BASE + 2)
#define NELOG_Unable_To_Unlock_Segment              (ERRLOG_BASE + 3)
#define NELOG_Uninstall_Service                     (ERRLOG_BASE + 4)
#define NELOG_Init_Exec_Fail                        (ERRLOG_BASE + 5)
#define NELOG_Ncb_Error                             (ERRLOG_BASE + 6)
#define NELOG_Net_Not_Started                       (ERRLOG_BASE + 7)
#define NELOG_Ioctl_Error                           (ERRLOG_BASE + 8)
#define NELOG_System_Semaphore                      (ERRLOG_BASE + 9)
#define NELOG_Init_OpenCreate_Err                   (ERRLOG_BASE + 10)
#define NELOG_NetBios                               (ERRLOG_BASE + 11)
#define NELOG_SMB_Illegal                           (ERRLOG_BASE + 12)
#define NELOG_Service_Fail                          (ERRLOG_BASE + 13)
#define NELOG_Entries_Lost                          (ERRLOG_BASE + 14)
#define NELOG_Init_Seg_Overflow                     (ERRLOG_BASE + 20)
#define NELOG_Srv_No_Mem_Grow                       (ERRLOG_BASE + 21)
#define NELOG_Access_File_Bad                       (ERRLOG_BASE + 22)
#define NELOG_Srvnet_Not_Started                    (ERRLOG_BASE + 23)
#define NELOG_Init_Chardev_Err                      (ERRLOG_BASE + 24)
#define NELOG_Remote_API                            (ERRLOG_BASE + 25)
#define NELOG_Ncb_TooManyErr                        (ERRLOG_BASE + 26)
#define NELOG_Mailslot_err                          (ERRLOG_BASE + 27)
#define NELOG_ReleaseMem_Alert                      (ERRLOG_BASE + 28)
#define NELOG_AT_cannot_write                       (ERRLOG_BASE + 29)
#define NELOG_Cant_Make_Msg_File                    (ERRLOG_BASE + 30)
#define NELOG_Exec_Netservr_NoMem                   (ERRLOG_BASE + 31)
#define NELOG_Server_Lock_Failure                   (ERRLOG_BASE + 32)
#define NELOG_Msg_Shutdown                          (ERRLOG_BASE + 40)
#define NELOG_Msg_Sem_Shutdown                      (ERRLOG_BASE + 41)
#define NELOG_Msg_Log_Err                           (ERRLOG_BASE + 50)
#define NELOG_VIO_POPUP_ERR                         (ERRLOG_BASE + 51)
#define NELOG_Msg_Unexpected_SMB_Type               (ERRLOG_BASE + 52)
#define NELOG_Wksta_Infoseg                         (ERRLOG_BASE + 60)
#define NELOG_Wksta_Compname                        (ERRLOG_BASE + 61)
#define NELOG_Wksta_BiosThreadFailure               (ERRLOG_BASE + 62)
#define NELOG_Wksta_IniSeg                          (ERRLOG_BASE + 63)
#define NELOG_Wksta_HostTab_Full                    (ERRLOG_BASE + 64)
#define NELOG_Wksta_Bad_Mailslot_SMB                (ERRLOG_BASE + 65)
#define NELOG_Wksta_UASInit                         (ERRLOG_BASE + 66)
#define NELOG_Wksta_SSIRelogon                      (ERRLOG_BASE + 67)
#define NELOG_Build_Name                            (ERRLOG_BASE + 70)
#define NELOG_Name_Expansion                        (ERRLOG_BASE + 71)
#define NELOG_Message_Send                          (ERRLOG_BASE + 72)
#define NELOG_Mail_Slt_Err                          (ERRLOG_BASE + 73)
#define NELOG_AT_cannot_read                        (ERRLOG_BASE + 74)
#define NELOG_AT_sched_err                          (ERRLOG_BASE + 75)
#define NELOG_AT_schedule_file_created              (ERRLOG_BASE + 76)
#define NELOG_Srvnet_NB_Open                        (ERRLOG_BASE + 77)
#define NELOG_AT_Exec_Err                           (ERRLOG_BASE + 78)
#define NELOG_Lazy_Write_Err                        (ERRLOG_BASE + 80)
#define NELOG_HotFix                                (ERRLOG_BASE + 81)
#define NELOG_HardErr_From_Server                   (ERRLOG_BASE + 82)
#define NELOG_LocalSecFail1                         (ERRLOG_BASE + 83)
#define NELOG_LocalSecFail2                         (ERRLOG_BASE + 84)
#define NELOG_LocalSecFail3                         (ERRLOG_BASE + 85)
#define NELOG_LocalSecGeneralFail                   (ERRLOG_BASE + 86)
#define NELOG_NetWkSta_Internal_Error               (ERRLOG_BASE + 90)
#define NELOG_NetWkSta_No_Resource                  (ERRLOG_BASE + 91)
#define NELOG_NetWkSta_SMB_Err                      (ERRLOG_BASE + 92)
#define NELOG_NetWkSta_VC_Err                       (ERRLOG_BASE + 93)
#define NELOG_NetWkSta_Stuck_VC_Err                 (ERRLOG_BASE + 94)
#define NELOG_NetWkSta_NCB_Err                      (ERRLOG_BASE + 95)
#define NELOG_NetWkSta_Write_Behind_Err             (ERRLOG_BASE + 96)
#define NELOG_NetWkSta_Reset_Err                    (ERRLOG_BASE + 97)
#define NELOG_NetWkSta_Too_Many                     (ERRLOG_BASE + 98)
#define NELOG_Srv_Thread_Failure                    (ERRLOG_BASE + 104)
#define NELOG_Srv_Close_Failure                     (ERRLOG_BASE + 105)
#define NELOG_ReplUserCurDir                        (ERRLOG_BASE + 106)
#define NELOG_ReplCannotMasterDir                   (ERRLOG_BASE + 107)
#define NELOG_ReplUpdateError                       (ERRLOG_BASE + 108)
#define NELOG_ReplLostMaster                        (ERRLOG_BASE + 109)
#define NELOG_NetlogonAuthDCFail                    (ERRLOG_BASE + 110)
#define NELOG_ReplLogonFailed                       (ERRLOG_BASE + 111)
#define NELOG_ReplNetErr                            (ERRLOG_BASE + 112)
#define NELOG_ReplMaxFiles                          (ERRLOG_BASE + 113)
#define NELOG_ReplMaxTreeDepth                      (ERRLOG_BASE + 114)
#define NELOG_ReplBadMsg                            (ERRLOG_BASE + 115)
#define NELOG_ReplSysErr                            (ERRLOG_BASE + 116)
#define NELOG_ReplUserLoged                         (ERRLOG_BASE + 117)
#define NELOG_ReplBadImport                         (ERRLOG_BASE + 118)
#define NELOG_ReplBadExport                         (ERRLOG_BASE + 119)
#define NELOG_ReplSignalFileErr                     (ERRLOG_BASE + 120)
#define NELOG_DiskFT                                (ERRLOG_BASE + 121)
#define NELOG_ReplAccessDenied                      (ERRLOG_BASE + 122)
#define NELOG_NetlogonFailedPrimary                 (ERRLOG_BASE + 123)
#define NELOG_NetlogonPasswdSetFailed               (ERRLOG_BASE + 124)
#define NELOG_NetlogonTrackingError                 (ERRLOG_BASE + 125)
#define NELOG_NetlogonSyncError                     (ERRLOG_BASE + 126)
#define NELOG_NetlogonRequireSignOrSealError        (ERRLOG_BASE + 127)
#define NELOG_UPS_PowerOut                          (ERRLOG_BASE + 130)
#define NELOG_UPS_Shutdown                          (ERRLOG_BASE + 131)
#define NELOG_UPS_CmdFileError                      (ERRLOG_BASE + 132)
#define NELOG_UPS_CannotOpenDriver                  (ERRLOG_BASE + 133)
#define NELOG_UPS_PowerBack                         (ERRLOG_BASE + 134)
#define NELOG_UPS_CmdFileConfig                     (ERRLOG_BASE + 135)
#define NELOG_UPS_CmdFileExec                       (ERRLOG_BASE + 136)
#define NELOG_Missing_Parameter                     (ERRLOG_BASE + 150)
#define NELOG_Invalid_Config_Line                   (ERRLOG_BASE + 151)
#define NELOG_Invalid_Config_File                   (ERRLOG_BASE + 152)
#define NELOG_File_Changed                          (ERRLOG_BASE + 153)
#define NELOG_Files_Dont_Fit                        (ERRLOG_BASE + 154)
#define NELOG_Wrong_DLL_Version                     (ERRLOG_BASE + 155)
#define NELOG_Error_in_DLL                          (ERRLOG_BASE + 156)
#define NELOG_System_Error                          (ERRLOG_BASE + 157)
#define NELOG_FT_ErrLog_Too_Large                   (ERRLOG_BASE + 158)
#define NELOG_FT_Update_In_Progress                 (ERRLOG_BASE + 159)
#define NELOG_Joined_Domain                         (ERRLOG_BASE + 160)
#define NELOG_Joined_Workgroup                      (ERRLOG_BASE + 161)
#define NELOG_OEM_Code                              (ERRLOG_BASE + 199)
#define ERRLOG2_BASE                                5700L
#define NELOG_NetlogonSSIInitError                  (ERRLOG2_BASE + 0)
#define NELOG_NetlogonFailedToUpdateTrustList       (ERRLOG2_BASE + 1)
#define NELOG_NetlogonFailedToAddRpcInterface       (ERRLOG2_BASE + 2)
#define NELOG_NetlogonFailedToReadMailslot          (ERRLOG2_BASE + 3)
#define NELOG_NetlogonFailedToRegisterSC            (ERRLOG2_BASE + 4)
#define NELOG_NetlogonChangeLogCorrupt              (ERRLOG2_BASE + 5)
#define NELOG_NetlogonFailedToCreateShare           (ERRLOG2_BASE + 6)
#define NELOG_NetlogonDownLevelLogonFailed          (ERRLOG2_BASE + 7)
#define NELOG_NetlogonDownLevelLogoffFailed         (ERRLOG2_BASE + 8)
#define NELOG_NetlogonNTLogonFailed                 (ERRLOG2_BASE + 9)
#define NELOG_NetlogonNTLogoffFailed                (ERRLOG2_BASE + 10)
#define NELOG_NetlogonPartialSyncCallSuccess        (ERRLOG2_BASE + 11)
#define NELOG_NetlogonPartialSyncCallFailed         (ERRLOG2_BASE + 12)
#define NELOG_NetlogonFullSyncCallSuccess           (ERRLOG2_BASE + 13)
#define NELOG_NetlogonFullSyncCallFailed            (ERRLOG2_BASE + 14)
#define NELOG_NetlogonPartialSyncSuccess            (ERRLOG2_BASE + 15)
#define NELOG_NetlogonPartialSyncFailed             (ERRLOG2_BASE + 16)
#define NELOG_NetlogonFullSyncSuccess               (ERRLOG2_BASE + 17)
#define NELOG_NetlogonFullSyncFailed                (ERRLOG2_BASE + 18)
#define NELOG_NetlogonAuthNoDomainController        (ERRLOG2_BASE + 19)
#define NELOG_NetlogonAuthNoTrustLsaSecret          (ERRLOG2_BASE + 20)
#define NELOG_NetlogonAuthNoTrustSamAccount         (ERRLOG2_BASE + 21)
#define NELOG_NetlogonServerAuthFailed              (ERRLOG2_BASE + 22)
#define NELOG_NetlogonServerAuthNoTrustSamAccount   (ERRLOG2_BASE + 23)
#define NELOG_FailedToRegisterSc                    (ERRLOG2_BASE + 24)
#define NELOG_FailedToSetServiceStatus              (ERRLOG2_BASE + 25)
#define NELOG_FailedToGetComputerName               (ERRLOG2_BASE + 26)
#define NELOG_DriverNotLoaded                       (ERRLOG2_BASE + 27)
#define NELOG_NoTransportLoaded                     (ERRLOG2_BASE + 28)
#define NELOG_NetlogonFailedDomainDelta             (ERRLOG2_BASE + 29)
#define NELOG_NetlogonFailedGlobalGroupDelta        (ERRLOG2_BASE + 30)
#define NELOG_NetlogonFailedLocalGroupDelta         (ERRLOG2_BASE + 31)
#define NELOG_NetlogonFailedUserDelta               (ERRLOG2_BASE + 32)
#define NELOG_NetlogonFailedPolicyDelta             (ERRLOG2_BASE + 33)
#define NELOG_NetlogonFailedTrustedDomainDelta      (ERRLOG2_BASE + 34)
#define NELOG_NetlogonFailedAccountDelta            (ERRLOG2_BASE + 35)
#define NELOG_NetlogonFailedSecretData              (ERRLOG2_BASE + 36)
#define NELOG_NetlogonSystemError                   (ERRLOG2_BASE + 37)
#define NELOG_NetlogonDuplicateMachineAccounts      (ERRLOG2_BASE + 38)
#define NELOG_NetlogonTooManyGlobalGroups           (ERRLOG2_BASE + 39)
#define NELOG_NetlogonBrowserDriver                 (ERRLOG2_BASE + 40)
#define NELOG_NetlogonAddNameFailure                (ERRLOG2_BASE + 41)
#define NELOG_RplMessages                           (ERRLOG2_BASE + 42)
#define NELOG_RplXnsBoot                            (ERRLOG2_BASE + 43)
#define NELOG_RplSystem                             (ERRLOG2_BASE + 44)
#define NELOG_RplWkstaTimeout                       (ERRLOG2_BASE + 45)
#define NELOG_RplWkstaFileOpen                      (ERRLOG2_BASE + 46)
#define NELOG_RplWkstaFileRead                      (ERRLOG2_BASE + 47)
#define NELOG_RplWkstaMemory                        (ERRLOG2_BASE + 48)
#define NELOG_RplWkstaFileChecksum                  (ERRLOG2_BASE + 49)
#define NELOG_RplWkstaFileLineCount                 (ERRLOG2_BASE + 50)
#define NELOG_RplWkstaBbcFile                       (ERRLOG2_BASE + 51)
#define NELOG_RplWkstaFileSize                      (ERRLOG2_BASE + 52)
#define NELOG_RplWkstaInternal                      (ERRLOG2_BASE + 53)
#define NELOG_RplWkstaWrongVersion                  (ERRLOG2_BASE + 54)
#define NELOG_RplWkstaNetwork                       (ERRLOG2_BASE + 55)
#define NELOG_RplAdapterResource                    (ERRLOG2_BASE + 56)
#define NELOG_RplFileCopy                           (ERRLOG2_BASE + 57)
#define NELOG_RplFileDelete                         (ERRLOG2_BASE + 58)
#define NELOG_RplFilePerms                          (ERRLOG2_BASE + 59)
#define NELOG_RplCheckConfigs                       (ERRLOG2_BASE + 60)
#define NELOG_RplCreateProfiles                     (ERRLOG2_BASE + 61)
#define NELOG_RplRegistry                           (ERRLOG2_BASE + 62)
#define NELOG_RplReplaceRPLDISK                     (ERRLOG2_BASE + 63)
#define NELOG_RplCheckSecurity                      (ERRLOG2_BASE + 64)
#define NELOG_RplBackupDatabase                     (ERRLOG2_BASE + 65)
#define NELOG_RplInitDatabase                       (ERRLOG2_BASE + 66)
#define NELOG_RplRestoreDatabaseFailure             (ERRLOG2_BASE + 67)
#define NELOG_RplRestoreDatabaseSuccess             (ERRLOG2_BASE + 68)
#define NELOG_RplInitRestoredDatabase               (ERRLOG2_BASE + 69)
#define NELOG_NetlogonSessionTypeWrong              (ERRLOG2_BASE + 70)
#define NELOG_RplUpgradeDBTo40                      (ERRLOG2_BASE + 71)
#define NELOG_NetlogonLanmanBdcsNotAllowed          (ERRLOG2_BASE + 72)
#define NELOG_NetlogonNoDynamicDns                  (ERRLOG2_BASE + 73)
#define NELOG_NetlogonDynamicDnsRegisterFailure     (ERRLOG2_BASE + 74)
#define NELOG_NetlogonDynamicDnsDeregisterFailure   (ERRLOG2_BASE + 75)
#define NELOG_NetlogonFailedFileCreate              (ERRLOG2_BASE + 76)
#define NELOG_NetlogonGetSubnetToSite               (ERRLOG2_BASE + 77)
#define NELOG_NetlogonNoSiteForClient               (ERRLOG2_BASE + 78)
#define NELOG_NetlogonBadSiteName                   (ERRLOG2_BASE + 79)
#define NELOG_NetlogonBadSubnetName                 (ERRLOG2_BASE + 80)
#define NELOG_NetlogonDynamicDnsServerFailure       (ERRLOG2_BASE + 81)
#define NELOG_NetlogonDynamicDnsFailure             (ERRLOG2_BASE + 82)
#define NELOG_NetlogonRpcCallCancelled              (ERRLOG2_BASE + 83)
#define NELOG_NetlogonDcSiteCovered                 (ERRLOG2_BASE + 84)
#define NELOG_NetlogonDcSiteNotCovered              (ERRLOG2_BASE + 85)
#define NELOG_NetlogonGcSiteCovered                 (ERRLOG2_BASE + 86)
#define NELOG_NetlogonGcSiteNotCovered              (ERRLOG2_BASE + 87)
#define NELOG_NetlogonFailedSpnUpdate               (ERRLOG2_BASE + 88)
#define NELOG_NetlogonFailedDnsHostNameUpdate       (ERRLOG2_BASE + 89)
#define NELOG_NetlogonAuthNoUplevelDomainController (ERRLOG2_BASE + 90)
#define NELOG_NetlogonAuthDomainDowngraded          (ERRLOG2_BASE + 91)
#define NELOG_NetlogonNdncSiteCovered               (ERRLOG2_BASE + 92)
#define NELOG_NetlogonNdncSiteNotCovered            (ERRLOG2_BASE + 93)
#define NELOG_NetlogonDcOldSiteCovered              (ERRLOG2_BASE + 94)
#define NELOG_NetlogonDcSiteNotCoveredAuto          (ERRLOG2_BASE + 95)
#define NELOG_NetlogonGcOldSiteCovered              (ERRLOG2_BASE + 96)
#define NELOG_NetlogonGcSiteNotCoveredAuto          (ERRLOG2_BASE + 97)
#define NELOG_NetlogonNdncOldSiteCovered            (ERRLOG2_BASE + 98)
#define NELOG_NetlogonNdncSiteNotCoveredAuto        (ERRLOG2_BASE + 99)
#define NELOG_NetlogonSpnMultipleSamAccountNames    (ERRLOG2_BASE + 100)
#define NELOG_NetlogonSpnCrackNamesFailure          (ERRLOG2_BASE + 101)
#define NELOG_NetlogonNoAddressToSiteMapping        (ERRLOG2_BASE + 102)
#define NELOG_NetlogonInvalidGenericParameterValue  (ERRLOG2_BASE + 103)
#define NELOG_NetlogonInvalidDwordParameterValue    (ERRLOG2_BASE + 104)
#define NELOG_NetlogonServerAuthFailedNoAccount     (ERRLOG2_BASE + 105)
#define NELOG_NetlogonNoDynamicDnsManual            (ERRLOG2_BASE + 106)
#define NELOG_NetlogonNoSiteForClients              (ERRLOG2_BASE + 107)
#define NELOG_NetlogonDnsDeregAborted               (ERRLOG2_BASE + 108)
#define NELOG_NetlogonRpcPortRequestFailure         (ERRLOG2_BASE + 109)
#define NELOG_NetlogonPartialSiteMappingForClients  (ERRLOG2_BASE + 110)
#define NELOG_NetlogonRemoteDynamicDnsRegisterFailure   (ERRLOG2_BASE + 111)
#define NELOG_NetlogonRemoteDynamicDnsDeregisterFailure (ERRLOG2_BASE + 112)
#define NELOG_NetlogonRejectedRemoteDynamicDnsRegister  (ERRLOG2_BASE + 113)
#define NELOG_NetlogonRejectedRemoteDynamicDnsDeregister    (ERRLOG2_BASE + 114)
#define NELOG_NetlogonRemoteDynamicDnsUpdateRequestFailure  (ERRLOG2_BASE + 115)

/* Error log */
typedef struct _ERROR_LOG {
    DWORD   el_len;
    DWORD   el_reserved;
    DWORD   el_time;
    DWORD   el_error;
    LPWSTR  el_name;
    LPWSTR  el_text;
    LPBYTE  el_data;
    DWORD   el_data_size;
    DWORD   el_nstrings;
} ERROR_LOG;
typedef ERROR_LOG   *PERROR_LOG;
typedef ERROR_LOG   *LPERROR_LOG;

/* Functions in NETAPI32.DLL */
NET_API_STATUS NET_API_FUNCTION NetErrorLogClear( LPCWSTR, LPCWSTR, LPBYTE );
NET_API_STATUS NET_API_FUNCTION NetErrorLogRead( LPCWSTR, LPWSTR, LPHLOG, DWORD, LPDWORD, DWORD, DWORD, LPBYTE *, DWORD, LPDWORD, LPDWORD );
NET_API_STATUS NET_API_FUNCTION NetErrorLogWrite( LPBYTE, DWORD, LPCWSTR, LPBYTE, DWORD, LPBYTE, DWORD, LPBYTE );

#ifdef __cplusplus
} /* extern "C" */
#endif

#endif /* _LMERRLOG_ */
