Module Name: src
Committed By: joerg
Date: Sat Aug 27 17:43:42 UTC 2011
Modified Files:
src/sbin/init: init.c
Log Message:
Be more static
To generate a diff of this commit:
cvs rdiff -u -r1.100 -r1.101 src/sbin/init/init.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sbin/init/init.c
diff -u src/sbin/init/init.c:1.100 src/sbin/init/init.c:1.101
--- src/sbin/init/init.c:1.100 Tue Dec 29 17:07:17 2009
+++ src/sbin/init/init.c Sat Aug 27 17:43:42 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: init.c,v 1.100 2009/12/29 17:07:17 elad Exp $ */
+/* $NetBSD: init.c,v 1.101 2011/08/27 17:43:42 joerg Exp $ */
/*-
* Copyright (c) 1991, 1993
@@ -42,7 +42,7 @@
#if 0
static char sccsid[] = "@(#)init.c 8.2 (Berkeley) 4/28/95";
#else
-__RCSID("$NetBSD: init.c,v 1.100 2009/12/29 17:07:17 elad Exp $");
+__RCSID("$NetBSD: init.c,v 1.101 2011/08/27 17:43:42 joerg Exp $");
#endif
#endif /* not lint */
@@ -89,7 +89,7 @@
#define STALL_TIMEOUT 30 /* wait N secs after warning */
#define DEATH_WATCH 10 /* wait N secs for procs to die */
-const struct timespec dtrtime = {.tv_sec = 0, .tv_nsec = 250000};
+static const struct timespec dtrtime = {.tv_sec = 0, .tv_nsec = 250000};
#if defined(RESCUEDIR)
#define INIT_BSHELL RESCUEDIR "/sh"
@@ -101,19 +101,14 @@
#define INIT_PATH _PATH_STDPATH
#endif
-int main(int, char *[]);
+static void handle(sig_t, ...);
+static void delset(sigset_t *, ...);
-void handle(sig_t, ...);
-void delset(sigset_t *, ...);
-
-void stall(const char *, ...)
- __attribute__((__format__(__printf__,1,2)));
-void warning(const char *, ...)
- __attribute__((__format__(__printf__,1,2)));
-void emergency(const char *, ...)
- __attribute__((__format__(__printf__,1,2)));
-void disaster(int);
-void badsys(int);
+static void stall(const char *, ...) __printflike(1, 2);
+static void warning(const char *, ...) __printflike(1, 2);
+static void emergency(const char *, ...) __printflike(1, 2);
+__dead static void disaster(int);
+static void badsys(int);
/*
* We really need a recursive typedef...
@@ -131,18 +126,18 @@
#define CLEAN_TTYS 'T'
#define CATATONIA 'c'
-state_func_t single_user(void);
-state_func_t runcom(void);
-state_func_t read_ttys(void);
-state_func_t multi_user(void);
-state_func_t clean_ttys(void);
-state_func_t catatonia(void);
-state_func_t death(void);
+static state_func_t single_user(void);
+static state_func_t runcom(void);
+static state_func_t read_ttys(void);
+static state_func_t multi_user(void);
+static state_func_t clean_ttys(void);
+static state_func_t catatonia(void);
+static state_func_t death(void);
-enum { AUTOBOOT, FASTBOOT } runcom_mode = AUTOBOOT;
+static enum { AUTOBOOT, FASTBOOT } runcom_mode = AUTOBOOT;
-void transition(state_t);
-void setctty(const char *);
+static void transition(state_t);
+static void setctty(const char *);
typedef struct init_session {
int se_index; /* index of entry in ttys file */
@@ -160,39 +155,39 @@
struct init_session *se_next;
} session_t;
-void free_session(session_t *);
-session_t *new_session(session_t *, int, struct ttyent *);
-session_t *sessions;
-
-char **construct_argv(char *);
-void start_window_system(session_t *);
-void collect_child(pid_t, int);
-pid_t start_getty(session_t *);
-void transition_handler(int);
-void alrm_handler(int);
-int has_securelevel(void);
-void setsecuritylevel(int);
-int getsecuritylevel(void);
-int securelevel_present;
-int setupargv(session_t *, struct ttyent *);
-int clang;
-
-int start_session_db(void);
-void add_session(session_t *);
-void del_session(session_t *);
-session_t *find_session(pid_t);
-DB *session_db;
+static void free_session(session_t *);
+static session_t *new_session(session_t *, int, struct ttyent *);
+static session_t *sessions;
+
+static char **construct_argv(char *);
+static void start_window_system(session_t *);
+static void collect_child(pid_t, int);
+static pid_t start_getty(session_t *);
+static void transition_handler(int);
+static void alrm_handler(int);
+static int has_securelevel(void);
+static void setsecuritylevel(int);
+static int getsecuritylevel(void);
+static int securelevel_present;
+static int setupargv(session_t *, struct ttyent *);
+static int clang;
+
+static int start_session_db(void);
+static void add_session(session_t *);
+static void del_session(session_t *);
+static session_t *find_session(pid_t);
+static DB *session_db;
-int do_setttyent(void);
+static int do_setttyent(void);
#ifndef LETS_GET_SMALL
-state_t requested_transition = runcom;
+static state_t requested_transition = runcom;
-void clear_session_logs(session_t *, int);
-state_func_t runetcrc(int);
+static void clear_session_logs(session_t *, int);
+static state_func_t runetcrc(int);
#ifdef SUPPORT_UTMPX
static struct timeval boot_time;
-state_t current_state = death;
+static state_t current_state = death;
static void session_utmpx(const session_t *, int);
static void make_utmpx(const char *, const char *, int, pid_t,
const struct timeval *, int);
@@ -201,14 +196,14 @@
#endif
#ifdef CHROOT
-int did_multiuser_chroot = 0;
-char rootdir[PATH_MAX];
-int shouldchroot(void);
-int createsysctlnode(void);
+static int did_multiuser_chroot = 0;
+static char rootdir[PATH_MAX];
+static int shouldchroot(void);
+static int createsysctlnode(void);
#endif /* CHROOT */
#else /* LETS_GET_SMALL */
-state_t requested_transition = single_user;
+static state_t requested_transition = single_user;
#endif /* !LETS_GET_SMALL */
#ifdef MFS_DEV_IF_NO_CONSOLE
@@ -347,7 +342,7 @@
/*
* Associate a function with a signal handler.
*/
-void
+static void
handle(sig_t handler, ...)
{
int sig;
@@ -372,7 +367,7 @@
/*
* Delete a set of signals from a mask.
*/
-void
+static void
delset(sigset_t *maskp, ...)
{
int sig;
@@ -418,7 +413,7 @@
* to read it and to save log or hardcopy output if the problem is chronic).
* NB: should send a message to the session logger to avoid blocking.
*/
-void
+static void
stall(const char *message, ...)
{
va_list ap;
@@ -435,7 +430,7 @@
* If cpp had variadic macros, the two functions could be #defines for another.
* NB: should send a message to the session logger to avoid blocking.
*/
-void
+static void
warning(const char *message, ...)
{
va_list ap;
@@ -450,7 +445,7 @@
* Log an emergency message.
* NB: should send a message to the session logger to avoid blocking.
*/
-void
+static void
emergency(const char *message, ...)
{
va_list ap;
@@ -467,7 +462,7 @@
* These may arise if a system does not support sysctl.
* We tolerate up to 25 of these, then throw in the towel.
*/
-void
+static void
badsys(int sig)
{
static int badcount = 0;
@@ -480,7 +475,7 @@
/*
* Catch an unexpected signal.
*/
-void
+static void
disaster(int sig)
{
@@ -492,7 +487,7 @@
/*
* Check if securelevel is present.
*/
-int
+static int
has_securelevel(void)
{
#ifdef KERN_SECURELVL
@@ -516,7 +511,7 @@
/*
* Get the security level of the kernel.
*/
-int
+static int
getsecuritylevel(void)
{
#ifdef KERN_SECURELVL
@@ -542,7 +537,7 @@
/*
* Set the security level of the kernel.
*/
-void
+static void
setsecuritylevel(int newlevel)
{
#ifdef KERN_SECURELVL
@@ -572,7 +567,7 @@
* Change states in the finite state machine.
* The initial state is passed as an argument.
*/
-void
+static void
transition(state_t s)
{
@@ -595,7 +590,7 @@
* Close out the accounting files for a login session.
* NB: should send a message to the session logger to avoid blocking.
*/
-void
+static void
clear_session_logs(session_t *sp, int status)
{
#if defined(SUPPORT_UTMP) || defined(SUPPORT_UTMPX)
@@ -617,7 +612,7 @@
* Start a session and allocate a controlling terminal.
* Only called by children of init after forking.
*/
-void
+static void
setctty(const char *name)
{
int fd;
@@ -637,7 +632,7 @@
/*
* Bring the system up single user.
*/
-state_func_t
+static state_func_t
single_user(void)
{
pid_t pid, wpid;
@@ -822,7 +817,7 @@
#ifndef LETS_GET_SMALL
/* ARGSUSED */
-state_func_t
+static state_func_t
runetcrc(int trychroot)
{
pid_t pid, wpid;
@@ -917,7 +912,7 @@
/*
* Run the system startup script.
*/
-state_func_t
+static state_func_t
runcom(void)
{
state_func_t next_step;
@@ -964,7 +959,7 @@
*
* NB: We could pass in the size here; is it necessary?
*/
-int
+static int
start_session_db(void)
{
@@ -981,7 +976,7 @@
/*
* Add a new login session.
*/
-void
+static void
add_session(session_t *sp)
{
DBT key;
@@ -1005,7 +1000,7 @@
/*
* Delete an old login session.
*/
-void
+static void
del_session(session_t *sp)
{
DBT key;
@@ -1023,7 +1018,7 @@
/*
* Look up a login session by pid.
*/
-session_t *
+static session_t *
find_session(pid_t pid)
{
DBT key;
@@ -1044,7 +1039,7 @@
/*
* Construct an argument vector from a command line.
*/
-char **
+static char **
construct_argv(char *command)
{
int argc = 0;
@@ -1066,7 +1061,7 @@
/*
* Deallocate a session descriptor.
*/
-void
+static void
free_session(session_t *sp)
{
@@ -1085,7 +1080,7 @@
/*
* Allocate a new session descriptor.
*/
-session_t *
+static session_t *
new_session(session_t *sprev, int session_index, struct ttyent *typ)
{
session_t *sp;
@@ -1126,7 +1121,7 @@
/*
* Calculate getty and if useful window argv vectors.
*/
-int
+static int
setupargv(session_t *sp, struct ttyent *typ)
{
@@ -1163,7 +1158,7 @@
/*
* Walk the list of ttys and create sessions for each active line.
*/
-state_func_t
+static state_func_t
read_ttys(void)
{
int session_index = 0;
@@ -1231,7 +1226,7 @@
/*
* Start a window system running.
*/
-void
+static void
start_window_system(session_t *sp)
{
pid_t pid;
@@ -1262,7 +1257,7 @@
/*
* Start a login session running.
*/
-pid_t
+static pid_t
start_getty(session_t *sp)
{
pid_t pid;
@@ -1401,7 +1396,7 @@
* Collect exit status for a child.
* If an exiting login, start a new login running.
*/
-void
+static void
collect_child(pid_t pid, int status)
{
#ifndef LETS_GET_SMALL
@@ -1443,7 +1438,7 @@
/*
* Catch a signal and request a state transition.
*/
-void
+static void
transition_handler(int sig)
{
@@ -1469,7 +1464,7 @@
/*
* Take the system multiuser.
*/
-state_func_t
+static state_func_t
multi_user(void)
{
pid_t pid;
@@ -1510,7 +1505,7 @@
/*
* This is an n-squared algorithm. We hope it isn't run often...
*/
-state_func_t
+static state_func_t
clean_ttys(void)
{
session_t *sp, *sprev;
@@ -1575,7 +1570,7 @@
/*
* Block further logins.
*/
-state_func_t
+static state_func_t
catatonia(void)
{
session_t *sp;
@@ -1590,7 +1585,7 @@
/*
* Note SIGALRM.
*/
-void
+static void
/*ARGSUSED*/
alrm_handler(int sig)
{
@@ -1602,7 +1597,7 @@
/*
* Bring the system down to single user.
*/
-state_func_t
+static state_func_t
death(void)
{
session_t *sp;
@@ -1732,7 +1727,7 @@
}
#endif
-int
+static int
do_setttyent(void)
{
(void)endttyent();
@@ -1750,7 +1745,7 @@
#if !defined(LETS_GET_SMALL) && defined(CHROOT)
-int
+static int
createsysctlnode()
{
struct sysctlnode node;
@@ -1798,8 +1793,8 @@
return 0;
}
-int
-shouldchroot()
+static int
+shouldchroot(void)
{
struct sysctlnode node;
size_t len, cnt;