#!/bin/sh

DBSPACE=/opt/dbspace
DBSPACE_RW=/opt/usr/dbspace
APPS_DIR=/opt/apps
SHARE_DIR=/opt/share

chown 5000:5000 /home/app
find /home/app -print0 | xargs -0 chsmack -a 'system::homedir'
find /home/app -type d -print0 | xargs -0 chsmack -t

find /opt/usr/media -print0 | xargs -0 chsmack -a 'system::media'
find /opt/usr/media -type d -print0 | xargs -0 chsmack -t

# set vconf label when first boot
if [ ! -e /opt/etc/.vconf_labeling ]; then
	chsmack -a 'system::vconf' /opt/var/kdb/db
	chsmack -t /opt/var/kdb/db
	find /opt/var/kdb/db -print0 | xargs -0 chsmack -a 'system::vconf'
	find /opt/var/kdb/db -type d -print0 | xargs -0 chsmack -t
	find /opt/var/kdb/file -print0 | xargs -0 chsmack -a 'system::vconf'
	find /opt/var/kdb/file -type d -print0 | xargs -0 chsmack -t
	find /var/run/memory -print0 | xargs -0 chsmack -a 'system::vconf'
	find /var/run/memory -type d -print0 | xargs -0 chsmack -t
	touch /opt/etc/.vconf_labeling
fi

# Set device node permissions for security
chsmack -a 'system::system_bklight' /sys/class/backlight/*/brightness
chsmack -a '*' /sys/class/haptic/motor/level
chsmack -a '*' /sys/class/haptic/motor/enable
chsmack -a '*' /sys/class/haptic/motor/oneshot
chsmack -a '*' /sys/class/extension/mdnie/mode
chsmack -a '*' /sys/class/extension/mdnie/scenario
chsmack -a '*' /sys/class/extension/mdnie/tone
chsmack -a '*' /sys/class/extension/mdnie/outdoor
chsmack -a '*' /sys/class/extension/mdnie/tune
chsmack -a '*' /sys/class/camera/flash/rear_flash
chsmack -a '*' /sys/class/camera/flash/max_brightness

echo "0.0.0.0/1 system::use_internet" >> /smack/netlabel
echo "128.0.0.0/1 system::use_internet" >> /smack/netlabel
echo "127.0.0.1 -CIPSO" >> /smack/netlabel
echo "192.168.129.1 @" >> /smack/netlabel

# Set label to database files
chsmack -a 'libaccounts-svc::db' $DBSPACE/.account.db*
chsmack -a 'wrt-security::db_ace' $DBSPACE/.ace.db*
chsmack -a 'libslp-alarm::db' $DBSPACE/.alarm.db*
chsmack -a 'alarm-server::db' $DBSPACE/.alarmmgr.db*
chsmack -a 'ail::db' $DBSPACE/.app_info.db*
chsmack -a 'app-svc::db' $DBSPACE/.appsvc.db*
chsmack -a 'bt_share::db' $DBSPACE/.bluetooth_trasnfer.db*
chsmack -a 'telephony_framework::db' $DBSPACE/.dnet.db*
chsmack -a 'telephony_framework::db' $DBSPACE/.mcc_mnc_oper_list.db*
chsmack -a 'libslp-memo::db' $DBSPACE/.memo.db*
chsmack -a 'aul::db' $DBSPACE/.mida.db*
chsmack -a 'notification::db' $DBSPACE/.notification.db*
chsmack -a 'push-service::db' $DBSPACE/.push.db*
chsmack -a 'rua::db' $DBSPACE/.rua.db*
chsmack -a 'syspopup::db' $DBSPACE/.syspopup.db*
chsmack -a 'worldclock::db' $DBSPACE/.worldclock.db*
chsmack -a 'wrt-commons::db_wrt' $DBSPACE/.wrt.db*
chsmack -a 'wrt-commons::db_wrt_autosave' $DBSPACE/.wrt_autosave.db*

chsmack -a 'browser::db_external' $DBSPACE_RW/.browser-history.db*
chsmack -a 'calendar-service::db' $DBSPACE_RW/.calendar-svc.db*
chsmack -a 'contacts-service::db' $DBSPACE_RW/.contacts-svc.db*
chsmack -a 'email-service::db' $DBSPACE_RW/.email-service.db*
chsmack -a 'browser::db_external' $DBSPACE_RW/.internet_bookmark.db*
chsmack -a 'media-data::db' $DBSPACE_RW/.media.db*
chsmack -a 'msg-service::db' $DBSPACE_RW/.msg_service.db*
chsmack -a 'browser::db' $APPS_DIR/org.tizen.browser/data/db/.browser*
