summaryrefslogtreecommitdiff
path: root/shells/pdksh
AgeCommit message (Collapse)AuthorFilesLines
2015-09-07On Linux, Bash is fine if you don't mind your package builds spending 50% ofdsainty2-4/+4
their time compiling, and 50% spinning in shell scripts. If you'd rather spend your power bill on useful gcc cycles though, you might desire to use a different shell for running build scripts - like pdksh, which is conveniently available at bootstrap time. But what if pdksh does this to you? pdksh -c 'f=`pdksh -c set | wc -l`; f=$((f+1)); while ((f < 100000)); do f=$((f+1)); eval "v_${f}=0"; echo "$f"; done'|tail -1 13106 segmentation fault (core dumped) pdksh -c Well that's annoying, isn't it. % echo $(((13106*10+7)/8)) 16383 ... that's a magical number. Coincidence? Well, no. tp->nfree = 8*nsize/10; /* table can get 80% full */ This particularly ugly overflow happens because tp->size is a short. When texpand() does: p = &ntblp[hash(tblp->name) & (tp->size-1)]; tp->size-1 will, given enough variables (80% of 2^15), type coerce into a sign-extended 32-bit value of: info registers $ecx ecx 0xffff7fff -32769 That hash() function does more or less what you guess, it's a 32 bit unsigned value. The chances of the final pointer pointing inside the valid allocated block of memory are very low indeed. The least-change solution is to change tp->size to a 32 bit value. I've left it signed because that matches, for example, the size parameter passed to texpand(). But really this code would be more correct with a liberal sprinkling of "unsigned", and perhaps a bit of "size_t". This change allows ffmpeg's configure script, as interpreted by pdksh, to produce more usable output than a core file. Bump PKGREVISION for code change.
2014-10-09Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles.wiz1-2/+1
2012-09-11"user-destdir" is default these daysasau1-2/+1
2011-01-23Merge the following revisions from NetBSD src:hauke2-5/+8
siglist.sh 1.9: Solaris 7 sort(1) issue with missing whitespace between option and parameter lex.c 1.14: C99ish inlined variable declaration
2010-05-07Bump PKGREVISION to reflect the recent change in pkginstall/shells to usejmmv1-2/+2
etcutils to update /etc/shells.
2009-06-27Fix build on HP-UX.ahoka1-1/+7
pdksh is so messy.
2009-04-09Remove redundant NO_CHECKSUM and EXTRACT_ONLY definitions.joerg1-2/+1
2009-02-21Merge the following revisions from NetBSD src:tnn3-36/+22
c_ulimit.c 1.9: avoid sign extension problem lex.c 1.13: bugfix related to nested quotes Bump PKGREVISION.
2008-06-19Add a marker for bootstrap packages to allow special cases them duringjoerg1-1/+2
bulk builds.
2008-06-15- Drop __RCSID'stnn30-201/+37
- Define __UNCONST in sh.h instead of on the command line to fix build issue with !latest Sun Studio.
2008-05-31Bump the PKGREVISION for NetBSD-current bugfix merge.tnn1-2/+2
2008-05-31Merge assorted bugfixes to pdksh-5.2.14, taken as diff betweentnn56-2123/+2108
PDKSH-5_2_14 and NetBSD-current HEAD as of 2008-05-31. - Fixes rare segfault seen on Solaris. - add strlcpy and strlcat fallback implementations from libnbcompat - regenerate configure (using autoconf-2.12, ugh)
2008-05-23- Adapt to use local distribution.tnn4-38/+14
- Add DESTDIR support.
2008-05-23merge pkgsrc's patch-ab (remove extern int errno;)tnn1-2/+1
2008-05-23Import subset of pdksh-5.2.14 distribution.tnn64-0/+40382
Only the files required to build it, for pkgsrc bootstrap purposes.
2007-12-02Remove Ex-MASTER_SITE. From Zafer Aydogan.wiz1-3/+2
2007-11-12Removed ftp.rge.com from MASTER_SITES, doesn't resolve anymoreheinz1-2/+1
in DNS. Mentioned by Zafer Aydogan in PR pkg/37321.
2005-12-29Remove USE_PKGINSTALL from pkgsrc now that mk/install/pkginstall.mkjlam1-2/+1
automatically detects whether we want the pkginstall machinery to be used by the package Makefile.
2005-11-10Depend on errno.h for errno.joerg2-1/+14
2005-10-23Fixed pkglint warning.rillig1-3/+3
2005-09-20Teach the +SHELLS helper script to not create an /etc/shells file ifjlam1-2/+2
one doesn't exist. From now on, we only add the listed PKG_SHELL to the /etc/shells file if it already exists. This fixes PR pkg/27162.
2005-07-29* Separate out the shell registration into a separately unpacked scriptjlam1-2/+2
+SHELL. * Turn PKG_REGISTER_SHELLS into a variable that can be set in the shell environment so that admins can make a choice when installing from binary packages. * PKG_SHELL is now a list of paths, and if the path is relative, then it is taken to be relative to ${PREFIX}. Convert packages that set PKG_SHELL to take advantage of this new feature by changing the full paths to the shells into relative paths.
2005-04-11Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.tv1-2/+1
2005-02-24Add RMD160 digests.agc1-1/+2
2004-01-05bl3ifyjlam1-2/+4
2003-10-04pdksh is no longer used to bootstrap buildlink2.jlam1-6/+2
2003-07-17s/netbsd.org/NetBSD.org/grant1-2/+2
2003-07-16Add several mirrors to MASTER_SITES.jmmv1-2/+7
2003-01-28Instead of including bsd.pkg.install.mk directly in a package Makefile,jlam1-2/+2
have it be automatically included by bsd.pkg.mk if USE_PKGINSTALL is set to "YES". This enforces the requirement that bsd.pkg.install.mk be included at the end of a package Makefile. Idea suggested by Julio M. Merino Vidal <jmmv at menta.net>.
2002-11-28Bump PKGREVISION of shells/pdksh to 1: rename installed shell to "pdksh",jlam2-7/+13
as this isn't really the real Korn shell, and "pdksh" is a more accurate name for it. Also don't use buildlink2 so that this shell may be used to bootstrap buildlink2.
2002-11-28Import pdksh-5.2.14 into the NetBSD Packages Collection.schmonz5-0/+48
PD-ksh is a mostly complete AT&T ksh look-alike. Work is mostly finished to make it fully compatible with both POSIX and AT&T ksh (when the two don't conflict). Since pdksh is free and compiles and runs on most common unix systems, it is very useful in creating a consistent user interface across multiple machines.