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] |