Module Name: src
Committed By: ad
Date: Sun Mar 29 10:58:28 UTC 2009
Modified Files:
src/sys/kern: init_main.c
src/sys/sys: systm.h
Log Message:
Add a cental banner() function to print the copyright and version info.
To generate a diff of this commit:
cvs rdiff -u -r1.384 -r1.385 src/sys/kern/init_main.c
cvs rdiff -u -r1.234 -r1.235 src/sys/sys/systm.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/kern/init_main.c
diff -u src/sys/kern/init_main.c:1.384 src/sys/kern/init_main.c:1.385
--- src/sys/kern/init_main.c:1.384 Sat Mar 21 14:41:30 2009
+++ src/sys/kern/init_main.c Sun Mar 29 10:58:28 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: init_main.c,v 1.384 2009/03/21 14:41:30 ad Exp $ */
+/* $NetBSD: init_main.c,v 1.385 2009/03/29 10:58:28 ad Exp $ */
/*-
* Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
@@ -97,7 +97,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: init_main.c,v 1.384 2009/03/21 14:41:30 ad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: init_main.c,v 1.385 2009/03/29 10:58:28 ad Exp $");
#include "opt_ddb.h"
#include "opt_ipsec.h"
@@ -912,3 +912,40 @@
}
return t;
}
+
+/*
+ * Print the system start up banner.
+ *
+ * - Print a limited banner if AB_SILENT.
+ * - Always send normal banner to the log.
+ */
+void
+banner(void)
+{
+ static char notice[] = " Notice: this software is "
+ "protected by copyright";
+ char pbuf[80];
+ void (*pr)(const char *, ...);
+ int i;
+
+ if ((boothowto & AB_SILENT) != 0) {
+ snprintf(pbuf, sizeof(pbuf), "%s %s (%s)",
+ ostype, osrelease, kernel_ident);
+ printf("%s", pbuf);
+ for (i = 80 - strlen(pbuf) - sizeof(notice); i != 0; i--)
+ printf(" ");
+ printf("%s\n", notice);
+ pr = aprint_normal;
+ } else {
+ pr = printf;
+ }
+
+ memset(pbuf, 0, sizeof(pbuf));
+ (*pr)("%lld physmem\n", (long long)ptoa(physmem));
+ (*pr)("%lld free\n", (long long)ptoa(uvmexp.free));
+ (*pr)("%s%s", copyright, version);
+ format_bytes(pbuf, sizeof(pbuf), ctob((uint64_t)physmem));
+ (*pr)("total memory = %s\n", pbuf);
+ format_bytes(pbuf, sizeof(pbuf), ctob((uint64_t)uvmexp.free));
+ (*pr)("avail memory = %s\n", pbuf);
+}
Index: src/sys/sys/systm.h
diff -u src/sys/sys/systm.h:1.234 src/sys/sys/systm.h:1.235
--- src/sys/sys/systm.h:1.234 Mon Feb 23 20:27:59 2009
+++ src/sys/sys/systm.h Sun Mar 29 10:58:28 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: systm.h,v 1.234 2009/02/23 20:27:59 rmind Exp $ */
+/* $NetBSD: systm.h,v 1.235 2009/03/29 10:58:28 ad Exp $ */
/*-
* Copyright (c) 1982, 1988, 1991, 1993
@@ -216,6 +216,7 @@
int humanize_number(char *, size_t, uint64_t, const char *, int);
void twiddle(void);
+void banner(void);
#endif /* _KERNEL */
void panic(const char *, ...)