blob: 17052d2dbe36ba6e16929a5f804e9f02ecc62f88 [file] [log] [blame]
#
# Copyright (C) 2014 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
description "Run the access point manager daemon"
author "chromium-os-dev@chromium.org"
start on stopped iptables and stopped ip6tables and started shill
stop on stopping system-services
env APMANAGER_LOG_LEVEL=0
pre-start script
# Load the module that provides the WiFi configuration API, since
# apmanager will abort if that API is not available. In most cases,
# cfg80211 will be loaded implicitly when the device driver is
# loaded (in preload-network). However, this deals with the
# first-boot case, in case apmanager starts before the device driver is
# loaded.
modprobe cfg80211 ||
logger -p err -t "$UPSTART_JOB" "Failed to load cfg80211"
# Create directory for storing config files.
mkdir -m 0755 -p /var/run/apmanager/hostapd
mkdir -m 0755 -p /var/run/apmanager/dnsmasq
chown -R apmanager:apmanager /var/run/apmanager/hostapd
chown -R apmanager:apmanager /var/run/apmanager/dnsmasq
end script
exec /usr/bin/apmanager --v="${APMANAGER_LOG_LEVEL}"