Subversion Repositories Kolibri OS

Rev

Rev 7321 | Rev 7323 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7321 Rev 7322
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2015. 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: 7321 $
8
$Revision: 7322 $
9
 
9
 
10
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
10
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11
;;                                                            ;;
11
;;                                                            ;;
Line 190... Line 190...
190
; Return EAX = 0 security kernel, error set function
190
; Return EAX = 0 security kernel, error set function
191
; Return Else EAX > 0 success set function
191
; Return Else EAX > 0 success set function
192
align 32
192
align 32
193
setInt0x40:
193
setInt0x40:
Line 194... Line 194...
194
 
194
 
195
           ; !!! kernel security !!!
195
;           !!! kernel security !!!
196
        and     ebx, 0FFh
196
        and     ebx, 0FFh
197
        mov     eax, dword [servetable2 + ebx * 4]
197
        mov     eax, dword [servetable2 + ebx * 4]
198
;       cmp     eax, undefined_syscall
198
;       cmp     eax, undefined_syscall
199
;       jne     errorSet0x40
199
;       jne     errorSet0x40
Line 200... Line 200...
200
           ; -----------------------
200
;          -----------------------
201
 
201
 
202
        pushad
202
        pushad
203
        add     edx, 16
203
        add     edx, 16
Line 222... Line 222...
222
        xor     edx, edx
222
        xor     edx, edx
Line 223... Line 223...
223
 
223
 
224
        mov     dl, byte[ecx]
224
        mov     dl, byte[ecx]
Line 225... Line 225...
225
        mov     byte[ebx], dl
225
        mov     byte[ebx], dl
226
 
226
 
227
        ; hash security function
227
;              hash security function
228
        add     dword[hashDataFunction1], edx
228
;       add     dword[hashDataFunction1], edx
229
        mov     edx, dword[hashDataFunction1]
229
;       mov     edx, dword[hashDataFunction1]
Line 230... Line 230...
230
        add     dword[hashDataFunction2], edx
230
;       add     dword[hashDataFunction2], edx
231
        ;-----------------------------
231
;          -----------------------------
232
 
232
 
233
        inc     ebx
233
        inc     ebx
Line 234... Line 234...
234
        inc     ecx
234
        inc     ecx
Line 235... Line 235...
235
        cmp     ebx, eax
235
        cmp     ebx, eax
236
        jne     loopCopyMemory
236
        jne     loopCopyMemory
237
 
237
 
238
        pop     ebx
238
        pop     ebx
239
 
239
 
240
        ; check hash security data
240
;       check hash security data
Line 241... Line 241...
241
        ; cmp     edi, dword[hashDataFunction1]
241
;       cmp     edi, dword[hashDataFunction1]
242
        ; jne     errorSet0x40
242
;       jne     errorSet0x40
243
        ; cmp     esi, dword[hashDataFunction2]
243
;       cmp     esi, dword[hashDataFunction2]