diff options
author | unknown <reggie@mdk10.(none)> | 2005-05-20 16:04:10 -0500 |
---|---|---|
committer | unknown <reggie@mdk10.(none)> | 2005-05-20 16:04:10 -0500 |
commit | c1ae672adda45a1b8c5637b8f4d6a3f91378ea20 (patch) | |
tree | 3c11d9563166e2b2ee03a1165069c1f02dfba30a /VC++Files | |
parent | 25d661adfc144d0de605ff07907ed9004155466d (diff) | |
download | mariadb-git-c1ae672adda45a1b8c5637b8f4d6a3f91378ea20.tar.gz |
BUG# 9148: Denial of service
The problem was that on Windows the access method indicates that access to file
such as "com1" and "lpt1" is allowed (since they are device names) and
this causes mysql to attempt to open them as databases or tables.
The fix was to write our own my_access method that uses other Win32 functions
to determine if the given argument is indeed a file and has to requested
mode.
VC++Files/mysys/mysys.dsp:
added my_access
VC++Files/mysys/mysys_ia64.dsp:
added my_access.c
include/my_sys.h:
if on windows, we use my_access.
if not on windows, then my_access points to the native access method
mysys/Makefile.am:
added my_access to mysys build file
mysys/mf_pack.c:
changed call to access to my_access
sql/sql_db.cc:
changed call to access to my_access
Diffstat (limited to 'VC++Files')
-rw-r--r-- | VC++Files/mysys/mysys.dsp | 5 | ||||
-rw-r--r-- | VC++Files/mysys/mysys_ia64.dsp | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/VC++Files/mysys/mysys.dsp b/VC++Files/mysys/mysys.dsp index ad6caf1986e..f47203d37bf 100644 --- a/VC++Files/mysys/mysys.dsp +++ b/VC++Files/mysys/mysys.dsp @@ -186,6 +186,11 @@ SOURCE=.\array.c !ENDIF # End Source File + +# Begin Source File +SOURCE=".\my_access.c" +# End Source File + # Begin Source File SOURCE=".\charset-def.c" diff --git a/VC++Files/mysys/mysys_ia64.dsp b/VC++Files/mysys/mysys_ia64.dsp index ed2dac53579..a0877457286 100644 --- a/VC++Files/mysys/mysys_ia64.dsp +++ b/VC++Files/mysys/mysys_ia64.dsp @@ -163,6 +163,13 @@ LIB32=link.exe -lib # Name "mysys - WinIA64 Max" # Name "mysys - WinIA64 TLS_DEBUG" # Name "mysys - WinIA64 TLS" + +# Begin Source File + +SOURCE=.\my_access.c + +# End Source File + # Begin Source File SOURCE=.\array.c |