From: Jarkko Hietaniemi Date: Fri, 14 Sep 2001 13:55:56 +0000 (+0000) Subject: NetWare tweaks from Ananth Kesari. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=1db1659f90068fccb5de856f9baa5dab87db770f;p=p5sagit%2Fp5-mst-13.2.git NetWare tweaks from Ananth Kesari. p4raw-id: //depot/perl@12018 --- diff --git a/NetWare/NWUtil.c b/NetWare/NWUtil.c index ea0e485..5174fe3 100644 --- a/NetWare/NWUtil.c +++ b/NetWare/NWUtil.c @@ -755,11 +755,16 @@ char* fnMy_MkTemp(char* templatestr) pPid = numbuf; /** - Backtick operation uses temp files that are stored under DEFPERLTEMP directory. - They are temporarily used and then cleaned up after usage. - In the process of operation to allow for more temp files, the below logic is used. - This allows 26 files (like, pla00015.tmp through plz00015.tmp) plus - 26x26=676 (like, plaa0015.tmp through plzz0015.tmp) + Backtick operation uses temp files that are stored under NWDEFPERLTEMP + directory. They are temporarily used and then cleaned up after usage. + In cases where multiple backtick operations are used that call some + complex scripts, new temp files will be created before the old ones are + deleted. So, we need to have a provision to create many temp files. + Hence the below logic. It is found that provision for 26 files may + not be enough in some cases. + + This below logic allows 26 files (like, pla00015.tmp through plz00015.tmp) + plus 6x26=676 (like, plaa0015.tmp through plzz0015.tmp) **/ letter = 'a'; diff --git a/NetWare/Nwmain.c b/NetWare/Nwmain.c index 0e8bf0b..9fb2e50 100644 --- a/NetWare/Nwmain.c +++ b/NetWare/Nwmain.c @@ -160,8 +160,8 @@ void main(int argc, char *argv[]) // Ensure that we have a "temp" directory fnSetupNamespace(); - if (access(DEFPERLTEMP, 0) != 0) - mkdir(DEFPERLTEMP); + if (access(NWDEFPERLTEMP, 0) != 0) + mkdir(NWDEFPERLTEMP); // Create the file NUL if not present. This is done only once per NLM load. // This is required for -e. @@ -176,7 +176,7 @@ void main(int argc, char *argv[]) { char sNUL[MAX_DN_BYTES] = {'\0'}; - strcpy(sNUL, DEFPERLROOT); + strcpy(sNUL, NWDEFPERLROOT); strcat(sNUL, "\\nul"); if (access((const char *)sNUL, 0) != 0) { @@ -308,7 +308,7 @@ void fnSigTermHandler(int sig) { char sNUL[MAX_DN_BYTES] = {'\0'}; - strcpy(sNUL, DEFPERLROOT); + strcpy(sNUL, NWDEFPERLROOT); strcat(sNUL, "\\nul"); if (access((const char *)sNUL, 0) == 0) { @@ -530,7 +530,7 @@ void fnLaunchPerl(void* context) { // get the default working directory name // - defaultDir = fnNwGetEnvironmentStr("PERL_ROOT", DEFPERLROOT); + defaultDir = fnNwGetEnvironmentStr("PERL_ROOT", NWDEFPERLROOT); } else defaultDir = getcwd(curdir, sizeof(curdir)-1); diff --git a/NetWare/Nwpipe.c b/NetWare/Nwpipe.c index 0deffe5..9caf2da 100644 --- a/NetWare/Nwpipe.c +++ b/NetWare/Nwpipe.c @@ -344,7 +344,7 @@ FILE* fnPipeFileOpen(PTEMPPIPEFILE ptpf, char* command, char* mode) // Create a temporary file name // - strncpy ( tempName, fnNwGetEnvironmentStr((char *)"TEMP", DEFPERLTEMP), (_MAX_PATH - 20) ); + strncpy ( tempName, fnNwGetEnvironmentStr((char *)"TEMP", NWDEFPERLTEMP), (_MAX_PATH - 20) ); tempName[_MAX_PATH-20] = '\0'; strcat(tempName, (char *)"\\plXXXXXX.tmp"); if (!fnMy_MkTemp(tempName)) diff --git a/NetWare/nwutil.h b/NetWare/nwutil.h index 2d5dd0f..6c8f144 100644 --- a/NetWare/nwutil.h +++ b/NetWare/nwutil.h @@ -83,16 +83,16 @@ void fnInternalPerlLaunchHandler(char* cmdLine); char* fnMy_MkTemp(char* templatestr); -/* DEFPERLROOT: +/* NWDEFPERLROOT: * This symbol contains the name of the starting default directory to search * for scripts to run. */ -#define DEFPERLROOT "sys:\\perl\\scripts" +#define NWDEFPERLROOT "sys:\\perl\\scripts" -/* DEFPERLTEMP: +/* NWDEFPERLTEMP: * This symbol contains the name of the default temp files directory. */ -#define DEFPERLTEMP "sys:\\perl\\temp" +#define NWDEFPERLTEMP "sys:\\perl\\temp" #endif // __NWUtil_H__