Commit Graph

45 Commits

Author SHA1 Message Date
Roman Divacky
e05b498065 Fix tcsh losing history when tcsh terminates because the pty beneath it
is closed.

Diagnosed by Ted Anderson:

New signal queuing logic was introduced in 6.15 and allows the signal handlers
to be run explicitly by calling handle_pending_signals, instead of
immediately when the signal is delivered.  This function is called at
various places, typically when receiving a EINTR from a slow system call
such as read or write.  In the pty exit case, it was called from xwrite,
called from flush, while printing the "exit" message after receiving EOF
when reading from the pty (note that the read did not return EINTR but
zero bytes, indicating EOF).  The SIGHUP handler, phup(), called
rechist, which opened the history file and began writing the merged
history to it.  This process invoked flush recursively to actually write
the data.  In this case, however, the flush noticed it was being called
recursively and decided fail by calling stderror.

My conclusion was that the signal was being handled at a bad time.  But
whether to fix flush not to care about the recursive call, or to handle
the signal some other time and when to handle it, was unclear to me.
However, by adding an extra call to handle_pending_signals, just after
process() returns to main(), I was able to avoid the truncated history
after network outages and similar failures.  I verified this fix in
version 6.17.

Approved by:	ed (mentor)
MFC after:	1 week
2009-10-06 20:19:16 +00:00
Mark Peek
a15e6f9a9a Update to tcsh 6.17.00.
Approved by:	re (kensmith)
2009-07-11 05:35:08 +00:00
Mark Peek
bc49518e16 Flatten vendor/tcsh/dist. 2009-07-10 21:00:38 +00:00
Konstantin Belousov
c9253e931d Usermode portion of the support for swap allocation accounting:
- update for getrlimit(2) manpage;
- support for setting RLIMIT_SWAP in login class;
- addition to the limits(1) and sh and csh limit-setting builtins;
- tuning(7) documentation on the sysctls controlling overcommit.

In collaboration with:	pho
Reviewed by:	alc
Approved by:	re (kensmith)
2009-06-23 20:57:27 +00:00
Ruslan Ermilov
3b8bd8e77a Actually fix pty detection for autologout setting.
(The fix has been submitted upstream.)
2008-10-20 08:44:14 +00:00
Giorgos Keramidas
6ae8b92a79 tcsh: fix abort in cleanup_until(), caused by internal xgetpass()
The xgetpass() function pushes a cleanup entry for &osa, but then
attempts to flush the stack until an entry matching &sa.  The two
object pointers do not match, so the stack is popped too much,
and then cleanup_until calls abort() when it unexpectedly hits
the bottom of the cleanup stack.

Reported by:	Paul B. Mahol, onemda at gmail.com,
		Pietro Cerutti, gahr at gahr.ch
PR:		bin/124191
Reviewed by:	mp, kris
MFC after:	2 days
2008-07-20 18:05:18 +00:00
Xin LI
9a5e637124 Reapply a bugfix that was done as sh.lex.c,v 1.1.1.8 2008-03-12 23:01:33 +00:00
Xin LI
90eb3b443d This commit was generated by cvs2svn to compensate for changes in r177128,
which included commits to RCS files with non-trunk default branches.
2008-03-12 23:01:33 +00:00
Mark Peek
1dd6018d3b Import two vendor fixes from tcsh-6.15.01 for MFC to 7.0. The fixes are:
- Fix pty detection for autologout setting
    - kill `foo` got stuck because sigchld was disabled too soon

Requested by: re
2007-10-15 16:54:07 +00:00
Mark Peek
ea2138fc25 This commit was generated by cvs2svn to compensate for changes in r172668,
which included commits to RCS files with non-trunk default branches.
2007-10-15 16:54:07 +00:00
Mark Peek
5c3ede8519 Import two vendor fixes from tcsh-6.15.01 for MFC to 7.0. The fixes are:
- Fix pty detection for autologout setting
  - kill `foo` got stuck because sigchld was disabled too soon

Requested by: re
2007-10-15 15:23:07 +00:00
Mark Peek
8cb4dfcabd This commit was generated by cvs2svn to compensate for changes in r172665,
which included commits to RCS files with non-trunk default branches.
2007-10-15 15:23:07 +00:00
Mark Peek
4f796ffc7b Import vendor patch to fix postcmd regression in tcsh-6.15.00. 2007-04-03 15:51:53 +00:00
Mark Peek
a5d8788d0d This commit was generated by cvs2svn to compensate for changes in r168305,
which included commits to RCS files with non-trunk default branches.
2007-04-03 15:51:53 +00:00
Mark Peek
15aaece8bd Build updates for tcsh-6.15.00 import.
Reviewed by:	ume
Reminded by:	Divacky Roman
MFC after:	1 week
2007-03-11 22:41:19 +00:00
Mark Peek
45e5710bbb Import of tcsh-6.15.00 2007-03-11 22:33:41 +00:00
Mark Peek
4905cea5f2 This commit was generated by cvs2svn to compensate for changes in r167465,
which included commits to RCS files with non-trunk default branches.
2007-03-11 22:33:41 +00:00
Hajimu UMEMOTO
abaa31b2e9 Remove the nls/*/charset files to the exclude list. These files
are required for NLS catalog support.
2006-03-16 04:01:27 +00:00
Hajimu UMEMOTO
547e75d625 Import required files to enable use of libiconv from tcsh-6.14.00.
Reviewed by:	arch (no objection)
2006-02-19 06:28:39 +00:00
Hajimu UMEMOTO
649338a123 This commit was generated by cvs2svn to compensate for changes in r155832,
which included commits to RCS files with non-trunk default branches.
2006-02-19 06:28:39 +00:00
Mark Peek
23338178da Import of tcsh-6.14.00 2005-04-24 19:41:08 +00:00
Mark Peek
7c1eefa6b6 This commit was generated by cvs2svn to compensate for changes in r145479,
which included commits to RCS files with non-trunk default branches.
2005-04-24 19:41:08 +00:00
Mark Peek
740d776031 Add the nls/*/charset files to the exclude list. These files are not needed
and only provide comments in the text NLS files.
2004-07-11 02:20:52 +00:00
Mark Peek
b2d5d167ed Import of tcsh-6.13.00 2004-07-11 02:17:56 +00:00
Mark Peek
ed620727e2 This commit was generated by cvs2svn to compensate for changes in r131962,
which included commits to RCS files with non-trunk default branches.
2004-07-11 02:17:56 +00:00
Mark Peek
70fa9f6880 Document upgrade procedure. 2002-07-24 16:42:58 +00:00
Mark Peek
2930157267 Import of tcsh-6.12.00 2002-07-24 16:23:10 +00:00
Mark Peek
117e69e18e This commit was generated by cvs2svn to compensate for changes in r100616,
which included commits to RCS files with non-trunk default branches.
2002-07-24 16:23:10 +00:00
Mark Peek
ad35f55d45 - Add support for autodetection of *.euc?? and *.EUC locales.
- ja_JP.eucJP, ja_JP.EUC
  - ko_KR.eucKR, ko_KR.EUC
  - zn_CN.eucCN, zn_CN.EUC
- Add support for zh_TW.Big5
- Add ja_JP.Shift_JIS alias for ja_JP.SJIS

Submitted by: phantom
Approved by: Christos Zoulas <cristos@zoulas.com> - TCSH maintainer
2002-02-10 04:40:26 +00:00
Mark Peek
e751b85f6f This commit was generated by cvs2svn to compensate for changes in r90446,
which included commits to RCS files with non-trunk default branches.
2002-02-10 04:40:26 +00:00
Mark Peek
6767bd61d2 Import tcsh-6.11 2001-09-05 17:49:32 +00:00
Mark Peek
20b87d27d4 This commit was generated by cvs2svn to compensate for changes in r83098,
which included commits to RCS files with non-trunk default branches.
2001-09-05 17:49:32 +00:00
Kris Kennaway
28ae2e3a2b Import vendor fix for buffer overflow in HOME environment variable 2001-03-03 23:45:43 +00:00
Kris Kennaway
30b14dd1d0 This commit was generated by cvs2svn to compensate for changes in r73393,
which included commits to RCS files with non-trunk default branches.
2001-03-03 23:45:43 +00:00
Andrey A. Chernov
1b9b1d4d57 This file not present in 6.10 2000-11-30 21:07:50 +00:00
Andrey A. Chernov
3b6eaa7b1e Initial import of slightly trimmed tcsh 6.10 2000-11-30 21:05:33 +00:00
Kris Kennaway
b3a5f6c29d Import vendor fix for insecure temporary filename creation with the
'<<' operator, reported on bugtraq by proton <proton@ENERGYMECH.NET>
2000-11-04 22:23:19 +00:00
David E. O'Brien
b2be84b199 Offical fixes to allow longer lines in the history and tweak expand_lex()
useage.
2000-06-10 22:20:53 +00:00
David E. O'Brien
d9a02933d5 Offical fixes to quiet compiler warnings. 2000-06-10 22:07:54 +00:00
David E. O'Brien
00c801ed48 Offical fixes to the history and I18N bugs ache found. 2000-06-10 21:38:51 +00:00
David E. O'Brien
dc86a98eaf Offical fixes to the history and I18N bugs ache found. 2000-06-10 20:14:21 +00:00
David E. O'Brien
078e45bc3d history fix
Submitted by:	ache (forwarded to Christos Zoulas where fix was agreed to)
2000-05-02 20:00:07 +00:00
David E. O'Brien
959f4c6c47 This fix from christos@zoulas.com (Christos Zoulas) based on ache's
ports/shells/tcsh/patches/patch-ac fixes the problem with 8-bit characters
not highlighting properly.
2000-04-20 05:02:30 +00:00
David E. O'Brien
8e66bd9ec8 6.09.01 vendor update. 2000-04-20 04:22:36 +00:00
David E. O'Brien
c80476e4c3 Import the latest version of the 44BSD C-shell -- tcsh-6.09. 2000-04-15 04:41:27 +00:00