components/ksh93/patches/120-CR7089799.patch
author Lijo George<lijo.x.george@oracle.com>
Thu, 26 Nov 2015 02:23:48 -0800
changeset 5129 5431772f7235
parent 4305 90493abe0c5c
permissions -rw-r--r--
PSARC/2014/162 ksh93 update to 2012-08-01 17533968 ksh93 uprev to latest community version 17817727 ksh93: Right shift arithmetic substitution error for shifts of 64 bits or more 17699248 ksh93 double associative array handling bugs 17777549 "kill %%" with no background jobs , coredumps 18119738 ksh93 crashes in sfio area 18229654 ksh93 read not reentrant in alarm context dumps core 16169978 ksh93 memory corruption with redirection 18302723 ksh93 segv in sh_setmatch 16507675 external command in double-nested here-document hangs ksh93 18920300 remove pkglint Warnings in ksh93 build 18355790 /usr/bin/sh and /usr/sbin/sh should point to /usr/bin/ksh93 19907453 Session drop can cause ksh93 to become a fork bomb 18426052 SPARC /usr/bin/ksh is not an XPG6 executable 20808157 attpackagemake.mk test target needs the same environment as the build 20948390 ksh93 should have some master test results to compare against 20948350 attpackagemake.mk tested-and-compared target has mis-matched parentheses
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5129
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
     1
# This patch has been developed inhouse. This fixes a Solaris specific
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
     2
# issue and has not been submitted to the community.
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
     3
--- INIT.2012-08-01.old/src/cmd/ksh93/sh/io.c	2015-02-24 13:25:19.362427732 -0800
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
     4
+++ INIT.2012-08-01/src/cmd/ksh93/sh/io.c	2015-03-05 12:11:01.233941923 -0800
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
     5
@@ -871,7 +877,6 @@ int sh_iomovefd(register int fdold)
805
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     6
 {
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     7
 	Shell_t *shp = sh_getinterp();
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     8
 	register int fdnew;
5129
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
     9
-	if(fdold >= shp->gd->lim.open_max)
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
    10
-		sh_iovalidfd(shp,fdold);
805
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    11
+	VALIDATE_FD(shp, fdold);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    12
 	if(fdold<0 || fdold>2)
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    13
 		return(fdold);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    14
 	fdnew = sh_iomovefd(dup(fdold));
5129
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
    15
@@ -893,6 +899,8 @@ int	sh_pipe(register int pv[])
805
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    16
 		errormsg(SH_DICT,ERROR_system(1),e_pipe);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    17
 	pv[0] = sh_iomovefd(pv[0]);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    18
 	pv[1] = sh_iomovefd(pv[1]);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    19
+	VALIDATE_FD(shp, pv[0]);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    20
+	VALIDATE_FD(shp, pv[1]);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    21
 	shp->fdstatus[pv[0]] = IONOSEEK|IOREAD;
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    22
 	shp->fdstatus[pv[1]] = IONOSEEK|IOWRITE;
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    23
 	sh_subsavefd(pv[0]);
5129
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
    24
--- INIT.2012-08-01.old/src/cmd/ksh93/sh/path.c	2015-02-24 13:25:19.360898415 -0800
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
    25
+++ INIT.2012-08-01/src/cmd/ksh93/sh/path.c	2015-03-05 11:17:55.650549374 -0800
5431772f7235 PSARC/2014/162 ksh93 update to 2012-08-01
Lijo George<lijo.x.george@oracle.com>
parents: 4305
diff changeset
    26
@@ -534,6 +537,7 @@ static int	path_opentype(Shell_t *shp,co
805
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    27
 	if(fd>=0 && (fd = sh_iomovefd(fd)) > 0)
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    28
 	{
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    29
 		fcntl(fd,F_SETFD,FD_CLOEXEC);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    30
+		VALIDATE_FD(shp, fd);
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    31
 		shp->fdstatus[fd] |= IOCLEX;
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    32
 	}
23c55a2f8a8e 7165565 ksh93 in userland misses several bug fixes made in ON
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    33
 	return(fd);