Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: logname in zsh-2.6b9
- X-seq: zsh-workers 94
- From: hzoli@xxxxxxxxxx (Zoltan Hidvegi)
- To: hzoli@xxxxxxxxxx (Zoltan Hidvegi)
- Subject: Re: logname in zsh-2.6b9
- Date: Fri, 9 Jun 1995 18:45:30 +0100 (MET DST)
- In-reply-to: <9506091625.AA03604@xxxxxxxxxxxxx> from "Zoltan Hidvegi" at Jun 9, 95 06:25:15 pm
- Sender: hzoli@xxxxxxxxxx
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.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author