Subversion Repositories Kolibri OS

Rev

Rev 9036 | Rev 9185 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9036 Rev 9045
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2016. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2016. All rights reserved. ;;
4
;;  Distributed under terms of the GNU General Public License.  ;;
4
;;  Distributed under terms of the GNU General Public License.  ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 9036 $
8
$Revision: 9045 $
9
 
9
 
10
ERROR_SUCCESS        = 0
10
ERROR_SUCCESS        = 0
11
ERROR_DISK_BASE      = 1
11
ERROR_DISK_BASE      = 1
Line 90... Line 90...
90
; endp
90
; endp
Line 91... Line 91...
91
 
91
 
92
; syscall_fileSystemUnicode: ; with user pointer correctness checking
92
; syscall_fileSystemUnicode: ; with user pointer correctness checking
93
; ; in: ebx -> f.80 parameter structure
93
; ; in: ebx -> f.80 parameter structure
94
;         stdcall file_system_is_operation_safe, ebx
94
;         stdcall file_system_is_operation_safe, ebx
Line 95... Line 95...
95
;         jnz     @f
95
;         jz      @f
96
 
96
 
97
;         DEBUGF  1, "sysfn80 addr error\n"
97
;         DEBUGF  1, "sysfn80 addr error\n"
98
;         mov     dword [image_of_eax], ERROR_MEMORY_POINTER
98
;         mov     dword [image_of_eax], ERROR_MEMORY_POINTER
Line 106... Line 106...
106
; and make the driver use them, not int 0x40
106
; and make the driver use them, not int 0x40
107
; syscall_fileSystemUnicode commented out for the same reason
107
; syscall_fileSystemUnicode commented out for the same reason
108
; syscall_file_system_lfn: ; with user pointer correctness checking
108
; syscall_file_system_lfn: ; with user pointer correctness checking
109
; ; in: ebx -> f.70 parameter structure
109
; ; in: ebx -> f.70 parameter structure
110
;         stdcall file_system_is_operation_safe, ebx
110
;         stdcall file_system_is_operation_safe, ebx
111
;         jnz     @f
111
;         jz      @f
Line 112... Line 112...
112
 
112
 
113
;         DEBUGF  1, "sysfn70 addr error\n"
113
;         DEBUGF  1, "sysfn70 addr error\n"
114
;         mov     dword [image_of_eax], ERROR_MEMORY_POINTER
114
;         mov     dword [image_of_eax], ERROR_MEMORY_POINTER
115
;         ret
115
;         ret
Line 548... Line 548...
548
        ret
548
        ret
Line 549... Line 549...
549
 
549
 
550
.get:
550
.get:
551
; in: ecx -> buffer, edx = length, eax = encoding
551
; in: ecx -> buffer, edx = length, eax = encoding
552
        stdcall is_region_userspace, ecx, edx
552
        stdcall is_region_userspace, ecx, edx
Line 553... Line 553...
553
        jnz     @f
553
        jz      @f
554
 
554
 
555
        ; if illegal buffer given
555
        ; if illegal buffer given
556
        xor     edx, edx
556
        xor     edx, edx