Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Jan 2007 11:57:12 -0500
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   Re: PERFORCE change 113090 for review
Message-ID:  <200701181157.13834.jkim@FreeBSD.org>
In-Reply-To: <200701180917.15131.jhb@freebsd.org>
References:  <200701180243.l0I2hcLn035071@repoman.freebsd.org> <200701180917.15131.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 18 January 2007 09:17 am, John Baldwin wrote:
> On Wednesday 17 January 2007 21:43, Jung-uk Kim wrote:
> > http://perforce.freebsd.org/chv.cgi?CH=113090
> >
> > Change 113090 by jkim@jkim_hammer on 2007/01/18 02:43:32
> >
> > 	- Add Linux kernel version strings to /proc/sys/kernel.
> > 	- Properly implement OS build date string instead of using fake
> > one.
> >
> > Affected files ...
> >
> > ..
> > //depot/projects/linuxolator/src/sys/compat/linprocfs/linprocfs.c
> >#8 edit
> >
> > Differences ...
> >
> > ====
> > //depot/projects/linuxolator/src/sys/compat/linprocfs/linprocfs.c
> >#8 (text+ko) ====
> >
> > @@ -416,6 +416,37 @@
> >  }
> >
> >  /*
> > + * Get OS build date
> > + */
> > +static void
> > +linprocfs_osbuild(struct thread *td, struct sbuf *sb)
> > +{
> > +	char osbuild[256];
> > +	int kern_ver[2];
> > +	size_t size;
> > +	char *cp1, *cp2;
> > +
> > +	cp1 = NULL;
> > +	kern_ver[0] = CTL_KERN;
> > +	kern_ver[1] = KERN_VERSION;
> > +	osbuild[0] = '\0';
> > +	size = sizeof(osbuild);
> > +	if (kernel_sysctl(td, kern_ver, 2, &osbuild, &size, 0, 0, 0, 0)
> > == 0) { +		cp1 = strstr(osbuild, "\n");
> > +		cp2 = strstr(osbuild, ":");
> > +		if (cp1 && cp2) {
> > +			*cp1 = *cp2 = '\0';
> > +			cp1 = strstr(osbuild, "#");
> > +		} else
> > +			cp1 = NULL;
> > +	}
> > +	if (cp1)
> > +		sbuf_printf(sb, "%s%s", cp1, cp2 + 1);
> > +	else
> > +		sbuf_printf(sb, "#4 Sun Dec 18 04:30:00 CET 1977");
> > +}
>
> You can just reference the 'version' global variable w/o having to
> bounce through the sysctl.  It's defined in <sys/systm.h>.

Actually I thought about that but I implemented this way for no 
apparent reason. :-)  I will just grab sys/systm.h in the next 
revision and I will parse builder string as well.

Thanks,

Jung-uk Kim



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200701181157.13834.jkim>