Merge branch 'master' of git://factorcode.org/git/factor

db4
Joe Groff 2009-09-19 21:16:34 -05:00
commit 0968938917
6 changed files with 53 additions and 51 deletions

View File

@ -1,8 +1,8 @@
USING: alien alien.c-types alien.data alien.syntax arrays continuations
destructors generic io.mmap io.ports io.backend.windows io.files.windows
kernel libc math math.bitwise namespaces quotations sequences windows
kernel libc locals math math.bitwise namespaces quotations sequences windows
windows.advapi32 windows.kernel32 windows.types io.backend system accessors
io.backend.windows.privileges windows.errors ;
io.backend.windows.privileges classes.struct windows.errors ;
IN: io.backend.windows.nt.privileges
TYPEDEF: TOKEN_PRIVILEGES* PTOKEN_PRIVILEGES
@ -28,17 +28,16 @@ TYPEDEF: TOKEN_PRIVILEGES* PTOKEN_PRIVILEGES
[ f ] dip LUID <struct>
[ LookupPrivilegeValue win32-error=0/f ] keep ;
: make-token-privileges ( name ? -- obj )
:: make-token-privileges ( name enabled? -- obj )
TOKEN_PRIVILEGES <struct>
1 >>PrivilegeCount
LUID_AND_ATTRIBUTES malloc-struct &free
swap [ SE_PRIVILEGE_ENABLED >>Attributes ] when
>>Privileges
[ lookup-privilege ] dip
[ Privileges>> (>>Luid) ] keep ;
enabled? [ SE_PRIVILEGE_ENABLED >>Attributes ] when
name lookup-privilege >>Luid
>>Privileges ;
M: winnt set-privilege ( name ? -- )
[
-rot 0 -rot make-token-privileges
dup length f f AdjustTokenPrivileges win32-error=0/f
dup byte-length f f AdjustTokenPrivileges win32-error=0/f
] with-process-token ;

View File

@ -1,5 +1,5 @@
USING: alien.syntax kernel math windows.types windows.kernel32
math.bitwise ;
math.bitwise classes.struct ;
IN: windows.advapi32
LIBRARY: advapi32

View File

@ -690,8 +690,8 @@ STRUCT: OFSTRUCT
{ nErrCode WORD }
{ Reserved1 WORD }
{ Reserved2 WORD }
! { szPathName { CHAR OFS_MAXPATHNAME } } ;
{ szPathName { CHAR 128 } } ;
! { szPathName { CHAR OFS_MAXPATHNAME } } ;
TYPEDEF: OFSTRUCT* LPOFSTRUCT

View File

@ -11,6 +11,12 @@ TYPEDEF: uchar UCHAR
TYPEDEF: uchar BYTE
TYPEDEF: ushort wchar_t
SYMBOL: wchar_t*
<<
{ char* utf16n } \ wchar_t* typedef
\ wchar_t \ wchar_t* "pointer-c-type" set-word-prop
>>
TYPEDEF: wchar_t WCHAR
TYPEDEF: short SHORT
@ -70,9 +76,6 @@ TYPEDEF: ulonglong ULARGE_INTEGER
TYPEDEF: LARGE_INTEGER* PLARGE_INTEGER
TYPEDEF: ULARGE_INTEGER* PULARGE_INTEGER
SYMBOL: wchar_t*
<< { char* utf16n } \ wchar_t* typedef >>
TYPEDEF: wchar_t* LPCSTR
TYPEDEF: wchar_t* LPWSTR
TYPEDEF: WCHAR TCHAR

View File

@ -1,6 +1,6 @@
! Copyright (C) 2009 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: alien.syntax alien.destructors ;
USING: alien.syntax alien.destructors classes.struct ;
IN: windows.usp10
LIBRARY: usp10

View File

@ -204,8 +204,8 @@ CONSTANT: MAX_PROTOCOL_CHAIN 7
STRUCT: WSAPROTOCOLCHAIN
{ ChainLen int }
! { ChainEntries { DWORD MAX_PROTOCOL_CHAIN } } ;
{ ChainEntries { DWORD 7 } } ;
! { ChainEntries { DWORD MAX_PROTOCOL_CHAIN } } ;
TYPEDEF: WSAPROTOCOLCHAIN* LPWSAPROTOCOLCHAIN
CONSTANT: WSAPROTOCOL_LEN 255