Add glibc profile adn vtund scripts

pull/21/head
Igor Zalatov 2021-05-08 17:29:28 +03:00
parent 11676df2a4
commit 9682119ad5
3 changed files with 176 additions and 0 deletions

View File

@ -0,0 +1,80 @@
# Architecture
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_EABI=y
BR2_ARM_FPU_NEON_VFPV4=y
BR2_ARM_INSTRUCTIONS_THUMB2=y
BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="4.9.37"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
# Toolchain
BR2_GCC_VERSION_7_X=y
# BR2_TOOLCHAIN_USES_UCLIBC is not set
# BR2_TOOLCHAIN_BUILDROOT_UCLIBC is not set
# BR2_TOOLCHAIN_BUILDROOT_LIBC="uclibc"
# BR2_TOOLCHAIN_USES_MUSL is not set
# BR2_TOOLCHAIN_BUILDROOT_MUSL is not set
# BR2_TOOLCHAIN_BUILDROOT_LIBC="musl"
BR2_TOOLCHAIN_USES_GLIBC=y
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
BR2_TOOLCHAIN_BUILDROOT_LIBC="glibc"
BR2_TOOLCHAIN_BUILDROOT_LOCALE=y
BR2_TOOLCHAIN_BUILDROOT_USE_SSP=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9.37"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HISILICON_PATH)/board/hi3516ev200/kernel/hi3516ev300.generic.config"
BR2_LINUX_KERNEL_UIMAGE=y
BR2_LINUX_KERNEL_XZ=y
BR2_LINUX_KERNEL_EXT_HISI_PATCHER=y
BR2_LINUX_KERNEL_EXT_HISI_PATCHER_LIST="$(BR2_EXTERNAL_HISILICON_PATH)/board/hi3516ev200/kernel/patches/ $(BR2_EXTERNAL_HISILICON_PATH)/board/hi3516ev200/kernel/overlay"
# Filesystem
# BR2_TARGET_TZ_INFO is not set
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y
BR2_ROOTFS_OVERLAY="$(TOPDIR)/../general/overlay"
# OpenIPC configuration
BR2_TOOLCHAIN_BUILDROOT_VENDOR="openipc"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenIPC v21.04.25.1"
BR2_TARGET_GENERIC_HOSTNAME="ipcam"
BR2_GLOBAL_PATCH_DIR="$(TOPDIR)/../general/package/all-patches"
# Packages
BR2_PACKAGE_BUSYBOX_CONFIG="$(TOPDIR)/../general/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_FWPRINTENV_NG=y
BR2_PACKAGE_HISI_GPIO_SCANNER=y
BR2_PACKAGE_HISILICON_OSDRV4=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSON_C=y
BR2_PACKAGE_LAME=y
BR2_PACKAGE_LIBEVENT_MINI=y
BR2_PACKAGE_MAJESTIC=y
BR2_PACKAGE_MINI_SNMPD=y
BR2_PACKAGE_VTUND_LITE=y
# Experimental
BR2_PER_PACKAGE_DIRECTORIES=y
BR2_PACKAGE_WIRELESS_TOOLS=y
BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
# Firmware
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
# Unused
# BR2_SHARED_STATIC_LIBS is not set
# BR2_PACKAGE_JPEG_TURBO is not set
# BR2_PACKAGE_MINIHTTP is not set
# BR2_PACKAGE_MXML is not set
# BR2_PACKAGE_SSHPASS is not set
# BR2_PACKAGE_RTL8188EU is not set

View File

@ -0,0 +1,35 @@
#!/bin/sh
#
# ZFT Lab. (c) 2000-2021 | v.20210507
# by Igor Zalatov, aka FlyRouter, aka ZigFisher
# Simple script for get IP and Routes via UDHCPC on VTUNd tun/tap interfaces
#
set_routes() {
local max=128
local type
while [ -n "$1" -a -n "$2" -a $max -gt 0 ]; do
[ ${1##*/} -eq 32 ] && type=host || type=net
echo "udhcpc: adding route for $type $1 via $2"
route add -$type "$1" gw "$2" dev "$interface"
max=$(($max-1))
shift 2
done
}
case "$1" in
deconfig)
ip a flush dev $interface
;;
renew|bound)
ip a add $ip/$subnet dev $interface
[ -n "$staticroutes" ] && set_routes $staticroutes
;;
esac
exit 0

View File

@ -0,0 +1,61 @@
#!/bin/sh
#
# OpenIPC.org | v.20210508
# by Igor Zalatov, aka FlyRouter, aka ZigFisher
# Busybox applets: awk cat echo insmod ip modprobe sha1sum sleep tr tunctl udhcpc uptime
#
vtund_enable="1"
vtund_port="5000"
vtund_server=$1
vtund_server=${vtund_server:=vtun.localhost}
vtund_iface="tunnel"
device_name="IPC-VTUND"
working_dir="/tmp"
identity() {
identity_mac=$(cat /sys/class/net/eth0/address | tr 'a-z' 'A-Z')
identity_pas=$(echo ${identity_mac} | sha1sum | awk '{print $1}')
identity_tid=$(echo ${identity_mac} | tr -d ':')
identity_cfg=${working_dir}/vtund.conf
}
interface() {
[ -L /sys/class/net/${vtund_iface} ] || (modprobe tun; tunctl -t ${vtund_iface}) >/dev/null 2>&1
[ -f ${working_dir}/udhcpc-${vtund_iface}.pid ] && kill -9 $(cat ${working_dir}/udhcpc-${vtund_iface}.pid) >/dev/null 2>&1
}
config() {
( echo "#"
echo "options {"
echo " port ${vtund_port};"
echo " ifconfig /sbin/ifconfig;"
echo "}"
echo "${identity_tid} {"
echo " password ${identity_pas};"
echo " device ${vtund_iface};"
echo " stat no;"
echo " persist yes;"
echo " timeout 10;"
echo " up {"
echo " ifconfig \"${vtund_iface} hw ether ${identity_mac} mtu 1500 -multicast up\";"
echo " program \"udhcpc -T 1 -t 5 -R -b -O staticroutes -S -s tapip -p ${working_dir}/udhcpc-${vtund_iface}.pid -i ${vtund_iface} -x hostname:${device_name}-${identity_tid}\";"
echo " };"
echo " down {"
echo " ifconfig \"tunnel down\";"
echo " };"
echo "}"
) >${identity_cfg}
}
if [ ${vtund_enable} = 1 ]; then
(while true ; do sleep 10; identity; interface; config; vtund -n -f ${identity_cfg} ${identity_tid} ${vtund_server} >/dev/null 2>&1; done) &
fi
exit 0