From: hzoli@cs.elte.hu (Zoltan Hidvegi)
To: hzoli@cs.elte.hu (Zoltan Hidvegi)
Subject: Re: logname in zsh-2.6b9
Date: Fri, 9 Jun 1995 18:45:30 +0100 (MET DST) [thread overview]
Message-ID: <9506091645.AA04655@turan.elte.hu> (raw)
In-Reply-To: <9506091625.AA03604@turan.elte.hu> from "Zoltan Hidvegi" at Jun 9, 95 06:25:15 pm
I've just noticed that I forgot the patch to globals.h. Sorry for that. Here
is the whole patch again with patch to globals.h. I also had a patch to the
manual which I also sent earlier and include now. This patch is necessary
because the present manual is wrong. This patch to the manual is necessary
even without the source code patch. I hope I did not forget anything this time
(I maintain about twohundred patches with RCS which are mostly bugfixes to zsh
:-))
Zoltan
*** Src/params.c.orig Fri Jun 9 18:11:23 1995
--- Src/params.c Fri Jun 9 18:09:33 1995
***************
*** 85,98 ****
IPDEF2("LANG", strgetfn, langsetfn, 0),
#endif
- #define IPDEF3(A) {NULL,A,NULL,IFN(nullsetfn),IFN(strconstgetfn),0,PMFLAG_r|\
- PMFLAG_SPECIAL,NULL,NULL,NULL,NULL,0}
- IPDEF3("HOSTTYPE"),
- IPDEF3("OSTYPE"),
- IPDEF3("MACHTYPE"),
- IPDEF3("VENDOR"),
- IPDEF3("ZSH_VERSION"),
-
#define IPDEF4(A,B) {NULL,A,NULL,IFN(nullsetfn),IFN(intvargetfn),10,\
PMFLAG_r|PMFLAG_i|PMFLAG_SPECIAL,(void *)B,NULL,NULL,NULL,0}
IPDEF4("!", &lastpid),
--- 85,90 ----
***************
*** 121,130 ****
#define IPDEF6(A,B) {NULL,A,NULL,IFN(nullsetfn),IFN(strvargetfn),0,\
PMFLAG_r|PMFLAG_SPECIAL,(void *)B,NULL,NULL,NULL,0}
- IPDEF6("LOGNAME", &logname),
IPDEF6("PWD", &pwd),
IPDEF6("TTY", &ttystrname),
- IPDEF6("USERNAME", &username),
#define IPDEF7(A,B) {NULL,A,NULL,IFN(strvarsetfn),IFN(strvargetfn),0,\
PMFLAG_SPECIAL,(void *)B,NULL,NULL,NULL,0}
--- 113,120 ----
***************
*** 196,207 ****
addhnode(ztrdup(ip->nam), ip, paramtab, (FFunc) 0);
argvparam = (Param) gethnode("argv", paramtab);
! ((struct iparam *)gethnode("HOSTTYPE", paramtab))->data = (void *) ztrdup(HOSTTYPE);
! ((struct iparam *)gethnode("OSTYPE", paramtab))->data = (void *) ztrdup(OSTYPE);
! ((struct iparam *)gethnode("MACHTYPE", paramtab))->data = (void *) ztrdup(MACHTYPE);
! ((struct iparam *)gethnode("VENDOR", paramtab))->data = (void *) ztrdup(VENDOR);
! ((struct iparam *)gethnode("ZSH_VERSION",paramtab))->data = (void *) ztrdup(ZSH_VERSION);
!
noerrs = 1;
for (envp = environ, ct = 2; *envp; envp++, ct++);
envp = environ;
--- 186,192 ----
addhnode(ztrdup(ip->nam), ip, paramtab, (FFunc) 0);
argvparam = (Param) gethnode("argv", paramtab);
! setsparam("LOGNAME", ztrdup(username));
noerrs = 1;
for (envp = environ, ct = 2; *envp; envp++, ct++);
envp = environ;
***************
*** 242,254 ****
pm = (struct param *)gethnode("LOGNAME", paramtab);
if (!(pm->flags & PMFLAG_x)) {
pm->flags |= PMFLAG_x;
! pm->env = addenv("LOGNAME", logname);
}
pm = (struct param *)gethnode("SHLVL", paramtab);
if (!(pm->flags & PMFLAG_x))
pm->flags |= PMFLAG_x;
sprintf(buf, "%d", (int)++shlvl);
pm->env = addenv("SHLVL", buf);
noerrs = 0;
}
--- 227,245 ----
pm = (struct param *)gethnode("LOGNAME", paramtab);
if (!(pm->flags & PMFLAG_x)) {
pm->flags |= PMFLAG_x;
! pm->env = addenv("LOGNAME", pm->u.str);
}
pm = (struct param *)gethnode("SHLVL", paramtab);
if (!(pm->flags & PMFLAG_x))
pm->flags |= PMFLAG_x;
sprintf(buf, "%d", (int)++shlvl);
pm->env = addenv("SHLVL", buf);
+ setsparam("HOSTTYPE", ztrdup(HOSTTYPE));
+ setsparam("OSTYPE", ztrdup(OSTYPE));
+ setsparam("MACHTYPE", ztrdup(MACHTYPE));
+ setsparam("VENDOR", ztrdup(VENDOR));
+ setsparam("ZSH_VERSION", ztrdup(ZSH_VERSION));
+ setsparam("USERNAME", ztrdup(username));
noerrs = 0;
}
*** Src/init.c.orig Fri Jun 9 18:08:43 1995
--- Src/init.c Fri Jun 9 18:09:47 1995
***************
*** 519,531 ****
else
home = ztrdup("/");
! if (!(logname = getlogin())) {
if (pswd)
! logname = ztrdup(pswd->pw_name);
else
! logname = ztrdup("");
}
- username = ztrdup(logname);
/* Try a cheap test to see if we can *
* initialize $PWD from $HOME */
--- 519,530 ----
else
home = ztrdup("/");
! if (!(username = getlogin())) {
if (pswd)
! username = ztrdup(pswd->pw_name);
else
! username = ztrdup("");
}
/* Try a cheap test to see if we can *
* initialize $PWD from $HOME */
rcsdiff -qc -kk -r1.6 -r1.7 Src/globals.h
*** Src/globals.h
--- Src/globals.h 1995/06/02 16:37:56
***************
*** 294,301 ****
EXTERN char *hsubr;
! EXTERN char *logname; /* $LOGNAME */
! EXTERN char *username; /* $USERNAME */
EXTERN long lastval; /* $? */
EXTERN long baud; /* $BAUD */
EXTERN long columns; /* $COLUMNS */
--- 294,303 ----
EXTERN char *hsubr;
! /* the username corresponding to the real userid at startup */
!
! EXTERN char *username;
!
EXTERN long lastval; /* $? */
EXTERN long baud; /* $BAUD */
EXTERN long columns; /* $COLUMNS */
rcsdiff -qc -kk -r1.6 -r1.7 zshparam.1
*** Doc/zshparam.1
--- Doc/zshparam.1 1995/06/02 18:12:39
***************
*** 183,190 ****
being executed.
.TP
.B LOGNAME
! The username corresponding to the user id of the shell process.
! (The same as USERNAME).
.TP
.B MACHTYPE
The machine type (microprocessor class or machine model),
--- 183,192 ----
being executed.
.TP
.B LOGNAME
! If the corresponding variable is not set in the environment of the
! shell, it is initialized to the username corresponding to the real
! user id of the shell process on startup. This parameter is exported
! by default but this can be disabled using the \fBtypeset\fP builtin.
.TP
.B MACHTYPE
The machine type (microprocessor class or machine model),
***************
*** 238,245 ****
The user id of the shell process.
.TP
.B USERNAME
! The username corresponding to the user id of the shell process.
! (The same as LOGNAME).
.TP
.B VENDOR
The vendor, as determined at compile time.
--- 240,247 ----
The user id of the shell process.
.TP
.B USERNAME
! The username corresponding to the real user id of the shell process.
! It is only intialised on startup.
.TP
.B VENDOR
The vendor, as determined at compile time.
next prev parent reply other threads:[~1995-06-09 16:50 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
1995-06-07 22:34 Ted Scharlemann
1995-06-09 17:25 ` Zoltan Hidvegi
1995-06-09 17:45 ` Zoltan Hidvegi [this message]
1995-06-09 21:02 ` Richard Coleman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9506091645.AA04655@turan.elte.hu \
--to=hzoli@cs.elte.hu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).