/* Function 8 */ NTSTATUS ElfrRegisterEventSourceW( EVENTLOG_HANDLE_W UNCServerName, PRPC_UNICODE_STRING ModuleName, PRPC_UNICODE_STRING RegModuleName, DWORD MajorVersion, DWORD MinorVersion, IELF_HANDLE *LogHandle) { DPRINT1("ElfrRegisterEventSourceW()\n"); if ((MajorVersion != 1) || (MinorVersion != 1)) return STATUS_INVALID_PARAMETER; /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) return STATUS_INVALID_PARAMETER; DPRINT1("ModuleName: %S\n", ModuleName->Buffer); /*FIXME: UNCServerName must specify the server or empty for local */ /*FIXME: Must verify that caller has write access */ *LogHandle = ElfCreateEventLogHandle(ModuleName->Buffer, TRUE); return STATUS_SUCCESS; }
/* Function 14 */ NTSTATUS ElfrOpenELA( EVENTLOG_HANDLE_A UNCServerName, PRPC_STRING ModuleName, PRPC_STRING RegModuleName, DWORD MajorVersion, DWORD MinorVersion, IELF_HANDLE *LogHandle) { UNICODE_STRING ModuleNameW; if ((MajorVersion != 1) || (MinorVersion != 1)) return STATUS_INVALID_PARAMETER; /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) return STATUS_INVALID_PARAMETER; RtlAnsiStringToUnicodeString(&ModuleNameW, (PANSI_STRING)ModuleName, TRUE); /* FIXME: Must verify that caller has read access */ *LogHandle = ElfCreateEventLogHandle(ModuleNameW.Buffer, FALSE); RtlFreeUnicodeString(&ModuleNameW); if (*LogHandle == NULL) { return STATUS_INVALID_PARAMETER; } return STATUS_SUCCESS; }
/* Function 7 */ NTSTATUS ElfrOpenELW( EVENTLOG_HANDLE_W UNCServerName, PRPC_UNICODE_STRING ModuleName, PRPC_UNICODE_STRING RegModuleName, DWORD MajorVersion, DWORD MinorVersion, IELF_HANDLE *LogHandle) { if ((MajorVersion != 1) || (MinorVersion != 1)) return STATUS_INVALID_PARAMETER; /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) return STATUS_INVALID_PARAMETER; /*FIXME: UNCServerName must specify the server */ /*FIXME: Must verify that caller has read access */ *LogHandle = ElfCreateEventLogHandle(ModuleName->Buffer, FALSE); if (*LogHandle == NULL) { return STATUS_INVALID_PARAMETER; } return STATUS_SUCCESS; }
/* Function 14 */ NTSTATUS ElfrOpenELA( EVENTLOG_HANDLE_A UNCServerName, PRPC_STRING ModuleName, PRPC_STRING RegModuleName, ULONG MajorVersion, ULONG MinorVersion, PIELF_HANDLE LogHandle) { NTSTATUS Status; UNICODE_STRING ModuleNameW; if ((MajorVersion != 1) || (MinorVersion != 1)) return STATUS_INVALID_PARAMETER; /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) return STATUS_INVALID_PARAMETER; Status = RtlAnsiStringToUnicodeString(&ModuleNameW, (PANSI_STRING)ModuleName, TRUE); if (!NT_SUCCESS(Status)) return Status; /* FIXME: Must verify that caller has read access */ Status = ElfCreateEventLogHandle((PLOGHANDLE*)LogHandle, &ModuleNameW, FALSE); RtlFreeUnicodeString(&ModuleNameW); return Status; }
/* Function 8 */ NTSTATUS ElfrRegisterEventSourceW( EVENTLOG_HANDLE_W UNCServerName, PRPC_UNICODE_STRING ModuleName, PRPC_UNICODE_STRING RegModuleName, ULONG MajorVersion, ULONG MinorVersion, PIELF_HANDLE LogHandle) { DPRINT("ElfrRegisterEventSourceW()\n"); if ((MajorVersion != 1) || (MinorVersion != 1)) return STATUS_INVALID_PARAMETER; /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) return STATUS_INVALID_PARAMETER; DPRINT("ModuleName: %wZ\n", ModuleName); /* FIXME: UNCServerName must specify the server or empty for local */ /* FIXME: Must verify that caller has write access */ return ElfCreateEventLogHandle((PLOGHANDLE*)LogHandle, (PUNICODE_STRING)ModuleName, TRUE); }
/* Function 15 */ NTSTATUS ElfrRegisterEventSourceA( EVENTLOG_HANDLE_A UNCServerName, PRPC_STRING ModuleName, PRPC_STRING RegModuleName, ULONG MajorVersion, ULONG MinorVersion, PIELF_HANDLE LogHandle) { NTSTATUS Status; UNICODE_STRING ModuleNameW; Status = RtlAnsiStringToUnicodeString(&ModuleNameW, (PANSI_STRING)ModuleName, TRUE); if (!NT_SUCCESS(Status)) { DPRINT1("RtlAnsiStringToUnicodeString failed (Status 0x%08lx)\n", Status); return Status; } /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) { RtlFreeUnicodeString(&ModuleNameW); return STATUS_INVALID_PARAMETER; } if ((MajorVersion != 1) || (MinorVersion != 1)) { RtlFreeUnicodeString(&ModuleNameW); return STATUS_INVALID_PARAMETER; } /* FIXME: Must verify that caller has write access */ Status = ElfCreateEventLogHandle((PLOGHANDLE*)LogHandle, &ModuleNameW, TRUE); RtlFreeUnicodeString(&ModuleNameW); return Status; }
/* Function 15 */ NTSTATUS ElfrRegisterEventSourceA( EVENTLOG_HANDLE_A UNCServerName, PRPC_STRING ModuleName, PRPC_STRING RegModuleName, DWORD MajorVersion, DWORD MinorVersion, IELF_HANDLE *LogHandle) { UNICODE_STRING ModuleNameW = { 0, 0, NULL }; if (ModuleName && !RtlAnsiStringToUnicodeString(&ModuleNameW, (PANSI_STRING)ModuleName, TRUE)) { return STATUS_NO_MEMORY; } /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) { RtlFreeUnicodeString(&ModuleNameW); return STATUS_INVALID_PARAMETER; } if ((MajorVersion != 1) || (MinorVersion != 1)) { RtlFreeUnicodeString(&ModuleNameW); return STATUS_INVALID_PARAMETER; } /* FIXME: Must verify that caller has write access */ *LogHandle = ElfCreateEventLogHandle(ModuleNameW.Buffer, TRUE); RtlFreeUnicodeString(&ModuleNameW); return STATUS_SUCCESS; }
/* Function 7 */ NTSTATUS ElfrOpenELW( EVENTLOG_HANDLE_W UNCServerName, PRPC_UNICODE_STRING ModuleName, PRPC_UNICODE_STRING RegModuleName, ULONG MajorVersion, ULONG MinorVersion, PIELF_HANDLE LogHandle) { if ((MajorVersion != 1) || (MinorVersion != 1)) return STATUS_INVALID_PARAMETER; /* RegModuleName must be an empty string */ if (RegModuleName->Length > 0) return STATUS_INVALID_PARAMETER; /* FIXME: UNCServerName must specify the server */ /* FIXME: Must verify that caller has read access */ return ElfCreateEventLogHandle((PLOGHANDLE*)LogHandle, (PUNICODE_STRING)ModuleName, FALSE); }