#!/bin/sh
# Copyright (c) 2007-2012 Meraki, Inc
# Copyright (c) 2017 Cisco Systems, Inc
# All rights reserved
#

. /usr/bin/pubfunc.sh
. /usr/cisco/bin/ciscosetup.sh

export PATH=/bin:/sbin:/usr/bin:/var/wireless:/usr/sbin:/opt/cisco/bin
MERAKI_BOARD=`cat /MERAKI_BOARD`

check_ewlcme_upgrade

ap_type=`get_ap_configured_type`
me_type=`get_me_ctrl_type`

if [ $me_type == "aireos" ]; then
    ip netns add switchdrvr
    ip netns exec switchdrvr ifconfig lo 127.0.0.1 netmask 255.255.255.0 up
    ip netns add dnsmasq_ns
    ip netns exec dnsmasq_ns ifconfig lo 127.0.0.1 netmask 255.255.255.0 up
    touch /var/run/netns/main
    mount --bind /proc/1/ns/net /var/run/netns/main
elif [ $me_type == "ewlc" ]; then
    # Check the AP configured type
    if [ $ap_type == "mob-exp" ]; then
        # Get MEMODE environment variable and check if it is SET
        me_mode_boot_var=`get_me_mode_boot_var`
        if [[ "${me_mode_boot_var}" == "MEMODE=1" ]] ;then
            echo "MEMODE variable is already set - Just proceed"
        else
            echo "*************************************************"
            echo "This AP is MEWLC capable AP"
            echo "Setting MEMODE boot variable and reloading the AP"
            echo "*************************************************"
            shared_setenv MEMODE 1
            /sbin/reboot -r "Change to ME Mode"
        fi
    else
        echo "AP type is configured CAPWAP - Not checking MEMODE boot var"
    fi
    ip netns add  ewlcme
    ip netns exec ewlcme ifconfig lo 127.0.0.1 netmask 255.255.255.0 up
    touch /var/run/netns/main
    mount --bind /proc/1/ns/net /var/run/netns/main
fi

#create /storage/application/wlc for rsync
mkdir -p /storage/application
mkdir -p /storage/application/wlc/
mkdir -p /storage/application/wlc/cfg
if [ $me_type == "ewlc" ]; then
    mkdir -p /part1/wlc/images
    mkdir -p /part2/wlc/images
    mkdir -p /part1/wlc/cfg
    mkdir -p /part1/wlc/shared
    mkdir -p /part2/wlc/harddisk
    if [ ! -f /part2/wlc/harddisk/crash_count ]; then
        echo 0 > /part2/wlc/harddisk/crash_count
        echo 0 > /part2/wlc/harddisk/recovery_mode
    fi
fi
chown -R rsyncuser.root /storage/application
