blob: 89d02e338bc33e4851bbf7b42e902e2502a90de1 [file] [log] [blame]
# Copyright (c) 2004-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# Contributed by Sven Wegener (swegener@gentoo.org)
# void autoipd_depend(void)
#
# Sets up the dependencies for the module
autoipd_depend() {
after interface
}
# void autoipd_expose(void)
#
# Expose variables that can be configured
autoipd_expose() {
variables autoipd
}
# bool autoipd_start(char *iface)
#
# Tries to configure the interface via avahi-autoipd
autoipd_start() {
local iface="${1}" ifvar="$(bash_variable "${iface}")" opts="autoipd_${ifvar}" addr=""
interface_exists "${iface}" true || return 1
ebegin "Starting avahi-autoipd"
if /usr/sbin/avahi-autoipd --daemonize --syslog --wait ${!opts} "${iface}"
then
eend 0
addr="$(interface_get_address "${iface}")"
einfo "${iface} received address ${addr}"
return 0
fi
eend "${?}" "Failed to get address via avahi-autoipd!"
}
# bool autoipd_stop(char *iface)
#
# Stops a running avahi-autoipd instance
autoipd_stop() {
local iface="${1}"
/usr/sbin/avahi-autoipd --check --syslog "${iface}" || return 0
ebegin "Stopping avahi-autoipd"
/usr/sbin/avahi-autoipd --kill --syslog "${iface}"
eend "${?}" "Failed to stop running avahi-autoipd instance!"
}
# vim: set ts=4 :