Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
6221f036
Commit
6221f036
authored
Nov 13, 2002
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix impressive call gate misuse DoS reported on bugtraq.
parent
c2ef76af
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
0 deletions
+13
-0
arch/i386/kernel/entry.S
arch/i386/kernel/entry.S
+13
-0
No files found.
arch/i386/kernel/entry.S
View file @
6221f036
...
...
@@ -66,7 +66,9 @@ OLDESP = 0x34
OLDSS
=
0x38
CF_MASK
=
0x00000001
TF_MASK
=
0x00000100
IF_MASK
=
0x00000200
DF_MASK
=
0x00000400
NT_MASK
=
0x00004000
VM_MASK
=
0x00020000
...
...
@@ -134,6 +136,17 @@ ENTRY(lcall7)
movl
%
eax
,
EFLAGS
(%
esp
)
#
movl
%
edx
,
EIP
(%
esp
)
#
Now
we
move
them
to
their
"normal"
places
movl
%
ecx
,
CS
(%
esp
)
#
#
#
Call
gates
don
't clear TF and NT in eflags like
#
traps
do
,
so
we
need
to
do
it
ourselves
.
#
%
eax
already
contains
eflags
(
but
it
may
have
#
DF
set
,
clear
that
also
)
#
andl
$~
(
DF_MASK
| TF_MASK |
NT_MASK
),%
eax
pushl
%
eax
popfl
movl
%
esp
,
%
ebx
pushl
%
ebx
andl
$
-
8192
,
%
ebx
#
GET_THREAD_INFO
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment