fix previous

git-svn-id: svn://kolibrios.org@8914 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Rustem Gimadutdinov (rgimad) 2021-06-21 21:38:42 +00:00
parent a4d1118b5f
commit bf0e285246
2 changed files with 11 additions and 10 deletions

View File

@ -178,7 +178,7 @@ iglobal
dd sys_posix ; posix support dd sys_posix ; posix support
dd undefined_syscall ; 78-free dd undefined_syscall ; 78-free
dd undefined_syscall ; 79-free dd undefined_syscall ; 79-free
dd syscall_fileSystemUnicode ; 80-File system interface for different encodings dd fileSystemUnicode ; 80-File system interface for different encodings
times 255 - ( ($-servetable2) /4 ) dd undefined_syscall times 255 - ( ($-servetable2) /4 ) dd undefined_syscall
dd sys_end ; -1-end application dd sys_end ; -1-end application

View File

@ -90,21 +90,22 @@ image_of_ebx EQU esp+20
; ret ; ret
; endp ; endp
syscall_fileSystemUnicode: ; syscall_fileSystemUnicode: ; with user pointer correctness checking
; in: ebx -> f.80 parameter structure ; ; in: ebx -> f.80 parameter structure
stdcall file_system_is_operation_safe, ebx ; stdcall file_system_is_operation_safe, ebx
jnz @f ; jnz @f
DEBUGF 1, "sysfn80 addr error\n" ; DEBUGF 1, "sysfn80 addr error\n"
mov dword [image_of_eax], ERROR_MEMORY_POINTER ; mov dword [image_of_eax], ERROR_MEMORY_POINTER
ret ; ret
@@: ; @@:
jmp fileSystemUnicode ; jmp fileSystemUnicode
; temporarily commented out cause acpi driver (drivers/devman) uses sysfn70 via 0x40 ; temporarily commented out cause acpi driver (drivers/devman) uses sysfn70 via 0x40
; so because drivers it kernel space, pointer checking fails ; so because drivers it kernel space, pointer checking fails
; TODO solution: add filesystem functions without pointer checking to kernel exports ; TODO solution: add filesystem functions without pointer checking to kernel exports
; and make the driver use them, not int 0x40 ; and make the driver use them, not int 0x40
; syscall_fileSystemUnicode commented out for the same reason
; syscall_file_system_lfn: ; with user pointer correctness checking ; syscall_file_system_lfn: ; with user pointer correctness checking
; ; in: ebx -> f.70 parameter structure ; ; in: ebx -> f.70 parameter structure
; stdcall file_system_is_operation_safe, ebx ; stdcall file_system_is_operation_safe, ebx