From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18613 invoked from network); 23 Jun 2005 10:18:56 -0000 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by ns1.primenet.com.au with SMTP; 23 Jun 2005 10:18:56 -0000 Received: (qmail 49106 invoked from network); 23 Jun 2005 10:18:50 -0000 Received: from sunsite.dk (130.225.247.90) by a.mx.sunsite.dk with SMTP; 23 Jun 2005 10:18:50 -0000 Received: (qmail 9778 invoked by alias); 23 Jun 2005 10:18:47 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 21378 Received: (qmail 9766 invoked from network); 23 Jun 2005 10:18:47 -0000 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by sunsite.dk with SMTP; 23 Jun 2005 10:18:47 -0000 Received: (qmail 48776 invoked from network); 23 Jun 2005 10:18:47 -0000 Received: from grunt28.ihug.com.au (203.109.249.148) by a.mx.sunsite.dk with SMTP; 23 Jun 2005 10:18:40 -0000 Received: from 203-173-53-16.dyn.iinet.net.au (localhost.localdomain) [203.173.53.16] by grunt28.ihug.com.au with esmtp (Exim 3.35 #1 (Debian)) id 1DlOli-0001Vp-00; Thu, 23 Jun 2005 20:17:10 +1000 Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by localhost.localdomain (8.12.8/8.12.8) with ESMTP id j5NACvlC026492 for ; Thu, 23 Jun 2005 20:12:58 +1000 Received: (from doug@localhost) by localhost.localdomain (8.12.8/8.12.8/Submit) id j5NACtNY026490 for zsh-workers@sunsite.dk; Thu, 23 Jun 2005 20:12:55 +1000 X-Authentication-Warning: localhost.localdomain: doug set sender to dougkearns@gmail.com using -f Date: Thu, 23 Jun 2005 20:12:55 +1000 From: Doug Kearns To: zsh-workers@sunsite.dk Subject: Re: PATCH: new shells completion type Message-ID: <20050623101255.GE4591@localhost.localdomain> Mail-Followup-To: zsh-workers@sunsite.dk References: <20050622131158.GB4591@localhost.localdomain> <20050622140721.GB20412@artesyncp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20050622140721.GB20412@artesyncp.com> User-Agent: Mutt/1.4i X-Spam-Checker-Version: SpamAssassin 3.0.2 on a.mx.sunsite.dk X-Spam-Level: X-Spam-Status: No, score=-2.6 required=6.0 tests=AWL,BAYES_00 autolearn=ham version=3.0.2 X-Spam-Hits: -2.6 On Wed, Jun 22, 2005 at 03:07:21PM +0100, Stephane Chazelas wrote: > On Wed, Jun 22, 2005 at 11:11:58PM +1000, Doug Kearns wrote: > One sometimes wants to set a command that is not in /etc/shells > as the login shell on purpose (like /bin/false) to disable FTP > access. That could be "nologin", a script, whatever... OK, thanks. It looks like the useradd man page makes no mention of /etc/shells. Is it mostly, or was it originally, just for chsh? Which commands actually make use of /etc/shells? > As far as screen is concerned, that doesn't need to be a shell, > one might prefer to use "mc" or "elinks" or "emacs" for instance. Yes, I'll leave that as is... > > +else > > + shells=( ${(M)commands:#*/((|[abckz]|tc|ba)sh|false)} ) > > +fi > > What about dash (debian ash), rc, es... The Debian system I have access to adds: /usr/bin/es /usr/bin/rc /bin/sash /usr/bin/esh /bin/dash and, possibly overkill, but sendmail/conf.c lists: static char *DefaultUserShells[] = { "/bin/sh", /* standard shell */ # ifdef MPE "/SYS/PUB/CI", # else /* MPE */ "/usr/bin/sh", "/bin/csh", /* C shell */ "/usr/bin/csh", # endif /* MPE */ # ifdef __hpux # ifdef V4FS "/usr/bin/rsh", /* restricted Bourne shell */ "/usr/bin/ksh", /* Korn shell */ "/usr/bin/rksh", /* restricted Korn shell */ "/usr/bin/pam", "/usr/bin/keysh", /* key shell (extended Korn shell) */ "/usr/bin/posix/sh", # else /* V4FS */ "/bin/rsh", /* restricted Bourne shell */ "/bin/ksh", /* Korn shell */ "/bin/rksh", /* restricted Korn shell */ "/bin/pam", "/usr/bin/keysh", /* key shell (extended Korn shell) */ "/bin/posix/sh", "/sbin/sh", # endif /* V4FS */ # endif /* __hpux */ # if defined(_AIX3) || defined(_AIX4) "/bin/ksh", /* Korn shell */ "/usr/bin/ksh", "/bin/tsh", /* trusted shell */ "/usr/bin/tsh", "/bin/bsh", /* Bourne shell */ "/usr/bin/bsh", # endif /* defined(_AIX3) || defined(_AIX4) */ # if defined(__svr4__) || defined(__svr5__) "/bin/ksh", /* Korn shell */ "/usr/bin/ksh", # endif /* defined(__svr4__) || defined(__svr5__) */ # ifdef sgi "/sbin/sh", /* SGI's shells really live in /sbin */ "/usr/bin/sh", "/sbin/bsh", /* classic Bourne shell */ "/bin/bsh", "/usr/bin/bsh", "/sbin/csh", /* standard csh */ "/bin/csh", "/usr/bin/csh", "/sbin/jsh", /* classic Bourne shell w/ job control*/ "/bin/jsh", "/usr/bin/jsh", "/bin/ksh", /* Korn shell */ "/sbin/ksh", "/usr/bin/ksh", "/sbin/tcsh", /* Extended csh */ "/bin/tcsh", "/usr/bin/tcsh", # endif /* sgi */ NULL }; Any others? Regards, Doug