diff --git a/bsp/board/domo/ovl/etc/init.d/boot b/bsp/board/domo/ovl/etc/init.d/boot index a0e63a8a..c0d94ee0 100755 --- a/bsp/board/domo/ovl/etc/init.d/boot +++ b/bsp/board/domo/ovl/etc/init.d/boot @@ -11,17 +11,15 @@ boot() { echo "Reset the Device Name to Factory." mkdir -p /mnt/user/UserSettings/ rm /mnt/user/UserSettings/* - /usr/local/bin/Device_Name mediaCTRLRenderer.ini mediaCTRLServer.ini SlavePlayer.ini + /usr/local/bin/devicename mediaCTRLRenderer.ini mediaCTRLServer.ini SlavePlayer.ini + mkdir -p /mnt/user/uci/ + rm /mnt/user/uci/* fw_setenv is_configured 1 fi # Set our device Hostname using the friendlyName - friendlyname=`cat /usr/local/configs/mediaCTRLRenderer.ini | grep friendlyname | cut -f2 -d'='` + friendlyname=`cat /usr/local/configs/mediaCTRLRenderer.i + ni | grep friendlyname | cut -f2 -d'='` mac=`fw_printenv ethaddr | cut -f4-6 -d':' | sed s/://g` hostname $friendlyname-$mac echo Device hostname is `hostname` - - # Temporary Hack - #ifconfig lo up - #ifconfig eth0 up - #udhcpc -i eth0 } diff --git a/bsp/board/domo/ovl/etc/init.d/logd b/bsp/board/domo/ovl/etc/init.d/logd new file mode 100644 index 00000000..8e752b0e --- /dev/null +++ b/bsp/board/domo/ovl/etc/init.d/logd @@ -0,0 +1,24 @@ +#!/bin/sh /etc/rc.common +# +# Start Log Daemon + +START=20 +STOP=50 + +NAME=logd + +PROG=/usr/sbin/$NAME +PIDFILE=/var/run/$NAME.pid + +USE_PROCD=1 + +# PROCD_DEBUG=1 + +start_service () { + + procd_open_instance + procd_set_param command "$PROG" + procd_set_param pidfile "$PIDFILE" + procd_set_param respawn + procd_close_instance +} diff --git a/bsp/board/domo/ovl/etc/init.d/mountd b/bsp/board/domo/ovl/etc/init.d/mountd new file mode 100644 index 00000000..772bd6ed --- /dev/null +++ b/bsp/board/domo/ovl/etc/init.d/mountd @@ -0,0 +1,22 @@ +#!/bin/sh /etc/rc.common + +START=80 + +SERVICE_DAEMONIZE=1 +SERVICE_WRITE_PID=1 +SERVICE_PID_FILE=/var/run/mountd.pid + +MOUNTD_BIN=/sbin/mountd + +start() +{ + P="$(uci get mountd.mountd.path)" + [ -n "$P" -a ! -f "$P" ] && mkdir -p $P + + service_start $MOUNTD_BIN -f +} + +stop() +{ + service_stop $MOUNTD_BIN +} diff --git a/bsp/board/domo/ovl/etc/init.d/usergo b/bsp/board/domo/ovl/etc/init.d/usergo new file mode 100644 index 00000000..a398a138 --- /dev/null +++ b/bsp/board/domo/ovl/etc/init.d/usergo @@ -0,0 +1,11 @@ +#!/bin/sh /etc/rc.common +# + +START=11 + +boot() { + if [ -e "/mnt/user/usergo.sh" ]; then + echo "starting user script before launching apps..." + /mnt/user/usergo.sh + fi +} diff --git a/bsp/board/domo/ovl/etc/inittab b/bsp/board/domo/ovl/etc/inittab index c69cd4ba..2379ea4e 100644 --- a/bsp/board/domo/ovl/etc/inittab +++ b/bsp/board/domo/ovl/etc/inittab @@ -1,3 +1,6 @@ +# now run any rc scripts ::sysinit:/etc/init.d/rcS S boot +# Put a getty on the serial port +console::respawn:/sbin/getty -L console 0 vt102 # GENERIC_SERIAL +# Stuff to do before rebooting ::shutdown:/etc/init.d/rcS K shutdown -::respawn:/sbin/getty -L 115200 console vt100 diff --git a/bsp/board/domo/ovl/etc/sysctl.conf b/bsp/board/domo/ovl/etc/sysctl.conf new file mode 100644 index 00000000..91a3ac9a --- /dev/null +++ b/bsp/board/domo/ovl/etc/sysctl.conf @@ -0,0 +1,30 @@ +kernel.panic=3 +kernel.core_pattern=/tmp/%e.%t.%p.%s.core + +net.ipv4.conf.default.arp_ignore=1 +net.ipv4.conf.all.arp_ignore=1 +net.ipv4.ip_forward=1 +net.ipv4.icmp_echo_ignore_broadcasts=1 +net.ipv4.icmp_ignore_bogus_error_responses=1 +net.ipv4.igmp_max_memberships=100 +net.ipv4.tcp_fin_timeout=30 +net.ipv4.tcp_keepalive_time=120 +net.ipv4.tcp_syncookies=1 +net.ipv4.tcp_timestamps=1 +net.ipv4.tcp_sack=1 +net.ipv4.tcp_dsack=1 + +net.ipv6.conf.default.forwarding=1 +net.ipv6.conf.all.forwarding=1 + +net.netfilter.nf_conntrack_acct=1 +net.netfilter.nf_conntrack_checksum=0 +net.netfilter.nf_conntrack_max=16384 +net.netfilter.nf_conntrack_tcp_timeout_established=7440 +net.netfilter.nf_conntrack_udp_timeout=60 +net.netfilter.nf_conntrack_udp_timeout_stream=180 + +# disable bridge firewalling by default +net.bridge.bridge-nf-call-arptables=0 +net.bridge.bridge-nf-call-ip6tables=0 +net.bridge.bridge-nf-call-iptables=0 diff --git a/bsp/board/domo/ovl/lib/netifd/hostapd.sh b/bsp/board/domo/ovl/lib/netifd/hostapd.sh new file mode 100644 index 00000000..005112d8 --- /dev/null +++ b/bsp/board/domo/ovl/lib/netifd/hostapd.sh @@ -0,0 +1,749 @@ +. /lib/functions/network.sh + +wpa_supplicant_add_rate() { + local var="$1" + local val="$(($2 / 1000))" + local sub="$((($2 / 100) % 10))" + append $var "$val" "," + [ $sub -gt 0 ] && append $var "." +} + +hostapd_add_rate() { + local var="$1" + local val="$(($2 / 100))" + append $var "$val" " " +} + +hostapd_append_wep_key() { + local var="$1" + + wep_keyidx=0 + set_default key 1 + case "$key" in + [1234]) + for idx in 1 2 3 4; do + local zidx + zidx=$(($idx - 1)) + json_get_var ckey "key${idx}" + [ -n "$ckey" ] && \ + append $var "wep_key${zidx}=$(prepare_key_wep "$ckey")" "$N$T" + done + wep_keyidx=$((key - 1)) + ;; + *) + append $var "wep_key0=$(prepare_key_wep "$key")" "$N$T" + ;; + esac +} + +hostapd_add_log_config() { + config_add_boolean \ + log_80211 \ + log_8021x \ + log_radius \ + log_wpa \ + log_driver \ + log_iapp \ + log_mlme + + config_add_int log_level +} + +hostapd_common_add_device_config() { + config_add_array basic_rate + config_add_array supported_rates + + config_add_string country + config_add_boolean country_ie doth + config_add_string require_mode + + hostapd_add_log_config +} + +hostapd_prepare_device_config() { + local config="$1" + local driver="$2" + + local base="${config%%.conf}" + local base_cfg= + + json_get_vars country country_ie beacon_int doth require_mode + + hostapd_set_log_options base_cfg + + set_default country_ie 1 + set_default doth 1 + + [ -n "$country" ] && { + append base_cfg "country_code=$country" "$N" + + [ "$country_ie" -gt 0 ] && append base_cfg "ieee80211d=1" "$N" + [ "$hwmode" = "a" -a "$doth" -gt 0 ] && append base_cfg "ieee80211h=1" "$N" + } + [ -n "$hwmode" ] && append base_cfg "hw_mode=$hwmode" "$N" + + local brlist= br + json_get_values basic_rate_list basic_rate + for br in $basic_rate_list; do + hostapd_add_rate brlist "$br" + done + case "$require_mode" in + g) brlist="60 120 240" ;; + n) append base_cfg "require_ht=1" "$N";; + ac) append base_cfg "require_vht=1" "$N";; + esac + + local rlist= r + json_get_values rate_list supported_rates + for r in $rate_list; do + hostapd_add_rate rlist "$r" + done + + [ -n "$rlist" ] && append base_cfg "supported_rates=$rlist" "$N" + [ -n "$brlist" ] && append base_cfg "basic_rates=$brlist" "$N" + [ -n "$beacon_int" ] && append base_cfg "beacon_int=$beacon_int" "$N" + + cat > "$config" <