]> git.pld-linux.org Git - packages/kernel.git/blob - 2.2.22-security_NTfix.patch
- added description of djurban's branch
[packages/kernel.git] / 2.2.22-security_NTfix.patch
1 diff -urN linux.orig/arch/i386/kernel/entry.S linux/arch/i386/kernel/entry.S
2 --- linux.orig/arch/i386/kernel/entry.S Tue May 21 01:32:34 2002
3 +++ linux/arch/i386/kernel/entry.S      Thu Nov 14 21:39:36 2002
4 @@ -63,7 +63,9 @@
5  OLDSS          = 0x38
6  
7  CF_MASK                = 0x00000001
8 +TF_MASK                = 0x00000100
9  IF_MASK                = 0x00000200
10 +DF_MASK                = 0x00000400
11  NT_MASK                = 0x00004000
12  VM_MASK                = 0x00020000
13  
14 @@ -139,6 +141,9 @@
15         movl CS(%esp),%edx      # this is eip..
16         movl EFLAGS(%esp),%ecx  # and this is cs..
17         movl %eax,EFLAGS(%esp)  #
18 +       andl $~(NT_MASK|TF_MASK|DF_MASK), %eax
19 +       pushl %eax
20 +       popfl
21         movl %edx,EIP(%esp)     # Now we move them to their "normal" places
22         movl %ecx,CS(%esp)      #
23         movl %esp,%ebx
24 @@ -256,6 +261,9 @@
25         pushl $ SYMBOL_NAME(do_divide_error)
26         ALIGN
27  error_code:
28 +       pushfl
29 +       andl $~(NT_MASK|TF_MASK|DF_MASK), (%esp)
30 +       popfl
31         pushl %ds
32         pushl %eax
33         xorl %eax,%eax
34 @@ -266,7 +274,6 @@
35         decl %eax                       # eax = -1
36         pushl %ecx
37         pushl %ebx
38 -       cld
39         movl %es,%cx
40         movl ORIG_EAX(%esp), %esi       # get the error code
41         movl ES(%esp), %edi             # get the function address
42 diff -urN linux.orig/arch/i386/kernel/traps.c linux/arch/i386/kernel/traps.c
43 --- linux.orig/arch/i386/kernel/traps.c Thu Nov 14 21:19:40 2002
44 +++ linux/arch/i386/kernel/traps.c      Thu Nov 14 21:40:01 2002
45 @@ -601,7 +601,7 @@
46         return;
47  
48  clear_TF:
49 -       regs->eflags &= ~TF_MASK;
50 +       regs->eflags &= ~(TF_MASK|NT_MASK);
51         return;
52  }
53  
This page took 0.048563 seconds and 3 git commands to generate.