summaryrefslogtreecommitdiff
path: root/t/win32
Commit message (Collapse)AuthorAgeFilesLines
* (perl #131665) avoid a buffer overflow in a buffer we didn't needTony Cook2017-09-101-5/+16
| | | | | | | since Lookup() treats its argument as NUL or '=' terminated. Previously environment variable names longer than the size of the buffer would result in a buffer overflow.
* Make DEFAULT_INC_EXCLUDES_DOT the default on WindowsSteve Hay2017-03-121-1/+6
| | | | | | | and provide a makefile option of the same name to control it. It is set to 'define' by default, but can be commented out or set to 'undef' in the usual manner to switch it off and return to the legacy default behaviour of including '.' at the end of @INC.
* [perl #126922] avoid access to uninitialized memory in win32 crypt()Tony Cook2016-01-051-0/+41
| | | | | | | | Previously the Win32 crypt implementation() would access the first and second characters of the salt, even if the salt was zero length. Add validation that will detect both a short salt and invalid characters in the salt.
* remove the shell fallback from list pipe open on Win32Tony Cook2015-02-101-2/+2
| | | | | | | | | | This is a potential security issue, and while we'd need a deprecation cycle to remove it from system(), there hasn't been a production release of perl with list pipe open, so we can pretend it never was. Without the shell, CreateProcess() won't pick up .cmd or .bat files, which several perl utilities are packaged as on Win32, so use qualified_path() to produce a full executable name.
* implement list form of pipe open for Win32Tony Cook2014-10-222-2/+11
|
* [perl #121638] Make ‘Global symbol’ message more newbie-friendlyFather Chrysostomos2014-09-181-2/+2
| | | | | | by suggesting the declaration of a lexical variable, but without removing the ‘Global symbol’ part, since much code no doubt depends on its presence.
* [perl #21442] only check link() error codes where link() worksTony Cook2014-04-091-0/+5
| | | | Skip the tests on non-NTFS.
* [perl #77672] avoid a file handle redirection raceTony Cook2014-02-031-0/+27
| | | | | | | | | | With multiple threads (and Win32 fork() is implemented in terms of threads), Win32's popen() code had a race condition where a different thread could write to the stdout (or read from the stdin) handle setup for a child process. Avoid this by using the Win32 API to supply the I/O handles instead of redirecting them in the current process.
* Better check for the fork emulation in t/win32/signal.tSteve Hay2013-08-291-2/+2
| | | | | | | | | The d_pseudofork Configure variable hasn't been around all that long so isn't suitable for use in dual-lived module tests, but is good for use in core tests. (t/win32/runenv.t doesn't do this since it is actually PERL_IMPLICIT_SYS rather than the fork emulation which that test requires.)
* [perl #85104] work harder to save error numbersTony Cook2013-08-261-1/+1
| | | | | | | Updates the errno save macros to save the platform error number where needed for more than just VMS. The OS/2 code is untested.
* [perl #85104] TODO test for preserving $^E across signal handlersTony Cook2013-08-261-0/+77
| | | | and tests Win32 signal emulation too
* We don't actually need to set $ENV{PERL} for the tests to work.Nicholas Clark2013-07-011-1/+1
| | | | | | Whatever the executable is named at the top level, it's always symlinked as ./perl in t, so there's no need to set an environment variable to override the expected name.
* Corrections to 0511665b4bSteve Hay2013-06-122-6/+8
| | | | | | | | - require './test.pl' in a BEGIN block, rather than use './test.pl'. - Ensure the tests are done in the same program that emits the plan() otherwise one copy of test.pl thinks tests were planned but not done and the other thinks tests were done without being planned. - Fix indentation.
* converted t/win32.t/system* to test.pl styleMarcel Gruenauer2013-06-122-23/+23
|
* Clean up indenting on t/win32/fs.tBrad Gilbert2013-01-231-13/+13
| | | | Previous commit removed the need for indents.
* Remove dead code from t/win32/fs.tBrad Gilbert2013-01-231-10/+0
| | | | | | | tempfile() from t/test.pl already handles checking for existing files and removing them at the end of the test. This test also doesn't need Config loaded
* t/win32/runenv.t: Correct syntax error reported by bulk88++.James E Keenan2012-11-291-2/+2
| | | | Part of: RT #115788
* oops, left some debugging codeTony Cook2012-08-241-2/+0
| | | | left from fixing perl #112272
* [perl #112272] return EEXIST on link() to an existing fileTony Cook2012-05-281-1/+0
| | | | | | Also attempts to translate some other errors. Unfortunately Microsoft don't document error codes.
* [perl #112272] test link()'s error returns (TODO)Tony Cook2012-05-281-0/+41
|
* skip t/win32/runenv.t unless -DPERL_IMPLICIT_SYSRicardo Signes2012-05-141-0/+3
| | | | | this test fails without PERL_IMPLICIT_SYS, as reported by Steve Hay in <CADED=K4EqXkJa2uC13wVYY_=uGDCx=uQ_rXu3Me4+3FvVM8D+g@mail.gmail.com>
* The Borland Chainsaw MassacreSteve Hay2011-09-101-18/+0
| | | | | Remove support for the Borland C++ compiler on Win32, as agreed here: http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2011-09/msg00034.html
* Correct test count in win32/runenv.tFather Chrysostomos2011-07-191-1/+1
| | | | | | | Not having any way to test this, I hope it works. This is based on smoke reports and my own counting of the is() calls in the test script.
* Fixes to allow win32 Perl to properly handle PERL5LIB.Phil Monsen2011-07-181-0/+250
| | | | | | | | | | | | | | | | | | | | | | | | | On Windows Vista, 7 and 2008, the win32 API call GetEnvironmentVariableA() does not return environment values with string length of greater than 32766, even though such variables are supported in the environment. This consequently caused @INC not to be populated for such values of PERL5LIB on those OSes, as reported in RT #87322. This commit reworks the code so that GetEnvironmentStrings() is called if GetEnvironmentVariableA() indicates the requested value is set in the environmtn. The old fallback of consulting the registry for variables beginning with "PERL" is retained, but as a last-ditch fallback rather than the only recourse. A new test file, t/win32/runenv.t has been added to validate that the new behavior is working properly, as well as that general environment variable handling is in accordance with expectations, since t/run/runenv.t does not run on Win* platforms. The new test file is essentially a non-forking clone of t/run/runenv.t, with modifications to test cases to run properly on Win* platforms, and with a new test case to test the new behavior.
* Patch t/win32/system.t for mingw32/64Sisyphus2009-10-141-1/+1
|
* Make t/win32/system.t use the more common compiler checkMax Maischein2009-01-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Hello again, much of the Perl test suite uses $Config{cc} =~ /^gcc/i to determine whether the compiler looks/acts like gcc. This patch enables that behaviour in t/win32/system.t too. The reason behind this is that I have a batch file named gcc-ccache.cmd, which I give to dmake as my compiler, and having things like this work everywhere in Perl is nice. Possibly, a more sane way of keeping the kind of compiler handy would be to make $Config{CCTYPE} come into existence and have it store "gcc", "msvc" and what other cc types we support. -max From f2e73cb5249433631fd4db5b46f62d05ff35526c Mon Sep 17 00:00:00 2001 From: Max Maischein <corion@corion.net> Date: Mon, 26 Jan 2009 21:44:36 +0100 Subject: [PATCH] Unbreak the test if your compiler looks like gcc
* RE: $Win32::VERSION problemJan Dubois2007-03-082-65/+0
| | | | | | | | | From: "Jan Dubois" <jand@activestate.com> Message-ID: <00b301c760f6$d28129d0$77837d70$@com> Adds the tests from the dual-lived CPAN distribution Win32-0.27 and removes two old t/win32 tests which are now redundant p4raw-id: //depot/perl@30516
* Fix another Win32 breakage caused by change 23554Steve Hay2004-12-061-1/+3
| | | p4raw-id: //depot/perl@23618
* Fix [perl #27357] Scalar Win32::GetOSVersion() broken in 5.8.3Rafael Garcia-Suarez2004-03-041-0/+13
| | | | | (by Steve Hay) p4raw-id: //depot/perl@22431
* WinCE many fixesVadim Konovalov2002-04-281-1/+1
| | | | | Message-ID: <00bf01c1eedd$c0c62a00$d25cc3d9@vad> p4raw-id: //depot/perl@16251
* system_tests are relevant only to win32\system.tNikola Knezevic2002-04-262-3/+123
| | | | | Message-ID: <14316006107.20020426153816@tesla.rcub.bg.ac.yu> p4raw-id: //depot/perl@16193
* was: t/win32/system.t Borland too helpfulVadim Konovalov2002-04-231-0/+18
| | | | | Message-ID: <006e01c1eb11$156d2390$695cc3d9@vad> p4raw-id: //depot/perl@16119
* clean up after stray test file litteringGurusamy Sarathy2002-04-221-2/+1
| | | | | | | NOTE: PerlIO/t/via.t leaves behind a via$$ file on windows when it seems that it shouldn't (looks like a handle leak in PerlIO to me) p4raw-id: //depot/perl@16065
* Move also the Win32 system testing to t/win32.Jarkko Hietaniemi2002-04-121-0/+157
| | | p4raw-id: //depot/perl@15881
* Integrate change #15879 from maint-5.6;Jarkko Hietaniemi2002-04-121-0/+52
Win32::GetLongPathName() did not return valid results if there were "." and ".." components in the path; also fix a potential buffer overflow if the long path happens to be longer than MAX_PATH (this can presumably happen if they use \\?\... style paths); add a rather limited testsuite that exercises just the edge cases p4raw-link: @15879 on //depot/maint-5.6/perl: a15439704ef1059bf178ec4b1820fee7b2af7173 p4raw-id: //depot/perl@15880 p4raw-branched: from //depot/maint-5.6/perl@15877 'branch in' t/win32/longpath.t p4raw-integrated: from //depot/maint-5.6/perl@15877 'ignore' MANIFEST (@12747..) 'merge in' t/harness (@11427..) win32/win32.c (@13145..)