Dosvm not initialized for Direct port access

Uwe Bonnes bon at elektron.ikp.physik.tu-darmstadt.de
Mon Jun 18 08:38:46 CDT 2001


Hallo,

some license manager dll (lmgr327a) manages to read IOPORT 0x40 from 32-bit
code. This results in an access to Dosvm.GetTimer() in line 297 in
ioports.c, and as Dosvm isn't initialized this results in a crash.
=>0 0x00000000 (ebp=404e4b38)
  1 0x400cd595 (IO_inport+0x205(port=0x40, size=0x1) [ioports.c:297] in libntdll.so) (ebp=404e4b38, null call assumed)
  2 0x400a7405 (INSTR_inport+0x25(port=0x40, size=0x1, context=0x404e4c50) [instr.c:328] in libntdll.so) (ebp=404e4b58)
  3 0x400a888c (INSTR_EmulateInstruction+0x12cc(context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50, context=0x404e4c50) [instr.c:745] in libntdll.so) (ebp=404e4bc4)
  4 0x400733c9 (do_segv+0x109(context=0x404e4c50, trap_code=0xd, cr2=0x0, err_code=0x0) [signal_i386.c:671] in libntdll.so) (ebp=404e4c2c)
  5 0x4007368d (segv_handler+0x3d(__signal=0xb, __context=0x0) [signal_i386.c:787] in libntdll.so) (ebp=404e4d1c)
  6 0x4029fb58 (__restore [sigaction.c] in libc.so.6) (ebp=405f57a0)
  7 0x1c0b0004 (LMGR327A.DLL..reloc+0xbfe2004) (ebp=04007242)

Bye
-- 
Uwe Bonnes                bon at elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------




More information about the wine-devel mailing list