20 #ifndef __USER_LIB_CPP__ 21 #define __USER_LIB_CPP__ 51 while ( cnt && (*(
unsigned char *)
buf != (
unsigned char)chr) ) {
52 buf = (
unsigned char *)
buf + 1;
56 return(cnt ? (
void *)
buf :
NULL);
64 char *
start = (
char *)
string;
68 while (--
string !=
start && *
string != (
char)ch) {;}
70 if (*
string == (
char)ch) {
82 while (*
string != (
char)ch && *
string !=
'\0' ) {
86 if (*
string == (
char)ch) {
87 return( (
char *)
string );
101 if (
attr == 0xffffffff) {
134 pszFormat = szFormat;
140 pszFormat, 0, 0, (
LPTSTR)&pszMessage, 0, &ArgList);
144 if (fOk && pszMessage) {
161 SC_HANDLE schService;
165 SC_HANDLE schSCManager;
204 char CdromUpperFilters[1024];
212 char *
token = &CdromUpperFilters[0];
347 DWORD dwDataSize = dwBufSize;
370 if (pszData[dwDataSize-1] !=
'\0')
371 pszData[dwDataSize-1] =
'\0';
433 DWORD dwDataSize = 4;
435 ULONG origValue = *pszData;
444 (*pszData) = origValue;
456 (*pszData) = origValue;
473 DWORD dwDataSize = 4;
557 tp.PrivilegeCount = 1;
562 tp.Privileges[0].Attributes = 0;
584 if (
NULL != fnIsWow64Process)
615 saPublic.
nLength =
sizeof(saPublic);
664 ODS(
" UDFGetDeviceName\r\n");
671 if (hDevice == ((
HANDLE)-1)) {
709 if (Setting[0] !=
'd') {
710 if(Setting[0] ==
'0' && Setting[1] ==
'x') {
711 sscanf(Setting+2,
"%x", OptVal);
713 sscanf(Setting,
"%d", OptVal);
735 if(
Path[2] !=
'\\') {
740 sprintf(Setting,
"%d\n", (*OptVal));
754 CHAR LocalPath[1024];
757 ODS(
" UDFGetOptUlongInherited\r\n");
793 if (hDevice == ((
HANDLE)-1)) {
809 if(
a >=
'a' &&
a <=
'z') {
812 if(
a >=
'A' &&
a <=
'Z') {
836 strcat(szLaunchPath,
"\\");
838 strcat(szLaunchPath,ParamStr);
843 proc_startup_info.
cb =
sizeof(proc_startup_info);
856 0,0, &proc_startup_info, &proc_info)) {
873 strcpy(ErrMes,
"Stop: Cannot launch ");
874 strcat(ErrMes,szLaunchPath);
899 #endif // __USER_LIB_CPP__
VOID WINAPI DECLSPEC_HOTPATCH Sleep(IN DWORD dwMilliseconds)
BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL bDaclPresent, PACL pDacl, BOOL bDaclDefaulted)
#define SC_MANAGER_CONNECT
char * strcat(char *DstString, const char *SrcString)
ULONG UDFPhSendIOCTL(IN ULONG IoControlCode, IN HANDLE DeviceObject, IN PVOID InputBuffer, IN ULONG InputBufferLength, OUT PVOID OutputBuffer, IN ULONG OutputBufferLength, IN BOOLEAN OverrideVerify, IN PVOID Dummy)
Send Device IO Controls to undelaying level via handle.
BOOL(WINAPI * LPFN_ISWOW64PROCESS)(HANDLE, PBOOL)
BOOL CheckCdrwFilter(BOOL ReInstall)
ACPI_SIZE strlen(const char *String)
JS_SERVICE_STATE ServiceInfo(LPCTSTR ServiceName)
Return service status by service name.
BOOL WINAPI GetExitCodeProcess(IN HANDLE hProcess, IN LPDWORD lpExitCode)
BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision)
#define FORMAT_MESSAGE_FROM_STRING
struct err_msg_item mkudf_err_msg[]
BOOL RegisterString(LPSTR pszKey, LPSTR pszValue, LPSTR pszData, BOOLEAN MultiSz, DWORD size)
#define IOCTL_CDRW_GET_DEVICE_NAME
ULONG UDFGetOptUlongInherited(PCHAR Drive, PCHAR OptName, PULONG OptVal, ULONG CheckDepth)
#define UDF_SERVICE_PARAM_PATH
TCHAR * MediaTypeStrings[]
static HANDLE ULONG_PTR dwData
DWORD WINAPI GetLastError(VOID)
BOOL GetOptUlong(PCHAR Path, PCHAR OptName, PULONG OptVal)
_In_ WDFREQUEST _In_ size_t _In_ size_t InputBufferLength
_Check_return_ _CRTIMP _CONST_RETURN char *__cdecl strrchr(_In_z_ const char *_Str, _In_ int _Ch)
#define NORMAL_PRIORITY_CLASS
int __cdecl Exist(PCHAR path)
#define LookupPrivilegeValue
BOOL GetRegUlong(LPSTR pszKey, LPSTR pszValue, PULONG pszData)
Errror while taking service status.
DWORD WINAPI GetVersion(VOID)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateEventW(IN LPSECURITY_ATTRIBUTES lpEventAttributes OPTIONAL, IN BOOL bManualReset, IN BOOL bInitialState, IN LPCWSTR lpName OPTIONAL)
#define REG_UPPER_FILTER_NAME
#define SECURITY_DESCRIPTOR_REVISION
_In_ WDFREQUEST _In_ size_t OutputBufferLength
#define sprintf(buf, format,...)
GLenum GLuint GLenum GLsizei const GLchar * buf
DWORD WINAPI WaitForSingleObject(IN HANDLE hHandle, IN DWORD dwMilliseconds)
_In_ PDEVICE_OBJECT DeviceObject
#define SE_PRIVILEGE_ENABLED
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_opt_ PCUNICODE_STRING DeviceName
BOOL SetOptUlong(PCHAR Path, PCHAR OptName, PULONG OptVal)
HANDLE WINAPI GetCurrentThread(VOID)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat token
#define UDF_OPTION_DEVSPEC
#define FORMAT_MESSAGE_ALLOCATE_BUFFER
BOOL WINAPI CloseServiceHandle(SC_HANDLE hSCObject)
char *__cdecl mystrchr(const char *string, int ch)
enum _JS_SERVICE_STATE JS_SERVICE_STATE
Service state constants.
HANDLE CreatePublicEvent(PWCHAR EventName)
#define SERVICE_QUERY_STATUS
_Check_return_ _CRTIMP int __cdecl sscanf(_In_z_ const char *_Src, _In_z_ _Scanf_format_string_ const char *_Format,...)
#define FORMAT_MESSAGE_FROM_SYSTEM
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
_In_ uint64_t _In_ uint64_t _In_ uint64_t _In_opt_ traverse_ptr * tp
BOOL RegDelString(LPSTR pszKey, LPSTR pszValue)
#define REG_OPTION_NON_VOLATILE
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
#define UDF_OPTION_GLOBAL
BOOL WINAPI QueryServiceStatus(SC_HANDLE hService, LPSERVICE_STATUS lpServiceStatus)
BOOL Privilege(LPTSTR pszPrivilege, BOOL bEnable)
TCHAR szTitle[MAX_LOADSTRING]
#define FILE_ATTRIBUTE_NORMAL
_In_ WDFREQUEST _In_ size_t _In_ size_t _In_ ULONG IoControlCode
#define memcpy(s1, s2, n)
#define GetCurrentProcess()
ULONG MyMessageBox(HINSTANCE hInst, HWND hWnd, LPCSTR pszFormat, LPCSTR pszTitle, UINT fuStyle,...)
DWORD WINAPI LauncherRoutine2(LPVOID lpParameter)
Start app with desired parameters.
static const WCHAR szDeviceName[]
#define GetFileAttributes
BOOL WINAPI AdjustTokenPrivileges(HANDLE TokenHandle, BOOL DisableAllPrivileges, PTOKEN_PRIVILEGES NewState, DWORD BufferLength, PTOKEN_PRIVILEGES PreviousState, PDWORD ReturnLength)
Service installed, but not running.
char *__cdecl mystrrchr(const char *string, int ch)
CHAR RealDeviceName[MAX_PATH+1]
ULONG drv_letter_to_index(WCHAR a)
BOOL WINAPI OpenThreadToken(HANDLE ThreadHandle, DWORD DesiredAccess, BOOL OpenAsSelf, HANDLE *TokenHandle)
PRTL_UNICODE_STRING_BUFFER Path
BOOL WINAPI DeviceIoControl(IN HANDLE hDevice, IN DWORD dwIoControlCode, IN LPVOID lpInBuffer OPTIONAL, IN DWORD nInBufferSize OPTIONAL, OUT LPVOID lpOutBuffer OPTIONAL, IN DWORD nOutBufferSize OPTIONAL, OUT LPDWORD lpBytesReturned OPTIONAL, IN LPOVERLAPPED lpOverlapped OPTIONAL)
BOOL GetRegString(LPSTR pszKey, LPSTR pszValue, LPSTR pszData, DWORD dwBufSize)
Get string from registry by Key path and Value name.
LPVOID lpSecurityDescriptor
IN OUT PVCB OUT PDIRENT OUT PBCB IN BOOLEAN CreateFile
#define GetPrivateProfileString
HLOCAL NTAPI LocalFree(HLOCAL hMem)
BOOL RegisterDword(LPSTR pszKey, LPSTR pszValue, DWORD dwData)
BOOL WINAPI OpenProcessToken(HANDLE ProcessHandle, DWORD DesiredAccess, PHANDLE TokenHandle)
PCHAR UDFGetDeviceName(PCHAR szDeviceName)
#define SC_MANAGER_ALL_ACCESS
#define ERROR_SERVICE_DOES_NOT_EXIST
#define UDF_OPTION_DISKSPEC
char * strcpy(char *DstString, const char *SrcString)
int strcmp(const char *String1, const char *String2)
#define UDF_CONFIG_STREAM_NAME
#define GetProcAddress(x, y)
GLboolean GLboolean GLboolean GLboolean a
HANDLE OpenOurVolume(PCHAR szDeviceName)
size_t __cdecl wcstombs(_Out_writes_opt_z_(_MaxCount) char *_Dest, _In_z_ const wchar_t *_Source, _In_ size_t _MaxCount)
void *__cdecl mymemchr(const void *buf, int chr, size_t cnt)
#define TOKEN_ADJUST_PRIVILEGES
#define RegCloseKey(hKey)
BOOL SetRegUlong(LPSTR pszKey, LPSTR pszValue, PULONG pszData)
#define SetCurrentDirectory
#define HKEY_LOCAL_MACHINE
#define WritePrivateProfileString