Skip Menu |

This queue is for tickets about the Win32-API CPAN distribution.

Report information
The Basics
Id: 80347
Status: resolved
Priority: 0/
Queue: Win32-API

People
Owner: BULKDD [...] cpan.org
Requestors: BULKDD [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Unimportant
Broken in: 0.73
Fixed in: 0.74



This is a todo for myself. From http://ppm4.activestate.com/MSWin32-x64/5.16/1600/B/BU/BULKDD/Win32/Win32-API-0.73.d/log-20121021T040314.txt The compiler is identified as ver 14 in 02_Callback.t, which is VS 2005 or SDK/DDK equivalent. VS 2005 and newer are -GS on by default. There are 2 ways to fix this. -Add -GS- to the CCFLAGS in makefile.pl if >= VS 2005 (easy fix, Win32::API never used fixed length stack alloced buffers) -call __security_init_cookie without calling the rest of the CRT code. Now the issue is, what if -GS- was specified and __security_init_cookie is still in the source? Obviously this compiler warning doesn't cause any visible runtime errors but probably the security cookie is not randomized correctly. Show quoted text
________________________________________________________________ C:\Perl64-5.16\bin\perl.exe C:\cpanfly-5.16\var\megalib\ExtUtils\xsubpp -typemap C:\Perl64-5.16\lib\ExtUtils\typemap Callback.xs > Callback.xsc && C:\Perl64-5.16\bin\perl.exe -MExtUtils::Command -e mv -- Callback.xsc Callback.c cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DWIN32 -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVATIVE -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DVERSION=\"0.73\" -DXS_VERSION=\"0.73\" "-IC:\Perl64-5.16\lib\CORE" Callback.c Callback.c Callback.xs(639) : warning C4244: '=' : conversion from 'UV' to 'int', possible loss of data Running Mkbootstrap for Win32::API::Callback () C:\Perl64-5.16\bin\perl.exe -MExtUtils::Command -e chmod -- 644 Callback.bs C:\Perl64-5.16\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"Win32::API::Callback\", 'DLBASE' => 'Callback', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" link -out:..\blib\arch\auto\Win32\API\Callback\Callback.dll -dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"C:\Perl64-5.16\lib\CORE" -machine:AMD64 Callback.obj C:\Perl64-5.16\lib\CORE\perl516.lib oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib bufferoverflowU.lib msvcrt.lib -def:Callback.def Creating library ..\blib\arch\auto\Win32\API\Callback\Callback.lib and object ..\blib\arch\auto\Win32\API\Callback\Callback.exp Generating code Finished generating code bufferoverflowU.lib(gs_support.obj) : warning LNK4210: .CRT section exists; there may be unhandled static initializers or terminators if exist ..\blib\arch\auto\Win32\API\Callback\Callback.dll.manifest mt -nologo -manifest ..\blib\arch\auto\Win32\API\Callback\Callback.dll.manifest -outputresource:..\blib\arch\auto\Win32\API\Callback\Callback.dll;2 if exist ..\blib\arch\auto\Win32\API\Callback\Callback.dll.manifest del ..\blib\arch\auto\Win32\API\Callback\Callback.dll.manifest C:\Perl64-5.16\bin\perl.exe -MExtUtils::Command -e chmod -- 755 ..\blib\arch\auto\Win32\API\Callback\Callback.dll C:\Perl64-5.16\bin\perl.exe -MExtUtils::Command -e cp -- Callback.bs ..\blib\arch\auto\Win32\API\Callback\Callback.bs C:\Perl64-5.16\bin\perl.exe -MExtUtils::Command -e chmod -- 644 ..\blib\arch\auto\Win32\API\Callback\Callback.bs cd .. C:\Perl64-5.16\bin\perl.exe C:\cpanfly-5.16\var\megalib\ExtUtils\xsubpp -nolinenumbers -typemap C:\Perl64-5.16\lib\ExtUtils\typemap -typemap typemap API.xs > API.xsc && C:\Perl64-5.16\bin\perl.exe -MExtUtils::Command -e mv -- API.xsc API.c cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DWIN32 -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVATIVE -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DVERSION=\"0.73\" -DXS_VERSION=\"0.73\" "-IC:\Perl64-5.16\lib\CORE" API.c API.c ml64 -Zi -c call_asm_x64_msvc.asm Assembling: call_asm_x64_msvc.asm Microsoft (R) Macro Assembler (AMD64) Version 8.00.40310.39 Copyright (C) Microsoft Corporation. All rights reserved. Running Mkbootstrap for Win32::API () C:\Perl64-5.16\bin\perl.exe -MExtUtils::Command -e chmod -- 644 API.bs C:\Perl64-5.16\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"Win32::API\", 'DLBASE' => 'API', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" link -out:blib\arch\auto\Win32\API\API.dll -dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"C:\Perl64-5.16\lib\CORE" -machine:AMD64 API.obj call_asm_x64_msvc.obj C:\Perl64-5.16\lib\CORE\perl516.lib oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib bufferoverflowU.lib msvcrt.lib -def:API.def Creating library blib\arch\auto\Win32\API\API.lib and object blib\arch\auto\Win32\API\API.exp Generating code Finished generating code bufferoverflowU.lib(gs_support.obj) : warning LNK4210: .CRT section exists; there may be unhandled static initializers or terminators if exist blib\arch\auto
___________________________________________________________
There are also problems with POD links to IATPatch.