Subject: Re: illegal variable name error upon login
To: Zafer Aydogan <zafer@aydogan.de>
From: Paul Goyette <paul@whooppee.com>
List: current-users
Date: 07/14/2007 15:44:20
I got that recently when I updated to 4.99.23 and traced it down to the
'alias hup ...' line in ~root/.cshrc  I'm not sure if it was the $< part 
or the \!$ part.

After a couple logins, it went away before I could find the root cause.


On Sat, 14 Jul 2007, Zafer Aydogan wrote:

> Hello list,
>
> I'm getting this error, but I don't know what causes it.
> If I login (csh), the message "Illegal variable name" is printed.
> Screenshot: http://aydogan.org/login/illegal_variable_name.png
>
> I trussed it. The end looks like this:
>
> 435      1 csh      ioctl(0x3, FIOCLEX, 0)      = 0
>  435      1 csh      __fstat30(0x3, 0xbfbfecf4)  = 0
>  435      1 csh      __sigprocmask14(0x1, 0xbfbfedbc, 0xbfbfedac) = 0
>  435      1 csh      ioctl(0x3, TIOCGETA, 0xbfbfec70) Err#25 ENOTTY
>  435      1 csh      __sigprocmask14(0x3, 0xbfbfedac, 0) = 0
>  435      1 csh      lseek(0x3, 0, 0, 0, 0x1)    = 0
>  435      1 csh      lseek(0x3, 0, 0, 0, 0x1)    = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0x2, 0xbfbfec88, 0) = 0
>  435      1 csh      read(0x3, 0xbfbfbb5b, 0x1000) = 974
>      "#\t$NetBSD: dot.cshrc,v 1.16 2006/08/31 22:33:14 hubertf Exp $\n\nali"
>  435      1 csh      __sigprocmask14(0x1, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0x2, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0x1, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0x2, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0x1, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      close(0)                    Err#9 EBADF
>  435      1 csh      dup(0x13)                   = 0
>  435      1 csh      ioctl(0, FIONCLEX, 0)       = 0
>  435      1 csh      close(0x1)                  Err#9 EBADF
>  435      1 csh      dup(0x11)                   = 1
>  435      1 csh      ioctl(0x1, FIONCLEX, 0)     = 0
>  435      1 csh      close(0x2)                  Err#9 EBADF
>  435      1 csh      dup(0x12)                   = 2
>  435      1 csh      ioctl(0x2, FIONCLEX, 0)     = 0
>  435      1 csh      close(0)                    = 0
>  435      1 csh      close(0x1)                  = 0
>  435      1 csh      close(0x2)                  = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0x2, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0x1, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      close(0)                    Err#9 EBADF
>  435      1 csh      dup(0x13)                   = 0
>  435      1 csh      ioctl(0, FIONCLEX, 0)       = 0
>  435      1 csh      close(0x1)                  Err#9 EBADF
>  435      1 csh      dup(0x11)                   = 1
> 435      1 csh      ioctl(0x1, FIONCLEX, 0)     = 0
>  435      1 csh      close(0x2)                  Err#9 EBADF
>  435      1 csh      dup(0x12)                   = 2
>  435      1 csh      ioctl(0x2, FIONCLEX, 0)     = 0
>  435      1 csh      close(0)                    = 0
>  435      1 csh      close(0x1)                  = 0
>  435      1 csh      close(0x2)                  = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0x2, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0x1, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      close(0)                    Err#9 EBADF
>  435      1 csh      dup(0x13)                   = 0
>  435      1 csh      ioctl(0, FIONCLEX, 0)       = 0
>  435      1 csh      close(0x1)                  Err#9 EBADF
>  435      1 csh      dup(0x11)                   = 1
>  435      1 csh      ioctl(0x1, FIONCLEX, 0)     = 0
>  435      1 csh      close(0x2)                  Err#9 EBADF
>  435      1 csh      dup(0x12)                   = 2
>  435      1 csh      ioctl(0x2, FIONCLEX, 0)     = 0
>  435      1 csh      close(0)                    = 0
>  435      1 csh      close(0x1)                  = 0
>  435      1 csh      close(0x2)                  = 0
>  435      1 csh      __sigprocmask14(0, 0, 0x8068af8) = 0
>  435      1 csh      __sigprocmask14(0x2, 0xbfbfec88, 0) = 0
>  435      1 csh      __sigprocmask14(0x1, 0xbfbfec88, 0) = 0
>  435      1 csh      write(0x12, 0x806e800, 0x17) = 23
>      "Illegal variable name.\n"
>  435      1 csh      lseek(0x3, 0, 0, 0, 0x2)    = 974
>  435      1 csh      __sigprocmask14(0x3#
>
> and in fact, if I remove .cshrc, the error is gone.
> if I switch to /bin/sh or ksh, the error is gone aswell.
>
> Any ideas ?
>
> Zafer.
>

----------------------------------------------------------------------
|   Paul Goyette   | PGP DSS Key fingerprint: |  E-mail addresses:   |
| Customer Service | FA29 0E3B 35AF E8AE 6651 |  paul@whooppee.com   |
| Network Engineer | 0786 F758 55DE 53BA 7731 | pgoyette@juniper.net |
----------------------------------------------------------------------