mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-01-31 03:27:39 +00:00
f531acc8f9
- Invent openatemp() API - Invent O_UNLINK open flag - Introduce getenv_secure() API - Remove `git pull` from cosmocc - Fix utimes() when path is NULL - Fix mktemp() to never return NULL - Fix utimensat() UTIME_OMIT on XNU - Improve utimensat() code for RHEL5 - Turn `argv[0]` C:/ to /C/ on Windows - Introduce tmpnam() and tmpnam_r() APIs - Fix more const issues with internal APIs - Permit utimes() on WIN32 in O_RDONLY mode - Fix fdopendir() to check fd is a directory - Fix recent crash regression in landlock make - Fix futimens(AT_FDCWD, NULL) to return EBADF - Use workaround so `make -j` doesn't fork bomb - Rename dontdiscard to __wur (just like glibc) - Fix st_size for WIN32 symlinks containing UTF-8 - Introduce stdio ext APIs needed by GNU coreutils - Fix lstat() on WIN32 for symlinks to directories - Move some constants from normalize.inc to limits.h - Fix segv with memchr() and memcmp() overlapping page - Implement POSIX fflush() behavior for reader streams - Implement AT_SYMLINK_NOFOLLOW for utimensat() on WIN32 - Don't change read-only status of existing files on WIN32 - Correctly handle `0x[^[:xdigit:]]` case in strtol() functions
71 lines
5.1 KiB
C
71 lines
5.1 KiB
C
#ifndef COSMOPOLITAN_LIBC_NT_EVENTS_H_
|
|
#define COSMOPOLITAN_LIBC_NT_EVENTS_H_
|
|
#include "libc/nt/struct/msg.h"
|
|
#include "libc/nt/struct/point.h"
|
|
#include "libc/nt/struct/securityattributes.h"
|
|
/* ░░░░
|
|
▒▒▒░░░▒▒▒▒▒▒▒▓▓▓░
|
|
▒▒▒▒░░░▒▒▒▒▒▒▓▓▓▓▓▓░
|
|
▒▒▒▒░░░▒▒▒▒▒▒▒▓▓▓▓▓▓ ▒▓░
|
|
▒▒▒░░░░▒▒▒▒▒▒▓▓▓▓▓▓ ▓▓▓▓▓▓▒ ▒▒▒▓▓█
|
|
▒▒▒▒░░░▒▒▒▒▒▒▒▓▓▓▓▓▓ ▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓▓
|
|
░▒▒▒░░░░▒▒▒▒▒▒▓▓▓▓▓▓ █▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓█
|
|
▒▒▒▒░░░▒▒▒▒▒▒▒▓▓▓▓▓░ ▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓▓
|
|
▒▒▒▒░░░▒▒▒▒▒▒▒▓▓▓▓▓▓ ▒▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓▒
|
|
▒▒▒▒▓▓ ▓▒▒▓▓▓▓ ▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓█
|
|
▒▓ ▓▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓
|
|
░░░░░░░░░░░▒▒▒▒ ▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓█
|
|
▒▒░░░░░░░░░░▒▒▒▒▒▓▓▓ ▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓▓
|
|
░▒░░░░░░░░░░░▒▒▒▒▒▓▓ ▓░ ░▓███▓
|
|
▒▒░░░░░░░░░░▒▒▒▒▒▓▓░ ▒▓▓▓▒▒▒ ░▒▒▒▓ ████████████
|
|
▒▒░░░░░░░░░░░▒▒▒▒▒▓▓ ▒▓▓▓▓▒▒▒▒▒▒▒▒░░░▒▒▒▒▒░ ░███
|
|
▒░░░░░░░░░░░▒▒▒▒▒▓▓ ▓▓▓▓▒▒▒▒▒▒▒▒░░░░▒▒▒▒▓ ███
|
|
▒▒░░░░░░░░░░▒▒▒▒▒▒▓▓ ▒▓▓▓▒▒▒▒▒▒▒▒░░░░▒▒▒▒▒ ▓██
|
|
▒░░░░░░░░░░░▒▒▒▒▒▓▓ ▓▓▓▓▒▒▒▒▒▒▒▒░░░▒▒▒▒▒▓ ▓██
|
|
▒▒░░░▒▒▒░░░▒▒░▒▒▒▓▓▒ ▒▓▓▓▒▒▒▒▒▒▒▒░░░░▒▒▒▒▒ ███
|
|
░▒▓ ░▓▓▓▓▒▒▒▒▒▒▒▒░░░░▒▒▒▒▓ ▓██
|
|
╔────────────────────────────────────────────────────────────────▀▀▀─────────│─╗
|
|
│ cosmopolitan § new technology » events ─╬─│┼
|
|
╚────────────────────────────────────────────────────────────────────────────│*/
|
|
|
|
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
|
COSMOPOLITAN_C_START_
|
|
|
|
int32_t GetMessage(struct NtMsg *lpMsg, int64_t hWnd, uint32_t wMsgFilterMin,
|
|
uint32_t wMsgFilterMax);
|
|
int32_t TranslateMessage(const struct NtMsg *lpMsg);
|
|
intptr_t DispatchMessage(const struct NtMsg *lpMsg);
|
|
void PostQuitMessage(int nExitCode);
|
|
bool32 GetCursorPos(struct NtPoint *lpPoint);
|
|
int64_t SendMessage(int64_t hWnd, uint32_t Msg, uint64_t wParam,
|
|
int64_t lParam);
|
|
|
|
#define EVENTLOG_SUCCESS 0x00000000
|
|
#define EVENTLOG_ERROR_TYPE 0x00000001
|
|
#define EVENTLOG_WARNING_TYPE 0x00000002
|
|
#define EVENTLOG_INFORMATION_TYPE 0x00000004
|
|
#define EVENTLOG_AUDIT_SUCCESS 0x00000008
|
|
#define EVENTLOG_AUDIT_FAILURE 0x00000010
|
|
|
|
int32_t ReportEventA(int64_t handle, uint16_t wType, uint16_t wCategory,
|
|
uint32_t dwEventID, const char *lpUserId,
|
|
uint16_t wNumStrings, uint32_t dwDataSize,
|
|
const char **lpStrings, void **lpRawData);
|
|
int64_t RegisterEventSource(const char16_t *lpUNCServerName,
|
|
const char16_t *lpSourceName);
|
|
int32_t DeregisterEventSource(uint64_t handle);
|
|
|
|
int64_t CreateEvent(const struct NtSecurityAttributes *opt_lpEventAttributes,
|
|
bool32 bManualReset, bool32 bInitialState,
|
|
const char16_t *opt_lpName);
|
|
int64_t CreateEventEx(const struct NtSecurityAttributes *lpEventAttributes,
|
|
const char16_t *lpName, uint32_t dwFlags,
|
|
uint32_t dwDesiredAccess);
|
|
|
|
int32_t SetEvent(int64_t hEvent);
|
|
int32_t ResetEvent(int64_t hEvent);
|
|
int32_t PulseEvent(int64_t hEvent);
|
|
|
|
COSMOPOLITAN_C_END_
|
|
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
|
#endif /* COSMOPOLITAN_LIBC_NT_EVENTS_H_ */
|