From owner-freebsd-stable Mon Sep 23 13: 7:41 2002 Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8640237B404 for ; Mon, 23 Sep 2002 13:07:39 -0700 (PDT) Received: from chen.org.nz (chen.org.nz [210.54.19.51]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E1D743E4A for ; Mon, 23 Sep 2002 13:07:38 -0700 (PDT) (envelope-from jonc@chen.org.nz) Received: from grimoire.chen.org.nz (localhost [127.0.0.1]) by chen.org.nz (8.12.6/8.12.6) with ESMTP id g8NK6D5Q003103; Tue, 24 Sep 2002 08:06:13 +1200 (NZST) (envelope-from jonc@grimoire.chen.org.nz) Received: (from jonc@localhost) by grimoire.chen.org.nz (8.12.6/8.12.6/Submit) id g8NK6CZK003102; Tue, 24 Sep 2002 08:06:12 +1200 (NZST) Date: Tue, 24 Sep 2002 08:06:12 +1200 From: Jonathan Chen To: Andrew Gordon Cc: AlanE , FreeBSD Stable List Subject: Re: Weird uptime(1) output Message-ID: <20020923200612.GC2872@grimoire.chen.org.nz> References: <20020923033214.GB48084@wwweasel.geeksrus.net> <20020923110213.L2298-100000@server.arg.sj.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20020923110213.L2298-100000@server.arg.sj.co.uk> User-Agent: Mutt/1.4i Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Mon, Sep 23, 2002 at 04:18:51PM +0100, Andrew Gordon wrote: [...] > 3) This patch doesn't fix the problem, it just avoids it. > While it would be useful to have inactivity information about > X terminals, I can't see any way to get at it. Certainly, there > is nothing on the local machine that holds the information > (the user might be interacting with an application running on > another machine), so 'w' would need to ask the X server, and > I don't believe that a mechanism exists for it to do so. > > > --- usr.bin/w/w.c 12 Mar 2002 19:51:51 -0000 1.38.2.6 > +++ usr.bin/w/w.c 23 Sep 2002 15:00:45 -0000 > @@ -504,6 +504,12 @@ > static struct stat sb; > char ttybuf[MAXPATHLEN]; > > + if (line[0] == ':') { > + /* Assume an X login via sessreg */ > + time(&sb.st_atime); > + sb.st_rdev = -1; > + return (&sb); > + } > (void)snprintf(ttybuf, sizeof(ttybuf), "%s%.*s", _PATH_DEV, sz, > line); > if (stat(ttybuf, &sb)) { > warn("%s", ttybuf); > The patch doesn't work if you have a remote X-server logging onto the system, as $DISPLAY will be "host:0.0" in most cases. Perhaps an index(3) on line? Cheers. -- Jonathan Chen ---------------------------------------------------------------------- Power corrupts, Absolute Power is pretty neat To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message