SHA256
1
0
forked from pool/tcsh
tcsh/tcsh-6.21.00.dif

220 lines
5.4 KiB
Plaintext

---
config/linux | 10 ++++++++++
config_f.h | 9 +++++++--
glob.h | 3 ++-
pathnames.h | 2 +-
sh.c | 3 +++
tc.alloc.c | 10 ++++++----
tc.func.c | 8 ++++++--
tc.str.c | 2 +-
tc.who.c | 3 +++
tcsh.man | 2 +-
tw.h | 4 ++++
11 files changed, 44 insertions(+), 12 deletions(-)
--- config/linux
+++ config/linux 2019-05-09 08:41:54.237060106 +0000
@@ -92,6 +92,9 @@
#ifndef _SVID_SOURCE
# define _SVID_SOURCE
#endif
+#ifndef _DEFAULT_SOURCE
+# define _DEFAULT_SOURCE
+#endif
#ifndef _POSIX_SOURCE
# define _POSIX_SOURCE
#endif
@@ -132,4 +135,11 @@
# define POSIX
#endif
+#if !defined(PW_SHADOW)
+# define PW_SHADOW
+#endif
+#if !defined(SuSE)
+# define SuSE
+#endif
+
#endif /* _h_config */
--- config_f.h
+++ config_f.h 2019-05-09 08:41:54.237060106 +0000
@@ -63,7 +63,12 @@
/*
* LOGINFIRST Source ~/.login before ~/.cshrc
*/
-#undef LOGINFIRST
+#define LOGINFIRST
+
+/*
+ * USERLOGINFIRST Source ~/.login before ~/.cshrc
+ */
+#undef USERLOGINFIRST
/*
* VIDEFAULT Make the VI mode editor the default
@@ -157,7 +162,7 @@
* successful, set $REMOTEHOST to the name or address of the
* host
*/
-#define REMOTEHOST
+#undef REMOTEHOST
/*
* COLOR_LS_F Do you want to use builtin color ls-F ?
--- glob.h
+++ glob.h 2019-05-09 08:41:54.237060106 +0000
@@ -72,6 +72,7 @@ typedef struct {
#define GLOB_NOSYS (-4) /* Implementation does not support function. */
/* #if !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE) */
+#if (!defined _POSIX_C_SOURCE || _POSIX_C_SOURCE < 2 || defined _BSD_SOURCE || defined _GNU_SOURCE)
#define GLOB_ALTDIRFUNC 0x0040 /* Use alternately specified directory funcs. */
#define GLOB_BRACE 0x0080 /* Expand braces ala csh. */
#define GLOB_MAGCHAR 0x0100 /* Pattern had globbing characters. */
@@ -84,7 +85,7 @@ typedef struct {
#define GLOB_DOT 0x8000 /* don't skip dotfiles (except . and ..) */
#define GLOB_ABEND GLOB_ABORTED /* source compatibility */
-/* #endif */
+#endif
int glob (const char *, int, int (*)(const char *, int), glob_t *);
void globfree (glob_t *);
--- pathnames.h
+++ pathnames.h 2019-05-09 08:41:54.237060106 +0000
@@ -83,7 +83,7 @@
# endif /* !_PATH_DOTLOGIN */
#endif /* sgi || OREO || cray || AMIX || CDC */
-#if (defined(_CRAYCOM) || defined(Lynx)) && !defined(_PATH_TCSHELL)
+#if (defined(_CRAYCOM) || defined(Lynx) || defined(linux)) && !defined(_PATH_TCSHELL)
# define _PATH_TCSHELL "/bin/tcsh" /* 1st class shell */
#endif /* _CRAYCOM && !_PATH_TCSHELL */
--- sh.c
+++ sh.c 2019-05-09 08:41:54.237060106 +0000
@@ -1346,6 +1346,9 @@ main(int argc, char **argv)
setintr = osetintr;
parintr = oparintr;
}
+#ifndef USERLOGINFIRST
+# undef LOGINFIRST
+#endif
#ifdef LOGINFIRST
if (loginsh)
(void) srccat(varval(STRhome), STRsldotlogin);
--- tc.alloc.c
+++ tc.alloc.c 2019-05-09 08:41:54.237060106 +0000
@@ -518,7 +518,7 @@ smalloc(size_t n)
{
ptr_t ptr;
- n = n ? n : 1;
+ n = n ? n+1 : 1;
#ifdef USE_SBRK
if (membot == NULL)
@@ -541,7 +541,7 @@ srealloc(ptr_t p, size_t n)
{
ptr_t ptr;
- n = n ? n : 1;
+ n = n ? n+1 : 1;
#ifdef USE_SBRK
if (membot == NULL)
@@ -565,7 +565,7 @@ scalloc(size_t s, size_t n)
ptr_t ptr;
n *= s;
- n = n ? n : 1;
+ n = n ? n+1 : 1;
#ifdef USE_SBRK
if (membot == NULL)
@@ -590,8 +590,10 @@ scalloc(size_t s, size_t n)
void
sfree(ptr_t p)
{
- if (p && !dont_free)
+ if (p && !dont_free) {
free(p);
+ p = (ptr_t)NULL;
+ }
}
#endif /* SYSMALLOC */
--- tc.func.c
+++ tc.func.c 2019-05-09 08:41:54.237060106 +0000
@@ -721,9 +721,13 @@ auto_lock(void)
handle_pending_signals();
errno = 0;
}
- if (spw != NULL) /* shadowed passwd */
+ if (spw != NULL) /* shadowed passwd */
srpp = spw->sp_pwdp;
+ else
+ srpp = pw->pw_passwd; /* nis extended passwd? */
}
+ endspent();
+ endpwent();
#else
@@ -1937,7 +1941,7 @@ getremotehost(int dest_fd)
* have not caught up yet.
*/
addr.s_addr = inet_addr(name);
- if (addr.s_addr != (unsigned int)~0)
+ if (addr.s_addr != ~0U)
host = name;
else {
if (sptr != name) {
--- tc.str.c
+++ tc.str.c 2019-05-09 08:41:54.241060031 +0000
@@ -347,7 +347,7 @@ s_strlen(const Char *str)
{
size_t n;
- for (n = 0; *str++; n++)
+ for (n = 0; str && *str; n++, str++)
continue;
return (n);
}
--- tc.who.c
+++ tc.who.c 2019-05-09 08:41:54.241060031 +0000
@@ -259,6 +259,9 @@ watch_login(int force)
}
stlast = sta.st_mtime;
#if defined(HAVE_GETUTENT) || defined(HAVE_GETUTXENT)
+# ifndef HAVE_UTMPX_H
+ utmpname( _PATH_UTMP );
+# endif
setutent();
#else
if ((utmpfd = xopen(TCSH_PATH_UTMP, O_RDONLY|O_LARGEFILE)) < 0) {
--- tcsh.man
+++ tcsh.man 2019-05-09 08:41:54.241060031 +0000
@@ -602,7 +602,7 @@ Repeating \fIdabbrev-expand\fR without a
changes to the next previous word etc., skipping identical matches
much like \fIhistory-search-backward\fR does.
.TP 8
-.B delete-char \fR(not bound)
+.B delete-char \fR(bound to `Del' if using the standard \fI/etc/csh.cshrc\fR)
Deletes the character under the cursor.
See also \fIdelete-char-or-list-or-eof\fR.
Cursor behavior modified by \fBvimode\fR.
--- tw.h
+++ tw.h 2019-05-09 08:41:54.241060031 +0000
@@ -32,6 +32,10 @@
#ifndef _h_tw
#define _h_tw
+#ifndef _h_sh
+# include "sh.h"
+#endif
+
#define TW_PATH 0x1000
#define TW_ZERO 0x0fff