It's just declaring a lot of function scope variables, where killlevel
and pid_file
are assigned the empty string and the others are not assigned anything.
There is a slight difference. local
variables are also visible in functions called from the function. So if you happen to call killproc()
recursively, the uninitialized ones are remembered from the caller.
On Debian the lib/lsb/init-functions
file looks like this:
killproc() {
local pidfile sig status base name_param is_term_sig OPTIND
pidfile=
name_param=
is_term_sig=