From 680ce76497b2d58a3d0abb002984d3dc2bbc8887 Mon Sep 17 00:00:00 2001 From: James <> Date: Sun, 8 Nov 2015 10:00:58 +0000 Subject: works --- master/8m-rom | 13 + master/config | 3889 + master/endstop | 0 master/feeds | 826059 +++++++++++++++++++++++++++++ master/feeds-installed | 6012 + master/fix-mjpg-streamer-stack-smashing | 19 + master/series | 6 + master/status | 0 8 files changed, 835998 insertions(+) create mode 100644 master/8m-rom create mode 100644 master/config create mode 100644 master/endstop create mode 100644 master/feeds create mode 100644 master/feeds-installed create mode 100644 master/fix-mjpg-streamer-stack-smashing create mode 100644 master/series create mode 100644 master/status diff --git a/master/8m-rom b/master/8m-rom new file mode 100644 index 0000000..d21cd45 --- /dev/null +++ b/master/8m-rom @@ -0,0 +1,13 @@ +diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile +index 7bf2f27..e0bf49f 100644 +--- a/target/linux/ar71xx/image/Makefile ++++ b/target/linux/ar71xx/image/Makefile +@@ -508,7 +508,7 @@ endef + TARGET_DEVICES += tl-mr10u-v1 tl-mr11u-v1 tl-mr11u-v2 tl-mr12u-v1 tl-mr13u-v1 + + define Device/tl-mr3020-v1 +- $(Device/tplink-4mlzma) ++ $(Device/tplink-8mlzma) + BOARDNAME := TL-MR3020 + DEVICE_PROFILE := TLMR3020 + TPLINK_HWID := 0x30200001 diff --git a/master/config b/master/config new file mode 100644 index 0000000..d5cbbf5 --- /dev/null +++ b/master/config @@ -0,0 +1,3889 @@ +diff --git a/.config b/.config +new file mode 100644 +index 0000000..5745f0b +--- /dev/null ++++ b/.config +@@ -0,0 +1,3871 @@ ++# ++# Automatically generated file; DO NOT EDIT. ++# OpenWrt Configuration ++# ++CONFIG_MODULES=y ++CONFIG_HAVE_DOT_CONFIG=y ++# CONFIG_TARGET_ppc44x is not set ++# CONFIG_TARGET_realview is not set ++# CONFIG_TARGET_arm64 is not set ++# CONFIG_TARGET_sunxi is not set ++# CONFIG_TARGET_ath25 is not set ++CONFIG_TARGET_ar71xx=y ++# CONFIG_TARGET_at91 is not set ++# CONFIG_TARGET_brcm2708 is not set ++# CONFIG_TARGET_bcm53xx is not set ++# CONFIG_TARGET_brcm47xx is not set ++# CONFIG_TARGET_brcm63xx is not set ++# CONFIG_TARGET_netlogic is not set ++# CONFIG_TARGET_cns3xxx is not set ++# CONFIG_TARGET_octeon is not set ++# CONFIG_TARGET_gemini is not set ++# CONFIG_TARGET_mpc85xx is not set ++# CONFIG_TARGET_imx6 is not set ++# CONFIG_TARGET_mxs is not set ++# CONFIG_TARGET_adm8668 is not set ++# CONFIG_TARGET_adm5120 is not set ++# CONFIG_TARGET_xburst is not set ++# CONFIG_TARGET_ixp4xx is not set ++# CONFIG_TARGET_lantiq is not set ++# CONFIG_TARGET_malta is not set ++# CONFIG_TARGET_mvebu is not set ++# CONFIG_TARGET_kirkwood is not set ++# CONFIG_TARGET_mediatek is not set ++# CONFIG_TARGET_rb532 is not set ++# CONFIG_TARGET_mcs814x is not set ++# CONFIG_TARGET_oxnas is not set ++# CONFIG_TARGET_ipq806x is not set ++# CONFIG_TARGET_au1000 is not set ++# CONFIG_TARGET_ramips is not set ++# CONFIG_TARGET_ar7 is not set ++# CONFIG_TARGET_omap is not set ++# CONFIG_TARGET_uml is not set ++# CONFIG_TARGET_x86 is not set ++CONFIG_TARGET_ar71xx_generic=y ++# CONFIG_TARGET_ar71xx_nand is not set ++# CONFIG_TARGET_ar71xx_mikrotik is not set ++# CONFIG_TARGET_ar71xx_generic_Default is not set ++# CONFIG_TARGET_ar71xx_generic_Minimal is not set ++# CONFIG_TARGET_ar71xx_generic_ath5k is not set ++# CONFIG_TARGET_ar71xx_generic_CARAMBOLA2 is not set ++# CONFIG_TARGET_ar71xx_generic_ALFAAP96 is not set ++# CONFIG_TARGET_ar71xx_generic_HORNETUB is not set ++# CONFIG_TARGET_ar71xx_generic_HORNETUBx2 is not set ++# CONFIG_TARGET_ar71xx_generic_ALFANX is not set ++# CONFIG_TARGET_ar71xx_generic_TUBE2H is not set ++# CONFIG_TARGET_ar71xx_generic_ALL0305 is not set ++# CONFIG_TARGET_ar71xx_generic_ALL0258N is not set ++# CONFIG_TARGET_ar71xx_generic_ALL0315N is not set ++# CONFIG_TARGET_ar71xx_generic_ANTMINERS1 is not set ++# CONFIG_TARGET_ar71xx_generic_ANTMINERS3 is not set ++# CONFIG_TARGET_ar71xx_generic_AP113 is not set ++# CONFIG_TARGET_ar71xx_generic_AP121 is not set ++# CONFIG_TARGET_ar71xx_generic_AP121MINI is not set ++# CONFIG_TARGET_ar71xx_generic_AP132 is not set ++# CONFIG_TARGET_ar71xx_generic_AP135 is not set ++# CONFIG_TARGET_ar71xx_generic_AP136 is not set ++# CONFIG_TARGET_ar71xx_generic_AP143 is not set ++# CONFIG_TARGET_ar71xx_generic_AP147 is not set ++# CONFIG_TARGET_ar71xx_generic_AP152 is not set ++# CONFIG_TARGET_ar71xx_generic_AP81 is not set ++# CONFIG_TARGET_ar71xx_generic_AP83 is not set ++# CONFIG_TARGET_ar71xx_generic_AP96 is not set ++# CONFIG_TARGET_ar71xx_generic_DB120 is not set ++# CONFIG_TARGET_ar71xx_generic_PB42 is not set ++# CONFIG_TARGET_ar71xx_generic_PB44 is not set ++# CONFIG_TARGET_ar71xx_generic_PB92 is not set ++# CONFIG_TARGET_ar71xx_generic_A02RBW300N is not set ++# CONFIG_TARGET_ar71xx_generic_F9K1115V2 is not set ++# CONFIG_TARGET_ar71xx_generic_BXU2000N2 is not set ++# CONFIG_TARGET_ar71xx_generic_WZRHPG300NH is not set ++# CONFIG_TARGET_ar71xx_generic_WZRHPG300NH2 is not set ++# CONFIG_TARGET_ar71xx_generic_WZRHPAG300H is not set ++# CONFIG_TARGET_ar71xx_generic_WZRHPG450H is not set ++# CONFIG_TARGET_ar71xx_generic_WZR450HP2 is not set ++# CONFIG_TARGET_ar71xx_generic_WZR600DHP is not set ++# CONFIG_TARGET_ar71xx_generic_WHRG301N is not set ++# CONFIG_TARGET_ar71xx_generic_WHRHPG300N is not set ++# CONFIG_TARGET_ar71xx_generic_WHRHPGN is not set ++# CONFIG_TARGET_ar71xx_generic_WLAEAG300N is not set ++# CONFIG_TARGET_ar71xx_generic_CF-E316N-V2 is not set ++# CONFIG_TARGET_ar71xx_generic_WP543 is not set ++# CONFIG_TARGET_ar71xx_generic_WPE72 is not set ++# CONFIG_TARGET_ar71xx_generic_WPJ344 is not set ++# CONFIG_TARGET_ar71xx_generic_WPJ531 is not set ++# CONFIG_TARGET_ar71xx_generic_WPJ558 is not set ++# CONFIG_TARGET_ar71xx_generic_DHP1565A1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR505A1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR600A1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR601A1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR601B1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR615C1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR615E1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR615E4 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR615IX is not set ++# CONFIG_TARGET_ar71xx_generic_DIR825B1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR825C1 is not set ++# CONFIG_TARGET_ar71xx_generic_DIR835A1 is not set ++# CONFIG_TARGET_ar71xx_generic_DGL5500A1 is not set ++# CONFIG_TARGET_ar71xx_generic_dLAN_pro_500_wp is not set ++# CONFIG_TARGET_ar71xx_generic_dLAN_pro_1200_ac is not set ++# CONFIG_TARGET_ar71xx_generic_DRAGINO2 is not set ++# CONFIG_TARGET_ar71xx_generic_ELM150 is not set ++# CONFIG_TARGET_ar71xx_generic_ELMINI is not set ++# CONFIG_TARGET_ar71xx_generic_EAP300V2 is not set ++# CONFIG_TARGET_ar71xx_generic_ESR900 is not set ++# CONFIG_TARGET_ar71xx_generic_ESR1750 is not set ++# CONFIG_TARGET_ar71xx_generic_EPG5000 is not set ++# CONFIG_TARGET_ar71xx_generic_EWDORIN is not set ++# CONFIG_TARGET_ar71xx_generic_GLINET is not set ++# CONFIG_TARGET_ar71xx_generic_MINIBOXV1 is not set ++# CONFIG_TARGET_ar71xx_generic_HIWIFI_HC6361 is not set ++# CONFIG_TARGET_ar71xx_generic_JA76PF is not set ++# CONFIG_TARGET_ar71xx_generic_JA76PF2 is not set ++# CONFIG_TARGET_ar71xx_generic_JWAP003 is not set ++# CONFIG_TARGET_ar71xx_generic_WRT160NL is not set ++# CONFIG_TARGET_ar71xx_generic_WRT400N is not set ++# CONFIG_TARGET_ar71xx_generic_MR12 is not set ++# CONFIG_TARGET_ar71xx_generic_MR16 is not set ++# CONFIG_TARGET_ar71xx_generic_MAC1200R is not set ++# CONFIG_TARGET_ar71xx_generic_SMART-300 is not set ++# CONFIG_TARGET_ar71xx_generic_WNDAP360 is not set ++# CONFIG_TARGET_ar71xx_generic_WNDR3700 is not set ++# CONFIG_TARGET_ar71xx_generic_WNR2000V3 is not set ++# CONFIG_TARGET_ar71xx_generic_WNR2000V4 is not set ++# CONFIG_TARGET_ar71xx_generic_WNR612V2 is not set ++# CONFIG_TARGET_ar71xx_generic_WNR1000V2 is not set ++# CONFIG_TARGET_ar71xx_generic_WNR2200 is not set ++# CONFIG_TARGET_ar71xx_generic_OMEGA is not set ++# CONFIG_TARGET_ar71xx_generic_OOLITE is not set ++# CONFIG_TARGET_ar71xx_generic_OM2P is not set ++# CONFIG_TARGET_ar71xx_generic_OM5P is not set ++# CONFIG_TARGET_ar71xx_generic_MR600 is not set ++# CONFIG_TARGET_ar71xx_generic_MR900 is not set ++# CONFIG_TARGET_ar71xx_generic_MR1750 is not set ++# CONFIG_TARGET_ar71xx_generic_OPENMESH is not set ++# CONFIG_TARGET_ar71xx_generic_UBDEV01 is not set ++# CONFIG_TARGET_ar71xx_generic_DLRTDEV01 is not set ++# CONFIG_TARGET_ar71xx_generic_MZKW04NU is not set ++# CONFIG_TARGET_ar71xx_generic_MZKW300NH is not set ++# CONFIG_TARGET_ar71xx_generic_QIHOO360 is not set ++# CONFIG_TARGET_ar71xx_generic_RW2458N is not set ++# CONFIG_TARGET_ar71xx_generic_RNXN360RT is not set ++# CONFIG_TARGET_ar71xx_generic_CAP4200AG is not set ++# CONFIG_TARGET_ar71xx_generic_WLR8100 is not set ++# CONFIG_TARGET_ar71xx_generic_BSB is not set ++# CONFIG_TARGET_ar71xx_generic_ARCHERC7 is not set ++# CONFIG_TARGET_ar71xx_generic_CPE510 is not set ++# CONFIG_TARGET_ar71xx_generic_TLMR10U is not set ++# CONFIG_TARGET_ar71xx_generic_TLMR11U is not set ++# CONFIG_TARGET_ar71xx_generic_TLMR12U is not set ++# CONFIG_TARGET_ar71xx_generic_TLMR13U is not set ++CONFIG_TARGET_ar71xx_generic_TLMR3020=y ++# CONFIG_TARGET_ar71xx_generic_TLMR3040 is not set ++# CONFIG_TARGET_ar71xx_generic_TLMR3220 is not set ++# CONFIG_TARGET_ar71xx_generic_TLMR3420 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR703 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR710 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR720 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA701 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA7210 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA730RE is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA750 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA7510 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA801 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA830 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA850 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA860 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWA901 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWDR4300 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWDR3320V2 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWDR4900V2 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWDR6500V2 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR740 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR741 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR743 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR841 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR842 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR843 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR941 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR1041 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR1043 is not set ++# CONFIG_TARGET_ar71xx_generic_TLWR2543 is not set ++# CONFIG_TARGET_ar71xx_generic_TEW632BRP is not set ++# CONFIG_TARGET_ar71xx_generic_TEW652BRP is not set ++# CONFIG_TARGET_ar71xx_generic_TEW673GRU is not set ++# CONFIG_TARGET_ar71xx_generic_TEW712BR is not set ++# CONFIG_TARGET_ar71xx_generic_TEW732BR is not set ++# CONFIG_TARGET_ar71xx_generic_UBNTRS is not set ++# CONFIG_TARGET_ar71xx_generic_UBNTRSPRO is not set ++# CONFIG_TARGET_ar71xx_generic_UBNTUNIFI is not set ++# CONFIG_TARGET_ar71xx_generic_UBNTUNIFIOUTDOOR is not set ++# CONFIG_TARGET_ar71xx_generic_UAPPRO is not set ++# CONFIG_TARGET_ar71xx_generic_UBNT is not set ++# CONFIG_TARGET_ar71xx_generic_MYNETN600 is not set ++# CONFIG_TARGET_ar71xx_generic_MYNETN750 is not set ++# CONFIG_TARGET_ar71xx_generic_MYNETREXT is not set ++# CONFIG_TARGET_ar71xx_generic_WEIO is not set ++# CONFIG_TARGET_ar71xx_generic_ZCN1523H28 is not set ++# CONFIG_TARGET_ar71xx_generic_ZCN1523H516 is not set ++# CONFIG_TARGET_ar71xx_generic_NBG_460N_550N_550NH is not set ++CONFIG_HAS_SUBTARGETS=y ++CONFIG_TARGET_BOARD="ar71xx" ++CONFIG_TARGET_ARCH_PACKAGES="ar71xx" ++CONFIG_DEFAULT_TARGET_OPTIMIZATION="-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc" ++CONFIG_CPU_TYPE="34kc" ++CONFIG_LINUX_4_1=y ++CONFIG_DEFAULT_base-files=y ++CONFIG_DEFAULT_busybox=y ++CONFIG_DEFAULT_dnsmasq=y ++CONFIG_DEFAULT_dropbear=y ++CONFIG_DEFAULT_firewall=y ++CONFIG_DEFAULT_fstools=y ++CONFIG_DEFAULT_ip6tables=y ++CONFIG_DEFAULT_iptables=y ++CONFIG_DEFAULT_iwinfo=y ++CONFIG_DEFAULT_kmod-ath9k=y ++CONFIG_DEFAULT_kmod-gpio-button-hotplug=y ++CONFIG_DEFAULT_kmod-ledtrig-usbdev=y ++CONFIG_DEFAULT_kmod-usb-core=y ++CONFIG_DEFAULT_kmod-usb2=y ++CONFIG_DEFAULT_libc=y ++CONFIG_DEFAULT_libgcc=y ++CONFIG_DEFAULT_mtd=y ++CONFIG_DEFAULT_netifd=y ++CONFIG_DEFAULT_odhcp6c=y ++CONFIG_DEFAULT_odhcpd=y ++CONFIG_DEFAULT_opkg=y ++CONFIG_DEFAULT_ppp=y ++CONFIG_DEFAULT_ppp-mod-pppoe=y ++CONFIG_DEFAULT_swconfig=y ++CONFIG_DEFAULT_uboot-envtools=y ++CONFIG_DEFAULT_uci=y ++CONFIG_DEFAULT_wpad-mini=y ++CONFIG_AUDIO_SUPPORT=y ++CONFIG_GPIO_SUPPORT=y ++CONFIG_PCI_SUPPORT=y ++CONFIG_USB_SUPPORT=y ++CONFIG_BIG_ENDIAN=y ++CONFIG_USES_SQUASHFS=y ++CONFIG_HAS_MIPS16=y ++CONFIG_mips=y ++CONFIG_ARCH="mips" ++ ++# ++# Target Images ++# ++# CONFIG_TARGET_ROOTFS_INITRAMFS is not set ++CONFIG_EXTERNAL_CPIO="" ++ ++# ++# Root filesystem archives ++# ++# CONFIG_TARGET_ROOTFS_CPIOGZ is not set ++# CONFIG_TARGET_ROOTFS_TARGZ is not set ++ ++# ++# Root filesystem images ++# ++# CONFIG_TARGET_ROOTFS_EXT4FS is not set ++CONFIG_TARGET_ROOTFS_JFFS2=y ++CONFIG_TARGET_ROOTFS_SQUASHFS=y ++CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=256 ++CONFIG_TARGET_UBIFS_FREE_SPACE_FIXUP=y ++CONFIG_TARGET_UBIFS_JOURNAL_SIZE="" ++ ++# ++# Image Options ++# ++CONFIG_TARGET_ROOTFS_INCLUDE_UIMAGE=y ++CONFIG_TARGET_ROOTFS_INCLUDE_ZIMAGE=y ++CONFIG_TARGET_ROOTFS_INCLUDE_FIT=y ++ ++# ++# Global build settings ++# ++# CONFIG_ALL_KMODS is not set ++# CONFIG_ALL is not set ++CONFIG_SIGNED_PACKAGES=y ++ ++# ++# General build options ++# ++# CONFIG_DISPLAY_SUPPORT is not set ++CONFIG_BUILD_PATENTED=y ++# CONFIG_BUILD_NLS is not set ++CONFIG_SHADOW_PASSWORDS=y ++# CONFIG_CLEAN_IPKG is not set ++# CONFIG_COLLECT_KERNEL_DEBUG is not set ++ ++# ++# Kernel build options ++# ++CONFIG_KERNEL_PRINTK=y ++CONFIG_KERNEL_CRASHLOG=y ++CONFIG_KERNEL_SWAP=y ++CONFIG_KERNEL_DEBUG_FS=y ++# CONFIG_KERNEL_PERF_EVENTS is not set ++# CONFIG_KERNEL_PROFILING is not set ++CONFIG_KERNEL_KALLSYMS=y ++# CONFIG_KERNEL_FTRACE is not set ++CONFIG_KERNEL_DEBUG_KERNEL=y ++CONFIG_KERNEL_DEBUG_INFO=y ++# CONFIG_KERNEL_DYNAMIC_DEBUG is not set ++# CONFIG_KERNEL_KPROBES is not set ++# CONFIG_KERNEL_AIO is not set ++# CONFIG_KERNEL_DIRECT_IO is not set ++# CONFIG_KERNEL_FHANDLE is not set ++# CONFIG_KERNEL_FANOTIFY is not set ++# CONFIG_KERNEL_BLK_DEV_BSG is not set ++CONFIG_KERNEL_MAGIC_SYSRQ=y ++CONFIG_KERNEL_COREDUMP=y ++CONFIG_KERNEL_ELF_CORE=y ++# CONFIG_KERNEL_PROVE_LOCKING is not set ++CONFIG_KERNEL_PRINTK_TIME=y ++# CONFIG_KERNEL_SLABINFO is not set ++# CONFIG_KERNEL_PROC_PAGE_MONITOR is not set ++CONFIG_KERNEL_RELAY=y ++# CONFIG_KERNEL_KEXEC is not set ++# CONFIG_USE_RFKILL is not set ++# CONFIG_USE_SPARSE is not set ++# CONFIG_KERNEL_DEVTMPFS is not set ++# CONFIG_KERNEL_CGROUPS is not set ++# CONFIG_KERNEL_NAMESPACES is not set ++# CONFIG_KERNEL_LXC_MISC is not set ++# CONFIG_KERNEL_SECCOMP_FILTER is not set ++# CONFIG_KERNEL_SECCOMP is not set ++ ++# ++# Package build options ++# ++# CONFIG_DEBUG is not set ++CONFIG_IPV6=y ++CONFIG_PKG_BUILD_PARALLEL=y ++CONFIG_PKG_BUILD_USE_JOBSERVER=y ++ ++# ++# Stripping options ++# ++# CONFIG_NO_STRIP is not set ++CONFIG_USE_STRIP=y ++# CONFIG_USE_SSTRIP is not set ++CONFIG_STRIP_ARGS="--strip-all" ++# CONFIG_STRIP_KERNEL_EXPORTS is not set ++# CONFIG_USE_MKLIBS is not set ++CONFIG_USE_UCLIBCXX=y ++# CONFIG_USE_LIBSTDCXX is not set ++ ++# ++# Hardening build options ++# ++CONFIG_PKG_CHECK_FORMAT_SECURITY=y ++# CONFIG_PKG_CC_STACKPROTECTOR_NONE is not set ++CONFIG_PKG_CC_STACKPROTECTOR_REGULAR=y ++# CONFIG_KERNEL_CC_STACKPROTECTOR_NONE is not set ++CONFIG_KERNEL_CC_STACKPROTECTOR_REGULAR=y ++# CONFIG_PKG_FORTIFY_SOURCE_NONE is not set ++CONFIG_PKG_FORTIFY_SOURCE_1=y ++# CONFIG_PKG_FORTIFY_SOURCE_2 is not set ++# CONFIG_PKG_RELRO_NONE is not set ++# CONFIG_PKG_RELRO_PARTIAL is not set ++CONFIG_PKG_RELRO_FULL=y ++# CONFIG_DEVEL is not set ++# CONFIG_BROKEN is not set ++CONFIG_BINARY_FOLDER="" ++CONFIG_DOWNLOAD_FOLDER="" ++CONFIG_LOCALMIRROR="" ++CONFIG_AUTOREBUILD=y ++CONFIG_BUILD_SUFFIX="" ++CONFIG_TARGET_ROOTFS_DIR="" ++# CONFIG_CCACHE is not set ++CONFIG_EXTERNAL_KERNEL_TREE="" ++CONFIG_KERNEL_GIT_CLONE_URI="" ++CONFIG_EXTRA_OPTIMIZATION="-fno-caller-saves" ++CONFIG_TARGET_OPTIMIZATION="-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc" ++CONFIG_SOFT_FLOAT=y ++CONFIG_USE_MIPS16=y ++# CONFIG_EXTRA_TARGET_ARCH is not set ++CONFIG_EXTRA_BINUTILS_CONFIG_OPTIONS="" ++CONFIG_BINUTILS_VERSION="linaro" ++CONFIG_EXTRA_GCC_CONFIG_OPTIONS="" ++# CONFIG_SJLJ_EXCEPTIONS is not set ++# CONFIG_INSTALL_LIBGCJ is not set ++# CONFIG_INSTALL_GFORTRAN is not set ++CONFIG_GDB=y ++# CONFIG_INSIGHT is not set ++CONFIG_USE_MUSL=y ++CONFIG_GCC_VERSION_4_8_LINARO=y ++CONFIG_GCC_VERSION="4.8-linaro" ++CONFIG_GCC_VERSION_4_8=y ++CONFIG_MUSL_VERSION="1.1.11" ++CONFIG_LIBC="musl" ++CONFIG_LIBC_VERSION="1.1.11" ++CONFIG_TARGET_SUFFIX="musl" ++# CONFIG_IB is not set ++# CONFIG_SDK is not set ++# CONFIG_MAKE_TOOLCHAIN is not set ++CONFIG_IMAGEOPT=y ++# CONFIG_PREINITOPT is not set ++CONFIG_TARGET_PREINIT_SUPPRESS_STDERR=y ++CONFIG_TARGET_PREINIT_TIMEOUT=2 ++# CONFIG_TARGET_PREINIT_SHOW_NETMSG is not set ++# CONFIG_TARGET_PREINIT_SUPPRESS_FAILSAFE_NETMSG is not set ++CONFIG_TARGET_PREINIT_IFNAME="" ++CONFIG_TARGET_PREINIT_IP="192.168.1.1" ++CONFIG_TARGET_PREINIT_NETMASK="255.255.255.0" ++CONFIG_TARGET_PREINIT_BROADCAST="192.168.1.255" ++# CONFIG_INITOPT is not set ++CONFIG_TARGET_INIT_PATH="/bin:/sbin:/usr/bin:/usr/sbin" ++CONFIG_TARGET_INIT_ENV="" ++CONFIG_TARGET_INIT_CMD="/sbin/init" ++CONFIG_TARGET_INIT_SUPPRESS_STDERR=y ++CONFIG_VERSIONOPT=y ++CONFIG_VERSION_DIST="OpenWrt" ++CONFIG_VERSION_NICK="" ++CONFIG_VERSION_NUMBER="" ++CONFIG_VERSION_REPO="http://openwrt.panaceas.org/repos/tpl-mr3020/%v/%T/packages" ++CONFIG_VERSION_MANUFACTURER="" ++CONFIG_VERSION_MANUFACTURER_URL="" ++CONFIG_VERSION_PRODUCT="" ++CONFIG_VERSION_HWREV="" ++CONFIG_VERSION_FILENAMES=y ++# CONFIG_PER_FEED_REPO is not set ++# CONFIG_SMIMEOPT is not set ++CONFIG_OPKGSMIME_PASSPHRASE=y ++ ++# ++# Base system ++# ++CONFIG_PACKAGE_base-files=y ++# CONFIG_PACKAGE_block-mount is not set ++# CONFIG_PACKAGE_bridge is not set ++CONFIG_PACKAGE_busybox=y ++# CONFIG_BUSYBOX_CUSTOM is not set ++CONFIG_BUSYBOX_DEFAULT_HAVE_DOT_CONFIG=y ++# CONFIG_BUSYBOX_DEFAULT_DESKTOP is not set ++# CONFIG_BUSYBOX_DEFAULT_EXTRA_COMPAT is not set ++CONFIG_BUSYBOX_DEFAULT_INCLUDE_SUSv2=y ++# CONFIG_BUSYBOX_DEFAULT_USE_PORTABLE_CODE is not set ++CONFIG_BUSYBOX_DEFAULT_PLATFORM_LINUX=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_USE_MALLOC is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_ON_STACK=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_IN_BSS is not set ++CONFIG_BUSYBOX_DEFAULT_SHOW_USAGE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE_USAGE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_COMPRESS_USAGE=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSTALLER is not set ++# CONFIG_BUSYBOX_DEFAULT_INSTALL_NO_USR is not set ++# CONFIG_BUSYBOX_DEFAULT_LOCALE_SUPPORT is not set ++# CONFIG_BUSYBOX_DEFAULT_UNICODE_SUPPORT is not set ++# CONFIG_BUSYBOX_DEFAULT_UNICODE_USING_LOCALE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV is not set ++CONFIG_BUSYBOX_DEFAULT_SUBST_WCHAR=0 ++CONFIG_BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR=0 ++# CONFIG_BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS is not set ++# CONFIG_BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS is not set ++# CONFIG_BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT is not set ++# CONFIG_BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE is not set ++# CONFIG_BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN is not set ++# CONFIG_BUSYBOX_DEFAULT_PAM is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE is not set ++CONFIG_BUSYBOX_DEFAULT_LONG_OPTS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_DEVPTS=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CLEAN_UP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UTMP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_WTMP is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDFILE=y ++CONFIG_BUSYBOX_DEFAULT_PID_FILE_PATH="/var/run" ++CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG_QUIET is not set ++# CONFIG_BUSYBOX_DEFAULT_SELINUX is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_PREFER_APPLETS=y ++CONFIG_BUSYBOX_DEFAULT_BUSYBOX_EXEC_PATH="/proc/self/exe" ++CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOG=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HAVE_RPC is not set ++# CONFIG_BUSYBOX_DEFAULT_STATIC is not set ++# CONFIG_BUSYBOX_DEFAULT_PIE is not set ++# CONFIG_BUSYBOX_DEFAULT_NOMMU is not set ++# CONFIG_BUSYBOX_DEFAULT_BUILD_LIBBUSYBOX is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INDIVIDUAL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SHARED_BUSYBOX is not set ++CONFIG_BUSYBOX_DEFAULT_LFS=y ++CONFIG_BUSYBOX_DEFAULT_CROSS_COMPILER_PREFIX="" ++CONFIG_BUSYBOX_DEFAULT_SYSROOT="" ++CONFIG_BUSYBOX_DEFAULT_EXTRA_CFLAGS="" ++CONFIG_BUSYBOX_DEFAULT_EXTRA_LDFLAGS="" ++CONFIG_BUSYBOX_DEFAULT_EXTRA_LDLIBS="" ++# CONFIG_BUSYBOX_DEFAULT_DEBUG is not set ++# CONFIG_BUSYBOX_DEFAULT_DEBUG_PESSIMIZE is not set ++# CONFIG_BUSYBOX_DEFAULT_UNIT_TEST is not set ++# CONFIG_BUSYBOX_DEFAULT_WERROR is not set ++CONFIG_BUSYBOX_DEFAULT_NO_DEBUG_LIB=y ++# CONFIG_BUSYBOX_DEFAULT_DMALLOC is not set ++# CONFIG_BUSYBOX_DEFAULT_EFENCE is not set ++CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS=y ++# CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_HARDLINKS is not set ++# CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_SCRIPT_WRAPPERS is not set ++# CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_DONT is not set ++# CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SYMLINK is not set ++# CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_HARDLINK is not set ++# CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set ++CONFIG_BUSYBOX_DEFAULT_PREFIX="./_install" ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSTEMD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_RTMINMAX is not set ++CONFIG_BUSYBOX_DEFAULT_PASSWORD_MINLEN=6 ++CONFIG_BUSYBOX_DEFAULT_MD5_SMALL=1 ++CONFIG_BUSYBOX_DEFAULT_SHA3_SMALL=1 ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FAST_TOP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_TERMIOS is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_MAX_LEN=512 ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_VI is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_HISTORY=256 ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_SAVEHISTORY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_SAVE_ON_EXIT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_REVERSE_SEARCH is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TAB_COMPLETION=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_USERNAME_COMPLETION is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_FANCY_PROMPT=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_ASK_TERMINAL is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE_CP_MESSAGE is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_COPYBUF_KB=4 ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SKIP_ROOTFS is not set ++# CONFIG_BUSYBOX_DEFAULT_MONOTONIC_SYSCALL is not set ++CONFIG_BUSYBOX_DEFAULT_IOCTL_HEX2STR_ERROR=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HWIB is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_XZ is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_LZMA is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_BZ2 is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_GZ=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_Z is not set ++# CONFIG_BUSYBOX_DEFAULT_AR is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_AR_LONG_FILENAMES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_AR_CREATE is not set ++# CONFIG_BUSYBOX_DEFAULT_UNCOMPRESS is not set ++CONFIG_BUSYBOX_DEFAULT_GUNZIP=y ++CONFIG_BUSYBOX_DEFAULT_BUNZIP2=y ++# CONFIG_BUSYBOX_DEFAULT_UNLZMA is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LZMA_FAST is not set ++# CONFIG_BUSYBOX_DEFAULT_LZMA is not set ++# CONFIG_BUSYBOX_DEFAULT_UNXZ is not set ++# CONFIG_BUSYBOX_DEFAULT_XZ is not set ++# CONFIG_BUSYBOX_DEFAULT_BZIP2 is not set ++# CONFIG_BUSYBOX_DEFAULT_CPIO is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CPIO_O is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CPIO_P is not set ++# CONFIG_BUSYBOX_DEFAULT_DPKG is not set ++# CONFIG_BUSYBOX_DEFAULT_DPKG_DEB is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set ++CONFIG_BUSYBOX_DEFAULT_GZIP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_GZIP_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_GZIP_FAST=0 ++# CONFIG_BUSYBOX_DEFAULT_LZOP is not set ++# CONFIG_BUSYBOX_DEFAULT_LZOP_COMPR_HIGH is not set ++# CONFIG_BUSYBOX_DEFAULT_RPM is not set ++# CONFIG_BUSYBOX_DEFAULT_RPM2CPIO is not set ++CONFIG_BUSYBOX_DEFAULT_TAR=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_CREATE=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_AUTODETECT is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_FROM=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_GNU_EXTENSIONS=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_TO_COMMAND is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_UNAME_GNAME is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_NOPRESERVE_TIME is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_SELINUX is not set ++# CONFIG_BUSYBOX_DEFAULT_UNZIP is not set ++CONFIG_BUSYBOX_DEFAULT_BASENAME=y ++CONFIG_BUSYBOX_DEFAULT_CAT=y ++CONFIG_BUSYBOX_DEFAULT_DATE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_ISOFMT=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_NANO is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_COMPAT is not set ++# CONFIG_BUSYBOX_DEFAULT_HOSTID is not set ++CONFIG_BUSYBOX_DEFAULT_ID=y ++# CONFIG_BUSYBOX_DEFAULT_GROUPS is not set ++# CONFIG_BUSYBOX_DEFAULT_SHUF is not set ++CONFIG_BUSYBOX_DEFAULT_TEST=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TEST_64=y ++CONFIG_BUSYBOX_DEFAULT_TOUCH=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3=y ++CONFIG_BUSYBOX_DEFAULT_TR=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TR_CLASSES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TR_EQUIV is not set ++# CONFIG_BUSYBOX_DEFAULT_UNLINK is not set ++# CONFIG_BUSYBOX_DEFAULT_BASE64 is not set ++# CONFIG_BUSYBOX_DEFAULT_WHO is not set ++# CONFIG_BUSYBOX_DEFAULT_USERS is not set ++# CONFIG_BUSYBOX_DEFAULT_CAL is not set ++# CONFIG_BUSYBOX_DEFAULT_CATV is not set ++CONFIG_BUSYBOX_DEFAULT_CHGRP=y ++CONFIG_BUSYBOX_DEFAULT_CHMOD=y ++CONFIG_BUSYBOX_DEFAULT_CHOWN=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHOWN_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_CHROOT=y ++# CONFIG_BUSYBOX_DEFAULT_CKSUM is not set ++# CONFIG_BUSYBOX_DEFAULT_COMM is not set ++CONFIG_BUSYBOX_DEFAULT_CP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_CUT=y ++CONFIG_BUSYBOX_DEFAULT_DD=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_SIGNAL_HANDLING=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_THIRD_STATUS_LINE is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_IBS_OBS=y ++CONFIG_BUSYBOX_DEFAULT_DF=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DF_FANCY is not set ++CONFIG_BUSYBOX_DEFAULT_DIRNAME=y ++# CONFIG_BUSYBOX_DEFAULT_DOS2UNIX is not set ++# CONFIG_BUSYBOX_DEFAULT_UNIX2DOS is not set ++CONFIG_BUSYBOX_DEFAULT_DU=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y ++CONFIG_BUSYBOX_DEFAULT_ECHO=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_ECHO=y ++CONFIG_BUSYBOX_DEFAULT_ENV=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_ENV_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_EXPAND is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_EXPAND_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_EXPR=y ++CONFIG_BUSYBOX_DEFAULT_EXPR_MATH_SUPPORT_64=y ++CONFIG_BUSYBOX_DEFAULT_FALSE=y ++# CONFIG_BUSYBOX_DEFAULT_FOLD is not set ++CONFIG_BUSYBOX_DEFAULT_FSYNC=y ++CONFIG_BUSYBOX_DEFAULT_HEAD=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_HEAD=y ++# CONFIG_BUSYBOX_DEFAULT_INSTALL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSTALL_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_LN=y ++# CONFIG_BUSYBOX_DEFAULT_LOGNAME is not set ++CONFIG_BUSYBOX_DEFAULT_LS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_FILETYPES=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_FOLLOWLINKS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_RECURSIVE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_SORTFILES=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_TIMESTAMPS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_USERNAME=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_COLOR=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_COLOR_IS_DEFAULT=y ++CONFIG_BUSYBOX_DEFAULT_MD5SUM=y ++CONFIG_BUSYBOX_DEFAULT_MKDIR=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MKDIR_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_MKFIFO=y ++CONFIG_BUSYBOX_DEFAULT_MKNOD=y ++CONFIG_BUSYBOX_DEFAULT_MV=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MV_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_NICE=y ++# CONFIG_BUSYBOX_DEFAULT_NOHUP is not set ++# CONFIG_BUSYBOX_DEFAULT_OD is not set ++# CONFIG_BUSYBOX_DEFAULT_PRINTENV is not set ++CONFIG_BUSYBOX_DEFAULT_PRINTF=y ++CONFIG_BUSYBOX_DEFAULT_PWD=y ++CONFIG_BUSYBOX_DEFAULT_READLINK=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_READLINK_FOLLOW=y ++# CONFIG_BUSYBOX_DEFAULT_REALPATH is not set ++CONFIG_BUSYBOX_DEFAULT_RM=y ++CONFIG_BUSYBOX_DEFAULT_RMDIR=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_RMDIR_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_SEQ=y ++# CONFIG_BUSYBOX_DEFAULT_SHA1SUM is not set ++# CONFIG_BUSYBOX_DEFAULT_SHA256SUM is not set ++# CONFIG_BUSYBOX_DEFAULT_SHA512SUM is not set ++# CONFIG_BUSYBOX_DEFAULT_SHA3SUM is not set ++CONFIG_BUSYBOX_DEFAULT_SLEEP=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_SLEEP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FLOAT_SLEEP is not set ++CONFIG_BUSYBOX_DEFAULT_SORT=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SORT_BIG is not set ++# CONFIG_BUSYBOX_DEFAULT_SPLIT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SPLIT_FANCY is not set ++# CONFIG_BUSYBOX_DEFAULT_STAT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT is not set ++# CONFIG_BUSYBOX_DEFAULT_STTY is not set ++# CONFIG_BUSYBOX_DEFAULT_SUM is not set ++CONFIG_BUSYBOX_DEFAULT_SYNC=y ++# CONFIG_BUSYBOX_DEFAULT_TAC is not set ++CONFIG_BUSYBOX_DEFAULT_TAIL=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_TAIL=y ++CONFIG_BUSYBOX_DEFAULT_TEE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TEE_USE_BLOCK_IO=y ++CONFIG_BUSYBOX_DEFAULT_TRUE=y ++# CONFIG_BUSYBOX_DEFAULT_TTY is not set ++CONFIG_BUSYBOX_DEFAULT_UNAME=y ++# CONFIG_BUSYBOX_DEFAULT_UNEXPAND is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNEXPAND_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_UNIQ=y ++# CONFIG_BUSYBOX_DEFAULT_USLEEP is not set ++# CONFIG_BUSYBOX_DEFAULT_UUDECODE is not set ++# CONFIG_BUSYBOX_DEFAULT_UUENCODE is not set ++CONFIG_BUSYBOX_DEFAULT_WC=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_WC_LARGE is not set ++# CONFIG_BUSYBOX_DEFAULT_WHOAMI is not set ++CONFIG_BUSYBOX_DEFAULT_YES=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_PRESERVE_HARDLINKS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_AUTOWIDTH=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_HUMAN_READABLE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_MD5_SHA1_SUM_CHECK=y ++# CONFIG_BUSYBOX_DEFAULT_CHVT is not set ++# CONFIG_BUSYBOX_DEFAULT_FGCONSOLE is not set ++CONFIG_BUSYBOX_DEFAULT_CLEAR=y ++# CONFIG_BUSYBOX_DEFAULT_DEALLOCVT is not set ++# CONFIG_BUSYBOX_DEFAULT_DUMPKMAP is not set ++# CONFIG_BUSYBOX_DEFAULT_KBD_MODE is not set ++# CONFIG_BUSYBOX_DEFAULT_LOADFONT is not set ++# CONFIG_BUSYBOX_DEFAULT_LOADKMAP is not set ++# CONFIG_BUSYBOX_DEFAULT_OPENVT is not set ++CONFIG_BUSYBOX_DEFAULT_RESET=y ++# CONFIG_BUSYBOX_DEFAULT_RESIZE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_RESIZE_PRINT is not set ++# CONFIG_BUSYBOX_DEFAULT_SETCONSOLE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SETCONSOLE_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_SETFONT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SETFONT_TEXTUAL_MAP is not set ++CONFIG_BUSYBOX_DEFAULT_DEFAULT_SETFONT_DIR="" ++# CONFIG_BUSYBOX_DEFAULT_SETKEYCODES is not set ++# CONFIG_BUSYBOX_DEFAULT_SETLOGCONS is not set ++# CONFIG_BUSYBOX_DEFAULT_SHOWKEY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LOADFONT_PSF2 is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LOADFONT_RAW is not set ++CONFIG_BUSYBOX_DEFAULT_MKTEMP=y ++# CONFIG_BUSYBOX_DEFAULT_PIPE_PROGRESS is not set ++# CONFIG_BUSYBOX_DEFAULT_RUN_PARTS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUN_PARTS_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUN_PARTS_FANCY is not set ++CONFIG_BUSYBOX_DEFAULT_START_STOP_DAEMON=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_FANCY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_WHICH=y ++CONFIG_BUSYBOX_DEFAULT_AWK=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_AWK_LIBM=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_AWK_GNU_EXTENSIONS=y ++CONFIG_BUSYBOX_DEFAULT_CMP=y ++# CONFIG_BUSYBOX_DEFAULT_DIFF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DIFF_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DIFF_DIR is not set ++# CONFIG_BUSYBOX_DEFAULT_ED is not set ++# CONFIG_BUSYBOX_DEFAULT_PATCH is not set ++CONFIG_BUSYBOX_DEFAULT_SED=y ++CONFIG_BUSYBOX_DEFAULT_VI=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_MAX_LEN=1024 ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_8BIT is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_COLON=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_YANKMARK=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SEARCH=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_REGEX_SEARCH is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_USE_SIGNALS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_DOT_CMD=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_READONLY=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SETOPTS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SET=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_WIN_RESIZE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_ASK_TERMINAL=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE_MAX=0 ++CONFIG_BUSYBOX_DEFAULT_FEATURE_ALLOW_EXEC=y ++CONFIG_BUSYBOX_DEFAULT_FIND=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PRINT0=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MTIME=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MMIN is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PERM=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_TYPE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_XDEV=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MAXDEPTH=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_NEWER is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_INUM is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_EXEC=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_EXEC_PLUS is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_USER=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_GROUP=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_NOT=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_DEPTH=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PAREN=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_SIZE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PRUNE=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_DELETE is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PATH=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_REGEX=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_CONTEXT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_LINKS is not set ++CONFIG_BUSYBOX_DEFAULT_GREP=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_GREP_EGREP_ALIAS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_GREP_FGREP_ALIAS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_GREP_CONTEXT=y ++CONFIG_BUSYBOX_DEFAULT_XARGS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_CONFIRMATION=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_QUOTES=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_TERMOPT=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_ZERO_TERM=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_REPL_STR is not set ++# CONFIG_BUSYBOX_DEFAULT_BOOTCHARTD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_CONFIG_FILE is not set ++CONFIG_BUSYBOX_DEFAULT_HALT=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CALL_TELINIT is not set ++CONFIG_BUSYBOX_DEFAULT_TELINIT_PATH="" ++# CONFIG_BUSYBOX_DEFAULT_INIT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_INITTAB is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_KILL_REMOVED is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_KILL_DELAY=0 ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_SCTTY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_SYSLOG is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_EXTRA_QUIET is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INITRD is not set ++CONFIG_BUSYBOX_DEFAULT_INIT_TERMINAL_TYPE="" ++# CONFIG_BUSYBOX_DEFAULT_MESG is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MESG_ENABLE_ONLY_GROUP is not set ++# CONFIG_BUSYBOX_DEFAULT_ADD_SHELL is not set ++# CONFIG_BUSYBOX_DEFAULT_REMOVE_SHELL is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_SHADOWPASSWDS=y ++# CONFIG_BUSYBOX_DEFAULT_USE_BB_PWD_GRP is not set ++# CONFIG_BUSYBOX_DEFAULT_USE_BB_SHADOW is not set ++# CONFIG_BUSYBOX_DEFAULT_USE_BB_CRYPT is not set ++# CONFIG_BUSYBOX_DEFAULT_USE_BB_CRYPT_SHA is not set ++# CONFIG_BUSYBOX_DEFAULT_ADDUSER is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_ADDUSER_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_NAMES is not set ++CONFIG_BUSYBOX_DEFAULT_LAST_ID=0 ++CONFIG_BUSYBOX_DEFAULT_FIRST_SYSTEM_ID=0 ++CONFIG_BUSYBOX_DEFAULT_LAST_SYSTEM_ID=0 ++# CONFIG_BUSYBOX_DEFAULT_ADDGROUP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_ADDGROUP_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_ADDUSER_TO_GROUP is not set ++# CONFIG_BUSYBOX_DEFAULT_DELUSER is not set ++# CONFIG_BUSYBOX_DEFAULT_DELGROUP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DEL_USER_FROM_GROUP is not set ++# CONFIG_BUSYBOX_DEFAULT_GETTY is not set ++# CONFIG_BUSYBOX_DEFAULT_LOGIN is not set ++# CONFIG_BUSYBOX_DEFAULT_LOGIN_SESSION_AS_CHILD is not set ++# CONFIG_BUSYBOX_DEFAULT_LOGIN_SCRIPTS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_NOLOGIN is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SECURETTY is not set ++CONFIG_BUSYBOX_DEFAULT_PASSWD=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_PASSWD_WEAK_CHECK=y ++# CONFIG_BUSYBOX_DEFAULT_CRYPTPW is not set ++# CONFIG_BUSYBOX_DEFAULT_CHPASSWD is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_DEFAULT_PASSWD_ALGO="md5" ++# CONFIG_BUSYBOX_DEFAULT_SU is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_SYSLOG is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_CHECKS_SHELLS is not set ++# CONFIG_BUSYBOX_DEFAULT_SULOGIN is not set ++# CONFIG_BUSYBOX_DEFAULT_VLOCK is not set ++# CONFIG_BUSYBOX_DEFAULT_CHATTR is not set ++# CONFIG_BUSYBOX_DEFAULT_FSCK is not set ++# CONFIG_BUSYBOX_DEFAULT_LSATTR is not set ++# CONFIG_BUSYBOX_DEFAULT_TUNE2FS is not set ++# CONFIG_BUSYBOX_DEFAULT_MODINFO is not set ++# CONFIG_BUSYBOX_DEFAULT_MODPROBE_SMALL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set ++# CONFIG_BUSYBOX_DEFAULT_INSMOD is not set ++# CONFIG_BUSYBOX_DEFAULT_RMMOD is not set ++# CONFIG_BUSYBOX_DEFAULT_LSMOD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set ++# CONFIG_BUSYBOX_DEFAULT_MODPROBE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODPROBE_BLACKLIST is not set ++# CONFIG_BUSYBOX_DEFAULT_DEPMOD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_2_4_MODULES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_TRY_MMAP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_VERSION_CHECKING is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOADINKMEM is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOAD_MAP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOAD_MAP_FULL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_TAINTED_MODULE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODUTILS_ALIAS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODUTILS_SYMBOLS is not set ++CONFIG_BUSYBOX_DEFAULT_DEFAULT_MODULES_DIR="" ++CONFIG_BUSYBOX_DEFAULT_DEFAULT_DEPMOD_FILE="" ++# CONFIG_BUSYBOX_DEFAULT_BLOCKDEV is not set ++# CONFIG_BUSYBOX_DEFAULT_FATATTR is not set ++# CONFIG_BUSYBOX_DEFAULT_FSTRIM is not set ++# CONFIG_BUSYBOX_DEFAULT_MDEV is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_CONF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE is not set ++# CONFIG_BUSYBOX_DEFAULT_REV is not set ++# CONFIG_BUSYBOX_DEFAULT_ACPID is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_ACPID_COMPAT is not set ++# CONFIG_BUSYBOX_DEFAULT_BLKID is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE is not set ++CONFIG_BUSYBOX_DEFAULT_DMESG=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY=y ++# CONFIG_BUSYBOX_DEFAULT_FBSET is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE is not set ++# CONFIG_BUSYBOX_DEFAULT_FDFLUSH is not set ++# CONFIG_BUSYBOX_DEFAULT_FDFORMAT is not set ++# CONFIG_BUSYBOX_DEFAULT_FDISK is not set ++# CONFIG_BUSYBOX_DEFAULT_FDISK_SUPPORT_LARGE_DISKS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FDISK_WRITABLE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_AIX_LABEL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SGI_LABEL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SUN_LABEL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_OSF_LABEL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_GPT_LABEL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FDISK_ADVANCED is not set ++# CONFIG_BUSYBOX_DEFAULT_FINDFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FLOCK is not set ++# CONFIG_BUSYBOX_DEFAULT_FREERAMDISK is not set ++# CONFIG_BUSYBOX_DEFAULT_FSCK_MINIX is not set ++# CONFIG_BUSYBOX_DEFAULT_MKFS_EXT2 is not set ++# CONFIG_BUSYBOX_DEFAULT_MKFS_MINIX is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MINIX2 is not set ++# CONFIG_BUSYBOX_DEFAULT_MKFS_REISER is not set ++# CONFIG_BUSYBOX_DEFAULT_MKFS_VFAT is not set ++# CONFIG_BUSYBOX_DEFAULT_GETOPT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG is not set ++CONFIG_BUSYBOX_DEFAULT_HEXDUMP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE is not set ++# CONFIG_BUSYBOX_DEFAULT_HD is not set ++CONFIG_BUSYBOX_DEFAULT_HWCLOCK=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HWCLOCK_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS is not set ++# CONFIG_BUSYBOX_DEFAULT_IPCRM is not set ++# CONFIG_BUSYBOX_DEFAULT_IPCS is not set ++# CONFIG_BUSYBOX_DEFAULT_LOSETUP is not set ++# CONFIG_BUSYBOX_DEFAULT_LSPCI is not set ++# CONFIG_BUSYBOX_DEFAULT_LSUSB is not set ++CONFIG_BUSYBOX_DEFAULT_MKSWAP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MKSWAP_UUID is not set ++# CONFIG_BUSYBOX_DEFAULT_MORE is not set ++CONFIG_BUSYBOX_DEFAULT_MOUNT=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB=y ++CONFIG_BUSYBOX_DEFAULT_PIVOT_ROOT=y ++# CONFIG_BUSYBOX_DEFAULT_RDATE is not set ++# CONFIG_BUSYBOX_DEFAULT_RDEV is not set ++# CONFIG_BUSYBOX_DEFAULT_READPROFILE is not set ++# CONFIG_BUSYBOX_DEFAULT_RTCWAKE is not set ++# CONFIG_BUSYBOX_DEFAULT_SCRIPT is not set ++# CONFIG_BUSYBOX_DEFAULT_SCRIPTREPLAY is not set ++# CONFIG_BUSYBOX_DEFAULT_SETARCH is not set ++# CONFIG_BUSYBOX_DEFAULT_SWAPONOFF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SWAPON_PRI is not set ++CONFIG_BUSYBOX_DEFAULT_SWITCH_ROOT=y ++CONFIG_BUSYBOX_DEFAULT_UMOUNT=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_UMOUNT_ALL=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP_CREATE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MTAB_SUPPORT is not set ++# CONFIG_BUSYBOX_DEFAULT_VOLUMEID is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BTRFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_CRAMFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXFAT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_F2FS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_FAT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_HFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_ISO9660 is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_JFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LINUXRAID is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LINUXSWAP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LUKS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_NILFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_NTFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_OCFS2 is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_REISERFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_ROMFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SQUASHFS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SYSV is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UDF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_XFS is not set ++# CONFIG_BUSYBOX_DEFAULT_CONSPY is not set ++CONFIG_BUSYBOX_DEFAULT_CROND=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_D is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_CALL_SENDMAIL is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_DIR="/etc" ++CONFIG_BUSYBOX_DEFAULT_LESS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_MAXLINES=9999999 ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_BRACKETS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_FLAGS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_MARKS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_REGEXP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_WINCH is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_ASK_TERMINAL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS is not set ++# CONFIG_BUSYBOX_DEFAULT_NANDWRITE is not set ++# CONFIG_BUSYBOX_DEFAULT_NANDDUMP is not set ++# CONFIG_BUSYBOX_DEFAULT_RFKILL is not set ++# CONFIG_BUSYBOX_DEFAULT_SETSERIAL is not set ++# CONFIG_BUSYBOX_DEFAULT_TASKSET is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY is not set ++# CONFIG_BUSYBOX_DEFAULT_UBIATTACH is not set ++# CONFIG_BUSYBOX_DEFAULT_UBIDETACH is not set ++# CONFIG_BUSYBOX_DEFAULT_UBIMKVOL is not set ++# CONFIG_BUSYBOX_DEFAULT_UBIRMVOL is not set ++# CONFIG_BUSYBOX_DEFAULT_UBIRSVOL is not set ++# CONFIG_BUSYBOX_DEFAULT_UBIUPDATEVOL is not set ++# CONFIG_BUSYBOX_DEFAULT_WALL is not set ++# CONFIG_BUSYBOX_DEFAULT_ADJTIMEX is not set ++# CONFIG_BUSYBOX_DEFAULT_BBCONFIG is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_COMPRESS_BBCONFIG is not set ++# CONFIG_BUSYBOX_DEFAULT_BEEP is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_BEEP_FREQ=0 ++CONFIG_BUSYBOX_DEFAULT_FEATURE_BEEP_LENGTH_MS=0 ++# CONFIG_BUSYBOX_DEFAULT_CHAT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_NOFAIL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_TTY_HIFI is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_IMPLICIT_CR is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_SWALLOW_OPTS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_SEND_ESCAPES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_VAR_ABORT_LEN is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_CLR_ABORT is not set ++# CONFIG_BUSYBOX_DEFAULT_CHRT is not set ++CONFIG_BUSYBOX_DEFAULT_CRONTAB=y ++# CONFIG_BUSYBOX_DEFAULT_DC is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DC_LIBM is not set ++# CONFIG_BUSYBOX_DEFAULT_DEVFSD is not set ++# CONFIG_BUSYBOX_DEFAULT_DEVFSD_MODLOAD is not set ++# CONFIG_BUSYBOX_DEFAULT_DEVFSD_FG_NP is not set ++# CONFIG_BUSYBOX_DEFAULT_DEVFSD_VERBOSE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_DEVFS is not set ++# CONFIG_BUSYBOX_DEFAULT_DEVMEM is not set ++# CONFIG_BUSYBOX_DEFAULT_EJECT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI is not set ++# CONFIG_BUSYBOX_DEFAULT_FBSPLASH is not set ++# CONFIG_BUSYBOX_DEFAULT_FLASHCP is not set ++# CONFIG_BUSYBOX_DEFAULT_FLASH_LOCK is not set ++# CONFIG_BUSYBOX_DEFAULT_FLASH_UNLOCK is not set ++# CONFIG_BUSYBOX_DEFAULT_FLASH_ERASEALL is not set ++# CONFIG_BUSYBOX_DEFAULT_IONICE is not set ++# CONFIG_BUSYBOX_DEFAULT_INOTIFYD is not set ++# CONFIG_BUSYBOX_DEFAULT_LAST is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LAST_SMALL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LAST_FANCY is not set ++# CONFIG_BUSYBOX_DEFAULT_HDPARM is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_GET_IDENTITY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_GETSET_DMA is not set ++CONFIG_BUSYBOX_DEFAULT_LOCK=y ++# CONFIG_BUSYBOX_DEFAULT_MAKEDEVS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MAKEDEVS_LEAF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_MAKEDEVS_TABLE is not set ++# CONFIG_BUSYBOX_DEFAULT_MAN is not set ++# CONFIG_BUSYBOX_DEFAULT_MICROCOM is not set ++# CONFIG_BUSYBOX_DEFAULT_MOUNTPOINT is not set ++# CONFIG_BUSYBOX_DEFAULT_MT is not set ++# CONFIG_BUSYBOX_DEFAULT_RAIDAUTORUN is not set ++# CONFIG_BUSYBOX_DEFAULT_READAHEAD is not set ++# CONFIG_BUSYBOX_DEFAULT_RUNLEVEL is not set ++# CONFIG_BUSYBOX_DEFAULT_RX is not set ++# CONFIG_BUSYBOX_DEFAULT_SETSID is not set ++CONFIG_BUSYBOX_DEFAULT_STRINGS=y ++CONFIG_BUSYBOX_DEFAULT_TIME=y ++# CONFIG_BUSYBOX_DEFAULT_TIMEOUT is not set ++# CONFIG_BUSYBOX_DEFAULT_TTYSIZE is not set ++# CONFIG_BUSYBOX_DEFAULT_VOLNAME is not set ++# CONFIG_BUSYBOX_DEFAULT_WATCHDOG is not set ++# CONFIG_BUSYBOX_DEFAULT_NAMEIF is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED is not set ++# CONFIG_BUSYBOX_DEFAULT_NBDCLIENT is not set ++CONFIG_BUSYBOX_DEFAULT_NC=y ++# CONFIG_BUSYBOX_DEFAULT_NC_SERVER is not set ++# CONFIG_BUSYBOX_DEFAULT_NC_EXTRA is not set ++# CONFIG_BUSYBOX_DEFAULT_NC_110_COMPAT is not set ++CONFIG_BUSYBOX_DEFAULT_PING=y ++CONFIG_BUSYBOX_DEFAULT_PING6=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_PING=y ++# CONFIG_BUSYBOX_DEFAULT_WHOIS is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IPV6=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNIX_LOCAL is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_PREFER_IPV4_ADDRESS=y ++CONFIG_BUSYBOX_DEFAULT_VERBOSE_RESOLUTION_ERRORS=y ++# CONFIG_BUSYBOX_DEFAULT_ARP is not set ++# CONFIG_BUSYBOX_DEFAULT_ARPING is not set ++CONFIG_BUSYBOX_DEFAULT_BRCTL=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_BRCTL_FANCY=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_BRCTL_SHOW=y ++# CONFIG_BUSYBOX_DEFAULT_DNSD is not set ++# CONFIG_BUSYBOX_DEFAULT_ETHER_WAKE is not set ++# CONFIG_BUSYBOX_DEFAULT_FAKEIDENTD is not set ++# CONFIG_BUSYBOX_DEFAULT_FTPD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTP_WRITE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTP_AUTHENTICATION is not set ++# CONFIG_BUSYBOX_DEFAULT_FTPGET is not set ++# CONFIG_BUSYBOX_DEFAULT_FTPPUT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPGETPUT_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_HOSTNAME is not set ++# CONFIG_BUSYBOX_DEFAULT_HTTPD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_RANGES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_SETUID is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_BASIC_AUTH is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_AUTH_MD5 is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_CGI is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_ENCODE_URL_STR is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_ERROR_PAGES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_PROXY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_GZIP is not set ++CONFIG_BUSYBOX_DEFAULT_IFCONFIG=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_STATUS=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_SLIP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_HW=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_BROADCAST_PLUS=y ++# CONFIG_BUSYBOX_DEFAULT_IFENSLAVE is not set ++# CONFIG_BUSYBOX_DEFAULT_IFPLUGD is not set ++# CONFIG_BUSYBOX_DEFAULT_IFUPDOWN is not set ++CONFIG_BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH="" ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP_BUILTIN is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV4 is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV6 is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_MAPPING is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set ++# CONFIG_BUSYBOX_DEFAULT_INETD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_RPC is not set ++CONFIG_BUSYBOX_DEFAULT_IP=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ADDRESS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_LINK=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ROUTE=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_TUNNEL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_RULE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_SHORT_FORMS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS is not set ++# CONFIG_BUSYBOX_DEFAULT_IPADDR is not set ++# CONFIG_BUSYBOX_DEFAULT_IPLINK is not set ++# CONFIG_BUSYBOX_DEFAULT_IPROUTE is not set ++# CONFIG_BUSYBOX_DEFAULT_IPTUNNEL is not set ++# CONFIG_BUSYBOX_DEFAULT_IPRULE is not set ++# CONFIG_BUSYBOX_DEFAULT_IPCALC is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS is not set ++CONFIG_BUSYBOX_DEFAULT_NETMSG=y ++CONFIG_BUSYBOX_DEFAULT_NETSTAT=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_NETSTAT_WIDE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_NETSTAT_PRG=y ++CONFIG_BUSYBOX_DEFAULT_NSLOOKUP=y ++CONFIG_BUSYBOX_DEFAULT_NTPD=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_NTPD_SERVER=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_NTPD_CONF is not set ++# CONFIG_BUSYBOX_DEFAULT_PSCAN is not set ++CONFIG_BUSYBOX_DEFAULT_ROUTE=y ++# CONFIG_BUSYBOX_DEFAULT_SLATTACH is not set ++# CONFIG_BUSYBOX_DEFAULT_TCPSVD is not set ++# CONFIG_BUSYBOX_DEFAULT_TELNET is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_TTYPE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_AUTOLOGIN is not set ++# CONFIG_BUSYBOX_DEFAULT_TELNETD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNETD_STANDALONE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNETD_INETD_WAIT is not set ++# CONFIG_BUSYBOX_DEFAULT_TFTP is not set ++# CONFIG_BUSYBOX_DEFAULT_TFTPD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_GET is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_PUT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_BLOCKSIZE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_PROGRESS_BAR is not set ++# CONFIG_BUSYBOX_DEFAULT_TFTP_DEBUG is not set ++CONFIG_BUSYBOX_DEFAULT_TRACEROUTE=y ++CONFIG_BUSYBOX_DEFAULT_TRACEROUTE6=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_VERBOSE=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_USE_ICMP is not set ++# CONFIG_BUSYBOX_DEFAULT_TUNCTL is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TUNCTL_UG is not set ++# CONFIG_BUSYBOX_DEFAULT_UDHCPC6 is not set ++# CONFIG_BUSYBOX_DEFAULT_UDHCPD is not set ++# CONFIG_BUSYBOX_DEFAULT_DHCPRELAY is not set ++# CONFIG_BUSYBOX_DEFAULT_DUMPLEASES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set ++CONFIG_BUSYBOX_DEFAULT_DHCPD_LEASES_FILE="" ++CONFIG_BUSYBOX_DEFAULT_UDHCPC=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC_ARPING is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC_SANITIZEOPT is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_PORT is not set ++CONFIG_BUSYBOX_DEFAULT_UDHCP_DEBUG=0 ++CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_RFC3397=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_8021Q is not set ++CONFIG_BUSYBOX_DEFAULT_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" ++CONFIG_BUSYBOX_DEFAULT_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 ++CONFIG_BUSYBOX_DEFAULT_IFUPDOWN_UDHCPC_CMD_OPTIONS="" ++# CONFIG_BUSYBOX_DEFAULT_UDPSVD is not set ++# CONFIG_BUSYBOX_DEFAULT_VCONFIG is not set ++CONFIG_BUSYBOX_DEFAULT_WGET=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT is not set ++# CONFIG_BUSYBOX_DEFAULT_ZCIP is not set ++# CONFIG_BUSYBOX_DEFAULT_LPD is not set ++# CONFIG_BUSYBOX_DEFAULT_LPR is not set ++# CONFIG_BUSYBOX_DEFAULT_LPQ is not set ++# CONFIG_BUSYBOX_DEFAULT_MAKEMIME is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET="" ++# CONFIG_BUSYBOX_DEFAULT_POPMAILDIR is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_POPMAILDIR_DELIVERY is not set ++# CONFIG_BUSYBOX_DEFAULT_REFORMIME is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_REFORMIME_COMPAT is not set ++# CONFIG_BUSYBOX_DEFAULT_SENDMAIL is not set ++# CONFIG_BUSYBOX_DEFAULT_IOSTAT is not set ++# CONFIG_BUSYBOX_DEFAULT_LSOF is not set ++# CONFIG_BUSYBOX_DEFAULT_MPSTAT is not set ++# CONFIG_BUSYBOX_DEFAULT_NMETER is not set ++# CONFIG_BUSYBOX_DEFAULT_PMAP is not set ++# CONFIG_BUSYBOX_DEFAULT_POWERTOP is not set ++# CONFIG_BUSYBOX_DEFAULT_PSTREE is not set ++# CONFIG_BUSYBOX_DEFAULT_PWDX is not set ++# CONFIG_BUSYBOX_DEFAULT_SMEMCAP is not set ++CONFIG_BUSYBOX_DEFAULT_TOP=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_SMP_CPU is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_DECIMALS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_SMP_PROCESS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOPMEM is not set ++CONFIG_BUSYBOX_DEFAULT_UPTIME=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT is not set ++CONFIG_BUSYBOX_DEFAULT_FREE=y ++# CONFIG_BUSYBOX_DEFAULT_FUSER is not set ++CONFIG_BUSYBOX_DEFAULT_KILL=y ++CONFIG_BUSYBOX_DEFAULT_KILLALL=y ++# CONFIG_BUSYBOX_DEFAULT_KILLALL5 is not set ++CONFIG_BUSYBOX_DEFAULT_PGREP=y ++CONFIG_BUSYBOX_DEFAULT_PIDOF=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT is not set ++# CONFIG_BUSYBOX_DEFAULT_PKILL is not set ++CONFIG_BUSYBOX_DEFAULT_PS=y ++CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_WIDE=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_LONG is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_TIME is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS is not set ++# CONFIG_BUSYBOX_DEFAULT_RENICE is not set ++CONFIG_BUSYBOX_DEFAULT_BB_SYSCTL=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS is not set ++# CONFIG_BUSYBOX_DEFAULT_WATCH is not set ++# CONFIG_BUSYBOX_DEFAULT_RUNSV is not set ++# CONFIG_BUSYBOX_DEFAULT_RUNSVDIR is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUNSVDIR_LOG is not set ++# CONFIG_BUSYBOX_DEFAULT_SV is not set ++CONFIG_BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR="" ++# CONFIG_BUSYBOX_DEFAULT_SVLOGD is not set ++# CONFIG_BUSYBOX_DEFAULT_CHPST is not set ++# CONFIG_BUSYBOX_DEFAULT_SETUIDGID is not set ++# CONFIG_BUSYBOX_DEFAULT_ENVUIDGID is not set ++# CONFIG_BUSYBOX_DEFAULT_ENVDIR is not set ++# CONFIG_BUSYBOX_DEFAULT_SOFTLIMIT is not set ++# CONFIG_BUSYBOX_DEFAULT_CHCON is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHCON_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_GETENFORCE is not set ++# CONFIG_BUSYBOX_DEFAULT_GETSEBOOL is not set ++# CONFIG_BUSYBOX_DEFAULT_LOAD_POLICY is not set ++# CONFIG_BUSYBOX_DEFAULT_MATCHPATHCON is not set ++# CONFIG_BUSYBOX_DEFAULT_RESTORECON is not set ++# CONFIG_BUSYBOX_DEFAULT_RUNCON is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUNCON_LONG_OPTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_SELINUXENABLED is not set ++# CONFIG_BUSYBOX_DEFAULT_SETENFORCE is not set ++# CONFIG_BUSYBOX_DEFAULT_SETFILES is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SETFILES_CHECK_OPTION is not set ++# CONFIG_BUSYBOX_DEFAULT_SETSEBOOL is not set ++# CONFIG_BUSYBOX_DEFAULT_SESTATUS is not set ++CONFIG_BUSYBOX_DEFAULT_ASH=y ++CONFIG_BUSYBOX_DEFAULT_ASH_BASH_COMPAT=y ++# CONFIG_BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT is not set ++CONFIG_BUSYBOX_DEFAULT_ASH_JOB_CONTROL=y ++CONFIG_BUSYBOX_DEFAULT_ASH_ALIAS=y ++CONFIG_BUSYBOX_DEFAULT_ASH_GETOPTS=y ++CONFIG_BUSYBOX_DEFAULT_ASH_BUILTIN_ECHO=y ++CONFIG_BUSYBOX_DEFAULT_ASH_BUILTIN_PRINTF=y ++CONFIG_BUSYBOX_DEFAULT_ASH_BUILTIN_TEST=y ++# CONFIG_BUSYBOX_DEFAULT_ASH_HELP is not set ++CONFIG_BUSYBOX_DEFAULT_ASH_CMDCMD=y ++# CONFIG_BUSYBOX_DEFAULT_ASH_MAIL is not set ++# CONFIG_BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE is not set ++# CONFIG_BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT is not set ++CONFIG_BUSYBOX_DEFAULT_ASH_EXPAND_PRMT=y ++# CONFIG_BUSYBOX_DEFAULT_CTTYHACK is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_BASH_COMPAT is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_HELP is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_INTERACTIVE is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_SAVEHISTORY is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_JOB is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_TICK is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_IF is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_LOOPS is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_CASE is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_FUNCTIONS is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_LOCAL is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_EXPORT_N is not set ++# CONFIG_BUSYBOX_DEFAULT_HUSH_MODE_X is not set ++# CONFIG_BUSYBOX_DEFAULT_MSH is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_IS_ASH=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_IS_HUSH is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_IS_NONE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_BASH_IS_ASH is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_BASH_IS_HUSH is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_BASH_IS_NONE=y ++CONFIG_BUSYBOX_DEFAULT_SH_MATH_SUPPORT=y ++CONFIG_BUSYBOX_DEFAULT_SH_MATH_SUPPORT_64=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_NOFORK=y ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE is not set ++# CONFIG_BUSYBOX_DEFAULT_SYSLOGD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_ROTATE_LOGFILE is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_REMOTE_LOG is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_DUP is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_CFG is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_READ_BUFFER_SIZE=0 ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG is not set ++CONFIG_BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0 ++# CONFIG_BUSYBOX_DEFAULT_LOGREAD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_LOGREAD_REDUCED_LOCKING is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_KMSG_SYSLOG is not set ++# CONFIG_BUSYBOX_DEFAULT_KLOGD is not set ++# CONFIG_BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL is not set ++CONFIG_BUSYBOX_DEFAULT_LOGGER=y ++# CONFIG_PACKAGE_ca-certificates is not set ++CONFIG_PACKAGE_dnsmasq=y ++# CONFIG_PACKAGE_dnsmasq-dhcpv6 is not set ++# CONFIG_PACKAGE_dnsmasq-full is not set ++# CONFIG_PACKAGE_dropbear is not set ++# CONFIG_PACKAGE_ead is not set ++CONFIG_PACKAGE_firewall=y ++CONFIG_PACKAGE_fstools=y ++CONFIG_PACKAGE_jsonfilter=y ++# CONFIG_PACKAGE_libatomic is not set ++CONFIG_PACKAGE_libc=y ++CONFIG_PACKAGE_libgcc=y ++CONFIG_PACKAGE_libpthread=m ++CONFIG_PACKAGE_librt=m ++# CONFIG_PACKAGE_libstdcpp is not set ++# CONFIG_PACKAGE_mksh is not set ++CONFIG_PACKAGE_mtd=y ++CONFIG_PACKAGE_netifd=y ++# CONFIG_PACKAGE_nvram is not set ++# CONFIG_PACKAGE_om-watchdog is not set ++CONFIG_PACKAGE_opkg=y ++# CONFIG_PACKAGE_opkg-smime is not set ++CONFIG_PACKAGE_procd=y ++ ++# ++# Configuration ++# ++# CONFIG_PROCD_SHOW_BOOT is not set ++# CONFIG_PROCD_ZRAM_TMPFS is not set ++# CONFIG_PACKAGE_qos-scripts is not set ++# CONFIG_PACKAGE_resolveip is not set ++# CONFIG_PACKAGE_rpcd is not set ++# CONFIG_PACKAGE_sqm-scripts is not set ++CONFIG_PACKAGE_swconfig=y ++CONFIG_PACKAGE_ubox=y ++CONFIG_PACKAGE_ubus=y ++CONFIG_PACKAGE_ubusd=y ++CONFIG_PACKAGE_uci=y ++# CONFIG_PACKAGE_udev is not set ++CONFIG_PACKAGE_usign=y ++# CONFIG_PACKAGE_wireless-tools is not set ++# CONFIG_PACKAGE_zram-swap is not set ++ ++# ++# Administration ++# ++ ++# ++# zabbix ++# ++# CONFIG_PACKAGE_zabbix-agent is not set ++# CONFIG_PACKAGE_zabbix-agentd is not set ++# CONFIG_PACKAGE_zabbix-extra-mac80211 is not set ++# CONFIG_PACKAGE_zabbix-extra-network is not set ++# CONFIG_PACKAGE_zabbix-extra-wifi is not set ++# CONFIG_PACKAGE_zabbix-get is not set ++# CONFIG_PACKAGE_zabbix-proxy is not set ++# CONFIG_PACKAGE_zabbix-sender is not set ++# CONFIG_PACKAGE_zabbix-server is not set ++# CONFIG_PACKAGE_debootstrap is not set ++# CONFIG_PACKAGE_htop is not set ++# CONFIG_PACKAGE_monit is not set ++# CONFIG_PACKAGE_monit-nossl is not set ++# CONFIG_PACKAGE_muninlite is not set ++# CONFIG_PACKAGE_sudo is not set ++ ++# ++# Boot Loaders ++# ++# CONFIG_PACKAGE_uboot-ar71xx-nbg460n_550n_550nh is not set ++ ++# ++# Development ++# ++# CONFIG_PACKAGE_ar is not set ++# CONFIG_PACKAGE_binutils is not set ++# CONFIG_PACKAGE_diffutils is not set ++# CONFIG_PACKAGE_gcc is not set ++# CONFIG_PACKAGE_gdb is not set ++# CONFIG_PACKAGE_gdbserver is not set ++# CONFIG_PACKAGE_lttng-tools is not set ++# CONFIG_PACKAGE_objdump is not set ++# CONFIG_PACKAGE_oprofile is not set ++# CONFIG_PACKAGE_patch is not set ++# CONFIG_PACKAGE_trace-cmd is not set ++# CONFIG_PACKAGE_trace-cmd-extra is not set ++# CONFIG_PACKAGE_valgrind is not set ++ ++# ++# Extra packages ++# ++ ++# ++# Firmware ++# ++# CONFIG_PACKAGE_ar3k-firmware is not set ++# CONFIG_PACKAGE_ibt-firmware is not set ++# CONFIG_PACKAGE_r8169-firmware is not set ++# CONFIG_PACKAGE_r8188eu-firmware is not set ++ ++# ++# Kernel modules ++# ++ ++# ++# Block Devices ++# ++# CONFIG_PACKAGE_kmod-aoe is not set ++# CONFIG_PACKAGE_kmod-ata-core is not set ++# CONFIG_PACKAGE_kmod-block2mtd is not set ++# CONFIG_PACKAGE_kmod-dm is not set ++# CONFIG_PACKAGE_kmod-ide-core is not set ++# CONFIG_PACKAGE_kmod-loop is not set ++# CONFIG_PACKAGE_kmod-md-mod is not set ++# CONFIG_PACKAGE_kmod-nbd is not set ++# CONFIG_PACKAGE_kmod-scsi-cdrom is not set ++# CONFIG_PACKAGE_kmod-scsi-core is not set ++# CONFIG_PACKAGE_kmod-scsi-generic is not set ++ ++# ++# CAN Support ++# ++# CONFIG_PACKAGE_kmod-can is not set ++ ++# ++# Cryptographic API modules ++# ++# CONFIG_PACKAGE_kmod-crypto-aead is not set ++# CONFIG_PACKAGE_kmod-crypto-authenc is not set ++# CONFIG_PACKAGE_kmod-crypto-cbc is not set ++# CONFIG_PACKAGE_kmod-crypto-ccm is not set ++# CONFIG_PACKAGE_kmod-crypto-cmac is not set ++# CONFIG_PACKAGE_kmod-crypto-crc32c is not set ++# CONFIG_PACKAGE_kmod-crypto-ctr is not set ++# CONFIG_PACKAGE_kmod-crypto-deflate is not set ++# CONFIG_PACKAGE_kmod-crypto-des is not set ++# CONFIG_PACKAGE_kmod-crypto-ecb is not set ++# CONFIG_PACKAGE_kmod-crypto-fcrypt is not set ++# CONFIG_PACKAGE_kmod-crypto-gcm is not set ++# CONFIG_PACKAGE_kmod-crypto-gf128 is not set ++# CONFIG_PACKAGE_kmod-crypto-ghash is not set ++# CONFIG_PACKAGE_kmod-crypto-hash is not set ++# CONFIG_PACKAGE_kmod-crypto-hmac is not set ++# CONFIG_PACKAGE_kmod-crypto-hw-geode is not set ++# CONFIG_PACKAGE_kmod-crypto-hw-hifn-795x is not set ++# CONFIG_PACKAGE_kmod-crypto-hw-padlock is not set ++# CONFIG_PACKAGE_kmod-crypto-hw-talitos is not set ++# CONFIG_PACKAGE_kmod-crypto-iv is not set ++# CONFIG_PACKAGE_kmod-crypto-manager is not set ++# CONFIG_PACKAGE_kmod-crypto-md4 is not set ++# CONFIG_PACKAGE_kmod-crypto-md5 is not set ++# CONFIG_PACKAGE_kmod-crypto-michael-mic is not set ++# CONFIG_PACKAGE_kmod-crypto-misc is not set ++# CONFIG_PACKAGE_kmod-crypto-null is not set ++# CONFIG_PACKAGE_kmod-crypto-ocf is not set ++# CONFIG_PACKAGE_kmod-crypto-pcbc is not set ++# CONFIG_PACKAGE_kmod-crypto-pcompress is not set ++# CONFIG_PACKAGE_kmod-crypto-rng is not set ++# CONFIG_PACKAGE_kmod-crypto-rng-jitterentropy is not set ++# CONFIG_PACKAGE_kmod-crypto-seqiv is not set ++# CONFIG_PACKAGE_kmod-crypto-sha1 is not set ++# CONFIG_PACKAGE_kmod-crypto-sha256 is not set ++# CONFIG_PACKAGE_kmod-crypto-test is not set ++# CONFIG_PACKAGE_kmod-crypto-user is not set ++# CONFIG_PACKAGE_kmod-crypto-wq is not set ++# CONFIG_PACKAGE_kmod-crypto-xts is not set ++# CONFIG_PACKAGE_kmod-cryptodev is not set ++ ++# ++# Filesystems ++# ++# CONFIG_PACKAGE_kmod-fs-afs is not set ++# CONFIG_PACKAGE_kmod-fs-autofs4 is not set ++# CONFIG_PACKAGE_kmod-fs-btrfs is not set ++# CONFIG_PACKAGE_kmod-fs-cifs is not set ++# CONFIG_PACKAGE_kmod-fs-configfs is not set ++# CONFIG_PACKAGE_kmod-fs-cramfs is not set ++# CONFIG_PACKAGE_kmod-fs-exfat is not set ++# CONFIG_PACKAGE_kmod-fs-exportfs is not set ++# CONFIG_PACKAGE_kmod-fs-ext4 is not set ++# CONFIG_PACKAGE_kmod-fs-f2fs is not set ++# CONFIG_PACKAGE_kmod-fs-fscache is not set ++# CONFIG_PACKAGE_kmod-fs-hfs is not set ++# CONFIG_PACKAGE_kmod-fs-hfsplus is not set ++# CONFIG_PACKAGE_kmod-fs-isofs is not set ++# CONFIG_PACKAGE_kmod-fs-jfs is not set ++# CONFIG_PACKAGE_kmod-fs-minix is not set ++# CONFIG_PACKAGE_kmod-fs-msdos is not set ++# CONFIG_PACKAGE_kmod-fs-nfs is not set ++# CONFIG_PACKAGE_kmod-fs-nfs-common is not set ++# CONFIG_PACKAGE_kmod-fs-nfsd is not set ++# CONFIG_PACKAGE_kmod-fs-ntfs is not set ++# CONFIG_PACKAGE_kmod-fs-reiserfs is not set ++# CONFIG_PACKAGE_kmod-fs-udf is not set ++# CONFIG_PACKAGE_kmod-fs-vfat is not set ++# CONFIG_PACKAGE_kmod-fs-xfs is not set ++# CONFIG_PACKAGE_kmod-fuse is not set ++ ++# ++# FireWire support ++# ++# CONFIG_PACKAGE_kmod-firewire is not set ++ ++# ++# Hardware Monitoring Support ++# ++# CONFIG_PACKAGE_kmod-hwmon-core is not set ++ ++# ++# I2C support ++# ++# CONFIG_PACKAGE_kmod-i2c-core is not set ++# CONFIG_PACKAGE_kmod-i2c-gpio-custom is not set ++ ++# ++# Input modules ++# ++# CONFIG_PACKAGE_kmod-hid is not set ++# CONFIG_PACKAGE_kmod-hid-generic is not set ++CONFIG_PACKAGE_kmod-input-core=y ++# CONFIG_PACKAGE_kmod-input-evdev is not set ++# CONFIG_PACKAGE_kmod-input-gpio-encoder is not set ++# CONFIG_PACKAGE_kmod-input-gpio-keys is not set ++# CONFIG_PACKAGE_kmod-input-gpio-keys-polled is not set ++# CONFIG_PACKAGE_kmod-input-joydev is not set ++# CONFIG_PACKAGE_kmod-input-matrixkmap is not set ++CONFIG_PACKAGE_kmod-input-polldev=y ++# CONFIG_PACKAGE_kmod-input-uinput is not set ++ ++# ++# LED modules ++# ++# CONFIG_PACKAGE_kmod-leds-gpio is not set ++# CONFIG_PACKAGE_kmod-leds-pca963x is not set ++# CONFIG_PACKAGE_kmod-leds-rb750 is not set ++# CONFIG_PACKAGE_kmod-leds-wndr3700-usb is not set ++# CONFIG_PACKAGE_kmod-ledtrig-default-on is not set ++# CONFIG_PACKAGE_kmod-ledtrig-gpio is not set ++# CONFIG_PACKAGE_kmod-ledtrig-heartbeat is not set ++# CONFIG_PACKAGE_kmod-ledtrig-morse is not set ++# CONFIG_PACKAGE_kmod-ledtrig-netdev is not set ++# CONFIG_PACKAGE_kmod-ledtrig-netfilter is not set ++# CONFIG_PACKAGE_kmod-ledtrig-oneshot is not set ++# CONFIG_PACKAGE_kmod-ledtrig-timer is not set ++# CONFIG_PACKAGE_kmod-ledtrig-transient is not set ++CONFIG_PACKAGE_kmod-ledtrig-usbdev=y ++ ++# ++# Libraries ++# ++# CONFIG_PACKAGE_kmod-lib-cordic is not set ++CONFIG_PACKAGE_kmod-lib-crc-ccitt=y ++# CONFIG_PACKAGE_kmod-lib-crc-itu-t is not set ++# CONFIG_PACKAGE_kmod-lib-crc16 is not set ++# CONFIG_PACKAGE_kmod-lib-crc32c is not set ++# CONFIG_PACKAGE_kmod-lib-crc7 is not set ++# CONFIG_PACKAGE_kmod-lib-crc8 is not set ++# CONFIG_PACKAGE_kmod-lib-lz4 is not set ++# CONFIG_PACKAGE_kmod-lib-lzo is not set ++# CONFIG_PACKAGE_kmod-lib-textsearch is not set ++# CONFIG_PACKAGE_kmod-lib-zlib is not set ++ ++# ++# Native Language Support ++# ++CONFIG_PACKAGE_kmod-nls-base=y ++# CONFIG_PACKAGE_kmod-nls-cp1250 is not set ++# CONFIG_PACKAGE_kmod-nls-cp1251 is not set ++# CONFIG_PACKAGE_kmod-nls-cp437 is not set ++# CONFIG_PACKAGE_kmod-nls-cp775 is not set ++# CONFIG_PACKAGE_kmod-nls-cp850 is not set ++# CONFIG_PACKAGE_kmod-nls-cp852 is not set ++# CONFIG_PACKAGE_kmod-nls-cp862 is not set ++# CONFIG_PACKAGE_kmod-nls-cp864 is not set ++# CONFIG_PACKAGE_kmod-nls-cp866 is not set ++# CONFIG_PACKAGE_kmod-nls-cp932 is not set ++# CONFIG_PACKAGE_kmod-nls-iso8859-1 is not set ++# CONFIG_PACKAGE_kmod-nls-iso8859-13 is not set ++# CONFIG_PACKAGE_kmod-nls-iso8859-15 is not set ++# CONFIG_PACKAGE_kmod-nls-iso8859-2 is not set ++# CONFIG_PACKAGE_kmod-nls-iso8859-6 is not set ++# CONFIG_PACKAGE_kmod-nls-iso8859-8 is not set ++# CONFIG_PACKAGE_kmod-nls-koi8r is not set ++# CONFIG_PACKAGE_kmod-nls-utf8 is not set ++ ++# ++# Netfilter Extensions ++# ++# CONFIG_PACKAGE_kmod-arptables is not set ++# CONFIG_PACKAGE_kmod-ebtables is not set ++CONFIG_PACKAGE_kmod-ip6tables=y ++# CONFIG_PACKAGE_kmod-ip6tables-extra is not set ++# CONFIG_PACKAGE_kmod-ipt-account is not set ++# CONFIG_PACKAGE_kmod-ipt-chaos is not set ++# CONFIG_PACKAGE_kmod-ipt-cluster is not set ++# CONFIG_PACKAGE_kmod-ipt-clusterip is not set ++# CONFIG_PACKAGE_kmod-ipt-compat-xtables is not set ++# CONFIG_PACKAGE_kmod-ipt-condition is not set ++CONFIG_PACKAGE_kmod-ipt-conntrack=y ++# CONFIG_PACKAGE_kmod-ipt-conntrack-extra is not set ++CONFIG_PACKAGE_kmod-ipt-core=y ++# CONFIG_PACKAGE_kmod-ipt-debug is not set ++# CONFIG_PACKAGE_kmod-ipt-delude is not set ++# CONFIG_PACKAGE_kmod-ipt-dhcpmac is not set ++# CONFIG_PACKAGE_kmod-ipt-dnetmap is not set ++# CONFIG_PACKAGE_kmod-ipt-extra is not set ++# CONFIG_PACKAGE_kmod-ipt-filter is not set ++# CONFIG_PACKAGE_kmod-ipt-fuzzy is not set ++# CONFIG_PACKAGE_kmod-ipt-geoip is not set ++# CONFIG_PACKAGE_kmod-ipt-hashlimit is not set ++# CONFIG_PACKAGE_kmod-ipt-iface is not set ++# CONFIG_PACKAGE_kmod-ipt-ipmark is not set ++# CONFIG_PACKAGE_kmod-ipt-ipopt is not set ++# CONFIG_PACKAGE_kmod-ipt-ipp2p is not set ++# CONFIG_PACKAGE_kmod-ipt-iprange is not set ++# CONFIG_PACKAGE_kmod-ipt-ipsec is not set ++# CONFIG_PACKAGE_kmod-ipt-ipset is not set ++# CONFIG_PACKAGE_kmod-ipt-ipv4options is not set ++# CONFIG_PACKAGE_kmod-ipt-led is not set ++# CONFIG_PACKAGE_kmod-ipt-length2 is not set ++# CONFIG_PACKAGE_kmod-ipt-logmark is not set ++# CONFIG_PACKAGE_kmod-ipt-lscan is not set ++# CONFIG_PACKAGE_kmod-ipt-lua is not set ++CONFIG_PACKAGE_kmod-ipt-nat=y ++# CONFIG_PACKAGE_kmod-ipt-nat-extra is not set ++# CONFIG_PACKAGE_kmod-ipt-nat6 is not set ++# CONFIG_PACKAGE_kmod-ipt-nathelper-rtsp is not set ++# CONFIG_PACKAGE_kmod-ipt-nflog is not set ++# CONFIG_PACKAGE_kmod-ipt-nfqueue is not set ++# CONFIG_PACKAGE_kmod-ipt-psd is not set ++# CONFIG_PACKAGE_kmod-ipt-quota2 is not set ++# CONFIG_PACKAGE_kmod-ipt-sysrq is not set ++# CONFIG_PACKAGE_kmod-ipt-tarpit is not set ++# CONFIG_PACKAGE_kmod-ipt-tee is not set ++# CONFIG_PACKAGE_kmod-ipt-tproxy is not set ++# CONFIG_PACKAGE_kmod-ipt-u32 is not set ++# CONFIG_PACKAGE_kmod-ipt-ulog is not set ++CONFIG_PACKAGE_kmod-nf-conntrack=y ++# CONFIG_PACKAGE_kmod-nf-conntrack-netlink is not set ++CONFIG_PACKAGE_kmod-nf-conntrack6=y ++CONFIG_PACKAGE_kmod-nf-ipt=y ++CONFIG_PACKAGE_kmod-nf-ipt6=y ++CONFIG_PACKAGE_kmod-nf-nat=y ++# CONFIG_PACKAGE_kmod-nf-nat6 is not set ++# CONFIG_PACKAGE_kmod-nf-nathelper is not set ++# CONFIG_PACKAGE_kmod-nf-nathelper-extra is not set ++# CONFIG_PACKAGE_kmod-nfnetlink is not set ++# CONFIG_PACKAGE_kmod-nfnetlink-log is not set ++# CONFIG_PACKAGE_kmod-nfnetlink-queue is not set ++# CONFIG_PACKAGE_kmod-nft-core is not set ++# CONFIG_PACKAGE_kmod-nft-nat is not set ++# CONFIG_PACKAGE_kmod-nft-nat6 is not set ++ ++# ++# Network Devices ++# ++# CONFIG_PACKAGE_kmod-3c59x is not set ++# CONFIG_PACKAGE_kmod-8139cp is not set ++# CONFIG_PACKAGE_kmod-8139too is not set ++# CONFIG_PACKAGE_kmod-atl1 is not set ++# CONFIG_PACKAGE_kmod-atl1c is not set ++# CONFIG_PACKAGE_kmod-atl1e is not set ++# CONFIG_PACKAGE_kmod-atl2 is not set ++# CONFIG_PACKAGE_kmod-b44 is not set ++# CONFIG_PACKAGE_kmod-dm9000 is not set ++# CONFIG_PACKAGE_kmod-dummy is not set ++# CONFIG_PACKAGE_kmod-e100 is not set ++# CONFIG_PACKAGE_kmod-e1000 is not set ++# CONFIG_PACKAGE_kmod-et131x is not set ++# CONFIG_PACKAGE_kmod-forcedeth is not set ++# CONFIG_PACKAGE_kmod-gigaset is not set ++# CONFIG_PACKAGE_kmod-hfcmulti is not set ++# CONFIG_PACKAGE_kmod-hfcpci is not set ++# CONFIG_PACKAGE_kmod-ifb is not set ++# CONFIG_PACKAGE_kmod-libphy is not set ++# CONFIG_PACKAGE_kmod-macvlan is not set ++# CONFIG_PACKAGE_kmod-mii is not set ++# CONFIG_PACKAGE_kmod-natsemi is not set ++# CONFIG_PACKAGE_kmod-ne2k-pci is not set ++# CONFIG_PACKAGE_kmod-of-mdio is not set ++# CONFIG_PACKAGE_kmod-pcnet32 is not set ++# CONFIG_PACKAGE_kmod-phy-broadcom is not set ++# CONFIG_PACKAGE_kmod-r6040 is not set ++# CONFIG_PACKAGE_kmod-r8169 is not set ++# CONFIG_PACKAGE_kmod-siit is not set ++# CONFIG_PACKAGE_kmod-sis190 is not set ++# CONFIG_PACKAGE_kmod-sis900 is not set ++# CONFIG_PACKAGE_kmod-skge is not set ++# CONFIG_PACKAGE_kmod-sky2 is not set ++# CONFIG_PACKAGE_kmod-solos-pci is not set ++# CONFIG_PACKAGE_kmod-spi-ks8995 is not set ++# CONFIG_PACKAGE_kmod-swconfig is not set ++# CONFIG_PACKAGE_kmod-switch-ip17xx is not set ++# CONFIG_PACKAGE_kmod-switch-mvsw61xx is not set ++# CONFIG_PACKAGE_kmod-switch-rtl8366-smi is not set ++# CONFIG_PACKAGE_kmod-switch-rtl8366rb is not set ++# CONFIG_PACKAGE_kmod-switch-rtl8366s is not set ++# CONFIG_PACKAGE_kmod-tg3 is not set ++# CONFIG_PACKAGE_kmod-tulip is not set ++# CONFIG_PACKAGE_kmod-via-rhine is not set ++# CONFIG_PACKAGE_kmod-via-velocity is not set ++# CONFIG_PACKAGE_kmod-vmxnet3 is not set ++ ++# ++# Network Support ++# ++# CONFIG_PACKAGE_kmod-8021q is not set ++# CONFIG_PACKAGE_kmod-appletalk is not set ++# CONFIG_PACKAGE_kmod-atm is not set ++# CONFIG_PACKAGE_kmod-ax25 is not set ++# CONFIG_PACKAGE_kmod-batman-adv is not set ++# CONFIG_PACKAGE_kmod-bonding is not set ++# CONFIG_PACKAGE_kmod-bridge is not set ++# CONFIG_PACKAGE_kmod-capi is not set ++# CONFIG_PACKAGE_kmod-dnsresolver is not set ++# CONFIG_PACKAGE_kmod-gre is not set ++# CONFIG_PACKAGE_kmod-gre6 is not set ++# CONFIG_PACKAGE_kmod-ip6-tunnel is not set ++# CONFIG_PACKAGE_kmod-ipip is not set ++# CONFIG_PACKAGE_kmod-ipsec is not set ++# CONFIG_PACKAGE_kmod-iptunnel6 is not set ++CONFIG_PACKAGE_kmod-ipv6=y ++# CONFIG_PACKAGE_kmod-isdn4linux is not set ++# CONFIG_PACKAGE_kmod-l2tp is not set ++# CONFIG_PACKAGE_kmod-l2tp-eth is not set ++# CONFIG_PACKAGE_kmod-l2tp-ip is not set ++# CONFIG_PACKAGE_kmod-llc is not set ++# CONFIG_PACKAGE_kmod-misdn is not set ++# CONFIG_PACKAGE_kmod-nat46 is not set ++# CONFIG_PACKAGE_kmod-netem is not set ++# CONFIG_PACKAGE_kmod-openvswitch is not set ++# CONFIG_PACKAGE_kmod-pktgen is not set ++CONFIG_PACKAGE_kmod-ppp=y ++# CONFIG_PACKAGE_kmod-mppe is not set ++# CONFIG_PACKAGE_kmod-ppp-synctty is not set ++# CONFIG_PACKAGE_kmod-pppoa is not set ++CONFIG_PACKAGE_kmod-pppoe=y ++# CONFIG_PACKAGE_kmod-pppol2tp is not set ++CONFIG_PACKAGE_kmod-pppox=y ++# CONFIG_PACKAGE_kmod-pptp is not set ++# CONFIG_PACKAGE_kmod-rxrpc is not set ++# CONFIG_PACKAGE_kmod-sched is not set ++# CONFIG_PACKAGE_kmod-sched-connmark is not set ++# CONFIG_PACKAGE_kmod-sched-core is not set ++# CONFIG_PACKAGE_kmod-sched-esfq is not set ++# CONFIG_PACKAGE_kmod-sctp is not set ++# CONFIG_PACKAGE_kmod-sit is not set ++CONFIG_PACKAGE_kmod-slhc=y ++# CONFIG_PACKAGE_kmod-slip is not set ++# CONFIG_PACKAGE_kmod-stp is not set ++# CONFIG_PACKAGE_kmod-trelay is not set ++CONFIG_PACKAGE_kmod-tun=m ++# CONFIG_PACKAGE_kmod-udptunnel4 is not set ++# CONFIG_PACKAGE_kmod-udptunnel6 is not set ++# CONFIG_PACKAGE_kmod-veth is not set ++# CONFIG_PACKAGE_kmod-vxlan is not set ++ ++# ++# Other modules ++# ++# CONFIG_PACKAGE_kmod-6lowpan is not set ++# CONFIG_PACKAGE_kmod-ath3k is not set ++# CONFIG_PACKAGE_kmod-bcma is not set ++# CONFIG_PACKAGE_kmod-bluetooth is not set ++# CONFIG_PACKAGE_kmod-bluetooth_6lowpan is not set ++# CONFIG_PACKAGE_kmod-button-hotplug is not set ++# CONFIG_PACKAGE_kmod-echo is not set ++# CONFIG_PACKAGE_kmod-eeprom-93cx6 is not set ++# CONFIG_PACKAGE_kmod-eeprom-at24 is not set ++# CONFIG_PACKAGE_kmod-eeprom-at25 is not set ++# CONFIG_PACKAGE_kmod-gpio-beeper is not set ++CONFIG_PACKAGE_kmod-gpio-button-hotplug=y ++# CONFIG_PACKAGE_kmod-gpio-dev is not set ++# CONFIG_PACKAGE_kmod-gpio-mcp23s08 is not set ++# CONFIG_PACKAGE_kmod-gpio-nxp-74hc164 is not set ++# CONFIG_PACKAGE_kmod-gpio-pca953x is not set ++# CONFIG_PACKAGE_kmod-gpio-pcf857x is not set ++# CONFIG_PACKAGE_kmod-iio-core is not set ++# CONFIG_PACKAGE_kmod-ikconfig is not set ++# CONFIG_PACKAGE_kmod-lp is not set ++# CONFIG_PACKAGE_kmod-mmc is not set ++# CONFIG_PACKAGE_kmod-mmc-over-gpio is not set ++# CONFIG_PACKAGE_kmod-mtdtests is not set ++# CONFIG_PACKAGE_kmod-pps is not set ++# CONFIG_PACKAGE_kmod-pps-gpio is not set ++# CONFIG_PACKAGE_kmod-ptp is not set ++# CONFIG_PACKAGE_kmod-random-core is not set ++# CONFIG_PACKAGE_kmod-regmap is not set ++# CONFIG_PACKAGE_kmod-rotary-gpio-custom is not set ++# CONFIG_PACKAGE_kmod-sdhci is not set ++# CONFIG_PACKAGE_kmod-serial-8250 is not set ++# CONFIG_PACKAGE_kmod-softdog is not set ++# CONFIG_PACKAGE_kmod-ssb is not set ++# CONFIG_PACKAGE_kmod-zram is not set ++ ++# ++# PCMCIA support ++# ++ ++# ++# SPI Support ++# ++# CONFIG_PACKAGE_kmod-mmc-spi is not set ++# CONFIG_PACKAGE_kmod-spi-bitbang is not set ++# CONFIG_PACKAGE_kmod-spi-dev is not set ++# CONFIG_PACKAGE_kmod-spi-gpio is not set ++# CONFIG_PACKAGE_kmod-spi-gpio-custom is not set ++# CONFIG_PACKAGE_kmod-spi-gpio-old is not set ++# CONFIG_PACKAGE_kmod-spi-vsc7385 is not set ++ ++# ++# Sound Support ++# ++# CONFIG_PACKAGE_kmod-sound-core is not set ++ ++# ++# USB Support ++# ++# CONFIG_PACKAGE_kmod-usb-acm is not set ++# CONFIG_PACKAGE_kmod-usb-atm is not set ++# CONFIG_PACKAGE_kmod-usb-cm109 is not set ++CONFIG_PACKAGE_kmod-usb-core=y ++# CONFIG_PACKAGE_kmod-usb-dwc2 is not set ++# CONFIG_PACKAGE_kmod-usb-dwc3 is not set ++# CONFIG_PACKAGE_kmod-usb-hid is not set ++# CONFIG_PACKAGE_kmod-usb-net is not set ++# CONFIG_PACKAGE_kmod-usb-ohci is not set ++# CONFIG_PACKAGE_kmod-usb-ohci-pci is not set ++# CONFIG_PACKAGE_kmod-usb-printer is not set ++# CONFIG_PACKAGE_kmod-usb-serial is not set ++# CONFIG_PACKAGE_kmod-usb-storage is not set ++# CONFIG_PACKAGE_kmod-usb-storage-extras is not set ++# CONFIG_PACKAGE_kmod-usb-uhci is not set ++# CONFIG_PACKAGE_kmod-usb-wdm is not set ++# CONFIG_PACKAGE_kmod-usb-yealink is not set ++CONFIG_PACKAGE_kmod-usb2=y ++# CONFIG_PACKAGE_kmod-usb2-pci is not set ++# CONFIG_PACKAGE_kmod-usb3 is not set ++# CONFIG_PACKAGE_kmod-usbip is not set ++# CONFIG_PACKAGE_kmod-usbip-client is not set ++# CONFIG_PACKAGE_kmod-usbip-server is not set ++# CONFIG_PACKAGE_kmod-usbmon is not set ++ ++# ++# Video Support ++# ++CONFIG_PACKAGE_kmod-video-core=m ++# CONFIG_PACKAGE_kmod-video-cpia2 is not set ++# CONFIG_PACKAGE_kmod-video-gspca-core is not set ++# CONFIG_PACKAGE_kmod-video-pwc is not set ++CONFIG_PACKAGE_kmod-video-uvc=m ++CONFIG_PACKAGE_kmod-video-videobuf2=m ++ ++# ++# Virtualization Support ++# ++ ++# ++# Voice over IP ++# ++# CONFIG_PACKAGE_kmod-dahdi is not set ++ ++# ++# W1 support ++# ++# CONFIG_PACKAGE_kmod-w1 is not set ++ ++# ++# WPAN 802.15.4 Support ++# ++# CONFIG_PACKAGE_kmod-at86rf230 is not set ++# CONFIG_PACKAGE_kmod-cc2520 is not set ++# CONFIG_PACKAGE_kmod-fakelb is not set ++# CONFIG_PACKAGE_kmod-ieee802154 is not set ++# CONFIG_PACKAGE_kmod-ieee802154_6lowpan is not set ++# CONFIG_PACKAGE_kmod-mac802154 is not set ++# CONFIG_PACKAGE_kmod-mrf24j40 is not set ++ ++# ++# Wireless Drivers ++# ++# CONFIG_PACKAGE_kmod-adm8211 is not set ++CONFIG_PACKAGE_kmod-ath=y ++# CONFIG_ATH_USER_REGD is not set ++# CONFIG_PACKAGE_ATH_DEBUG is not set ++CONFIG_PACKAGE_ATH_DFS=y ++# CONFIG_PACKAGE_kmod-ath10k is not set ++# CONFIG_PACKAGE_kmod-ath5k is not set ++CONFIG_PACKAGE_kmod-ath9k=y ++# CONFIG_ATH9K_SUPPORT_PCOEM is not set ++CONFIG_PACKAGE_kmod-ath9k-common=y ++# CONFIG_PACKAGE_kmod-ath9k-htc is not set ++# CONFIG_PACKAGE_kmod-b43 is not set ++# CONFIG_PACKAGE_kmod-b43legacy is not set ++# CONFIG_PACKAGE_kmod-brcmfmac is not set ++# CONFIG_PACKAGE_kmod-brcmsmac is not set ++# CONFIG_PACKAGE_kmod-brcmutil is not set ++# CONFIG_PACKAGE_kmod-carl9170 is not set ++CONFIG_PACKAGE_kmod-cfg80211=y ++# CONFIG_PACKAGE_kmod-hermes is not set ++# CONFIG_PACKAGE_kmod-hermes-pci is not set ++# CONFIG_PACKAGE_kmod-hermes-plx is not set ++# CONFIG_PACKAGE_kmod-hostap is not set ++# CONFIG_PACKAGE_kmod-hostap-pci is not set ++# CONFIG_PACKAGE_kmod-hostap-plx is not set ++# CONFIG_PACKAGE_kmod-iwl-legacy is not set ++# CONFIG_PACKAGE_kmod-iwl3945 is not set ++# CONFIG_PACKAGE_kmod-iwl4965 is not set ++# CONFIG_PACKAGE_kmod-iwlwifi is not set ++# CONFIG_PACKAGE_kmod-lib80211 is not set ++# CONFIG_PACKAGE_kmod-libertas-sdio is not set ++# CONFIG_PACKAGE_kmod-libertas-usb is not set ++CONFIG_PACKAGE_kmod-mac80211=y ++CONFIG_PACKAGE_MAC80211_DEBUGFS=y ++CONFIG_PACKAGE_MAC80211_MESH=y ++# CONFIG_PACKAGE_kmod-mac80211-hwsim is not set ++# CONFIG_PACKAGE_kmod-mt76 is not set ++# CONFIG_PACKAGE_kmod-mt7601u is not set ++# CONFIG_PACKAGE_kmod-mwifiex-pcie is not set ++# CONFIG_PACKAGE_kmod-mwl8k is not set ++# CONFIG_PACKAGE_kmod-net-airo is not set ++# CONFIG_PACKAGE_kmod-net-prism54 is not set ++# CONFIG_PACKAGE_kmod-net-rtl8188eu is not set ++# CONFIG_PACKAGE_kmod-net-rtl8192su is not set ++# CONFIG_PACKAGE_kmod-p54-common is not set ++# CONFIG_PACKAGE_kmod-p54-pci is not set ++# CONFIG_PACKAGE_kmod-p54-usb is not set ++# CONFIG_PACKAGE_kmod-rt2400-pci is not set ++# CONFIG_PACKAGE_kmod-rt2500-pci is not set ++# CONFIG_PACKAGE_kmod-rt2500-usb is not set ++# CONFIG_PACKAGE_kmod-rt2800-pci is not set ++# CONFIG_PACKAGE_kmod-rt2800-usb is not set ++# CONFIG_PACKAGE_kmod-rt2x00-lib is not set ++# CONFIG_PACKAGE_kmod-rt61-pci is not set ++# CONFIG_PACKAGE_kmod-rt73-usb is not set ++# CONFIG_PACKAGE_kmod-rtl8180 is not set ++# CONFIG_PACKAGE_kmod-rtl8187 is not set ++# CONFIG_PACKAGE_kmod-rtl8192ce is not set ++# CONFIG_PACKAGE_kmod-rtl8192cu is not set ++# CONFIG_PACKAGE_kmod-rtl8192de is not set ++# CONFIG_PACKAGE_kmod-rtl8192se is not set ++# CONFIG_PACKAGE_kmod-zd1211rw is not set ++ ++# ++# Languages ++# ++ ++# ++# Erlang ++# ++# CONFIG_PACKAGE_erlang is not set ++# CONFIG_PACKAGE_erlang-asn1 is not set ++# CONFIG_PACKAGE_erlang-compiler is not set ++# CONFIG_PACKAGE_erlang-crypto is not set ++# CONFIG_PACKAGE_erlang-hipe is not set ++# CONFIG_PACKAGE_erlang-inets is not set ++# CONFIG_PACKAGE_erlang-mnesia is not set ++# CONFIG_PACKAGE_erlang-runtime-tools is not set ++# CONFIG_PACKAGE_erlang-snmp is not set ++# CONFIG_PACKAGE_erlang-ssh is not set ++# CONFIG_PACKAGE_erlang-ssl is not set ++# CONFIG_PACKAGE_erlang-syntax-tools is not set ++ ++# ++# Java ++# ++# CONFIG_PACKAGE_jamvm is not set ++ ++# ++# Lua ++# ++# CONFIG_PACKAGE_dkjson is not set ++# CONFIG_PACKAGE_json4lua is not set ++# CONFIG_PACKAGE_libiwinfo-lua is not set ++# CONFIG_PACKAGE_lpeg is not set ++# CONFIG_PACKAGE_lua is not set ++# CONFIG_PACKAGE_lua-bencode is not set ++# CONFIG_PACKAGE_lua-cjson is not set ++# CONFIG_PACKAGE_lua-copas is not set ++# CONFIG_PACKAGE_lua-coxpcall is not set ++# CONFIG_PACKAGE_lua-lzlib is not set ++# CONFIG_PACKAGE_lua-md5 is not set ++# CONFIG_PACKAGE_lua-mobdebug is not set ++# CONFIG_PACKAGE_lua-mosquitto is not set ++# CONFIG_PACKAGE_lua-penlight is not set ++# CONFIG_PACKAGE_lua-rings is not set ++# CONFIG_PACKAGE_lua-rs232 is not set ++# CONFIG_PACKAGE_lua-sha2 is not set ++# CONFIG_PACKAGE_lua-wsapi-base is not set ++# CONFIG_PACKAGE_lua-wsapi-xavante is not set ++# CONFIG_PACKAGE_lua-xavante is not set ++# CONFIG_PACKAGE_luabitop is not set ++# CONFIG_PACKAGE_luac is not set ++# CONFIG_PACKAGE_luaexpat is not set ++# CONFIG_PACKAGE_luafilesystem is not set ++# CONFIG_PACKAGE_luai2c is not set ++# CONFIG_PACKAGE_lualanes is not set ++# CONFIG_PACKAGE_luaposix is not set ++# CONFIG_PACKAGE_luarocks is not set ++# CONFIG_PACKAGE_luasec is not set ++# CONFIG_PACKAGE_luasoap is not set ++# CONFIG_PACKAGE_luasocket is not set ++# CONFIG_PACKAGE_luasql-mysql is not set ++# CONFIG_PACKAGE_luasql-pgsql is not set ++# CONFIG_PACKAGE_luasql-sqlite3 is not set ++# CONFIG_PACKAGE_uuid is not set ++ ++# ++# Node.js ++# ++# CONFIG_PACKAGE_node is not set ++# CONFIG_PACKAGE_node-arduino-firmata is not set ++# CONFIG_PACKAGE_node-cylon is not set ++# CONFIG_PACKAGE_node-cylon-firmata is not set ++# CONFIG_PACKAGE_node-cylon-gpio is not set ++# CONFIG_PACKAGE_node-cylon-i2c is not set ++# CONFIG_PACKAGE_node-hid is not set ++# CONFIG_PACKAGE_node-serialport is not set ++ ++# ++# PHP ++# ++# CONFIG_PACKAGE_php5 is not set ++ ++# ++# Perl ++# ++# CONFIG_PACKAGE_perl is not set ++ ++# ++# Python ++# ++# CONFIG_PACKAGE_micropython is not set ++# CONFIG_PACKAGE_micropython-lib is not set ++# CONFIG_PACKAGE_python is not set ++# CONFIG_PACKAGE_python-base is not set ++# CONFIG_PACKAGE_python-codecs is not set ++# CONFIG_PACKAGE_python-compiler is not set ++# CONFIG_PACKAGE_python-crcmod is not set ++# CONFIG_PACKAGE_python-crypto is not set ++# CONFIG_PACKAGE_python-ctypes is not set ++# CONFIG_PACKAGE_python-db is not set ++# CONFIG_PACKAGE_python-decimal is not set ++# CONFIG_PACKAGE_python-distutils is not set ++# CONFIG_PACKAGE_python-dns is not set ++# CONFIG_PACKAGE_python-egenix-mx-base is not set ++# CONFIG_PACKAGE_python-email is not set ++# CONFIG_PACKAGE_python-gdbm is not set ++# CONFIG_PACKAGE_python-imglib is not set ++# CONFIG_PACKAGE_python-ldap is not set ++# CONFIG_PACKAGE_python-light is not set ++# CONFIG_PACKAGE_python-logging is not set ++# CONFIG_PACKAGE_python-multiprocessing is not set ++# CONFIG_PACKAGE_python-mysql is not set ++# CONFIG_PACKAGE_python-ncurses is not set ++# CONFIG_PACKAGE_python-openssl is not set ++# CONFIG_PACKAGE_python-pip is not set ++# CONFIG_PACKAGE_python-psycopg2 is not set ++# CONFIG_PACKAGE_python-pydoc is not set ++# CONFIG_PACKAGE_python-pyserial is not set ++# CONFIG_PACKAGE_python-setuptools is not set ++# CONFIG_PACKAGE_python-smbus is not set ++# CONFIG_PACKAGE_python-sqlite3 is not set ++# CONFIG_PACKAGE_python-unittest is not set ++# CONFIG_PACKAGE_python-xml is not set ++# CONFIG_PACKAGE_python-yaml is not set ++# CONFIG_PACKAGE_python3 is not set ++# CONFIG_PACKAGE_python3-asyncio is not set ++# CONFIG_PACKAGE_python3-base is not set ++# CONFIG_PACKAGE_python3-bottle is not set ++# CONFIG_PACKAGE_python3-codecs is not set ++# CONFIG_PACKAGE_python3-ctypes is not set ++# CONFIG_PACKAGE_python3-dbm is not set ++# CONFIG_PACKAGE_python3-decimal is not set ++# CONFIG_PACKAGE_python3-distutils is not set ++# CONFIG_PACKAGE_python3-email is not set ++# CONFIG_PACKAGE_python3-gdbm is not set ++# CONFIG_PACKAGE_python3-light is not set ++# CONFIG_PACKAGE_python3-logging is not set ++# CONFIG_PACKAGE_python3-lzma is not set ++# CONFIG_PACKAGE_python3-multiprocessing is not set ++# CONFIG_PACKAGE_python3-ncurses is not set ++# CONFIG_PACKAGE_python3-openssl is not set ++# CONFIG_PACKAGE_python3-pydoc is not set ++# CONFIG_PACKAGE_python3-sqlite3 is not set ++# CONFIG_PACKAGE_python3-unittest is not set ++# CONFIG_PACKAGE_python3-xml is not set ++# CONFIG_PACKAGE_simplejson is not set ++ ++# ++# Ruby ++# ++# CONFIG_PACKAGE_ruby is not set ++# CONFIG_PACKAGE_vala is not set ++ ++# ++# Libraries ++# ++ ++# ++# Compression ++# ++# CONFIG_PACKAGE_libbz2 is not set ++# CONFIG_PACKAGE_liblzma is not set ++# CONFIG_PACKAGE_libunrar is not set ++ ++# ++# Filesystem ++# ++# CONFIG_PACKAGE_libacl is not set ++# CONFIG_PACKAGE_libattr is not set ++# CONFIG_PACKAGE_libext2fs is not set ++# CONFIG_PACKAGE_libfuse is not set ++# CONFIG_PACKAGE_libow is not set ++# CONFIG_PACKAGE_libow-capi is not set ++# CONFIG_PACKAGE_libsysfs is not set ++ ++# ++# Firewall ++# ++# CONFIG_PACKAGE_libfko is not set ++CONFIG_PACKAGE_libip4tc=y ++CONFIG_PACKAGE_libip6tc=y ++# CONFIG_PACKAGE_libiptc is not set ++CONFIG_PACKAGE_libxtables=y ++ ++# ++# IoT ++# ++# CONFIG_PACKAGE_libupm is not set ++# CONFIG_PACKAGE_libupm-a110x is not set ++# CONFIG_PACKAGE_libupm-ad8232 is not set ++# CONFIG_PACKAGE_libupm-adafruitss is not set ++# CONFIG_PACKAGE_libupm-adc121c021 is not set ++# CONFIG_PACKAGE_libupm-adis16448 is not set ++# CONFIG_PACKAGE_libupm-adxl335 is not set ++# CONFIG_PACKAGE_libupm-adxl345 is not set ++# CONFIG_PACKAGE_libupm-am2315 is not set ++# CONFIG_PACKAGE_libupm-apds9002 is not set ++# CONFIG_PACKAGE_libupm-at42qt1070 is not set ++# CONFIG_PACKAGE_libupm-biss0001 is not set ++# CONFIG_PACKAGE_libupm-bmpx8x is not set ++# CONFIG_PACKAGE_libupm-buzzer is not set ++# CONFIG_PACKAGE_libupm-cjq4435 is not set ++# CONFIG_PACKAGE_libupm-ds1307 is not set ++# CONFIG_PACKAGE_libupm-ecs1030 is not set ++# CONFIG_PACKAGE_libupm-enc03r is not set ++# CONFIG_PACKAGE_libupm-flex is not set ++# CONFIG_PACKAGE_libupm-gas is not set ++# CONFIG_PACKAGE_libupm-gp2y0a is not set ++# CONFIG_PACKAGE_libupm-grove is not set ++# CONFIG_PACKAGE_libupm-grovecircularled is not set ++# CONFIG_PACKAGE_libupm-grovecollision is not set ++# CONFIG_PACKAGE_libupm-groveehr is not set ++# CONFIG_PACKAGE_libupm-groveeldriver is not set ++# CONFIG_PACKAGE_libupm-groveelectromagnet is not set ++# CONFIG_PACKAGE_libupm-groveemg is not set ++# CONFIG_PACKAGE_libupm-grovegprs is not set ++# CONFIG_PACKAGE_libupm-grovegsr is not set ++# CONFIG_PACKAGE_libupm-grovelinefinder is not set ++# CONFIG_PACKAGE_libupm-grovemd is not set ++# CONFIG_PACKAGE_libupm-grovemoisture is not set ++# CONFIG_PACKAGE_libupm-groveo2 is not set ++# CONFIG_PACKAGE_libupm-grovescam is not set ++# CONFIG_PACKAGE_libupm-grovespeaker is not set ++# CONFIG_PACKAGE_libupm-grovevdiv is not set ++# CONFIG_PACKAGE_libupm-grovewater is not set ++# CONFIG_PACKAGE_libupm-grovewfs is not set ++# CONFIG_PACKAGE_libupm-guvas12d is not set ++# CONFIG_PACKAGE_libupm-h3lis331dl is not set ++# CONFIG_PACKAGE_libupm-hcsr04 is not set ++# CONFIG_PACKAGE_libupm-hm11 is not set ++# CONFIG_PACKAGE_libupm-hmc5883l is not set ++# CONFIG_PACKAGE_libupm-hmtrp is not set ++# CONFIG_PACKAGE_libupm-hp20x is not set ++# CONFIG_PACKAGE_libupm-ht9170 is not set ++# CONFIG_PACKAGE_libupm-htu21d is not set ++# CONFIG_PACKAGE_libupm-hx711 is not set ++# CONFIG_PACKAGE_libupm-i2clcd is not set ++# CONFIG_PACKAGE_libupm-ina132 is not set ++# CONFIG_PACKAGE_libupm-isd1820 is not set ++# CONFIG_PACKAGE_libupm-itg3200 is not set ++# CONFIG_PACKAGE_libupm-joystick12 is not set ++# CONFIG_PACKAGE_libupm-l298 is not set ++# CONFIG_PACKAGE_libupm-ldt0028 is not set ++# CONFIG_PACKAGE_libupm-lm35 is not set ++# CONFIG_PACKAGE_libupm-lol is not set ++# CONFIG_PACKAGE_libupm-loudness is not set ++# CONFIG_PACKAGE_libupm-lpd8806 is not set ++# CONFIG_PACKAGE_libupm-lsm303 is not set ++# CONFIG_PACKAGE_libupm-lsm9ds0 is not set ++# CONFIG_PACKAGE_libupm-m24lr64e is not set ++# CONFIG_PACKAGE_libupm-max31723 is not set ++# CONFIG_PACKAGE_libupm-max31855 is not set ++# CONFIG_PACKAGE_libupm-max44000 is not set ++# CONFIG_PACKAGE_libupm-max5487 is not set ++# CONFIG_PACKAGE_libupm-maxds3231m is not set ++# CONFIG_PACKAGE_libupm-maxsonarez is not set ++# CONFIG_PACKAGE_libupm-mg811 is not set ++# CONFIG_PACKAGE_libupm-mhz16 is not set ++# CONFIG_PACKAGE_libupm-mic is not set ++# CONFIG_PACKAGE_libupm-mlx90614 is not set ++# CONFIG_PACKAGE_libupm-mma7455 is not set ++# CONFIG_PACKAGE_libupm-mma7660 is not set ++# CONFIG_PACKAGE_libupm-mpl3115a2 is not set ++# CONFIG_PACKAGE_libupm-mpr121 is not set ++# CONFIG_PACKAGE_libupm-mpu9150 is not set ++# CONFIG_PACKAGE_libupm-mq303a is not set ++# CONFIG_PACKAGE_libupm-my9221 is not set ++# CONFIG_PACKAGE_libupm-nrf24l01 is not set ++# CONFIG_PACKAGE_libupm-nrf8001 is not set ++# CONFIG_PACKAGE_libupm-nunchuck is not set ++# CONFIG_PACKAGE_libupm-otp538u is not set ++# CONFIG_PACKAGE_libupm-pn532 is not set ++# CONFIG_PACKAGE_libupm-ppd42ns is not set ++# CONFIG_PACKAGE_libupm-pulsensor is not set ++# CONFIG_PACKAGE_libupm-rfr359f is not set ++# CONFIG_PACKAGE_libupm-rgbringcoder is not set ++# CONFIG_PACKAGE_libupm-rotaryencoder is not set ++# CONFIG_PACKAGE_libupm-rpr220 is not set ++# CONFIG_PACKAGE_libupm-servo is not set ++# CONFIG_PACKAGE_libupm-si114x is not set ++# CONFIG_PACKAGE_libupm-sm130 is not set ++# CONFIG_PACKAGE_libupm-st7735 is not set ++# CONFIG_PACKAGE_libupm-stepmotor is not set ++# CONFIG_PACKAGE_libupm-sx6119 is not set ++# CONFIG_PACKAGE_libupm-ta12200 is not set ++# CONFIG_PACKAGE_libupm-tcs3414cs is not set ++# CONFIG_PACKAGE_libupm-th02 is not set ++# CONFIG_PACKAGE_libupm-tm1637 is not set ++# CONFIG_PACKAGE_libupm-tsl2561 is not set ++# CONFIG_PACKAGE_libupm-ttp223 is not set ++# CONFIG_PACKAGE_libupm-ublox6 is not set ++# CONFIG_PACKAGE_libupm-uln200xa is not set ++# CONFIG_PACKAGE_libupm-waterlevel is not set ++# CONFIG_PACKAGE_libupm-wheelencoder is not set ++# CONFIG_PACKAGE_libupm-wt5001 is not set ++# CONFIG_PACKAGE_libupm-yg1006 is not set ++# CONFIG_PACKAGE_libupm-zfm20 is not set ++ ++# ++# Languages ++# ++# CONFIG_PACKAGE_libyaml is not set ++ ++# ++# Networking ++# ++# CONFIG_PACKAGE_libsctp is not set ++# CONFIG_PACKAGE_libtoxav is not set ++# CONFIG_PACKAGE_libtoxcore is not set ++# CONFIG_PACKAGE_libtoxdns is not set ++# CONFIG_PACKAGE_libtoxencryptsave is not set ++ ++# ++# SSL ++# ++# CONFIG_PACKAGE_libcyassl is not set ++# CONFIG_PACKAGE_libgnutls is not set ++# CONFIG_PACKAGE_libmbedtls is not set ++CONFIG_PACKAGE_libopenssl=y ++ ++# ++# Configuration ++# ++# CONFIG_OPENSSL_WITH_EC is not set ++# CONFIG_OPENSSL_WITH_SSL3 is not set ++# CONFIG_OPENSSL_ENGINE_CRYPTO is not set ++# CONFIG_PACKAGE_libpolarssl is not set ++ ++# ++# Sound ++# ++# CONFIG_PACKAGE_liblo is not set ++ ++# ++# Telephony ++# ++# CONFIG_PACKAGE_bcg729 is not set ++# CONFIG_PACKAGE_dahdi-tools-libtonezone is not set ++# CONFIG_PACKAGE_libiksemel is not set ++# CONFIG_PACKAGE_libortp is not set ++# CONFIG_PACKAGE_libosip2 is not set ++# CONFIG_PACKAGE_libpj is not set ++# CONFIG_PACKAGE_libpjlib-util is not set ++# CONFIG_PACKAGE_libpjmedia is not set ++# CONFIG_PACKAGE_libpjnath is not set ++# CONFIG_PACKAGE_libpjsip is not set ++# CONFIG_PACKAGE_libpjsip-simple is not set ++# CONFIG_PACKAGE_libpjsip-ua is not set ++# CONFIG_PACKAGE_libpjsua is not set ++# CONFIG_PACKAGE_libpjsua2 is not set ++# CONFIG_PACKAGE_libre is not set ++# CONFIG_PACKAGE_librem is not set ++# CONFIG_PACKAGE_libresample is not set ++# CONFIG_PACKAGE_libspandsp is not set ++# CONFIG_PACKAGE_libsrtp is not set ++ ++# ++# database ++# ++# CONFIG_PACKAGE_libpq is not set ++# CONFIG_PACKAGE_libsqlite3 is not set ++# CONFIG_PACKAGE_pgsqlodbc is not set ++# CONFIG_PACKAGE_tdb is not set ++# CONFIG_PACKAGE_unixodbc is not set ++# CONFIG_PACKAGE_alsa-lib is not set ++# CONFIG_PACKAGE_argp-standalone is not set ++# CONFIG_PACKAGE_bind-libs is not set ++# CONFIG_PACKAGE_bluez-libs is not set ++# CONFIG_PACKAGE_boost is not set ++# CONFIG_PACKAGE_ccid is not set ++# CONFIG_PACKAGE_check is not set ++# CONFIG_PACKAGE_classpath is not set ++# CONFIG_PACKAGE_classpath-tools is not set ++# CONFIG_PACKAGE_confuse is not set ++# CONFIG_PACKAGE_dtndht is not set ++# CONFIG_PACKAGE_engine_pkcs11 is not set ++# CONFIG_PACKAGE_fcgi is not set ++# CONFIG_PACKAGE_fftw3 is not set ++# CONFIG_PACKAGE_fftw3f is not set ++# CONFIG_PACKAGE_giflib is not set ++# CONFIG_PACKAGE_glib2 is not set ++# CONFIG_PACKAGE_ibrcommon is not set ++# CONFIG_PACKAGE_ibrdtn is not set ++# CONFIG_PACKAGE_jansson is not set ++# CONFIG_PACKAGE_libaio is not set ++# CONFIG_PACKAGE_libantlr3c is not set ++# CONFIG_PACKAGE_libao is not set ++# CONFIG_PACKAGE_libapr is not set ++# CONFIG_PACKAGE_libaprutil is not set ++# CONFIG_PACKAGE_libarchive is not set ++# CONFIG_PACKAGE_libarchive-noopenssl is not set ++# CONFIG_PACKAGE_libartnet is not set ++# CONFIG_PACKAGE_libaudiofile is not set ++# CONFIG_PACKAGE_libavahi-client is not set ++# CONFIG_PACKAGE_libavahi-compat-libdnssd is not set ++# CONFIG_PACKAGE_libavahi-dbus-support is not set ++# CONFIG_PACKAGE_libavahi-nodbus-support is not set ++# CONFIG_PACKAGE_libavl is not set ++# CONFIG_PACKAGE_libbfd is not set ++# CONFIG_PACKAGE_libblkid is not set ++CONFIG_PACKAGE_libblobmsg-json=y ++# CONFIG_PACKAGE_libcanfestival is not set ++# CONFIG_PACKAGE_libcap is not set ++# CONFIG_PACKAGE_libcares is not set ++# CONFIG_PACKAGE_libcharset is not set ++# CONFIG_PACKAGE_libcoap is not set ++# CONFIG_PACKAGE_libconfig is not set ++# CONFIG_PACKAGE_libcurl is not set ++# CONFIG_PACKAGE_libdaemon is not set ++# CONFIG_PACKAGE_libdaq is not set ++# CONFIG_PACKAGE_libdb47 is not set ++# CONFIG_PACKAGE_libdb47xx is not set ++# CONFIG_PACKAGE_libdbi is not set ++# CONFIG_PACKAGE_libdbus is not set ++# CONFIG_PACKAGE_libdevmapper is not set ++# CONFIG_PACKAGE_libdmapsharing is not set ++# CONFIG_PACKAGE_libdnet is not set ++# CONFIG_PACKAGE_libelf1 is not set ++# CONFIG_PACKAGE_libesmtp is not set ++# CONFIG_PACKAGE_libev is not set ++# CONFIG_PACKAGE_libevdev is not set ++# CONFIG_PACKAGE_libevent is not set ++# CONFIG_PACKAGE_libevent2 is not set ++# CONFIG_PACKAGE_libevent2-core is not set ++# CONFIG_PACKAGE_libevent2-extra is not set ++# CONFIG_PACKAGE_libevent2-openssl is not set ++# CONFIG_PACKAGE_libevent2-pthreads is not set ++# CONFIG_PACKAGE_libevhtp is not set ++# CONFIG_PACKAGE_libevhtp-1.1 is not set ++# CONFIG_PACKAGE_libexif is not set ++# CONFIG_PACKAGE_libexpat is not set ++# CONFIG_PACKAGE_libexslt is not set ++# CONFIG_PACKAGE_libextractor is not set ++# CONFIG_PACKAGE_libf2fs is not set ++# CONFIG_PACKAGE_libfaad2 is not set ++# CONFIG_PACKAGE_libffi is not set ++# CONFIG_PACKAGE_libffmpeg-audio-dec is not set ++# CONFIG_PACKAGE_libffmpeg-full is not set ++# CONFIG_PACKAGE_libffmpeg-mini is not set ++# CONFIG_PACKAGE_libflac is not set ++# CONFIG_PACKAGE_libfreecwmp is not set ++# CONFIG_PACKAGE_libfreetype is not set ++# CONFIG_PACKAGE_libftdi is not set ++# CONFIG_PACKAGE_libftdi1 is not set ++# CONFIG_PACKAGE_libgcrypt is not set ++# CONFIG_PACKAGE_libgd is not set ++# CONFIG_PACKAGE_libgdbm is not set ++# CONFIG_PACKAGE_libgee is not set ++# CONFIG_PACKAGE_libglpk is not set ++# CONFIG_PACKAGE_libgmp is not set ++# CONFIG_PACKAGE_libgnurl is not set ++# CONFIG_PACKAGE_libgpg-error is not set ++# CONFIG_PACKAGE_libgps is not set ++# CONFIG_PACKAGE_libhamlib is not set ++# CONFIG_PACKAGE_hidapi is not set ++# CONFIG_PACKAGE_libhiredis is not set ++# CONFIG_PACKAGE_libhttp-parser is not set ++# CONFIG_PACKAGE_libical is not set ++# CONFIG_PACKAGE_libiconv is not set ++# CONFIG_PACKAGE_libiconv-full is not set ++# CONFIG_PACKAGE_libid3tag is not set ++# CONFIG_PACKAGE_libidn is not set ++# CONFIG_PACKAGE_libimobiledevice is not set ++# CONFIG_PACKAGE_libinput is not set ++# CONFIG_PACKAGE_libintl is not set ++# CONFIG_PACKAGE_libintl-full is not set ++# CONFIG_PACKAGE_libiw is not set ++CONFIG_PACKAGE_libiwinfo=y ++CONFIG_PACKAGE_libjpeg=m ++CONFIG_PACKAGE_libjson-c=y ++# CONFIG_PACKAGE_libkmod is not set ++# CONFIG_PACKAGE_libldns is not set ++# CONFIG_PACKAGE_libltdl is not set ++# CONFIG_PACKAGE_liblua is not set ++# CONFIG_PACKAGE_liblz4 is not set ++CONFIG_PACKAGE_liblzo=m ++# CONFIG_PACKAGE_libmad is not set ++# CONFIG_PACKAGE_libmagic is not set ++# CONFIG_PACKAGE_libmcrypt is not set ++# CONFIG_PACKAGE_libmicrohttpd is not set ++# CONFIG_PACKAGE_libmicroxml is not set ++# CONFIG_PACKAGE_libminiupnpc is not set ++# CONFIG_PACKAGE_libmms is not set ++# CONFIG_PACKAGE_libmnl is not set ++# CONFIG_PACKAGE_libmodbus is not set ++# CONFIG_PACKAGE_libmosquitto is not set ++# CONFIG_PACKAGE_libmosquitto-nossl is not set ++# CONFIG_PACKAGE_libmount is not set ++# CONFIG_PACKAGE_libmpdclient is not set ++# CONFIG_PACKAGE_libmpeg2 is not set ++# CONFIG_PACKAGE_libmpg123 is not set ++# CONFIG_PACKAGE_libmraa is not set ++# CONFIG_PACKAGE_libmysqlclient is not set ++# CONFIG_PACKAGE_libmysqlclient-r is not set ++# CONFIG_PACKAGE_libnatpmp is not set ++# CONFIG_PACKAGE_libncurses is not set ++# CONFIG_PACKAGE_libncursesw is not set ++# CONFIG_PACKAGE_libneon is not set ++# CONFIG_PACKAGE_libnet-1.2.x is not set ++# CONFIG_PACKAGE_libnetconf is not set ++# CONFIG_PACKAGE_libnetfilter-acct is not set ++# CONFIG_PACKAGE_libnetfilter-conntrack is not set ++# CONFIG_PACKAGE_libnetfilter-cthelper is not set ++# CONFIG_PACKAGE_libnetfilter-cttimeout is not set ++# CONFIG_PACKAGE_libnetfilter-log is not set ++# CONFIG_PACKAGE_libnetfilter-queue is not set ++# CONFIG_PACKAGE_libnetsnmp is not set ++# CONFIG_PACKAGE_libnettle is not set ++# CONFIG_PACKAGE_libnfc is not set ++# CONFIG_PACKAGE_libnfnetlink is not set ++# CONFIG_PACKAGE_libnftnl is not set ++# CONFIG_PACKAGE_libnl is not set ++# CONFIG_PACKAGE_libnl-core is not set ++# CONFIG_PACKAGE_libnl-genl is not set ++# CONFIG_PACKAGE_libnl-nf is not set ++# CONFIG_PACKAGE_libnl-route is not set ++CONFIG_PACKAGE_libnl-tiny=y ++# CONFIG_PACKAGE_libogg is not set ++# CONFIG_PACKAGE_liboil is not set ++# CONFIG_PACKAGE_libopcodes is not set ++# CONFIG_PACKAGE_libopenldap is not set ++# CONFIG_PACKAGE_libopenobex is not set ++# CONFIG_PACKAGE_libopensc is not set ++# CONFIG_PACKAGE_liboping is not set ++# CONFIG_PACKAGE_libopus is not set ++# CONFIG_PACKAGE_libowfat is not set ++# CONFIG_PACKAGE_libp11 is not set ++# CONFIG_PACKAGE_libpam is not set ++CONFIG_PACKAGE_libpcap=m ++ ++# ++# Configuration ++# ++# CONFIG_PCAP_HAS_USB is not set ++# CONFIG_PACKAGE_libpcre is not set ++# CONFIG_PACKAGE_libpcre16 is not set ++# CONFIG_PACKAGE_libpcrecpp is not set ++# CONFIG_PACKAGE_libpcsclite is not set ++# CONFIG_PACKAGE_libpkcs11-spy is not set ++# CONFIG_PACKAGE_libplist is not set ++# CONFIG_PACKAGE_libplistcxx is not set ++# CONFIG_PACKAGE_libpng is not set ++CONFIG_PACKAGE_libpopt=m ++# CONFIG_PACKAGE_libpri is not set ++# CONFIG_PACKAGE_libprotobuf-c is not set ++# CONFIG_PACKAGE_libqrencode is not set ++# CONFIG_PACKAGE_libradcli is not set ++# CONFIG_PACKAGE_libreadline is not set ++# CONFIG_PACKAGE_libroxml is not set ++# CONFIG_PACKAGE_librpc is not set ++# CONFIG_PACKAGE_librrd1 is not set ++# CONFIG_PACKAGE_librtlsdr is not set ++# CONFIG_PACKAGE_libruby is not set ++# CONFIG_PACKAGE_libsamplerate is not set ++# CONFIG_PACKAGE_libsane is not set ++# CONFIG_PACKAGE_libsasl2 is not set ++# CONFIG_PACKAGE_libsearpc is not set ++# CONFIG_PACKAGE_libseccomp is not set ++# CONFIG_PACKAGE_libsensors is not set ++# CONFIG_PACKAGE_libshout is not set ++# CONFIG_PACKAGE_libsigcxx is not set ++# CONFIG_PACKAGE_libsmartcols is not set ++# CONFIG_PACKAGE_libsndfile is not set ++# CONFIG_PACKAGE_libsocks is not set ++# CONFIG_PACKAGE_libsodium is not set ++# CONFIG_PACKAGE_libsoup is not set ++# CONFIG_PACKAGE_libsoxr is not set ++# CONFIG_PACKAGE_libspeex is not set ++# CONFIG_PACKAGE_libspeexdsp is not set ++# CONFIG_PACKAGE_libssh is not set ++# CONFIG_PACKAGE_libssh2 is not set ++# CONFIG_PACKAGE_libstoken is not set ++# CONFIG_PACKAGE_libstrophe is not set ++# CONFIG_PACKAGE_libtasn1 is not set ++# CONFIG_PACKAGE_libtheora is not set ++# CONFIG_PACKAGE_libtiff is not set ++# CONFIG_PACKAGE_libtiffxx is not set ++# CONFIG_PACKAGE_libtorrent is not set ++CONFIG_PACKAGE_libubox=y ++# CONFIG_PACKAGE_libubox-lua is not set ++CONFIG_PACKAGE_libubus=y ++# CONFIG_PACKAGE_libubus-lua is not set ++CONFIG_PACKAGE_libuci=y ++# CONFIG_PACKAGE_libuci-lua is not set ++# CONFIG_PACKAGE_libuclient is not set ++# CONFIG_PACKAGE_libuecc is not set ++CONFIG_PACKAGE_libugpio=y ++# CONFIG_PACKAGE_libunbound is not set ++# CONFIG_PACKAGE_libunistring is not set ++# CONFIG_PACKAGE_libupnp is not set ++# CONFIG_PACKAGE_libupnpp is not set ++# CONFIG_PACKAGE_liburcu is not set ++# CONFIG_PACKAGE_libusb-1.0 is not set ++# CONFIG_PACKAGE_libusb-compat is not set ++# CONFIG_PACKAGE_libusbmuxd is not set ++# CONFIG_PACKAGE_libustream-cyassl is not set ++# CONFIG_PACKAGE_libustream-openssl is not set ++# CONFIG_PACKAGE_libustream-polarssl is not set ++# CONFIG_PACKAGE_libuuid is not set ++# CONFIG_PACKAGE_libuv is not set ++# CONFIG_PACKAGE_libuvc is not set ++CONFIG_PACKAGE_libv4l=m ++# CONFIG_PACKAGE_libvorbis is not set ++# CONFIG_PACKAGE_libvorbisidec is not set ++# CONFIG_PACKAGE_libvpx is not set ++# CONFIG_PACKAGE_libwebcam is not set ++# CONFIG_PACKAGE_libwebsockets-cyassl is not set ++# CONFIG_PACKAGE_libwebsockets-openssl is not set ++# CONFIG_PACKAGE_libwrap is not set ++# CONFIG_PACKAGE_libxerces-c is not set ++# CONFIG_PACKAGE_libxerces-c-samples is not set ++# CONFIG_PACKAGE_libxml2 is not set ++# CONFIG_PACKAGE_libxslt is not set ++# CONFIG_PACKAGE_libyang is not set ++# CONFIG_PACKAGE_libzdb is not set ++# CONFIG_PACKAGE_libzmq-curve is not set ++# CONFIG_PACKAGE_libzmq-nc is not set ++# CONFIG_PACKAGE_linux-atm is not set ++# CONFIG_PACKAGE_lttng-ust is not set ++# CONFIG_PACKAGE_mtdev is not set ++# CONFIG_PACKAGE_mxml is not set ++# CONFIG_PACKAGE_nacl is not set ++# CONFIG_PACKAGE_opencv is not set ++# CONFIG_PACKAGE_p11-kit is not set ++# CONFIG_PACKAGE_protobuf is not set ++# CONFIG_PACKAGE_pthsem is not set ++# CONFIG_PACKAGE_sbc is not set ++# CONFIG_PACKAGE_shflags is not set ++# CONFIG_PACKAGE_terminfo is not set ++# CONFIG_PACKAGE_tinycdb is not set ++# CONFIG_PACKAGE_uclibcxx is not set ++# CONFIG_PACKAGE_xmlrpc-c is not set ++# CONFIG_PACKAGE_xmlrpc-c-client is not set ++# CONFIG_PACKAGE_xmlrpc-c-server is not set ++# CONFIG_PACKAGE_yajl is not set ++CONFIG_PACKAGE_zlib=y ++ ++# ++# LuCI ++# ++ ++# ++# 1. Collections ++# ++# CONFIG_PACKAGE_luci is not set ++# CONFIG_PACKAGE_luci-ssl is not set ++ ++# ++# 2. Modules ++# ++# CONFIG_PACKAGE_luci-base is not set ++# CONFIG_LUCI_SRCDIET is not set ++ ++# ++# Translations ++# ++# CONFIG_LUCI_LANG_uk is not set ++# CONFIG_LUCI_LANG_hu is not set ++# CONFIG_LUCI_LANG_pt is not set ++# CONFIG_LUCI_LANG_no is not set ++# CONFIG_LUCI_LANG_en is not set ++# CONFIG_LUCI_LANG_el is not set ++# CONFIG_LUCI_LANG_sk is not set ++# CONFIG_LUCI_LANG_ja is not set ++# CONFIG_LUCI_LANG_vi is not set ++# CONFIG_LUCI_LANG_de is not set ++# CONFIG_LUCI_LANG_ro is not set ++# CONFIG_LUCI_LANG_pt-br is not set ++# CONFIG_LUCI_LANG_ms is not set ++# CONFIG_LUCI_LANG_pl is not set ++# CONFIG_LUCI_LANG_zh-cn is not set ++# CONFIG_LUCI_LANG_he is not set ++# CONFIG_LUCI_LANG_zh-tw is not set ++# CONFIG_LUCI_LANG_tr is not set ++# CONFIG_LUCI_LANG_sv is not set ++# CONFIG_LUCI_LANG_ru is not set ++# CONFIG_LUCI_LANG_ca is not set ++# CONFIG_LUCI_LANG_es is not set ++# CONFIG_LUCI_LANG_cs is not set ++# CONFIG_LUCI_LANG_fr is not set ++# CONFIG_LUCI_LANG_it is not set ++# CONFIG_PACKAGE_luci-mod-admin-full is not set ++# CONFIG_PACKAGE_luci-mod-failsafe is not set ++# CONFIG_PACKAGE_luci-mod-freifunk is not set ++# CONFIG_PACKAGE_luci-mod-freifunk-community is not set ++# CONFIG_PACKAGE_luci-mod-rpc is not set ++ ++# ++# 3. Applications ++# ++# CONFIG_PACKAGE_luci-app-ahcp is not set ++# CONFIG_PACKAGE_luci-app-asterisk is not set ++# CONFIG_PACKAGE_luci-app-bird4 is not set ++# CONFIG_PACKAGE_luci-app-bird6 is not set ++# CONFIG_PACKAGE_luci-app-bmx6 is not set ++# CONFIG_PACKAGE_luci-app-cjdns is not set ++# CONFIG_PACKAGE_luci-app-clamav is not set ++# CONFIG_PACKAGE_luci-app-commands is not set ++# CONFIG_PACKAGE_luci-app-cshark is not set ++# CONFIG_PACKAGE_luci-app-ddns is not set ++# CONFIG_PACKAGE_luci-app-diag-core is not set ++# CONFIG_PACKAGE_luci-app-dump1090 is not set ++# CONFIG_PACKAGE_luci-app-e2guardian is not set ++# CONFIG_PACKAGE_luci-app-firewall is not set ++# CONFIG_PACKAGE_luci-app-freifunk-diagnostics is not set ++# CONFIG_PACKAGE_luci-app-freifunk-policyrouting is not set ++# CONFIG_PACKAGE_luci-app-freifunk-widgets is not set ++# CONFIG_PACKAGE_luci-app-fwknopd is not set ++# CONFIG_PACKAGE_luci-app-hd-idle is not set ++# CONFIG_PACKAGE_luci-app-hnet is not set ++# CONFIG_PACKAGE_luci-app-lxc is not set ++# CONFIG_PACKAGE_luci-app-meshwizard is not set ++# CONFIG_PACKAGE_luci-app-mjpg-streamer is not set ++# CONFIG_PACKAGE_luci-app-mmc-over-gpio is not set ++# CONFIG_PACKAGE_luci-app-mwan3 is not set ++# CONFIG_PACKAGE_luci-app-ntpc is not set ++# CONFIG_PACKAGE_luci-app-ocserv is not set ++# CONFIG_PACKAGE_luci-app-olsr is not set ++# CONFIG_PACKAGE_luci-app-olsr-services is not set ++# CONFIG_PACKAGE_luci-app-olsr-viz is not set ++# CONFIG_PACKAGE_luci-app-openvpn is not set ++# CONFIG_PACKAGE_luci-app-p2pblock is not set ++# CONFIG_PACKAGE_luci-app-p910nd is not set ++# CONFIG_PACKAGE_luci-app-pbx is not set ++# CONFIG_PACKAGE_luci-app-polipo is not set ++# CONFIG_PACKAGE_luci-app-privoxy is not set ++# CONFIG_PACKAGE_luci-app-qos is not set ++# CONFIG_PACKAGE_luci-app-radicale is not set ++# CONFIG_PACKAGE_luci-app-radvd is not set ++# CONFIG_PACKAGE_luci-app-samba is not set ++# CONFIG_PACKAGE_luci-app-shadowsocks-libev is not set ++# CONFIG_PACKAGE_luci-app-shairplay is not set ++# CONFIG_PACKAGE_luci-app-shairport is not set ++# CONFIG_PACKAGE_luci-app-siitwizard is not set ++# CONFIG_PACKAGE_luci-app-splash is not set ++# CONFIG_PACKAGE_luci-app-squid is not set ++# CONFIG_PACKAGE_luci-app-statistics is not set ++# CONFIG_PACKAGE_luci-app-tinyproxy is not set ++# CONFIG_PACKAGE_luci-app-transmission is not set ++# CONFIG_PACKAGE_luci-app-udpxy is not set ++# CONFIG_PACKAGE_luci-app-upnp is not set ++# CONFIG_PACKAGE_luci-app-vnstat is not set ++# CONFIG_PACKAGE_luci-app-watchcat is not set ++# CONFIG_PACKAGE_luci-app-wol is not set ++# CONFIG_PACKAGE_luci-app-wshaper is not set ++ ++# ++# 4. Themes ++# ++# CONFIG_PACKAGE_luci-theme-bootstrap is not set ++# CONFIG_PACKAGE_luci-theme-freifunk-generic is not set ++# CONFIG_PACKAGE_luci-theme-material is not set ++# CONFIG_PACKAGE_luci-theme-openwrt is not set ++ ++# ++# 5. Protocols ++# ++# CONFIG_PACKAGE_luci-proto-3g is not set ++# CONFIG_PACKAGE_luci-proto-ipv6 is not set ++# CONFIG_PACKAGE_luci-proto-openconnect is not set ++# CONFIG_PACKAGE_luci-proto-ppp is not set ++# CONFIG_PACKAGE_luci-proto-relay is not set ++ ++# ++# 6. Libraries ++# ++# CONFIG_PACKAGE_luci-lib-httpclient is not set ++# CONFIG_PACKAGE_luci-lib-ip is not set ++# CONFIG_PACKAGE_luci-lib-json is not set ++# CONFIG_PACKAGE_luci-lib-jsonc is not set ++# CONFIG_PACKAGE_luci-lib-luaneightbl is not set ++# CONFIG_PACKAGE_luci-lib-nixio is not set ++# CONFIG_PACKAGE_luci-lib-px5g is not set ++ ++# ++# 9. Freifunk ++# ++# CONFIG_PACKAGE_freifunk-common is not set ++# CONFIG_PACKAGE_freifunk-firewall is not set ++# CONFIG_PACKAGE_freifunk-p2pblock is not set ++# CONFIG_PACKAGE_freifunk-policyrouting is not set ++# CONFIG_PACKAGE_freifunk-watchdog is not set ++# CONFIG_PACKAGE_meshwizard is not set ++# CONFIG_PACKAGE_remote-update is not set ++ ++# ++# Mail ++# ++# CONFIG_PACKAGE_alpine is not set ++# CONFIG_PACKAGE_alpine-nossl is not set ++# CONFIG_PACKAGE_bogofilter is not set ++# CONFIG_PACKAGE_dovecot is not set ++# CONFIG_PACKAGE_fdm is not set ++# CONFIG_PACKAGE_mailman is not set ++# CONFIG_PACKAGE_mailsend is not set ++# CONFIG_PACKAGE_mailsend-nossl is not set ++# CONFIG_PACKAGE_msmtp is not set ++# CONFIG_PACKAGE_msmtp-nossl is not set ++# CONFIG_PACKAGE_msmtp-queue is not set ++# CONFIG_PACKAGE_nail is not set ++# CONFIG_PACKAGE_postfix is not set ++ ++# ++# Select postfix build options ++# ++CONFIG_POSTFIX_TLS=y ++CONFIG_POSTFIX_SASL=y ++CONFIG_POSTFIX_LDAP=y ++# CONFIG_POSTFIX_DB is not set ++CONFIG_POSTFIX_CDB=y ++# CONFIG_PACKAGE_ssmtp is not set ++ ++# ++# Multimedia ++# ++ ++# ++# Streaming ++# ++# CONFIG_PACKAGE_oggfwd is not set ++# CONFIG_PACKAGE_crtmpserver is not set ++# CONFIG_PACKAGE_ffmpeg is not set ++# CONFIG_PACKAGE_ffprobe is not set ++# CONFIG_PACKAGE_ffserver is not set ++# CONFIG_PACKAGE_fswebcam is not set ++# CONFIG_PACKAGE_grilo is not set ++# CONFIG_PACKAGE_grilo-plugins is not set ++# CONFIG_PACKAGE_gst1-libav is not set ++# CONFIG_PACKAGE_gstreamer1-libs is not set ++# CONFIG_PACKAGE_gstreamer1-plugins-bad is not set ++# CONFIG_PACKAGE_gstreamer1-plugins-base is not set ++# CONFIG_PACKAGE_gstreamer1-plugins-good is not set ++# CONFIG_PACKAGE_gstreamer1-plugins-ugly is not set ++# CONFIG_PACKAGE_gstreamer1-utils is not set ++# CONFIG_PACKAGE_icecast is not set ++# CONFIG_PACKAGE_lcdgrilo is not set ++CONFIG_PACKAGE_mjpg-streamer=m ++CONFIG_MJPG_STREAMER_V4L2=y ++# CONFIG_MJPG_STREAMER_INPUT_FILE is not set ++CONFIG_MJPG_STREAMER_INPUT_UVC=y ++# CONFIG_MJPG_STREAMER_INPUT_TESTPICTURE is not set ++# CONFIG_MJPG_STREAMER_OUTPUT_FILE is not set ++CONFIG_MJPG_STREAMER_OUTPUT_HTTP=y ++CONFIG_MJPG_STREAMER_WWW=y ++# CONFIG_PACKAGE_motion is not set ++# CONFIG_PACKAGE_tvheadend is not set ++# CONFIG_PACKAGE_vips is not set ++# CONFIG_PACKAGE_xupnpd is not set ++ ++# ++# Network ++# ++ ++# ++# BitTorrent ++# ++# CONFIG_PACKAGE_ctorrent is not set ++# CONFIG_PACKAGE_ctorrent-nossl is not set ++# CONFIG_PACKAGE_ctorrent-svn is not set ++# CONFIG_PACKAGE_ctorrent-svn-nossl is not set ++# CONFIG_PACKAGE_mktorrent is not set ++# CONFIG_PACKAGE_opentracker is not set ++# CONFIG_PACKAGE_opentracker6 is not set ++# CONFIG_PACKAGE_rtorrent is not set ++# CONFIG_PACKAGE_rtorrent-rpc is not set ++# CONFIG_PACKAGE_transmission-daemon is not set ++# CONFIG_PACKAGE_transmission-remote is not set ++ ++# ++# Captive Portals ++# ++# CONFIG_PACKAGE_coova-chilli is not set ++# CONFIG_PACKAGE_nodogsplash is not set ++# CONFIG_PACKAGE_wifidog is not set ++# CONFIG_PACKAGE_wifidog-tls is not set ++ ++# ++# File Transfer ++# ++# CONFIG_PACKAGE_aria2 is not set ++# CONFIG_PACKAGE_atftp is not set ++# CONFIG_PACKAGE_atftpd is not set ++# CONFIG_PACKAGE_curl is not set ++# CONFIG_PACKAGE_gnurl is not set ++# CONFIG_PACKAGE_lftp is not set ++CONFIG_PACKAGE_rsync=m ++# CONFIG_RSYNC_xattr is not set ++# CONFIG_RSYNC_acl is not set ++CONFIG_RSYNC_zlib=y ++# CONFIG_PACKAGE_rsyncd is not set ++# CONFIG_PACKAGE_vsftpd is not set ++# CONFIG_PACKAGE_vsftpd-tls is not set ++# CONFIG_PACKAGE_wget is not set ++# CONFIG_PACKAGE_wget-nossl is not set ++ ++# ++# Filesystem ++# ++# CONFIG_PACKAGE_davfs2 is not set ++# CONFIG_PACKAGE_netatalk is not set ++# CONFIG_PACKAGE_nfs-kernel-server is not set ++# CONFIG_PACKAGE_owftpd is not set ++# CONFIG_PACKAGE_owhttpd is not set ++# CONFIG_PACKAGE_owserver is not set ++# CONFIG_PACKAGE_sshfs is not set ++ ++# ++# Firewall ++# ++# CONFIG_PACKAGE_arptables is not set ++# CONFIG_PACKAGE_conntrack-tools is not set ++# CONFIG_PACKAGE_ebtables is not set ++# CONFIG_PACKAGE_fwknop is not set ++# CONFIG_PACKAGE_fwknopd is not set ++CONFIG_PACKAGE_ip6tables=y ++# CONFIG_PACKAGE_ip6tables-extra is not set ++# CONFIG_PACKAGE_ip6tables-mod-nat is not set ++CONFIG_PACKAGE_iptables=y ++# CONFIG_PACKAGE_iptables-mod-account is not set ++# CONFIG_PACKAGE_iptables-mod-chaos is not set ++# CONFIG_PACKAGE_iptables-mod-cluster is not set ++# CONFIG_PACKAGE_iptables-mod-clusterip is not set ++# CONFIG_PACKAGE_iptables-mod-condition is not set ++# CONFIG_PACKAGE_iptables-mod-conntrack-extra is not set ++# CONFIG_PACKAGE_iptables-mod-delude is not set ++# CONFIG_PACKAGE_iptables-mod-dhcpmac is not set ++# CONFIG_PACKAGE_iptables-mod-dnetmap is not set ++# CONFIG_PACKAGE_iptables-mod-extra is not set ++# CONFIG_PACKAGE_iptables-mod-filter is not set ++# CONFIG_PACKAGE_iptables-mod-fuzzy is not set ++# CONFIG_PACKAGE_iptables-mod-geoip is not set ++# CONFIG_PACKAGE_iptables-mod-hashlimit is not set ++# CONFIG_PACKAGE_iptables-mod-iface is not set ++# CONFIG_PACKAGE_iptables-mod-ipmark is not set ++# CONFIG_PACKAGE_iptables-mod-ipopt is not set ++# CONFIG_PACKAGE_iptables-mod-ipp2p is not set ++# CONFIG_PACKAGE_iptables-mod-iprange is not set ++# CONFIG_PACKAGE_iptables-mod-ipsec is not set ++# CONFIG_PACKAGE_iptables-mod-ipv4options is not set ++# CONFIG_PACKAGE_iptables-mod-led is not set ++# CONFIG_PACKAGE_iptables-mod-length2 is not set ++# CONFIG_PACKAGE_iptables-mod-logmark is not set ++# CONFIG_PACKAGE_iptables-mod-lscan is not set ++# CONFIG_PACKAGE_iptables-mod-lua is not set ++# CONFIG_PACKAGE_iptables-mod-nat-extra is not set ++# CONFIG_PACKAGE_iptables-mod-nflog is not set ++# CONFIG_PACKAGE_iptables-mod-nfqueue is not set ++# CONFIG_PACKAGE_iptables-mod-psd is not set ++# CONFIG_PACKAGE_iptables-mod-quota2 is not set ++# CONFIG_PACKAGE_iptables-mod-sysrq is not set ++# CONFIG_PACKAGE_iptables-mod-tarpit is not set ++# CONFIG_PACKAGE_iptables-mod-tee is not set ++# CONFIG_PACKAGE_iptables-mod-tproxy is not set ++# CONFIG_PACKAGE_iptables-mod-u32 is not set ++# CONFIG_PACKAGE_iptables-mod-ulog is not set ++# CONFIG_PACKAGE_iptaccount is not set ++# CONFIG_PACKAGE_miniupnpc is not set ++# CONFIG_PACKAGE_miniupnpd is not set ++# CONFIG_PACKAGE_natpmpc is not set ++# CONFIG_PACKAGE_nftables is not set ++# CONFIG_PACKAGE_snort is not set ++ ++# ++# Firewall Tunnel ++# ++# CONFIG_PACKAGE_iodine is not set ++# CONFIG_PACKAGE_iodined is not set ++ ++# ++# FreeRADIUS (version 2) ++# ++# CONFIG_PACKAGE_freeradius2 is not set ++# CONFIG_PACKAGE_freeradius2-common is not set ++# CONFIG_PACKAGE_freeradius2-utils is not set ++ ++# ++# IP Addresses and Names ++# ++# CONFIG_PACKAGE_announce is not set ++# CONFIG_PACKAGE_avahi-autoipd is not set ++# CONFIG_PACKAGE_avahi-dbus-daemon is not set ++# CONFIG_PACKAGE_avahi-nodbus-daemon is not set ++# CONFIG_PACKAGE_bind-check is not set ++# CONFIG_PACKAGE_bind-client is not set ++# CONFIG_PACKAGE_bind-dig is not set ++# CONFIG_PACKAGE_bind-dnssec is not set ++# CONFIG_PACKAGE_bind-host is not set ++# CONFIG_PACKAGE_bind-rndc is not set ++# CONFIG_PACKAGE_bind-server is not set ++# CONFIG_PACKAGE_bind-tools is not set ++# CONFIG_PACKAGE_ddns-scripts is not set ++# CONFIG_PACKAGE_dnscrypt-proxy is not set ++# CONFIG_PACKAGE_drill is not set ++# CONFIG_PACKAGE_hostip is not set ++# CONFIG_PACKAGE_idn is not set ++# CONFIG_PACKAGE_knot is not set ++# CONFIG_PACKAGE_knot-dig is not set ++# CONFIG_PACKAGE_knot-host is not set ++# CONFIG_PACKAGE_knot-libknot is not set ++# CONFIG_PACKAGE_knot-nsec3hash is not set ++# CONFIG_PACKAGE_knot-nsupdate is not set ++# CONFIG_PACKAGE_knot-tests is not set ++# CONFIG_PACKAGE_mdns-utils is not set ++# CONFIG_PACKAGE_mdnsd is not set ++# CONFIG_PACKAGE_mdnsresponder is not set ++# CONFIG_PACKAGE_nsd is not set ++# CONFIG_PACKAGE_nsd-control is not set ++# CONFIG_PACKAGE_nsd-control-setup is not set ++# CONFIG_PACKAGE_nsd-nossl is not set ++# CONFIG_PACKAGE_ohybridproxy is not set ++# CONFIG_PACKAGE_unbound is not set ++# CONFIG_PACKAGE_unbound-anchor is not set ++# CONFIG_PACKAGE_unbound-control is not set ++# CONFIG_PACKAGE_unbound-control-setup is not set ++# CONFIG_PACKAGE_unbound-host is not set ++# CONFIG_PACKAGE_zonestitcher is not set ++ ++# ++# Instant Messaging ++# ++# CONFIG_PACKAGE_irssi is not set ++# CONFIG_PACKAGE_irssi-nossl is not set ++# CONFIG_PACKAGE_ngircd is not set ++# CONFIG_PACKAGE_ngircd-nossl is not set ++# CONFIG_PACKAGE_ntox is not set ++# CONFIG_PACKAGE_prosody is not set ++# CONFIG_PACKAGE_tox-bootstrapd is not set ++# CONFIG_PACKAGE_umurmur-openssl is not set ++# CONFIG_PACKAGE_umurmur-polarssl is not set ++# CONFIG_PACKAGE_znc is not set ++ ++# ++# Linux ATM tools ++# ++# CONFIG_PACKAGE_atm-aread is not set ++# CONFIG_PACKAGE_atm-atmaddr is not set ++# CONFIG_PACKAGE_atm-atmdiag is not set ++# CONFIG_PACKAGE_atm-atmdump is not set ++# CONFIG_PACKAGE_atm-atmloop is not set ++# CONFIG_PACKAGE_atm-atmsigd is not set ++# CONFIG_PACKAGE_atm-atmswitch is not set ++# CONFIG_PACKAGE_atm-atmtcp is not set ++# CONFIG_PACKAGE_atm-awrite is not set ++# CONFIG_PACKAGE_atm-bus is not set ++# CONFIG_PACKAGE_atm-debug-tools is not set ++# CONFIG_PACKAGE_atm-diagnostics is not set ++# CONFIG_PACKAGE_atm-esi is not set ++# CONFIG_PACKAGE_atm-ilmid is not set ++# CONFIG_PACKAGE_atm-ilmidiag is not set ++# CONFIG_PACKAGE_atm-lecs is not set ++# CONFIG_PACKAGE_atm-les is not set ++# CONFIG_PACKAGE_atm-mpcd is not set ++# CONFIG_PACKAGE_atm-saaldump is not set ++# CONFIG_PACKAGE_atm-sonetdiag is not set ++# CONFIG_PACKAGE_atm-svc_recv is not set ++# CONFIG_PACKAGE_atm-svc_send is not set ++# CONFIG_PACKAGE_atm-tools is not set ++# CONFIG_PACKAGE_atm-ttcp_atm is not set ++# CONFIG_PACKAGE_atm-zeppelin is not set ++# CONFIG_PACKAGE_br2684ctl is not set ++ ++# ++# NMAP Suite ++# ++# CONFIG_PACKAGE_ncat is not set ++# CONFIG_PACKAGE_ncat-ssl is not set ++# CONFIG_PACKAGE_ndiff is not set ++# CONFIG_PACKAGE_nmap is not set ++# CONFIG_PACKAGE_nmap-ssl is not set ++# CONFIG_PACKAGE_nping is not set ++ ++# ++# NTRIP ++# ++# CONFIG_PACKAGE_ntripcaster is not set ++# CONFIG_PACKAGE_ntripclient is not set ++# CONFIG_PACKAGE_ntripserver is not set ++ ++# ++# OLSR.org network framework ++# ++# CONFIG_PACKAGE_oonf-dlep-proxy is not set ++# CONFIG_PACKAGE_oonf-dlep-radio is not set ++# CONFIG_PACKAGE_oonf-init-scripts is not set ++# CONFIG_PACKAGE_oonf-olsrd2 is not set ++ ++# ++# Printing ++# ++# CONFIG_PACKAGE_p910nd is not set ++ ++# ++# Routing and Redirection ++# ++# CONFIG_PACKAGE_babel-pinger is not set ++# CONFIG_PACKAGE_babeld is not set ++# CONFIG_PACKAGE_batmand is not set ++# CONFIG_PACKAGE_bcp38 is not set ++# CONFIG_PACKAGE_bird4 is not set ++# CONFIG_PACKAGE_bird4-uci is not set ++# CONFIG_PACKAGE_bird6 is not set ++# CONFIG_PACKAGE_bird6-uci is not set ++# CONFIG_PACKAGE_birdc4 is not set ++# CONFIG_PACKAGE_birdc6 is not set ++# CONFIG_PACKAGE_birdcl4 is not set ++# CONFIG_PACKAGE_birdcl6 is not set ++# CONFIG_PACKAGE_bmx6 is not set ++# CONFIG_PACKAGE_bmx7 is not set ++# CONFIG_PACKAGE_cjdns is not set ++# CONFIG_PACKAGE_cjdns-tests is not set ++# CONFIG_PACKAGE_genl is not set ++# CONFIG_PACKAGE_igmpproxy is not set ++# CONFIG_PACKAGE_ip is not set ++# CONFIG_PACKAGE_ip-bridge is not set ++# CONFIG_PACKAGE_ip-full is not set ++# CONFIG_PACKAGE_lldpd is not set ++# CONFIG_PACKAGE_mcproxy is not set ++# CONFIG_PACKAGE_mwan3 is not set ++# CONFIG_PACKAGE_olsrd is not set ++# CONFIG_PACKAGE_quagga is not set ++# CONFIG_PACKAGE_relayd is not set ++# CONFIG_PACKAGE_smcroute is not set ++# CONFIG_PACKAGE_ss is not set ++# CONFIG_PACKAGE_sslh is not set ++# CONFIG_PACKAGE_tc is not set ++# CONFIG_PACKAGE_tcpproxy is not set ++# CONFIG_PACKAGE_vis is not set ++ ++# ++# SSH ++# ++CONFIG_PACKAGE_openssh-client=y ++CONFIG_PACKAGE_openssh-client-utils=y ++CONFIG_PACKAGE_openssh-keygen=y ++CONFIG_PACKAGE_openssh-moduli=y ++CONFIG_PACKAGE_openssh-server=y ++# CONFIG_PACKAGE_openssh-server-pam is not set ++# CONFIG_PACKAGE_openssh-sftp-client is not set ++# CONFIG_PACKAGE_openssh-sftp-server is not set ++# CONFIG_PACKAGE_sshtunnel is not set ++ ++# ++# THC-IPv6 attack and analyzing toolkit ++# ++# CONFIG_PACKAGE_thc-ipv6-address6 is not set ++# CONFIG_PACKAGE_thc-ipv6-alive6 is not set ++# CONFIG_PACKAGE_thc-ipv6-covert-send6 is not set ++# CONFIG_PACKAGE_thc-ipv6-covert-send6d is not set ++# CONFIG_PACKAGE_thc-ipv6-denial6 is not set ++# CONFIG_PACKAGE_thc-ipv6-detect-new-ip6 is not set ++# CONFIG_PACKAGE_thc-ipv6-detect-sniffer6 is not set ++# CONFIG_PACKAGE_thc-ipv6-dnsdict6 is not set ++# CONFIG_PACKAGE_thc-ipv6-dnsrevenum6 is not set ++# CONFIG_PACKAGE_thc-ipv6-dos-new-ip6 is not set ++# CONFIG_PACKAGE_thc-ipv6-dump-router6 is not set ++# CONFIG_PACKAGE_thc-ipv6-exploit6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-advertise6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-dhcps6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-dns6d is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-dnsupdate6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-mipv6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-mld26 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-mld6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-mldrouter6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-router26 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-router6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fake-solicitate6 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-advertise6 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-dhcpc6 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-mld26 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-mld6 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-mldrouter6 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-router26 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-router6 is not set ++# CONFIG_PACKAGE_thc-ipv6-flood-solicitate6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fragmentation6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fuzz-dhcpc6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fuzz-dhcps6 is not set ++# CONFIG_PACKAGE_thc-ipv6-fuzz-ip6 is not set ++# CONFIG_PACKAGE_thc-ipv6-implementation6 is not set ++# CONFIG_PACKAGE_thc-ipv6-implementation6d is not set ++# CONFIG_PACKAGE_thc-ipv6-inverse-lookup6 is not set ++# CONFIG_PACKAGE_thc-ipv6-kill-router6 is not set ++# CONFIG_PACKAGE_thc-ipv6-ndpexhaust6 is not set ++# CONFIG_PACKAGE_thc-ipv6-node-query6 is not set ++# CONFIG_PACKAGE_thc-ipv6-parasite6 is not set ++# CONFIG_PACKAGE_thc-ipv6-passive-discovery6 is not set ++# CONFIG_PACKAGE_thc-ipv6-randicmp6 is not set ++# CONFIG_PACKAGE_thc-ipv6-redir6 is not set ++# CONFIG_PACKAGE_thc-ipv6-rsmurf6 is not set ++# CONFIG_PACKAGE_thc-ipv6-sendpees6 is not set ++# CONFIG_PACKAGE_thc-ipv6-sendpeesmp6 is not set ++# CONFIG_PACKAGE_thc-ipv6-smurf6 is not set ++# CONFIG_PACKAGE_thc-ipv6-thcping6 is not set ++# CONFIG_PACKAGE_thc-ipv6-toobig6 is not set ++# CONFIG_PACKAGE_thc-ipv6-trace6 is not set ++ ++# ++# Telephony ++# ++# CONFIG_PACKAGE_asterisk11 is not set ++# CONFIG_PACKAGE_asterisk13 is not set ++# CONFIG_PACKAGE_asterisk18 is not set ++# CONFIG_PACKAGE_baresip is not set ++# CONFIG_PACKAGE_freeswitch is not set ++# CONFIG_PACKAGE_kamailio3 is not set ++# CONFIG_PACKAGE_kamailio4 is not set ++# CONFIG_PACKAGE_miax is not set ++# CONFIG_PACKAGE_pcapsipdump is not set ++# CONFIG_PACKAGE_restund is not set ++# CONFIG_PACKAGE_rtpproxy is not set ++# CONFIG_PACKAGE_sipp is not set ++# CONFIG_PACKAGE_siproxd is not set ++# CONFIG_PACKAGE_yate is not set ++ ++# ++# Time Synchronization ++# ++# CONFIG_PACKAGE_chrony is not set ++# CONFIG_PACKAGE_htpdate is not set ++# CONFIG_PACKAGE_ntp-keygen is not set ++# CONFIG_PACKAGE_ntp-utils is not set ++# CONFIG_PACKAGE_ntpclient is not set ++# CONFIG_PACKAGE_ntpd is not set ++# CONFIG_PACKAGE_ntpdate is not set ++ ++# ++# VPN ++# ++# CONFIG_PACKAGE_chaosvpn is not set ++# CONFIG_PACKAGE_fastd is not set ++# CONFIG_PACKAGE_ipsec-tools is not set ++# CONFIG_PACKAGE_ocserv is not set ++# CONFIG_PACKAGE_openconnect is not set ++# CONFIG_PACKAGE_opennhrp is not set ++# CONFIG_PACKAGE_openvpn-easy-rsa is not set ++# CONFIG_PACKAGE_openvpn-nossl is not set ++CONFIG_PACKAGE_openvpn-openssl=m ++CONFIG_OPENVPN_openssl_ENABLE_LZO=y ++# CONFIG_OPENVPN_openssl_ENABLE_X509_ALT_USERNAME is not set ++CONFIG_OPENVPN_openssl_ENABLE_SERVER=y ++# CONFIG_OPENVPN_openssl_ENABLE_MANAGEMENT is not set ++# CONFIG_OPENVPN_openssl_ENABLE_HTTP is not set ++# CONFIG_OPENVPN_openssl_ENABLE_SOCKS is not set ++CONFIG_OPENVPN_openssl_ENABLE_FRAGMENT=y ++# CONFIG_OPENVPN_openssl_ENABLE_MULTIHOME is not set ++# CONFIG_OPENVPN_openssl_ENABLE_PORT_SHARE is not set ++# CONFIG_OPENVPN_openssl_ENABLE_DEF_AUTH is not set ++# CONFIG_OPENVPN_openssl_ENABLE_PF is not set ++# CONFIG_OPENVPN_openssl_ENABLE_IPROUTE2 is not set ++CONFIG_OPENVPN_openssl_ENABLE_SMALL=y ++# CONFIG_PACKAGE_openvpn-polarssl is not set ++# CONFIG_PACKAGE_pptpd is not set ++# CONFIG_PACKAGE_strongswan is not set ++# CONFIG_PACKAGE_strongswan-charon is not set ++# CONFIG_PACKAGE_strongswan-default is not set ++# CONFIG_PACKAGE_strongswan-libtls is not set ++# CONFIG_PACKAGE_strongswan-minimal is not set ++# CONFIG_PACKAGE_strongswan-mod-addrblock is not set ++# CONFIG_PACKAGE_strongswan-mod-aes is not set ++# CONFIG_PACKAGE_strongswan-mod-af-alg is not set ++# CONFIG_PACKAGE_strongswan-mod-agent is not set ++# CONFIG_PACKAGE_strongswan-mod-attr is not set ++# CONFIG_PACKAGE_strongswan-mod-attr-sql is not set ++# CONFIG_PACKAGE_strongswan-mod-blowfish is not set ++# CONFIG_PACKAGE_strongswan-mod-ccm is not set ++# CONFIG_PACKAGE_strongswan-mod-cmac is not set ++# CONFIG_PACKAGE_strongswan-mod-constraints is not set ++# CONFIG_PACKAGE_strongswan-mod-coupling is not set ++# CONFIG_PACKAGE_strongswan-mod-ctr is not set ++# CONFIG_PACKAGE_strongswan-mod-curl is not set ++# CONFIG_PACKAGE_strongswan-mod-des is not set ++# CONFIG_PACKAGE_strongswan-mod-dhcp is not set ++# CONFIG_PACKAGE_strongswan-mod-dnskey is not set ++# CONFIG_PACKAGE_strongswan-mod-duplicheck is not set ++# CONFIG_PACKAGE_strongswan-mod-eap-identity is not set ++# CONFIG_PACKAGE_strongswan-mod-eap-md5 is not set ++# CONFIG_PACKAGE_strongswan-mod-eap-mschapv2 is not set ++# CONFIG_PACKAGE_strongswan-mod-eap-radius is not set ++# CONFIG_PACKAGE_strongswan-mod-eap-tls is not set ++# CONFIG_PACKAGE_strongswan-mod-farp is not set ++# CONFIG_PACKAGE_strongswan-mod-fips-prf is not set ++# CONFIG_PACKAGE_strongswan-mod-gcm is not set ++# CONFIG_PACKAGE_strongswan-mod-gcrypt is not set ++# CONFIG_PACKAGE_strongswan-mod-gmp is not set ++# CONFIG_PACKAGE_strongswan-mod-ha is not set ++# CONFIG_PACKAGE_strongswan-mod-hmac is not set ++# CONFIG_PACKAGE_strongswan-mod-kernel-libipsec is not set ++# CONFIG_PACKAGE_strongswan-mod-kernel-netlink is not set ++# CONFIG_PACKAGE_strongswan-mod-ldap is not set ++# CONFIG_PACKAGE_strongswan-mod-led is not set ++# CONFIG_PACKAGE_strongswan-mod-load-tester is not set ++# CONFIG_PACKAGE_strongswan-mod-md4 is not set ++# CONFIG_PACKAGE_strongswan-mod-md5 is not set ++# CONFIG_PACKAGE_strongswan-mod-mysql is not set ++# CONFIG_PACKAGE_strongswan-mod-nonce is not set ++# CONFIG_PACKAGE_strongswan-mod-openssl is not set ++# CONFIG_PACKAGE_strongswan-mod-pem is not set ++# CONFIG_PACKAGE_strongswan-mod-pgp is not set ++# CONFIG_PACKAGE_strongswan-mod-pkcs1 is not set ++# CONFIG_PACKAGE_strongswan-mod-pkcs11 is not set ++# CONFIG_PACKAGE_strongswan-mod-pkcs12 is not set ++# CONFIG_PACKAGE_strongswan-mod-pkcs7 is not set ++# CONFIG_PACKAGE_strongswan-mod-pkcs8 is not set ++# CONFIG_PACKAGE_strongswan-mod-pubkey is not set ++# CONFIG_PACKAGE_strongswan-mod-random is not set ++# CONFIG_PACKAGE_strongswan-mod-rc2 is not set ++# CONFIG_PACKAGE_strongswan-mod-resolve is not set ++# CONFIG_PACKAGE_strongswan-mod-revocation is not set ++# CONFIG_PACKAGE_strongswan-mod-sha1 is not set ++# CONFIG_PACKAGE_strongswan-mod-sha2 is not set ++# CONFIG_PACKAGE_strongswan-mod-smp is not set ++# CONFIG_PACKAGE_strongswan-mod-socket-default is not set ++# CONFIG_PACKAGE_strongswan-mod-socket-dynamic is not set ++# CONFIG_PACKAGE_strongswan-mod-sql is not set ++# CONFIG_PACKAGE_strongswan-mod-sqlite is not set ++# CONFIG_PACKAGE_strongswan-mod-sshkey is not set ++# CONFIG_PACKAGE_strongswan-mod-stroke is not set ++# CONFIG_PACKAGE_strongswan-mod-test-vectors is not set ++# CONFIG_PACKAGE_strongswan-mod-uci is not set ++# CONFIG_PACKAGE_strongswan-mod-unity is not set ++# CONFIG_PACKAGE_strongswan-mod-updown is not set ++# CONFIG_PACKAGE_strongswan-mod-whitelist is not set ++# CONFIG_PACKAGE_strongswan-mod-x509 is not set ++# CONFIG_PACKAGE_strongswan-mod-xauth-eap is not set ++# CONFIG_PACKAGE_strongswan-mod-xauth-generic is not set ++# CONFIG_PACKAGE_strongswan-mod-xcbc is not set ++# CONFIG_PACKAGE_strongswan-utils is not set ++# CONFIG_PACKAGE_tinc is not set ++# CONFIG_PACKAGE_uanytun is not set ++# CONFIG_PACKAGE_uanytun-nettle is not set ++# CONFIG_PACKAGE_uanytun-nocrypt is not set ++# CONFIG_PACKAGE_uanytun-sslcrypt is not set ++# CONFIG_PACKAGE_vpnc is not set ++# CONFIG_PACKAGE_vpnc-scripts is not set ++# CONFIG_PACKAGE_xl2tpd is not set ++ ++# ++# Version Control Systems ++# ++# CONFIG_PACKAGE_fossil is not set ++# CONFIG_PACKAGE_git is not set ++ ++# ++# Web Servers/Proxies ++# ++# CONFIG_PACKAGE_apache is not set ++# CONFIG_PACKAGE_cgi-io is not set ++# CONFIG_PACKAGE_clamav is not set ++# CONFIG_PACKAGE_dansguardian is not set ++# CONFIG_PACKAGE_e2guardian is not set ++# CONFIG_PACKAGE_emailrelay is not set ++# CONFIG_PACKAGE_emailrelay-nossl is not set ++# CONFIG_PACKAGE_freshclam is not set ++# CONFIG_PACKAGE_haproxy is not set ++# CONFIG_PACKAGE_haproxy-nossl is not set ++# CONFIG_PACKAGE_lighttpd is not set ++# CONFIG_PACKAGE_nginx is not set ++# CONFIG_PACKAGE_polipo is not set ++# CONFIG_PACKAGE_privoxy is not set ++# CONFIG_PACKAGE_radicale-py2 is not set ++# CONFIG_PACKAGE_shadowsocks-client is not set ++# CONFIG_PACKAGE_sockd is not set ++# CONFIG_PACKAGE_socksify is not set ++# CONFIG_PACKAGE_spawn-fcgi is not set ++# CONFIG_PACKAGE_squid is not set ++# CONFIG_PACKAGE_tinyproxy is not set ++# CONFIG_PACKAGE_uhttpd is not set ++# CONFIG_PACKAGE_uhttpd_debug is not set ++ ++# ++# wireless ++# ++# CONFIG_PACKAGE_aircrack-ng is not set ++# CONFIG_PACKAGE_horst is not set ++# CONFIG_PACKAGE_kismet-client is not set ++# CONFIG_PACKAGE_kismet-drone is not set ++# CONFIG_PACKAGE_kismet-server is not set ++# CONFIG_PACKAGE_reaver is not set ++# CONFIG_PACKAGE_wavemon is not set ++# CONFIG_PACKAGE_464xlat is not set ++# CONFIG_PACKAGE_6in4 is not set ++# CONFIG_PACKAGE_6rd is not set ++# CONFIG_PACKAGE_6to4 is not set ++# CONFIG_PACKAGE_adblock is not set ++# CONFIG_PACKAGE_ahcpd is not set ++# CONFIG_PACKAGE_aiccu is not set ++# CONFIG_PACKAGE_aiccu-gnutls is not set ++# CONFIG_PACKAGE_alfred is not set ++# CONFIG_PACKAGE_apcupsd is not set ++# CONFIG_PACKAGE_apcupsd-cgi is not set ++# CONFIG_PACKAGE_apinger is not set ++# CONFIG_PACKAGE_authsae is not set ++# CONFIG_PACKAGE_batctl is not set ++# CONFIG_PACKAGE_bmon is not set ++# CONFIG_PACKAGE_bwm-ng is not set ++# CONFIG_PACKAGE_chat is not set ++# CONFIG_PACKAGE_cshark is not set ++# CONFIG_PACKAGE_dhcpcd is not set ++# CONFIG_PACKAGE_dmapd is not set ++# CONFIG_PACKAGE_ds-lite is not set ++# CONFIG_PACKAGE_eapol-test is not set ++# CONFIG_PACKAGE_esniper is not set ++# CONFIG_PACKAGE_etherwake is not set ++# CONFIG_PACKAGE_ethtool is not set ++# CONFIG_PACKAGE_fakeidentd is not set ++# CONFIG_PACKAGE_gnunet is not set ++# CONFIG_PACKAGE_gpsd is not set ++# CONFIG_PACKAGE_gpsd-clients is not set ++# CONFIG_PACKAGE_gre is not set ++# CONFIG_PACKAGE_hnet-full is not set ++# CONFIG_PACKAGE_hnet-full-l2tp is not set ++# CONFIG_PACKAGE_hnet-full-secure is not set ++# CONFIG_PACKAGE_hnetd-nossl is not set ++# CONFIG_PACKAGE_hnetd-openssl is not set ++# CONFIG_PACKAGE_hostapd is not set ++CONFIG_PACKAGE_hostapd-common=y ++# CONFIG_PACKAGE_hostapd-common-old is not set ++# CONFIG_PACKAGE_hostapd-mini is not set ++# CONFIG_PACKAGE_hostapd-utils is not set ++# CONFIG_PACKAGE_ibrdtn-tools is not set ++# CONFIG_PACKAGE_ibrdtnd is not set ++# CONFIG_PACKAGE_iftop is not set ++# CONFIG_PACKAGE_iotivity is not set ++# CONFIG_PACKAGE_iperf is not set ++# CONFIG_PACKAGE_iperf-mt is not set ++# CONFIG_PACKAGE_iperf3 is not set ++# CONFIG_PACKAGE_ipip is not set ++# CONFIG_PACKAGE_ipset is not set ++# CONFIG_PACKAGE_ipset-dns is not set ++# CONFIG_PACKAGE_iputils-arping is not set ++# CONFIG_PACKAGE_iputils-clockdiff is not set ++# CONFIG_PACKAGE_iputils-ping is not set ++# CONFIG_PACKAGE_iputils-ping6 is not set ++# CONFIG_PACKAGE_iputils-tftpd is not set ++# CONFIG_PACKAGE_iputils-tracepath is not set ++# CONFIG_PACKAGE_iputils-tracepath6 is not set ++# CONFIG_PACKAGE_iputils-traceroute6 is not set ++CONFIG_PACKAGE_iw=y ++# CONFIG_PACKAGE_keepalived is not set ++# CONFIG_PACKAGE_knxd is not set ++# CONFIG_PACKAGE_knxd-tools is not set ++# CONFIG_PACKAGE_kplex is not set ++# CONFIG_PACKAGE_krb5-client is not set ++# CONFIG_PACKAGE_krb5-libs is not set ++# CONFIG_PACKAGE_krb5-server is not set ++# CONFIG_PACKAGE_linknx is not set ++# CONFIG_PACKAGE_lispd is not set ++# CONFIG_PACKAGE_mac-telnet-client is not set ++# CONFIG_PACKAGE_mac-telnet-discover is not set ++# CONFIG_PACKAGE_mac-telnet-ping is not set ++# CONFIG_PACKAGE_mac-telnet-server is not set ++# CONFIG_PACKAGE_map is not set ++# CONFIG_PACKAGE_map-t is not set ++# CONFIG_PACKAGE_mdns is not set ++# CONFIG_PACKAGE_memcached is not set ++# CONFIG_PACKAGE_minimalist-pcproxy is not set ++# CONFIG_PACKAGE_mosquitto is not set ++# CONFIG_PACKAGE_mosquitto-client is not set ++# CONFIG_PACKAGE_mosquitto-client-nossl is not set ++# CONFIG_PACKAGE_mosquitto-nossl is not set ++# CONFIG_PACKAGE_mrd6 is not set ++# CONFIG_PACKAGE_mtr is not set ++# CONFIG_PACKAGE_nbd is not set ++# CONFIG_PACKAGE_nbd-server is not set ++# CONFIG_PACKAGE_ndppd is not set ++# CONFIG_PACKAGE_netcat is not set ++# CONFIG_PACKAGE_netdiscover is not set ++# CONFIG_PACKAGE_netperf is not set ++# CONFIG_PACKAGE_noping is not set ++# CONFIG_PACKAGE_nut is not set ++CONFIG_PACKAGE_odhcp6c=y ++CONFIG_PACKAGE_odhcp6c_ext_cer_id=0 ++CONFIG_PACKAGE_odhcpd=y ++CONFIG_PACKAGE_odhcpd_ext_cer_id=0 ++# CONFIG_PACKAGE_ola is not set ++# CONFIG_PACKAGE_omcproxy is not set ++# CONFIG_PACKAGE_openldap-server is not set ++# CONFIG_PACKAGE_openvswitch is not set ++# CONFIG_PACKAGE_oping is not set ++# CONFIG_PACKAGE_pen is not set ++# CONFIG_PACKAGE_pimbd is not set ++# CONFIG_PACKAGE_portmap is not set ++CONFIG_PACKAGE_ppp=y ++# CONFIG_PACKAGE_ppp-mod-pppoa is not set ++CONFIG_PACKAGE_ppp-mod-pppoe=y ++# CONFIG_PACKAGE_ppp-mod-pppol2tp is not set ++# CONFIG_PACKAGE_ppp-mod-pptp is not set ++# CONFIG_PACKAGE_ppp-mod-radius is not set ++# CONFIG_PACKAGE_ppp-multilink is not set ++# CONFIG_PACKAGE_pppdump is not set ++# CONFIG_PACKAGE_pppossh is not set ++# CONFIG_PACKAGE_pppstats is not set ++# CONFIG_PACKAGE_radsecproxy is not set ++# CONFIG_PACKAGE_redsocks is not set ++# CONFIG_PACKAGE_remserial is not set ++# CONFIG_PACKAGE_rssileds is not set ++# CONFIG_PACKAGE_samba36-client is not set ++# CONFIG_PACKAGE_samba36-server is not set ++# CONFIG_PACKAGE_scapy is not set ++# CONFIG_PACKAGE_sctp is not set ++# CONFIG_PACKAGE_sctp-tools is not set ++# CONFIG_PACKAGE_seafile-ccnet is not set ++# CONFIG_PACKAGE_seafile-seahub is not set ++# CONFIG_PACKAGE_seafile-server is not set ++# CONFIG_PACKAGE_ser2net is not set ++# CONFIG_PACKAGE_shadowsocks-libev is not set ++# CONFIG_PACKAGE_shadowsocks-libev-polarssl is not set ++# CONFIG_PACKAGE_smartsnmpd is not set ++# CONFIG_PACKAGE_snmp-utils is not set ++# CONFIG_PACKAGE_snmpd is not set ++# CONFIG_PACKAGE_snmpd-static is not set ++# CONFIG_PACKAGE_socat is not set ++# CONFIG_PACKAGE_softflowd is not set ++# CONFIG_PACKAGE_soloscli is not set ++# CONFIG_PACKAGE_sstp-client is not set ++# CONFIG_PACKAGE_stunnel is not set ++# CONFIG_PACKAGE_tayga is not set ++CONFIG_PACKAGE_tcpdump=m ++# CONFIG_PACKAGE_tcpdump-mini is not set ++# CONFIG_PACKAGE_tgt is not set ++# CONFIG_PACKAGE_tor is not set ++# CONFIG_PACKAGE_tor-fw-helper is not set ++# CONFIG_PACKAGE_tor-geoip is not set ++# CONFIG_PACKAGE_u2pnpd is not set ++# CONFIG_PACKAGE_uclient-fetch is not set ++# CONFIG_PACKAGE_udpxy is not set ++# CONFIG_PACKAGE_ulogd is not set ++# CONFIG_PACKAGE_umbim is not set ++# CONFIG_PACKAGE_uqmi is not set ++# CONFIG_PACKAGE_usbip is not set ++# CONFIG_PACKAGE_vnstat is not set ++# CONFIG_PACKAGE_vsc7385-ucode-ap83 is not set ++# CONFIG_PACKAGE_vsc7385-ucode-pb44 is not set ++# CONFIG_PACKAGE_vsc7395-ucode-ap83 is not set ++# CONFIG_PACKAGE_vsc7395-ucode-pb44 is not set ++# CONFIG_PACKAGE_wpa-cli is not set ++# CONFIG_PACKAGE_wpa-supplicant is not set ++# CONFIG_WPA_SUPPLICANT_NO_TIMESTAMP_CHECK is not set ++# CONFIG_WPA_RFKILL_SUPPORT is not set ++CONFIG_WPA_MSG_MIN_PRIORITY=3 ++# CONFIG_DRIVER_WEXT_SUPPORT is not set ++CONFIG_DRIVER_11N_SUPPORT=y ++CONFIG_DRIVER_11W_SUPPORT=y ++# CONFIG_PACKAGE_wpa-supplicant-mesh is not set ++# CONFIG_PACKAGE_wpa-supplicant-mini is not set ++# CONFIG_PACKAGE_wpa-supplicant-p2p is not set ++# CONFIG_PACKAGE_wpad is not set ++# CONFIG_PACKAGE_wpad-mesh is not set ++CONFIG_PACKAGE_wpad-mini=y ++# CONFIG_PACKAGE_wpan-tools is not set ++# CONFIG_PACKAGE_wshaper is not set ++# CONFIG_PACKAGE_wwan is not set ++# CONFIG_PACKAGE_xinetd is not set ++ ++# ++# Sound ++# ++# CONFIG_PACKAGE_espeak is not set ++# CONFIG_PACKAGE_faad2 is not set ++# CONFIG_PACKAGE_forked-daapd is not set ++# CONFIG_PACKAGE_ices is not set ++# CONFIG_PACKAGE_lame is not set ++# CONFIG_PACKAGE_lame-lib is not set ++# CONFIG_PACKAGE_madplay is not set ++# CONFIG_PACKAGE_madplay-alsa is not set ++# CONFIG_PACKAGE_mpc is not set ++# CONFIG_PACKAGE_mpd-mini is not set ++# CONFIG_PACKAGE_mpg123 is not set ++# CONFIG_PACKAGE_pianod is not set ++# CONFIG_PACKAGE_pianod-client is not set ++# CONFIG_PACKAGE_portaudio is not set ++# CONFIG_PACKAGE_pulseaudio-daemon is not set ++# CONFIG_PACKAGE_shairplay is not set ++# CONFIG_PACKAGE_shairport is not set ++# CONFIG_PACKAGE_shairport-sync-openssl is not set ++# CONFIG_PACKAGE_shairport-sync-polarssl is not set ++# CONFIG_PACKAGE_shine is not set ++# CONFIG_PACKAGE_squeezelite-full is not set ++# CONFIG_PACKAGE_squeezelite-mini is not set ++# CONFIG_PACKAGE_svox is not set ++# CONFIG_PACKAGE_upmpdcli is not set ++ ++# ++# Utilities ++# ++ ++# ++# Boot Loaders ++# ++ ++# ++# Compression ++# ++# CONFIG_PACKAGE_bzip2 is not set ++# CONFIG_PACKAGE_unrar is not set ++# CONFIG_PACKAGE_unzip is not set ++# CONFIG_PACKAGE_xz-utils is not set ++# CONFIG_PACKAGE_zip is not set ++ ++# ++# Editors ++# ++# CONFIG_PACKAGE_joe is not set ++# CONFIG_PACKAGE_nano is not set ++# CONFIG_PACKAGE_vim is not set ++# CONFIG_PACKAGE_vim-full is not set ++# CONFIG_PACKAGE_vim-help is not set ++# CONFIG_PACKAGE_vim-runtime is not set ++# CONFIG_PACKAGE_zile is not set ++ ++# ++# Filesystem ++# ++# CONFIG_PACKAGE_acl is not set ++# CONFIG_PACKAGE_attr is not set ++# CONFIG_PACKAGE_badblocks is not set ++# CONFIG_PACKAGE_btrfs-progs is not set ++# CONFIG_PACKAGE_debugfs is not set ++# CONFIG_PACKAGE_dosfsck is not set ++# CONFIG_PACKAGE_dosfslabel is not set ++# CONFIG_PACKAGE_dumpe2fs is not set ++# CONFIG_PACKAGE_e2freefrag is not set ++# CONFIG_PACKAGE_e2fsprogs is not set ++# CONFIG_PACKAGE_f2fs-tools is not set ++# CONFIG_PACKAGE_filefrag is not set ++# CONFIG_PACKAGE_fuse-utils is not set ++# CONFIG_PACKAGE_hfsfsck is not set ++# CONFIG_PACKAGE_mkdosfs is not set ++# CONFIG_PACKAGE_mkhfs is not set ++# CONFIG_PACKAGE_ncdu is not set ++# CONFIG_PACKAGE_nfs-utils is not set ++# CONFIG_PACKAGE_ntfs-3g is not set ++# CONFIG_PACKAGE_ntfs-3g-low is not set ++# CONFIG_PACKAGE_ntfs-3g-utils is not set ++# CONFIG_PACKAGE_ntfsprogs_ntfs-3g is not set ++# CONFIG_PACKAGE_owfs is not set ++# CONFIG_PACKAGE_owshell is not set ++# CONFIG_PACKAGE_resize2fs is not set ++# CONFIG_PACKAGE_sysfsutils is not set ++# CONFIG_PACKAGE_tune2fs is not set ++# CONFIG_PACKAGE_xfs-fsck is not set ++# CONFIG_PACKAGE_xfs-growfs is not set ++# CONFIG_PACKAGE_xfs-mkfs is not set ++ ++# ++# RTKLIB Suite ++# ++# CONFIG_PACKAGE_convbin is not set ++# CONFIG_PACKAGE_pos2kml is not set ++# CONFIG_PACKAGE_rnx2rtkp is not set ++# CONFIG_PACKAGE_rtkrcv is not set ++# CONFIG_PACKAGE_str2str is not set ++ ++# ++# SSL ++# ++# CONFIG_PACKAGE_certtool is not set ++# CONFIG_PACKAGE_gnutls-utils is not set ++ ++# ++# Sound ++# ++# CONFIG_PACKAGE_liblo-utils is not set ++ ++# ++# Telephony ++# ++# CONFIG_PACKAGE_dahdi-cfg is not set ++# CONFIG_PACKAGE_dahdi-monitor is not set ++ ++# ++# Terminal ++# ++# CONFIG_PACKAGE_agetty is not set ++# CONFIG_PACKAGE_minicom is not set ++# CONFIG_PACKAGE_picocom is not set ++# CONFIG_PACKAGE_script-utils is not set ++# CONFIG_PACKAGE_setterm is not set ++# CONFIG_PACKAGE_wall is not set ++ ++# ++# database ++# ++# CONFIG_PACKAGE_mysql-server is not set ++# CONFIG_PACKAGE_pgsql-cli is not set ++# CONFIG_PACKAGE_pgsql-server is not set ++# CONFIG_PACKAGE_sqlite3-cli is not set ++# CONFIG_PACKAGE_unixodbc-tools is not set ++ ++# ++# disc ++# ++# CONFIG_PACKAGE_blkid is not set ++# CONFIG_PACKAGE_cfdisk is not set ++# CONFIG_PACKAGE_fdisk is not set ++# CONFIG_PACKAGE_findfs is not set ++# CONFIG_PACKAGE_hd-idle is not set ++# CONFIG_PACKAGE_hdparm is not set ++# CONFIG_PACKAGE_lsblk is not set ++# CONFIG_PACKAGE_lvm2 is not set ++# CONFIG_PACKAGE_partx-utils is not set ++# CONFIG_PACKAGE_sfdisk is not set ++# CONFIG_PACKAGE_swap-utils is not set ++# CONFIG_PACKAGE_wipefs is not set ++ ++# ++# zoneinfo ++# ++# CONFIG_PACKAGE_zoneinfo-africa is not set ++# CONFIG_PACKAGE_zoneinfo-asia is not set ++# CONFIG_PACKAGE_zoneinfo-atlantic is not set ++# CONFIG_PACKAGE_zoneinfo-australia-nz is not set ++# CONFIG_PACKAGE_zoneinfo-core is not set ++# CONFIG_PACKAGE_zoneinfo-europe is not set ++# CONFIG_PACKAGE_zoneinfo-india is not set ++# CONFIG_PACKAGE_zoneinfo-northamerica is not set ++# CONFIG_PACKAGE_zoneinfo-pacific is not set ++# CONFIG_PACKAGE_zoneinfo-poles is not set ++# CONFIG_PACKAGE_zoneinfo-simple is not set ++# CONFIG_PACKAGE_zoneinfo-southamerica is not set ++# CONFIG_PACKAGE_alsa-utils is not set ++# CONFIG_PACKAGE_alsa-utils-seq is not set ++# CONFIG_PACKAGE_alsa-utils-tests is not set ++# CONFIG_PACKAGE_avrdude is not set ++# CONFIG_PACKAGE_bandwidthd is not set ++# CONFIG_PACKAGE_banhostlist is not set ++# CONFIG_PACKAGE_bash is not set ++# CONFIG_PACKAGE_bc is not set ++# CONFIG_PACKAGE_bluelog is not set ++# CONFIG_PACKAGE_bluez-daemon is not set ++# CONFIG_PACKAGE_bluez-examples is not set ++# CONFIG_PACKAGE_bluez-utils is not set ++# CONFIG_PACKAGE_cal is not set ++# CONFIG_PACKAGE_canutils is not set ++# CONFIG_PACKAGE_ccrypt is not set ++# CONFIG_PACKAGE_cmdpad is not set ++# CONFIG_PACKAGE_collectd is not set ++# CONFIG_PACKAGE_comgt is not set ++# CONFIG_PACKAGE_comgt-directip is not set ++# CONFIG_PACKAGE_comgt-ncm is not set ++# CONFIG_PACKAGE_coreutils is not set ++# CONFIG_PACKAGE_crelay is not set ++# CONFIG_PACKAGE_cryptsetup is not set ++# CONFIG_PACKAGE_cryptsetup-openssl is not set ++# CONFIG_PACKAGE_dbus is not set ++# CONFIG_PACKAGE_dfu-programmer is not set ++# CONFIG_PACKAGE_dmesg is not set ++# CONFIG_PACKAGE_dropbearconvert is not set ++# CONFIG_PACKAGE_dump1090 is not set ++# CONFIG_PACKAGE_extract is not set ++# CONFIG_PACKAGE_fconfig is not set ++# CONFIG_PACKAGE_file is not set ++# CONFIG_PACKAGE_flashrom is not set ++# CONFIG_PACKAGE_flashrom-pci is not set ++# CONFIG_PACKAGE_flashrom-spi is not set ++# CONFIG_PACKAGE_flashrom-usb is not set ++# CONFIG_PACKAGE_flock is not set ++# CONFIG_PACKAGE_freecwmp is not set ++# CONFIG_PACKAGE_freenetconfd is not set ++# CONFIG_PACKAGE_freenetconfd-plugin-examples is not set ++# CONFIG_PACKAGE_freesub is not set ++# CONFIG_PACKAGE_ftdi_eeprom is not set ++# CONFIG_PACKAGE_gammu is not set ++# CONFIG_PACKAGE_getopt is not set ++# CONFIG_PACKAGE_gnupg is not set ++CONFIG_PACKAGE_gpioctl-sysfs=y ++# CONFIG_PACKAGE_grep is not set ++# CONFIG_PACKAGE_hamlib is not set ++# CONFIG_PACKAGE_haserl is not set ++# CONFIG_PACKAGE_haveged is not set ++# CONFIG_PACKAGE_hub-ctrl is not set ++# CONFIG_PACKAGE_hwclock is not set ++# CONFIG_PACKAGE_i2c-tools is not set ++# CONFIG_PACKAGE_iconv is not set ++# CONFIG_PACKAGE_iwcap is not set ++CONFIG_PACKAGE_iwinfo=y ++# CONFIG_PACKAGE_jpeg-tools is not set ++CONFIG_PACKAGE_jshn=y ++# CONFIG_PACKAGE_kmod is not set ++# CONFIG_PACKAGE_lcd4linux-custom is not set ++# CONFIG_PACKAGE_less is not set ++# CONFIG_PACKAGE_less-wide is not set ++# CONFIG_PACKAGE_libhavege is not set ++# CONFIG_PACKAGE_libimobiledevice-utils is not set ++CONFIG_PACKAGE_libjson-script=y ++# CONFIG_PACKAGE_libplist-utils is not set ++# CONFIG_PACKAGE_libusbmuxd-utils is not set ++# CONFIG_PACKAGE_lm-sensors is not set ++# CONFIG_PACKAGE_lm-sensors-detect is not set ++# CONFIG_PACKAGE_logger is not set ++# CONFIG_PACKAGE_look is not set ++# CONFIG_PACKAGE_losetup is not set ++# CONFIG_PACKAGE_lsof is not set ++# CONFIG_PACKAGE_lxc is not set ++# CONFIG_PACKAGE_maccalc is not set ++# CONFIG_PACKAGE_macchanger is not set ++# CONFIG_PACKAGE_mbtools is not set ++# CONFIG_PACKAGE_mc is not set ++# CONFIG_PACKAGE_mcookie is not set ++# CONFIG_PACKAGE_mdadm is not set ++# CONFIG_PACKAGE_mmc-utils is not set ++# CONFIG_PACKAGE_mount-utils is not set ++# CONFIG_PACKAGE_mountd is not set ++# CONFIG_PACKAGE_mpack is not set ++# CONFIG_PACKAGE_namei is not set ++# CONFIG_PACKAGE_nfc-utils is not set ++# CONFIG_PACKAGE_ocf-crypto-headers is not set ++# CONFIG_PACKAGE_open-plc-utils is not set ++# CONFIG_PACKAGE_open2300 is not set ++# CONFIG_PACKAGE_openldap-utils is not set ++# CONFIG_PACKAGE_openobex is not set ++# CONFIG_PACKAGE_openobex-apps is not set ++# CONFIG_PACKAGE_openocd is not set ++# CONFIG_PACKAGE_opensc-utils is not set ++# CONFIG_PACKAGE_openssl-util is not set ++# CONFIG_PACKAGE_opus-tools is not set ++# CONFIG_PACKAGE_owipcalc is not set ++# CONFIG_PACKAGE_pciutils is not set ++# CONFIG_PACKAGE_pcscd is not set ++# CONFIG_PACKAGE_pps-tools is not set ++# CONFIG_PACKAGE_prlimit is not set ++# CONFIG_PACKAGE_procps-ng is not set ++# CONFIG_PACKAGE_pv is not set ++# CONFIG_PACKAGE_px5g is not set ++# CONFIG_PACKAGE_px5g-standalone is not set ++# CONFIG_PACKAGE_qrencode is not set ++# CONFIG_PACKAGE_rbcfg is not set ++# CONFIG_PACKAGE_rename is not set ++# CONFIG_PACKAGE_rng-tools is not set ++# CONFIG_PACKAGE_rrdcgi1 is not set ++# CONFIG_PACKAGE_rrdtool1 is not set ++# CONFIG_PACKAGE_rtl-ais is not set ++# CONFIG_PACKAGE_rtl-sdr is not set ++# CONFIG_PACKAGE_sane-backends is not set ++# CONFIG_PACKAGE_sane-daemon is not set ++# CONFIG_PACKAGE_sane-frontends is not set ++# CONFIG_PACKAGE_screen is not set ++# CONFIG_PACKAGE_serialconsole is not set ++# CONFIG_PACKAGE_shadow-utils is not set ++# CONFIG_PACKAGE_shtool is not set ++# CONFIG_PACKAGE_sispmctl is not set ++# CONFIG_PACKAGE_smartd is not set ++# CONFIG_PACKAGE_smartmontools is not set ++# CONFIG_PACKAGE_smstools3 is not set ++# CONFIG_PACKAGE_sockread is not set ++# CONFIG_PACKAGE_spi-tools is not set ++# CONFIG_PACKAGE_spidev-test is not set ++# CONFIG_PACKAGE_stm32flash is not set ++# CONFIG_PACKAGE_stoken is not set ++CONFIG_PACKAGE_strace=m ++# CONFIG_PACKAGE_sumo is not set ++# CONFIG_PACKAGE_sysstat is not set ++# CONFIG_PACKAGE_tar is not set ++# CONFIG_PACKAGE_taskwarrior is not set ++# CONFIG_PACKAGE_tcsh is not set ++# CONFIG_PACKAGE_tiff-utils is not set ++# CONFIG_PACKAGE_tmux is not set ++# CONFIG_PACKAGE_tracertools is not set ++# CONFIG_PACKAGE_triggerhappy is not set ++# CONFIG_PACKAGE_uboot-envtools is not set ++# CONFIG_PACKAGE_ugps is not set ++# CONFIG_PACKAGE_usb-modeswitch is not set ++# CONFIG_PACKAGE_usbmuxd is not set ++# CONFIG_PACKAGE_usbreset is not set ++# CONFIG_PACKAGE_usbutils is not set ++# CONFIG_PACKAGE_uuidd is not set ++# CONFIG_PACKAGE_uuidgen is not set ++# CONFIG_PACKAGE_uvcdynctrl is not set ++# CONFIG_PACKAGE_v4l-utils is not set ++# CONFIG_PACKAGE_view1090 is not set ++# CONFIG_PACKAGE_watchcat is not set ++# CONFIG_PACKAGE_whereis is not set ++# CONFIG_PACKAGE_wifitoggle is not set ++# CONFIG_PACKAGE_xsltproc is not set ++# CONFIG_PACKAGE_xxd is not set ++# CONFIG_PACKAGE_yanglint is not set ++# CONFIG_PACKAGE_yunbridge is not set ++# CONFIG_PACKAGE_zsh is not set +diff --git a/.gitignore b/.gitignore +index 7c34adf..815ad93 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -3,7 +3,6 @@ + .*.swp + /env + /dl +-/.config + /.config.old + /bin + /build_dir diff --git a/master/endstop b/master/endstop new file mode 100644 index 0000000..e69de29 diff --git a/master/feeds b/master/feeds new file mode 100644 index 0000000..e7e592b --- /dev/null +++ b/master/feeds @@ -0,0 +1,826059 @@ +diff --git a/.gitignore b/.gitignore +index 7b2a802..bba0538 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -10,9 +10,10 @@ + /staging_dir + /tmp + /logs +-/feeds +-/feeds.conf + /files ++/feeds/*.tmp ++/feeds/*.index ++/feeds/*.targetindex + /package/feeds + /package/openwrt-packages + key-build* +diff --git a/feeds/luci/.buildpath b/feeds/luci/.buildpath +new file mode 100644 +index 0000000..81fa646 +--- /dev/null ++++ b/feeds/luci/.buildpath +@@ -0,0 +1,5 @@ ++ ++ ++ ++ ++ +diff --git a/feeds/luci/.cproject b/feeds/luci/.cproject +new file mode 100644 +index 0000000..e1a4774 +--- /dev/null ++++ b/feeds/luci/.cproject +@@ -0,0 +1,221 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/feeds/luci/.gitignore b/feeds/luci/.gitignore +new file mode 100644 +index 0000000..07494e9 +--- /dev/null ++++ b/feeds/luci/.gitignore +@@ -0,0 +1,8 @@ ++dist/ ++/host ++*.o ++*.so ++*.swp ++*.po~ ++/docs ++modules/luci-base/src/po2lmo +diff --git a/feeds/luci/.project b/feeds/luci/.project +new file mode 100644 +index 0000000..11b398b +--- /dev/null ++++ b/feeds/luci/.project +@@ -0,0 +1,78 @@ ++ ++ ++ luci ++ ++ ++ ++ ++ ++ org.eclipse.cdt.managedbuilder.core.genmakebuilder ++ clean,full,incremental, ++ ++ ++ ?name? ++ ++ ++ ++ org.eclipse.cdt.make.core.append_environment ++ true ++ ++ ++ org.eclipse.cdt.make.core.autoBuildTarget ++ all ++ ++ ++ org.eclipse.cdt.make.core.buildArguments ++ ++ ++ ++ org.eclipse.cdt.make.core.buildCommand ++ make ++ ++ ++ org.eclipse.cdt.make.core.cleanBuildTarget ++ clean ++ ++ ++ org.eclipse.cdt.make.core.contents ++ org.eclipse.cdt.make.core.activeConfigSettings ++ ++ ++ org.eclipse.cdt.make.core.enableAutoBuild ++ false ++ ++ ++ org.eclipse.cdt.make.core.enableCleanBuild ++ true ++ ++ ++ org.eclipse.cdt.make.core.enableFullBuild ++ true ++ ++ ++ org.eclipse.cdt.make.core.fullBuildTarget ++ all ++ ++ ++ org.eclipse.cdt.make.core.stopOnError ++ true ++ ++ ++ org.eclipse.cdt.make.core.useDefaultBuildCmd ++ true ++ ++ ++ ++ ++ org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder ++ ++ ++ ++ ++ ++ org.eclipse.cdt.managedbuilder.core.ScannerConfigNature ++ org.eclipse.cdt.managedbuilder.core.managedBuildNature ++ org.eclipse.cdt.core.cnature ++ org.eclipse.dltk.lua.core.nature ++ ++ +diff --git a/feeds/luci/CONTRIBUTING.md b/feeds/luci/CONTRIBUTING.md +new file mode 100644 +index 0000000..a392ade +--- /dev/null ++++ b/feeds/luci/CONTRIBUTING.md +@@ -0,0 +1,62 @@ ++# Contributing Guidelines ++ ++## Patches and Pull requests: ++ ++If you want to contribute a change to LuCI, please either send a patch using git send-email ++or open a "pull request" against the openwrt/luci repository. ++ ++Regardless of whether you send a patch or open a pull request, please try to follow these rules: ++ ++* Have a useful subject prefixed with the component name ++ (E.g.: "luci-mod-admin-full: fix wifi channel selection on multiple STA networks") ++* Shortly explain the changes made and - if applicable - the reasoning behind them ++* Include Signed-off-by in the comment ++ (See ) ++ ++In case you like to send patches by mail, please use the [LuCI mailinglist](https://lists.subsignal.org/mailman/listinfo/luci) ++or the [OpenWrt Development List](https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel). ++ ++If you send via the OpenWrt list, include a "[luci]" tag in your subject line. ++For general information on patch submission, follow the [OpenWrt patch submission guideline](https://dev.openwrt.org/wiki/SubmittingPatches). ++ ++## Advice on pull requests: ++ ++Pull requests are the easiest way to contribute changes to git repos at Github. They are the preferred contribution method, as they offer a nice way for commenting and amending the proposed changes. ++ ++* You need a local "fork" of the Github repo. ++* Use a "feature branch" for your changes. That separates the changes in the pull request from your other changes and makes it easy to edit/amend commits in the pull request. Workflow using "feature_x" as the example: ++ - Update your local git fork to the tip (of the master, usually) ++ - Create the feature branch with `git checkout -b feature_x` ++ - Edit changes and commit them locally ++ - Push them to your Github fork by `git push -u origin feature_x`. That creates the "feature_x" branch at your Github fork and sets it as the remote of this branch ++ - When you now visit Github, you should see a proposal to create a pull request ++ ++* If you later need to add new commits to the pull request, you can simply commit the changes to the local branch and then use `git push` to automatically update the pull request. ++ ++* If you need to change something in the existing pull request (e.g. to add a missing signed-off-by line to the commit message), you can use `git push -f` to overwrite the original commits. That is easy and safe when using a feature branch. Example workflow: ++ - Checkout the feature branch by `git checkout feature_x` ++ - Edit changes and commit them locally. If you are just updating the commit message in the last commit, you can use `git commit --amend` to do that ++ - If you added several new commits or made other changes that require cleaning up, you can use `git rebase -i HEAD~X` (X = number of commits to edit) to possibly squash some commits ++ - Push the changed commits to Github with `git push -f` to overwrite the original commits in the "feature_x" branch with the new ones. The pull request gets automatically updated ++ ++## If you have commit access: ++ ++* Do NOT use git push --force. ++* Use Pull Requests if you are unsure and to suggest changes to other developers. ++ ++## Gaining commit access: ++ ++* Commit access will be granted to responsible contributors who have made ++ useful pull requests and / or feedback or patches to this repository or ++ OpenWrt in general. Please include your request for commit access in your ++ next pull request or ticket. ++ ++## Release Branches: ++ ++* Branches named "for-XX.YY" or "luci-X.Y" (e.g. "for-15.05") are release branches. ++* These branches are built with the respective OpenWrt release and are created ++ during the release stabilisation phase. ++* Please ONLY cherry-pick or commit security and bug-fixes to these branches. ++* Do NOT add new packages and do NOT do major upgrades of packages here. ++* If you are unsure if your change is suitable, please use a pull request. ++ +diff --git a/feeds/luci/LICENSE b/feeds/luci/LICENSE +new file mode 100644 +index 0000000..f49a4e1 +--- /dev/null ++++ b/feeds/luci/LICENSE +@@ -0,0 +1,201 @@ ++ Apache License ++ Version 2.0, January 2004 ++ http://www.apache.org/licenses/ ++ ++ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION ++ ++ 1. Definitions. ++ ++ "License" shall mean the terms and conditions for use, reproduction, ++ and distribution as defined by Sections 1 through 9 of this document. ++ ++ "Licensor" shall mean the copyright owner or entity authorized by ++ the copyright owner that is granting the License. ++ ++ "Legal Entity" shall mean the union of the acting entity and all ++ other entities that control, are controlled by, or are under common ++ control with that entity. For the purposes of this definition, ++ "control" means (i) the power, direct or indirect, to cause the ++ direction or management of such entity, whether by contract or ++ otherwise, or (ii) ownership of fifty percent (50%) or more of the ++ outstanding shares, or (iii) beneficial ownership of such entity. ++ ++ "You" (or "Your") shall mean an individual or Legal Entity ++ exercising permissions granted by this License. ++ ++ "Source" form shall mean the preferred form for making modifications, ++ including but not limited to software source code, documentation ++ source, and configuration files. ++ ++ "Object" form shall mean any form resulting from mechanical ++ transformation or translation of a Source form, including but ++ not limited to compiled object code, generated documentation, ++ and conversions to other media types. ++ ++ "Work" shall mean the work of authorship, whether in Source or ++ Object form, made available under the License, as indicated by a ++ copyright notice that is included in or attached to the work ++ (an example is provided in the Appendix below). ++ ++ "Derivative Works" shall mean any work, whether in Source or Object ++ form, that is based on (or derived from) the Work and for which the ++ editorial revisions, annotations, elaborations, or other modifications ++ represent, as a whole, an original work of authorship. For the purposes ++ of this License, Derivative Works shall not include works that remain ++ separable from, or merely link (or bind by name) to the interfaces of, ++ the Work and Derivative Works thereof. ++ ++ "Contribution" shall mean any work of authorship, including ++ the original version of the Work and any modifications or additions ++ to that Work or Derivative Works thereof, that is intentionally ++ submitted to Licensor for inclusion in the Work by the copyright owner ++ or by an individual or Legal Entity authorized to submit on behalf of ++ the copyright owner. For the purposes of this definition, "submitted" ++ means any form of electronic, verbal, or written communication sent ++ to the Licensor or its representatives, including but not limited to ++ communication on electronic mailing lists, source code control systems, ++ and issue tracking systems that are managed by, or on behalf of, the ++ Licensor for the purpose of discussing and improving the Work, but ++ excluding communication that is conspicuously marked or otherwise ++ designated in writing by the copyright owner as "Not a Contribution." ++ ++ "Contributor" shall mean Licensor and any individual or Legal Entity ++ on behalf of whom a Contribution has been received by Licensor and ++ subsequently incorporated within the Work. ++ ++ 2. Grant of Copyright License. Subject to the terms and conditions of ++ this License, each Contributor hereby grants to You a perpetual, ++ worldwide, non-exclusive, no-charge, royalty-free, irrevocable ++ copyright license to reproduce, prepare Derivative Works of, ++ publicly display, publicly perform, sublicense, and distribute the ++ Work and such Derivative Works in Source or Object form. ++ ++ 3. Grant of Patent License. Subject to the terms and conditions of ++ this License, each Contributor hereby grants to You a perpetual, ++ worldwide, non-exclusive, no-charge, royalty-free, irrevocable ++ (except as stated in this section) patent license to make, have made, ++ use, offer to sell, sell, import, and otherwise transfer the Work, ++ where such license applies only to those patent claims licensable ++ by such Contributor that are necessarily infringed by their ++ Contribution(s) alone or by combination of their Contribution(s) ++ with the Work to which such Contribution(s) was submitted. If You ++ institute patent litigation against any entity (including a ++ cross-claim or counterclaim in a lawsuit) alleging that the Work ++ or a Contribution incorporated within the Work constitutes direct ++ or contributory patent infringement, then any patent licenses ++ granted to You under this License for that Work shall terminate ++ as of the date such litigation is filed. ++ ++ 4. Redistribution. You may reproduce and distribute copies of the ++ Work or Derivative Works thereof in any medium, with or without ++ modifications, and in Source or Object form, provided that You ++ meet the following conditions: ++ ++ (a) You must give any other recipients of the Work or ++ Derivative Works a copy of this License; and ++ ++ (b) You must cause any modified files to carry prominent notices ++ stating that You changed the files; and ++ ++ (c) You must retain, in the Source form of any Derivative Works ++ that You distribute, all copyright, patent, trademark, and ++ attribution notices from the Source form of the Work, ++ excluding those notices that do not pertain to any part of ++ the Derivative Works; and ++ ++ (d) If the Work includes a "NOTICE" text file as part of its ++ distribution, then any Derivative Works that You distribute must ++ include a readable copy of the attribution notices contained ++ within such NOTICE file, excluding those notices that do not ++ pertain to any part of the Derivative Works, in at least one ++ of the following places: within a NOTICE text file distributed ++ as part of the Derivative Works; within the Source form or ++ documentation, if provided along with the Derivative Works; or, ++ within a display generated by the Derivative Works, if and ++ wherever such third-party notices normally appear. The contents ++ of the NOTICE file are for informational purposes only and ++ do not modify the License. You may add Your own attribution ++ notices within Derivative Works that You distribute, alongside ++ or as an addendum to the NOTICE text from the Work, provided ++ that such additional attribution notices cannot be construed ++ as modifying the License. ++ ++ You may add Your own copyright statement to Your modifications and ++ may provide additional or different license terms and conditions ++ for use, reproduction, or distribution of Your modifications, or ++ for any such Derivative Works as a whole, provided Your use, ++ reproduction, and distribution of the Work otherwise complies with ++ the conditions stated in this License. ++ ++ 5. Submission of Contributions. Unless You explicitly state otherwise, ++ any Contribution intentionally submitted for inclusion in the Work ++ by You to the Licensor shall be under the terms and conditions of ++ this License, without any additional terms or conditions. ++ Notwithstanding the above, nothing herein shall supersede or modify ++ the terms of any separate license agreement you may have executed ++ with Licensor regarding such Contributions. ++ ++ 6. Trademarks. This License does not grant permission to use the trade ++ names, trademarks, service marks, or product names of the Licensor, ++ except as required for reasonable and customary use in describing the ++ origin of the Work and reproducing the content of the NOTICE file. ++ ++ 7. Disclaimer of Warranty. Unless required by applicable law or ++ agreed to in writing, Licensor provides the Work (and each ++ Contributor provides its Contributions) on an "AS IS" BASIS, ++ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or ++ implied, including, without limitation, any warranties or conditions ++ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A ++ PARTICULAR PURPOSE. You are solely responsible for determining the ++ appropriateness of using or redistributing the Work and assume any ++ risks associated with Your exercise of permissions under this License. ++ ++ 8. Limitation of Liability. In no event and under no legal theory, ++ whether in tort (including negligence), contract, or otherwise, ++ unless required by applicable law (such as deliberate and grossly ++ negligent acts) or agreed to in writing, shall any Contributor be ++ liable to You for damages, including any direct, indirect, special, ++ incidental, or consequential damages of any character arising as a ++ result of this License or out of the use or inability to use the ++ Work (including but not limited to damages for loss of goodwill, ++ work stoppage, computer failure or malfunction, or any and all ++ other commercial damages or losses), even if such Contributor ++ has been advised of the possibility of such damages. ++ ++ 9. Accepting Warranty or Additional Liability. While redistributing ++ the Work or Derivative Works thereof, You may choose to offer, ++ and charge a fee for, acceptance of support, warranty, indemnity, ++ or other liability obligations and/or rights consistent with this ++ License. However, in accepting such obligations, You may act only ++ on Your own behalf and on Your sole responsibility, not on behalf ++ of any other Contributor, and only if You agree to indemnify, ++ defend, and hold each Contributor harmless for any liability ++ incurred by, or claims asserted against, such Contributor by reason ++ of your accepting any such warranty or additional liability. ++ ++ END OF TERMS AND CONDITIONS ++ ++ APPENDIX: How to apply the Apache License to your work. ++ ++ To apply the Apache License to your work, attach the following ++ boilerplate notice, with the fields enclosed by brackets "[]" ++ replaced with your own identifying information. (Don't include ++ the brackets!) The text should be enclosed in the appropriate ++ comment syntax for the file format. We also recommend that a ++ file or class name and description of purpose be included on the ++ same "printed page" as the copyright notice for easier ++ identification within third-party archives. ++ ++ Copyright [yyyy] [name of copyright owner] ++ ++ 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. +\ No newline at end of file +diff --git a/feeds/luci/NOTICE b/feeds/luci/NOTICE +new file mode 100644 +index 0000000..47e1969 +--- /dev/null ++++ b/feeds/luci/NOTICE +@@ -0,0 +1,9 @@ ++LuCI - Lua Configuration Interface ++Copyright 2008 Steven Barth ++Copyright 2008 Jo-Philipp Wich ++Licensed under the Apache License, Version 2.0. ++ ++Contains code from: ++coxpcall - Copyright 2005 - Kepler Project (www.keplerproject.org) ++ltn12/luasocket - Copyright 2004-2007 Diego Nehab ++axTLS - Copyright 2008 Cameron Rich +diff --git a/feeds/luci/README.md b/feeds/luci/README.md +new file mode 100644 +index 0000000..abccff6 +--- /dev/null ++++ b/feeds/luci/README.md +@@ -0,0 +1,30 @@ ++# OpenWrt luci feed ++ ++## Description ++ ++This is the OpenWrt "luci"-feed containing LuCI - OpenWrt Configuration Interface. ++ ++## Usage ++ ++This feed is enabled by default. Your feeds.conf.default (or feeds.conf) should contain a line like: ++``` ++src-git luci https://github.com/openwrt/luci.git ++``` ++ ++To install all its package definitions, run: ++``` ++./scripts/feeds update luci ++./scripts/feeds install -a -p luci ++``` ++ ++## API Reference ++ ++You can browse the generated API documentation [directly on Github](http://htmlpreview.github.io/?http://raw.githubusercontent.com/openwrt/luci/master/documentation/api/index.html). ++ ++## License ++ ++See [LICENSE](LICENSE) file. ++ ++## Package Guidelines ++ ++See [CONTRIBUTING.md](CONTRIBUTING.md) file. +diff --git a/feeds/luci/THANKYOU b/feeds/luci/THANKYOU +new file mode 100644 +index 0000000..f0519bd +--- /dev/null ++++ b/feeds/luci/THANKYOU +@@ -0,0 +1,26 @@ ++I'd like to thank the following people for contributing to this software: ++ ++* Anton Popov ++ - for rewriting the openwrt.org theme ++ ++* Florian Fainelli (OpenWrt) ++ - for the french translation ++ ++* Alina Friedrichsen ++ - for the reworked translation system, help on standards compliance and accessibility ++ ++* Yanira ++ - several applications and bugreports ++ ++ ++Also a big thank you goes to: ++ ++* Mono (Freifunk Halle) ++ - for donating a Linksys WRT54GL for development purposes ++ ++* tetzlav (Freifunk Leipzig) ++ - for donating several boards for testing and his feedback ++ ++* Mickey (Freifunk Hannover) ++ - for his feedback and fixes for the OpenWrt builds ++ +diff --git a/feeds/luci/applications/luci-app-ahcp/Makefile b/feeds/luci/applications/luci-app-ahcp/Makefile +new file mode 100644 +index 0000000..bb4d415 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/Makefile +@@ -0,0 +1,14 @@ ++# ++# Copyright (C) 2008-2014 The LuCI Team ++# ++# This is free software, licensed under the Apache License, Version 2.0 . ++# ++ ++include $(TOPDIR)/rules.mk ++ ++LUCI_TITLE:=LuCI Support for AHCPd ++LUCI_DEPENDS:=+ahcpd ++ ++include ../../luci.mk ++ ++# call BuildPackage - OpenWrt buildroot signature +diff --git a/feeds/luci/applications/luci-app-ahcp/luasrc/controller/ahcp.lua b/feeds/luci/applications/luci-app-ahcp/luasrc/controller/ahcp.lua +new file mode 100644 +index 0000000..e97da55 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/luasrc/controller/ahcp.lua +@@ -0,0 +1,49 @@ ++-- Copyright 2011 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++module("luci.controller.ahcp", package.seeall) ++ ++function index() ++ if not nixio.fs.access("/etc/config/ahcpd") then ++ return ++ end ++ ++ entry({"admin", "network", "ahcpd"}, cbi("ahcp"), _("AHCP Server"), 90) ++ entry({"admin", "network", "ahcpd", "status"}, call("ahcp_status")) ++end ++ ++function ahcp_status() ++ local nfs = require "nixio.fs" ++ local uci = require "luci.model.uci".cursor() ++ local lsd = uci:get_first("ahcpd", "ahcpd", "lease_dir") or "/var/lib/leases" ++ local idf = uci:get_first("ahcpd", "ahcpd", "id_file") or "/var/lib/ahcpd-unique-id" ++ ++ local rv = { ++ uid = "00:00:00:00:00:00:00:00", ++ leases = { } ++ } ++ ++ idf = nfs.readfile(idf) ++ if idf and #idf == 8 then ++ rv.uid = "%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X" %{ idf:byte(1, 8) } ++ end ++ ++ local itr = nfs.dir(lsd) ++ if itr then ++ local addr ++ for addr in itr do ++ if addr:match("^%d+%.%d+%.%d+%.%d+$") then ++ local s = nfs.stat(lsd .. "/" .. addr) ++ rv.leases[#rv.leases+1] = { ++ addr = addr, ++ age = s and (os.time() - s.mtime) or 0 ++ } ++ end ++ end ++ end ++ ++ table.sort(rv.leases, function(a, b) return a.age < b.age end) ++ ++ luci.http.prepare_content("application/json") ++ luci.http.write_json(rv) ++end +diff --git a/feeds/luci/applications/luci-app-ahcp/luasrc/model/cbi/ahcp.lua b/feeds/luci/applications/luci-app-ahcp/luasrc/model/cbi/ahcp.lua +new file mode 100644 +index 0000000..30897eb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/luasrc/model/cbi/ahcp.lua +@@ -0,0 +1,110 @@ ++-- Copyright 2011 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++m = Map("ahcpd", translate("AHCP Server"), translate("AHCP is an autoconfiguration protocol " .. ++ "for IPv6 and dual-stack IPv6/IPv4 networks designed to be used in place of router " .. ++ "discovery or DHCP on networks where it is difficult or impossible to configure a " .. ++ "server within every link-layer broadcast domain, for example mobile ad-hoc networks.")) ++ ++ ++m:section(SimpleSection).template = "ahcp_status" ++ ++s = m:section(TypedSection, "ahcpd") ++s:tab("general", translate("General Setup")) ++s:tab("advanced", translate("Advanced Settings")) ++s.addremove = false ++s.anonymous = true ++ ++ ++mode = s:taboption("general", ListValue, "mode", translate("Operation mode")) ++mode:value("server", translate("Server")) ++mode:value("forwarder", translate("Forwarder")) ++ ++net = s:taboption("general", Value, "interface", translate("Served interfaces")) ++net.template = "cbi/network_netlist" ++net.widget = "checkbox" ++net.nocreate = true ++ ++function net.cfgvalue(self, section) ++ return m.uci:get("ahcpd", section, "interface") ++end ++ ++pfx = s:taboption("general", DynamicList, "prefix", translate("Announced prefixes"), ++ translate("Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation")) ++pfx.optional = true ++pfx.datatype = "ipaddr" ++pfx:depends("mode", "server") ++ ++nss = s:taboption("general", DynamicList, "name_server", translate("Announced DNS servers"), ++ translate("Specifies the announced IPv4 and IPv6 name servers")) ++nss.optional = true ++nss.datatype = "ipaddr" ++nss:depends("mode", "server") ++ ++ntp = s:taboption("general", DynamicList, "ntp_server", translate("Announced NTP servers"), ++ translate("Specifies the announced IPv4 and IPv6 NTP servers")) ++ntp.optional = true ++ntp.datatype = "ipaddr" ++ntp:depends("mode", "server") ++ ++mca = s:taboption("general", Value, "multicast_address", translate("Multicast address")) ++mca.optional = true ++mca.placeholder = "ff02::cca6:c0f9:e182:5359" ++mca.datatype = "ip6addr" ++ ++port = s:taboption("general", Value, "port", translate("Port")) ++port.optional = true ++port.placeholder = 5359 ++port.datatype = "port" ++ ++fam = s:taboption("general", ListValue, "_family", translate("Protocol family")) ++fam:value("", translate("IPv4 and IPv6")) ++fam:value("ipv4", translate("IPv4 only")) ++fam:value("ipv6", translate("IPv6 only")) ++ ++function fam.cfgvalue(self, section) ++ local v4 = m.uci:get_bool("ahcpd", section, "ipv4_only") ++ local v6 = m.uci:get_bool("ahcpd", section, "ipv6_only") ++ if v4 then ++ return "ipv4" ++ elseif v6 then ++ return "ipv6" ++ end ++ return "" ++end ++ ++function fam.write(self, section, value) ++ if value == "ipv4" then ++ m.uci:set("ahcpd", section, "ipv4_only", "true") ++ m.uci:delete("ahcpd", section, "ipv6_only") ++ elseif value == "ipv6" then ++ m.uci:set("ahcpd", section, "ipv6_only", "true") ++ m.uci:delete("ahcpd", section, "ipv4_only") ++ end ++end ++ ++function fam.remove(self, section) ++ m.uci:delete("ahcpd", section, "ipv4_only") ++ m.uci:delete("ahcpd", section, "ipv6_only") ++end ++ ++ltime = s:taboption("general", Value, "lease_time", translate("Lease validity time")) ++ltime.optional = true ++ltime.placeholder = 3666 ++ltime.datatype = "uinteger" ++ ++ ++ld = s:taboption("advanced", Value, "lease_dir", translate("Lease directory")) ++ld.datatype = "directory" ++ld.placeholder = "/var/lib/leases" ++ ++id = s:taboption("advanced", Value, "id_file", translate("Unique ID file")) ++--id.datatype = "file" ++id.placeholder = "/var/lib/ahcpd-unique-id" ++ ++log = s:taboption("advanced", Value, "log_file", translate("Log file")) ++--log.datatype = "file" ++log.placeholder = "/var/log/ahcpd.log" ++ ++ ++return m +diff --git a/feeds/luci/applications/luci-app-ahcp/luasrc/view/admin_status/index/ahcp.htm b/feeds/luci/applications/luci-app-ahcp/luasrc/view/admin_status/index/ahcp.htm +new file mode 100644 +index 0000000..ef4cfca +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/luasrc/view/admin_status/index/ahcp.htm +@@ -0,0 +1 @@ ++<%+ahcp_status%> +diff --git a/feeds/luci/applications/luci-app-ahcp/luasrc/view/ahcp_status.htm b/feeds/luci/applications/luci-app-ahcp/luasrc/view/ahcp_status.htm +new file mode 100644 +index 0000000..9468289 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/luasrc/view/ahcp_status.htm +@@ -0,0 +1,53 @@ ++ ++ ++
++ <%:Active AHCP Leases%> ++

++ ++ ++ ++ ++ ++ ++ ++ ++
<%:Address%><%:Age%>

<%:Collecting data...%>
++
+diff --git a/feeds/luci/applications/luci-app-ahcp/po/ca/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/ca/ahcp.po +new file mode 100644 +index 0000000..89108fd +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/ca/ahcp.po +@@ -0,0 +1,117 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-06-02 21:34+0200\n" ++"Last-Translator: Alex \n" ++"Language-Team: none\n" ++"Language: ca\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Servidor AHCP" ++ ++# Minor misspelling corrections ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP és un protocol de configuració automàtica per IPv6 i xarxes de pila " ++"dual IPv6/IPv4 dissenyat per fer servir en lloc del descobriment de rutes o " ++"DHCP en xarxes on es difícil o impossible configurar un servidor dins de " ++"tots els dominis de difusió a la capa d'enllaç, per exemple xarxes mòbils ad-" ++"hoc." ++ ++# apòstrof+acrònims http://ca.wikipedia.org/wiki/Ap%C3%B2strof#Observacions ++msgid "Active AHCP Leases" ++msgstr "Leases actius d'AHCP" ++ ++msgid "Address" ++msgstr "Adreça" ++ ++msgid "Advanced Settings" ++msgstr "Configuració avançada" ++ ++msgid "Age" ++msgstr "Edat" ++ ++msgid "Announced DNS servers" ++msgstr "Servidors DNS anunciats" ++ ++msgid "Announced NTP servers" ++msgstr "Servidors NTP anunciats" ++ ++msgid "Announced prefixes" ++msgstr "Prefixos anunciats" ++ ++msgid "Collecting data..." ++msgstr "Recopilant informació..." ++ ++msgid "Forwarder" ++msgstr "Retransmissor" ++ ++msgid "General Setup" ++msgstr "Configuració general" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 i IPv6" ++ ++msgid "IPv4 only" ++msgstr "Només IPv4" ++ ++msgid "IPv6 only" ++msgstr "Només IPv6" ++ ++msgid "Lease directory" ++msgstr "Directori d'arrendament" ++ ++msgid "Lease validity time" ++msgstr "Duració d'arrendament" ++ ++msgid "Log file" ++msgstr "Fitxer de registre" ++ ++msgid "Multicast address" ++msgstr "Adreça de difusió selectiva" ++ ++msgid "Operation mode" ++msgstr "Mode d'operació" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Família de protocol" ++ ++msgid "Served interfaces" ++msgstr "Interfícies servides" ++ ++msgid "Server" ++msgstr "Servidor" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Especifica els servidors NTP IPv4 i IPv6 anunciats" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Especifica els servidors de noms IPv4 i IPv6 anunciats" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Especifica els prefixos de xarxa IPv4 i IPv6 anunciats en notació CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "El servidor AHCP no està funcionant." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "El servei AHCP està funcionant amb el ID %s." ++ ++msgid "There are no active leases." ++msgstr "No hi ha arrendaments actius." ++ ++msgid "Unique ID file" ++msgstr "Fitxer ID únic" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/cs/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/cs/ahcp.po +new file mode 100644 +index 0000000..0a9e0af +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/cs/ahcp.po +@@ -0,0 +1,114 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-04-23 23:01+0200\n" ++"Last-Translator: koli \n" ++"Language-Team: none\n" ++"Language: cs\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP Server" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP je autokonfigurační protokol pro IPv6 a dual-stack IPv6/IPv4 sítě, " ++"vytvořený pro použití vedle funkcí router discovery (Vyhledávání směrovačů " ++"pomocí ICMP zpráv) a DHCP na sítích kde je obtížné či nemožné nakonfigurovat " ++"server v každé vrstvě broadcast domény, například mobilní ad-hoc sítě." ++ ++msgid "Active AHCP Leases" ++msgstr "Aktivní AHCP zapůjčení" ++ ++msgid "Address" ++msgstr "Adresa" ++ ++msgid "Advanced Settings" ++msgstr "Pokročilé nastavení" ++ ++msgid "Age" ++msgstr "Stáří" ++ ++msgid "Announced DNS servers" ++msgstr "Oznámené DNS servery" ++ ++msgid "Announced NTP servers" ++msgstr "Oznámené NTP servery" ++ ++msgid "Announced prefixes" ++msgstr "Oznámené předčíslí" ++ ++msgid "Collecting data..." ++msgstr "Probíhá shromažďování dat..." ++ ++msgid "Forwarder" ++msgstr "Přesměrování" ++ ++msgid "General Setup" ++msgstr "Obecné nastavení" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 a IPv6" ++ ++msgid "IPv4 only" ++msgstr "pouze IPv4" ++ ++msgid "IPv6 only" ++msgstr "Pouze IPv6" ++ ++msgid "Lease directory" ++msgstr "Zapůjčené adresáře" ++ ++msgid "Lease validity time" ++msgstr "Doba platnosti zapujčení" ++ ++msgid "Log file" ++msgstr "Soubor protokolu" ++ ++msgid "Multicast address" ++msgstr "Vícesměrové adresy" ++ ++msgid "Operation mode" ++msgstr "Pracovní režim" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Rodina protokolů" ++ ++msgid "Served interfaces" ++msgstr "Obsluhované rozhraní" ++ ++msgid "Server" ++msgstr "Servr" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Specifikuje ohlášené IPv4 a IPv6 NTP servery" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Specifikuje ohlášené IPv4 a IPv6 názvové servery" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Specifikuje ohlášené IPv4 a IPv6 sítě předpony v CIDR notaci" ++ ++msgid "The AHCP Service is not running." ++msgstr "Služba AHCP neběží" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Služba AHCP je spuštěna s ID %s." ++ ++msgid "There are no active leases." ++msgstr "Neexistují žádná aktivní pronajmutí." ++ ++msgid "Unique ID file" ++msgstr "Jedinečný ID soubor" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/de/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/de/ahcp.po +new file mode 100644 +index 0000000..6df34d8 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/de/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-01-30 18:21+0200\n" ++"Last-Translator: DAC324 \n" ++"Language-Team: none\n" ++"Language: de\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP Server" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP ist ein Autokonfigurationsprotokoll für IPv6- und IPv4/IPv6 Dualstack-" ++"Netzwerke. Es ist darauf ausgelegt anstelle von Router Advertisements und " ++"DHCP-Servern in Ad-Hoc Netzwerken eingesetzt zu werden." ++ ++msgid "Active AHCP Leases" ++msgstr "Aktive AHCP-Leases" ++ ++msgid "Address" ++msgstr "Adresse" ++ ++msgid "Advanced Settings" ++msgstr "Erweiterte Einstellungen" ++ ++msgid "Age" ++msgstr "Alter" ++ ++msgid "Announced DNS servers" ++msgstr "Angekündigte DNS-Server" ++ ++msgid "Announced NTP servers" ++msgstr "Angekündigte NTP-Server" ++ ++msgid "Announced prefixes" ++msgstr "Angekündigte Prefixe" ++ ++msgid "Collecting data..." ++msgstr "Sammle Daten..." ++ ++msgid "Forwarder" ++msgstr "Forwarder" ++ ++msgid "General Setup" ++msgstr "Allgemeine Einstellungen" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 und IPv6" ++ ++msgid "IPv4 only" ++msgstr "nur IPv4" ++ ++msgid "IPv6 only" ++msgstr "nur IPv6" ++ ++msgid "Lease directory" ++msgstr "Lease-Verzeichnis" ++ ++msgid "Lease validity time" ++msgstr "Lease-Gültigkeitsdauer" ++ ++msgid "Log file" ++msgstr "Protokolldatei" ++ ++msgid "Multicast address" ++msgstr "Mutlicast-Adresse" ++ ++msgid "Operation mode" ++msgstr "Betriebsmodus" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Protokollfamilie" ++ ++msgid "Served interfaces" ++msgstr "Verwendete Schnittstellen" ++ ++msgid "Server" ++msgstr "Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Konfiguriert die bekannt gegebenen IPv4- und IPv6-NTP-Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Konfiguriert die bekannt gegebenen IPv4- und IPv6-DNS-Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"Konfiguriert die bekannt gegebenen IPv4- und IPv6-Netzwerkprefixe. Angabe in " ++"CIDR-Notation." ++ ++msgid "The AHCP Service is not running." ++msgstr "Der AHCP-Dienst läuft nicht." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Der AHCP-Dienst läuft mit ID %s." ++ ++msgid "There are no active leases." ++msgstr "Es gibt keine aktiven Leases." ++ ++msgid "Unique ID file" ++msgstr "UID-Datei" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/el/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/el/ahcp.po +new file mode 100644 +index 0000000..0d7d6bd +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/el/ahcp.po +@@ -0,0 +1,114 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-03-18 16:25+0200\n" ++"Last-Translator: Vasilis \n" ++"Language-Team: none\n" ++"Language: el\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "AHCP Server" ++msgstr "Εξυπηρετητής AHCP" ++ ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++ ++msgid "Active AHCP Leases" ++msgstr "Ενεργά AHCP Leases" ++ ++msgid "Address" ++msgstr "Διεύθυνση" ++ ++msgid "Advanced Settings" ++msgstr "" ++ ++msgid "Age" ++msgstr "" ++ ++msgid "Announced DNS servers" ++msgstr "" ++ ++msgid "Announced NTP servers" ++msgstr "" ++ ++msgid "Announced prefixes" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "Συλλέγονται δεδομένα..." ++ ++msgid "Forwarder" ++msgstr "Προωθητής" ++ ++msgid "General Setup" ++msgstr "Γενικές ρυθμίσεις" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 και IPv6" ++ ++msgid "IPv4 only" ++msgstr "μόνο IPv4" ++ ++msgid "IPv6 only" ++msgstr "μόνο IPv6" ++ ++#, fuzzy ++msgid "Lease directory" ++msgstr "Κατάλογος leases" ++ ++msgid "Lease validity time" ++msgstr "Χρόνος εγκυρότητας lease" ++ ++msgid "Log file" ++msgstr "Αρχείο καταγραφής" ++ ++msgid "Multicast address" ++msgstr "Διεύθυνση multicast" ++ ++msgid "Operation mode" ++msgstr "" ++ ++msgid "Port" ++msgstr "Θύρα" ++ ++msgid "Protocol family" ++msgstr "Οικογένεια πρωτοκόλλου" ++ ++msgid "Served interfaces" ++msgstr "Εξυπηρετούμενες διεπαφές" ++ ++msgid "Server" ++msgstr "Εξυπηρετητής" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Καθορίζει τους εξυπηρετητές NTP σε IPv4 και IPv6 που ανακοινώνονται" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Καθορίζει τους εξυπηρετητές DNS σε IPv4 και IPv6 που ανακοινώνονται" ++ ++#, fuzzy ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"Καθορίζει τα προθέματα διευθύνσεων IPv4 και IPv6 που ανακοινώνονται, σε " ++"μορφή CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "" ++ ++#, fuzzy ++msgid "There are no active leases." ++msgstr "Δεν υπάρχουν ενεργά leases" ++ ++msgid "Unique ID file" ++msgstr "Αρχείο μοναδικού αναγνωριστικού" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/en/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/en/ahcp.po +new file mode 100644 +index 0000000..4ad2ab2 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/en/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-04-15 11:31+0200\n" ++"Last-Translator: madanadam \n" ++"Language-Team: none\n" ++"Language: en\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP Server" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery and DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++ ++msgid "Active AHCP Leases" ++msgstr "Active AHCP Leases" ++ ++msgid "Address" ++msgstr "Address" ++ ++msgid "Advanced Settings" ++msgstr "Advanced Settings" ++ ++msgid "Age" ++msgstr "Age" ++ ++msgid "Announced DNS servers" ++msgstr "Announced DNS servers" ++ ++msgid "Announced NTP servers" ++msgstr "Announced NTP servers" ++ ++msgid "Announced prefixes" ++msgstr "Announced prefixes" ++ ++msgid "Collecting data..." ++msgstr "Collecting data..." ++ ++msgid "Forwarder" ++msgstr "Forwarder" ++ ++msgid "General Setup" ++msgstr "General Setup" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 and IPv6" ++ ++msgid "IPv4 only" ++msgstr "IPv4 only" ++ ++msgid "IPv6 only" ++msgstr "IPv6 only" ++ ++msgid "Lease directory" ++msgstr "Lease directory" ++ ++msgid "Lease validity time" ++msgstr "Lease validity time" ++ ++msgid "Log file" ++msgstr "Log file" ++ ++msgid "Multicast address" ++msgstr "Multicast address" ++ ++msgid "Operation mode" ++msgstr "Operation mode" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Protocol family" ++ ++msgid "Served interfaces" ++msgstr "Served interfaces" ++ ++msgid "Server" ++msgstr "Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Specifies the announced IPv4 and IPv6 NTP servers" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Specifies the announced IPv4 and IPv6 name servers" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++ ++msgid "The AHCP Service is not running." ++msgstr "The AHCP Service is not running." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "The AHCP Service is running with ID %s." ++ ++msgid "There are no active leases." ++msgstr "There are no active leases." ++ ++msgid "Unique ID file" ++msgstr "Unique ID file" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/es/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/es/ahcp.po +new file mode 100644 +index 0000000..512606a +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/es/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-09-14 19:30+0200\n" ++"Last-Translator: José Vicente \n" ++"Language-Team: none\n" ++"Language: es\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Servidor AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP es un protocolo de autoconfiguración para redes con IPv6 o duales IPv6/" ++"IPv4 diseñado para ser usado en lugar de router discovery o DHCP en redes en " ++"las que es difícil o imposible configurar un servidor en cada capa de enlace " ++"del dominio de propagación como las redes móviles ad-hoc." ++ ++# "Lease" en el sentido usado en DHCP no tiene una traducción clara en español y se puede usar la misma palabra en que en inglés. ++msgid "Active AHCP Leases" ++msgstr "Cesiones activas AHCP" ++ ++msgid "Address" ++msgstr "Dirección" ++ ++msgid "Advanced Settings" ++msgstr "Configuración avanzada" ++ ++msgid "Age" ++msgstr "Vida" ++ ++msgid "Announced DNS servers" ++msgstr "Servidores DNS declarados" ++ ++msgid "Announced NTP servers" ++msgstr "Servidores NTP declarados" ++ ++msgid "Announced prefixes" ++msgstr "Prefijos declarados" ++ ++msgid "Collecting data..." ++msgstr "Obteniendo datos..." ++ ++msgid "Forwarder" ++msgstr "Transmisor" ++ ++msgid "General Setup" ++msgstr "Configuración general" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 e IPv6" ++ ++msgid "IPv4 only" ++msgstr "Sólo IPv4" ++ ++msgid "IPv6 only" ++msgstr "Sólo IPv6" ++ ++msgid "Lease directory" ++msgstr "Directorio de cesiones" ++ ++msgid "Lease validity time" ++msgstr "Tiempo de validez de la cesión" ++ ++msgid "Log file" ++msgstr "Fichero de registro" ++ ++msgid "Multicast address" ++msgstr "Dirección multicast" ++ ++msgid "Operation mode" ++msgstr "Modo de funcionamiento" ++ ++msgid "Port" ++msgstr "Puerto" ++ ++msgid "Protocol family" ++msgstr "Familia de protocolos" ++ ++msgid "Served interfaces" ++msgstr "Interfaces configurados" ++ ++msgid "Server" ++msgstr "Servidor" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Especifica los servidores NTP IPv4 e IPv6 declarados" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Especifica los servidores de nombres IPv4 e IPv6 declarados" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Especifica los prefijos de red IPv4 e IPv6 declarados en notación CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "El Servicio AHCP no está funcionando." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "El Servicio AHCP está funcionando con el ID %s." ++ ++msgid "There are no active leases." ++msgstr "No hay cesiones activas." ++ ++msgid "Unique ID file" ++msgstr "ID único de fichero" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/fr/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/fr/ahcp.po +new file mode 100644 +index 0000000..1163518 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/fr/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-11-06 13:06+0200\n" ++"Last-Translator: hogsim \n" ++"Language-Team: none\n" ++"Language: fr\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Serveur AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP est un protocole d'auto-configuration pour les réseaux IPv6 et double-" ++"pile IPv6/IPv4, destiné à remplacer la recherche de routeur et le service " ++"DHCP sur des réseaux où il est difficile, voire impossible de configurer un " ++"tel serveur pour tous les domaines de diffusion au niveau lien, par exemple " ++"pour des réseaux ad-hoc mobiles." ++ ++msgid "Active AHCP Leases" ++msgstr "Baux AHCP actifs" ++ ++msgid "Address" ++msgstr "Adresse" ++ ++msgid "Advanced Settings" ++msgstr "Paramètres avancés" ++ ++msgid "Age" ++msgstr "Age" ++ ++msgid "Announced DNS servers" ++msgstr "Serveurs DNS publiés" ++ ++msgid "Announced NTP servers" ++msgstr "Serveurs NTP publiés" ++ ++msgid "Announced prefixes" ++msgstr "Préfixes publiés" ++ ++msgid "Collecting data..." ++msgstr "Récupération des données…" ++ ++msgid "Forwarder" ++msgstr "Transmetteur" ++ ++msgid "General Setup" ++msgstr "Paramètres principaux" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 et IPv6" ++ ++msgid "IPv4 only" ++msgstr "IPv4 seulement" ++ ++msgid "IPv6 only" ++msgstr "IPv6 seulement" ++ ++msgid "Lease directory" ++msgstr "Répertoire d'un bail" ++ ++msgid "Lease validity time" ++msgstr "Date de validité d'un bail" ++ ++msgid "Log file" ++msgstr "Fichier journal" ++ ++msgid "Multicast address" ++msgstr "Adresse multidiffusion" ++ ++msgid "Operation mode" ++msgstr "Mode de fonctionnement" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Famille de protocole" ++ ++msgid "Served interfaces" ++msgstr "Interfaces gérés" ++ ++msgid "Server" ++msgstr "Serveur" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Décrit les serveurs NTP IPv4 et IPv6 publiés" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Décrit les serveurs de noms IPv4 et IPv6 publiés" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Décrit les préfixes réseaux IPv4 et IPv6 publiés en notation CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "Le service AHCP n'est pas en fonctionnement." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Le service AHCP est en fonctionnement avec l'ID s." ++ ++msgid "There are no active leases." ++msgstr "Il n'y a aucun bail actif." ++ ++msgid "Unique ID file" ++msgstr "Fichier de l'ID unique" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/he/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/he/ahcp.po +new file mode 100644 +index 0000000..1c45cc8 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/he/ahcp.po +@@ -0,0 +1,118 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-09-10 03:44+0200\n" ++"Last-Translator: Snoof \n" ++"Language-Team: none\n" ++"Language: he\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "שרת AHCP" ++ ++# מי שמבין את המונחים הטכניים שיעבור על זה ויתקן. ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP הוא פרוטוקול להגדרה אוטומטית של רשתות IPV6 ו- dual-stack IPv6/IPv4, אשר " ++"עוצב לשימוש כתחליף לגילוי נתבים ול- DHCP ברשתות שבהן קשה או בלתי אפשרי " ++"להגדיר שרת בתוך כל שם מתחם לשידור שכבת קישור, לדוגמה רשתות אד-הוק ניידות." ++ ++#, fuzzy ++msgid "Active AHCP Leases" ++msgstr "החכרות AHCP קיימות" ++ ++msgid "Address" ++msgstr "כתובת" ++ ++msgid "Advanced Settings" ++msgstr "הגדרות מתקדמות" ++ ++msgid "Age" ++msgstr "גיל" ++ ++msgid "Announced DNS servers" ++msgstr "שרתי DNS מוכרזים" ++ ++msgid "Announced NTP servers" ++msgstr "שרתי NTP מוכרזים" ++ ++msgid "Announced prefixes" ++msgstr "קידומות מוכרזות" ++ ++msgid "Collecting data..." ++msgstr "אוסף נתונים..." ++ ++msgid "Forwarder" ++msgstr "" ++ ++msgid "General Setup" ++msgstr "התקנה כללית" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 ו- IPv6" ++ ++msgid "IPv4 only" ++msgstr "IPv4 בלבד" ++ ++msgid "IPv6 only" ++msgstr "IPv6 בלבד" ++ ++#, fuzzy ++msgid "Lease directory" ++msgstr "ספריית החכרות" ++ ++# תו ++msgid "Lease validity time" ++msgstr "תוקף ההקצאה" ++ ++msgid "Log file" ++msgstr "קובץ רישום" ++ ++msgid "Multicast address" ++msgstr "כתובת Multicast" ++ ++# אפשר גם מצב פעולה ++msgid "Operation mode" ++msgstr "מצב הפעלה" ++ ++msgid "Port" ++msgstr "פורט" ++ ++msgid "Protocol family" ++msgstr "משפחת פרוטוקולים" ++ ++msgid "Served interfaces" ++msgstr "סיגמנטים מופעלים" ++ ++msgid "Server" ++msgstr "שרת" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "שרתי NTP ברשתות IPV4 IPV6" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "שרתי DNS ברשתות IPV4 IPV6" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "קידומת שרתים (CIDR)" ++ ++msgid "The AHCP Service is not running." ++msgstr "" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "" ++ ++msgid "There are no active leases." ++msgstr "אין הקצאות פעילות." ++ ++msgid "Unique ID file" ++msgstr "קובץ מזהה יחודי" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/hu/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/hu/ahcp.po +new file mode 100644 +index 0000000..a0a91be +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/hu/ahcp.po +@@ -0,0 +1,116 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-03-31 15:46+0200\n" ++"Last-Translator: juhosg \n" ++"Language-Team: none\n" ++"Language: hu\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP kiszolgáló" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"Az AHCP egy olyan automatikus konfigurációs protokoll IPv6 és kettős IPv6/" ++"IPv4 hálózatokhoz, mely a DHCP és a router dicovery protokoll helyett " ++"használható olyan hálózatokok ahol nehéz vagy lehetetlen beállítani külön " ++"kiszolgálót minden kapcsolati réteg tartományon belül, mint például a mobil " ++"eseti hálózatok." ++ ++msgid "Active AHCP Leases" ++msgstr "Aktív AHCP bérletek" ++ ++msgid "Address" ++msgstr "Cím" ++ ++msgid "Advanced Settings" ++msgstr "Haladó beállítások" ++ ++msgid "Age" ++msgstr "Kor" ++ ++msgid "Announced DNS servers" ++msgstr "Bejelentett névkiszolgálók" ++ ++msgid "Announced NTP servers" ++msgstr "Bejelentett NTP kiszolgálók" ++ ++msgid "Announced prefixes" ++msgstr "Bejelentett előtagok" ++ ++msgid "Collecting data..." ++msgstr "Adatok összegyűjtése..." ++ ++msgid "Forwarder" ++msgstr "Továbbító" ++ ++msgid "General Setup" ++msgstr "Általános beállítások" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 és IPv6" ++ ++msgid "IPv4 only" ++msgstr "csak IPv4" ++ ++msgid "IPv6 only" ++msgstr "csak IPv6" ++ ++msgid "Lease directory" ++msgstr "Bérlet könytár" ++ ++msgid "Lease validity time" ++msgstr "Bérlet érvényességi ideje" ++ ++msgid "Log file" ++msgstr "Napló fájl" ++ ++msgid "Multicast address" ++msgstr "Multicast cím" ++ ++msgid "Operation mode" ++msgstr "Működési mód" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Protokoll család" ++ ++msgid "Served interfaces" ++msgstr "Kiszolgált interfészek" ++ ++msgid "Server" ++msgstr "Kiszolgáló" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "A bejelentett IPv4 és IPv6 NTP kiszolgálók részletezése" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "A bejelentett IPv4 és IPv6 névkiszolgálók részletezése" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"A bejelentett IPv4 és IPv6 hálózati előtagok részletezése CIDR jelölésben" ++ ++msgid "The AHCP Service is not running." ++msgstr "Az AHCP szolgáltatás nem fut" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Az AHCP szolgáltatás fut, azonosítója:%s." ++ ++msgid "There are no active leases." ++msgstr "Nincsenek aktív bérletek." ++ ++msgid "Unique ID file" ++msgstr "Egyedi azonosító fájl" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/it/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/it/ahcp.po +new file mode 100644 +index 0000000..56d9516 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/it/ahcp.po +@@ -0,0 +1,114 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-02-03 12:53+0200\n" ++"Last-Translator: Francesco <3gasas@gmail.com>\n" ++"Language-Team: none\n" ++"Language: it\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Server AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP è un protocollo di configurazione automatica per reti IPv6 e dual-stack " ++"IPv6/IPv4 progettato per essere usato al posto del router discovery e DHCP " ++"su reti dove è difficile o impossibile configurare un server all'interno di " ++"ogni dominio di broadcast, per esempio reti ad-hoc mobili." ++ ++msgid "Active AHCP Leases" ++msgstr "Lease AHCP Attivi" ++ ++msgid "Address" ++msgstr "Indirizzo" ++ ++msgid "Advanced Settings" ++msgstr "Impostazioni Avanzate" ++ ++msgid "Age" ++msgstr "Età" ++ ++msgid "Announced DNS servers" ++msgstr "Server DNS indicati" ++ ++msgid "Announced NTP servers" ++msgstr "Server NTP indicati" ++ ++msgid "Announced prefixes" ++msgstr "Prefissi indicati" ++ ++msgid "Collecting data..." ++msgstr "Raccolta dei dati..." ++ ++msgid "Forwarder" ++msgstr "Mittente" ++ ++msgid "General Setup" ++msgstr "Setup Generale" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 e IPv6" ++ ++msgid "IPv4 only" ++msgstr "Solo IPv4" ++ ++msgid "IPv6 only" ++msgstr "Solo IPv6" ++ ++msgid "Lease directory" ++msgstr "Directory di Lease" ++ ++msgid "Lease validity time" ++msgstr "Tempo di validità del Lease" ++ ++msgid "Log file" ++msgstr "File di log" ++ ++msgid "Multicast address" ++msgstr "Indirizzo Multicast" ++ ++msgid "Operation mode" ++msgstr "Modalità di funzionamento" ++ ++msgid "Port" ++msgstr "Porta" ++ ++msgid "Protocol family" ++msgstr "Protocollo famiglia" ++ ++msgid "Served interfaces" ++msgstr "Interfacce servite" ++ ++msgid "Server" ++msgstr "Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Specifica i server NTP IPv4 e IPv6 annunciati" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Specifica il server dei nomi IPv4 e IPv6" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Specifica i prefissi delle reti IPv4 e IPv6 in notazione CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "Il servizio AHCP non è in esecuzione." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Il servizio AHCP è in esecuzione con ID %s." ++ ++msgid "There are no active leases." ++msgstr "Non ci sono leases attivi." ++ ++msgid "Unique ID file" ++msgstr "File degli Unique ID" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/ja/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/ja/ahcp.po +new file mode 100644 +index 0000000..dd78ccd +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/ja/ahcp.po +@@ -0,0 +1,117 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-04-19 07:54+0200\n" ++"Last-Translator: Kentaro \n" ++"Language-Team: none\n" ++"Language: ja\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "AHCP Server" ++msgstr "AHCPサーバー" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCPはIPv6及びIPv6/IPv4デュアルスタックを使用するネットワークにおいて、ルー" ++"ターディスカバリの代わりとして使用するためにデザインされた自動設定プロトコル" ++"です。また、AHCPはモバイル・アドホックネットワークのような、リンク層のドメイ" ++"ンブロードキャスト毎に設定を行うことが困難なネットワークでのDHCP機能としても" ++"使用することができます。" ++ ++msgid "Active AHCP Leases" ++msgstr "有効なAHCPリース" ++ ++msgid "Address" ++msgstr "アドレス" ++ ++msgid "Advanced Settings" ++msgstr "詳細設定" ++ ++msgid "Age" ++msgstr "Age" ++ ++msgid "Announced DNS servers" ++msgstr "通知するDNSサーバー" ++ ++msgid "Announced NTP servers" ++msgstr "通知するNTPサーバー" ++ ++msgid "Announced prefixes" ++msgstr "通知するプレフィクス" ++ ++msgid "Collecting data..." ++msgstr "データ収集中です..." ++ ++msgid "Forwarder" ++msgstr "転送" ++ ++msgid "General Setup" ++msgstr "一般設定" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4及びIPv6" ++ ++msgid "IPv4 only" ++msgstr "IPv4のみ" ++ ++msgid "IPv6 only" ++msgstr "IPv6のみ" ++ ++msgid "Lease directory" ++msgstr "リースファイル・ディレクトリ" ++ ++msgid "Lease validity time" ++msgstr "リース有効時間" ++ ++msgid "Log file" ++msgstr "ログファイル" ++ ++msgid "Multicast address" ++msgstr "マルチキャストアドレス" ++ ++msgid "Operation mode" ++msgstr "動作モード" ++ ++msgid "Port" ++msgstr "ポート" ++ ++msgid "Protocol family" ++msgstr "プロトコルファミリ" ++ ++msgid "Served interfaces" ++msgstr "対象インターフェース" ++ ++msgid "Server" ++msgstr "サーバー" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "通知するNTPサーバーのIPv4及びIPv6アドレスを設定します" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "通知するDNSサーバーのIPv4及びIPv6アドレスを設定します" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"通知するIPv4及びIPv6アドレスのネットワーク・プレフィクスをCIDR形式で設定しま" ++"す" ++ ++msgid "The AHCP Service is not running." ++msgstr "AHCP サービスは稼働していません。" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "AHCP サービスは稼働中です。(ID %s)" ++ ++msgid "There are no active leases." ++msgstr "有効なリースはありません。" ++ ++msgid "Unique ID file" ++msgstr "ユニークIDファイル" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/ms/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/ms/ahcp.po +new file mode 100644 +index 0000000..0b6963b +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/ms/ahcp.po +@@ -0,0 +1,105 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++ ++msgid "AHCP Server" ++msgstr "" ++ ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++ ++msgid "Active AHCP Leases" ++msgstr "" ++ ++msgid "Address" ++msgstr "" ++ ++msgid "Advanced Settings" ++msgstr "" ++ ++msgid "Age" ++msgstr "" ++ ++msgid "Announced DNS servers" ++msgstr "" ++ ++msgid "Announced NTP servers" ++msgstr "" ++ ++msgid "Announced prefixes" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Forwarder" ++msgstr "" ++ ++msgid "General Setup" ++msgstr "" ++ ++msgid "IPv4 and IPv6" ++msgstr "" ++ ++msgid "IPv4 only" ++msgstr "" ++ ++msgid "IPv6 only" ++msgstr "" ++ ++msgid "Lease directory" ++msgstr "" ++ ++msgid "Lease validity time" ++msgstr "" ++ ++msgid "Log file" ++msgstr "" ++ ++msgid "Multicast address" ++msgstr "" ++ ++msgid "Operation mode" ++msgstr "" ++ ++msgid "Port" ++msgstr "" ++ ++msgid "Protocol family" ++msgstr "" ++ ++msgid "Served interfaces" ++msgstr "" ++ ++msgid "Server" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++ ++msgid "The AHCP Service is not running." ++msgstr "" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "" ++ ++msgid "There are no active leases." ++msgstr "" ++ ++msgid "Unique ID file" ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/no/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/no/ahcp.po +new file mode 100644 +index 0000000..4c3bc03 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/no/ahcp.po +@@ -0,0 +1,117 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2011-06-14 20:11+0200\n" ++"Last-Translator: protx \n" ++"Language-Team: none\n" ++"Language: no\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP Server" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP er en autokonfigurasjon protokoll for IPv6, og dual-stack IPv6/IPv4 " ++"nettverk. Det er laget for bruk der DHCP og Ruter oppdagelse er problematisk " ++"eller umulig å bruke for hvert link-lags broadcast domene, f.eks. mobile ad-" ++"hoc nettverk." ++ ++msgid "Active AHCP Leases" ++msgstr "Aktive AHCP Leier" ++ ++msgid "Address" ++msgstr "Adresse" ++ ++msgid "Advanced Settings" ++msgstr "Avanserte Innstillinger" ++ ++msgid "Age" ++msgstr "Alder" ++ ++msgid "Announced DNS servers" ++msgstr "Annonserte DNS servere" ++ ++msgid "Announced NTP servers" ++msgstr "Annonserte NTP servere" ++ ++msgid "Announced prefixes" ++msgstr "Annonserte prefikser" ++ ++msgid "Collecting data..." ++msgstr "Henter data..." ++ ++#, fuzzy ++msgid "Forwarder" ++msgstr "Sender" ++ ++msgid "General Setup" ++msgstr "Generelt Oppsett" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 og IPv6" ++ ++msgid "IPv4 only" ++msgstr "Kun IPv4" ++ ++msgid "IPv6 only" ++msgstr "Kun IPv6" ++ ++#, fuzzy ++msgid "Lease directory" ++msgstr "Leie katalog" ++ ++msgid "Lease validity time" ++msgstr "Gyldig leietid" ++ ++msgid "Log file" ++msgstr "Logg fil" ++ ++msgid "Multicast address" ++msgstr "Multicast adresse" ++ ++msgid "Operation mode" ++msgstr "Driftsmodus" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Protokoll familie" ++ ++#, fuzzy ++msgid "Served interfaces" ++msgstr "Utdelte grensesnitt" ++ ++msgid "Server" ++msgstr "Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Angir annonserte IPv4 og IPv6 NTP-servere" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Angir annonserte IPv4 og IPv6 navnetjenere" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Angir annonserte IPv4 og IPv6 nettverk prefikser i CIDR-notasjon" ++ ++msgid "The AHCP Service is not running." ++msgstr "" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "" ++ ++msgid "There are no active leases." ++msgstr "Det er ingen aktive leieavtaler." ++ ++msgid "Unique ID file" ++msgstr "Unik ID fil" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/pl/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/pl/ahcp.po +new file mode 100644 +index 0000000..5095224 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/pl/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-04-14 16:40+0200\n" ++"Last-Translator: Tomecki \n" ++"Language-Team: none\n" ++"Language: pl\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " ++"|| n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "AHCP Server" ++msgstr "Serwer AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP to protokół automatycznej konfiguracji sieci IPv6 i IPv6/IPv4 " ++"przeznaczone do stosowania zamiast DHCP w sieciach, w których jest trudne " ++"lub wręcz niemożliwe, aby skonfigurować serwer w każdej warstwie łącza " ++"domeny rozgłoszeniowej, na przykład w mobilnych sieciach ad-hoc." ++ ++msgid "Active AHCP Leases" ++msgstr "Aktywne dzierżawy AHCP" ++ ++msgid "Address" ++msgstr "Adres" ++ ++msgid "Advanced Settings" ++msgstr "Ustawienia zaawansowane" ++ ++msgid "Age" ++msgstr "Wiek" ++ ++msgid "Announced DNS servers" ++msgstr "Rozgłaszane serwery DNS" ++ ++msgid "Announced NTP servers" ++msgstr "Rozgłaszane serwery NTP" ++ ++msgid "Announced prefixes" ++msgstr "Rozgłaszane prefiksy" ++ ++msgid "Collecting data..." ++msgstr "Zbieranie informacji..." ++ ++msgid "Forwarder" ++msgstr "Przekierowanie" ++ ++msgid "General Setup" ++msgstr "Ustawienia podstawowe" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 oraz IPv6" ++ ++msgid "IPv4 only" ++msgstr "Tylko IPv4" ++ ++msgid "IPv6 only" ++msgstr "Tylko IPv6" ++ ++msgid "Lease directory" ++msgstr "Katalog dzierżaw" ++ ++msgid "Lease validity time" ++msgstr "Czas dzierżawy" ++ ++msgid "Log file" ++msgstr "Plik dziennika" ++ ++msgid "Multicast address" ++msgstr "Adres Multicast" ++ ++msgid "Operation mode" ++msgstr "Tryb pracy" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Rodzina protokołów" ++ ++msgid "Served interfaces" ++msgstr "Udostępniane interfejsy" ++ ++msgid "Server" ++msgstr "Serwer" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Określa rozgłaszane adresy IPv4/6 serwerów NTP" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Określa rozgłaszane adresy IPv4/6 serwerów nazw" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Określa rozgłaszane prefiksy sieciowe w notacji CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "Usługa AHCP nie jest uruchomiona." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Usługa AHCP jest uruchomiona z ID %s." ++ ++msgid "There are no active leases." ++msgstr "Nie ma aktywnych dzierżaw." ++ ++msgid "Unique ID file" ++msgstr "Unikalny plik ID" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/pt-br/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/pt-br/ahcp.po +new file mode 100644 +index 0000000..55ec29c +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/pt-br/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-03-29 23:07+0200\n" ++"Last-Translator: Luiz Angelo \n" ++"Language-Team: none\n" ++"Language: pt_BR\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Servidor AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP é um protocolo de autoconfiguração para redes IPv6 ou IPv6/IPv4 " ++"projetado para ser usado no lugar da \"descoberta de roteador\" ou DHCP em " ++"redes onde é difícil ou impossível configurar um servidor em cada camada de " ++"enlace de domínio de broadcast, como exemplo as redes móvel ad-hoc." ++ ++msgid "Active AHCP Leases" ++msgstr "Alocações AHCP Ativas" ++ ++msgid "Address" ++msgstr "Endereço" ++ ++msgid "Advanced Settings" ++msgstr "Configurações Avançadas" ++ ++msgid "Age" ++msgstr "Tempo de vida" ++ ++msgid "Announced DNS servers" ++msgstr "Servidores DNS anunciados" ++ ++msgid "Announced NTP servers" ++msgstr "Servidores NTP anunciados" ++ ++msgid "Announced prefixes" ++msgstr "Prefixos anunciados" ++ ++msgid "Collecting data..." ++msgstr "Coletando dados..." ++ ++msgid "Forwarder" ++msgstr "Forwarder" ++ ++msgid "General Setup" ++msgstr "Configurações Gerais" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 e IPv6" ++ ++msgid "IPv4 only" ++msgstr "Apenas IPv4" ++ ++msgid "IPv6 only" ++msgstr "Apenas IPv6" ++ ++msgid "Lease directory" ++msgstr "Diretório de atribuições" ++ ++msgid "Lease validity time" ++msgstr "Tempo de validade da atribuição" ++ ++msgid "Log file" ++msgstr "Arquivo de registro" ++ ++msgid "Multicast address" ++msgstr "Endereço multicast" ++ ++msgid "Operation mode" ++msgstr "Modo de operação" ++ ++msgid "Port" ++msgstr "Porta" ++ ++msgid "Protocol family" ++msgstr "Família de protocolos" ++ ++msgid "Served interfaces" ++msgstr "Interfaces configuradas" ++ ++msgid "Server" ++msgstr "Servidor" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Especifica os servidores NTP IPv4 e IPv6 anunciados" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Especifica os servidores de nomes IPv4 e IPv6 anunciados" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"Especifica os prefixos de rede IPv4 e IPv6, em notação CIDR, anunciados" ++ ++msgid "The AHCP Service is not running." ++msgstr "O serviço AHCP está parado" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "O serviço AHCP esta executando com o ID %s." ++ ++msgid "There are no active leases." ++msgstr "Não existe alocações ativas." ++ ++msgid "Unique ID file" ++msgstr "Arquivo de identificador único" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/pt/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/pt/ahcp.po +new file mode 100644 +index 0000000..f96fc45 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/pt/ahcp.po +@@ -0,0 +1,116 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-06-02 21:12+0200\n" ++"Last-Translator: joao.f.vieira \n" ++"Language-Team: none\n" ++"Language: pt\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Servidor AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"O AHCP é um protocolo de auto-configuração para redes IPv6 e IPv6/IPv4 dual-" ++"stack foi desenhado para ser usado no lugar do router discovery e DHCP nas " ++"redes onde é difícil ou impossível configurar o servidor dentro de cada " ++"camada de ligação no dominio de broadcast, por exemplo, redes ad-hoc móveis." ++ ++msgid "Active AHCP Leases" ++msgstr "Concessões AHCP Ativas" ++ ++msgid "Address" ++msgstr "Endereço" ++ ++msgid "Advanced Settings" ++msgstr "Definições Avançadas" ++ ++msgid "Age" ++msgstr "Idade" ++ ++msgid "Announced DNS servers" ++msgstr "Servidores DNS anunciados" ++ ++msgid "Announced NTP servers" ++msgstr "Servidores NTP anunciados" ++ ++msgid "Announced prefixes" ++msgstr "Prefixos anunciados" ++ ++msgid "Collecting data..." ++msgstr "A obter dados..." ++ ++msgid "Forwarder" ++msgstr "Encaminhador" ++ ++msgid "General Setup" ++msgstr "Configuração Geral" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 e IPv6" ++ ++msgid "IPv4 only" ++msgstr "Só IPv4" ++ ++msgid "IPv6 only" ++msgstr "Só IPv6" ++ ++msgid "Lease directory" ++msgstr "Directório de concessões" ++ ++msgid "Lease validity time" ++msgstr "Prazo de validade das concessões" ++ ++msgid "Log file" ++msgstr "Ficheiro log" ++ ++msgid "Multicast address" ++msgstr "Endereço de multicast" ++ ++msgid "Operation mode" ++msgstr "Modo de operação" ++ ++msgid "Port" ++msgstr "Porta" ++ ++msgid "Protocol family" ++msgstr "Família do protocolo" ++ ++msgid "Served interfaces" ++msgstr "Interfaces servidas" ++ ++msgid "Server" ++msgstr "Servidor" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Especifica os servidores NTP anunciados em IPv4 e IPv6" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Especifica os servidores de nomes anunciados em IPv4 e IPv6" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"Especifica os prefixos de rede na notação CIDR a serem anunciados em IPv4 e " ++"IPv6" ++ ++msgid "The AHCP Service is not running." ++msgstr "O serviço AHCP não está a correr." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "O serviço AHCP está a correr com o ID %s" ++ ++msgid "There are no active leases." ++msgstr "Não existem concessões activas." ++ ++msgid "Unique ID file" ++msgstr "Ficheiro de ID único" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/ro/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/ro/ahcp.po +new file mode 100644 +index 0000000..2882b31 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/ro/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-06-28 19:14+0200\n" ++"Last-Translator: xxvirusxx \n" ++"Language-Team: none\n" ++"Language: ro\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " ++"20)) ? 1 : 2);;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Server AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP este un protocol de autoconfigurare pentru IPv6 si IPv4 menit sa " ++"inlocuie \"router discovery\" si DHCP in retele unde este dificil de " ++"configurat un server pentru fiecare domeniu de broadcast pe fiecare " ++"legatura, de exemplu pentru retele mobile ad-hoc." ++ ++msgid "Active AHCP Leases" ++msgstr "Conexiuni active AHCP" ++ ++msgid "Address" ++msgstr "Adresă" ++ ++msgid "Advanced Settings" ++msgstr "Setări avansate" ++ ++msgid "Age" ++msgstr "Vârstă" ++ ++msgid "Announced DNS servers" ++msgstr "Servere DNS anuntate" ++ ++msgid "Announced NTP servers" ++msgstr "Servere NTP anuntate" ++ ++msgid "Announced prefixes" ++msgstr "Prefixe anuntate" ++ ++msgid "Collecting data..." ++msgstr "Colectare date.." ++ ++msgid "Forwarder" ++msgstr "Forwarder" ++ ++msgid "General Setup" ++msgstr "Configurare generala" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 si IPv6" ++ ++msgid "IPv4 only" ++msgstr "Doar IPv4 " ++ ++msgid "IPv6 only" ++msgstr "Doar IPv6 " ++ ++msgid "Lease directory" ++msgstr "Director de conexiuni" ++ ++msgid "Lease validity time" ++msgstr "Timpul pentru conexiuni valide" ++ ++msgid "Log file" ++msgstr "Fisier log" ++ ++msgid "Multicast address" ++msgstr "Adresa multicast" ++ ++msgid "Operation mode" ++msgstr "Modul de operare" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Familia de protocol" ++ ++msgid "Served interfaces" ++msgstr "Interfetele servite" ++ ++msgid "Server" ++msgstr "Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Specifica serverele de NTP IPv4 si IPv6 anuntate" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Specifica serverele de DNS IPv4 si IPv6 anuntate" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Specifica prefixele IPv4 si IPv6 anuntate in format CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "Serviciul AHCP nu ruleaza" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Serviciul AHCP nu ruleaza cu ID %s." ++ ++msgid "There are no active leases." ++msgstr "Nu exista conexiuni active." ++ ++msgid "Unique ID file" ++msgstr "ID de fisier unic" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/ru/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/ru/ahcp.po +new file mode 100644 +index 0000000..f08cb70 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/ru/ahcp.po +@@ -0,0 +1,120 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: LuCI: ahcp\n" ++"POT-Creation-Date: \n" ++"PO-Revision-Date: 2013-09-05 15:29+0200\n" ++"Last-Translator: datasheet \n" ++"Language-Team: Russian \n" ++"Language: ru\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++"X-Poedit-SourceCharset: UTF-8\n" ++ ++# Ad-Hoc Configuration Protocol - протокол автоматической конфигурации IPv6 и сетей IPv6/IPv4 двойного стека ++msgid "AHCP Server" ++msgstr "AHCP-сервер" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP - это протокол автоматической конфигурации сетей IPv6 и IPv6/IPv4, " ++"разработанный для использования вместо DHCP и протоколов обнаружения " ++"маршрутизаторов в сетях, где сложно или невозможно настроить сервер внутри " ++"каждой широковещательной зоны канального уровня, например, в мобильных ad-" ++"hoc сетях." ++ ++msgid "Active AHCP Leases" ++msgstr "Активные арендованные AHCP-адреса" ++ ++msgid "Address" ++msgstr "Адрес" ++ ++msgid "Advanced Settings" ++msgstr "Дополнительные настройки" ++ ++msgid "Age" ++msgstr "Возраст" ++ ++msgid "Announced DNS servers" ++msgstr "Анонсируемые DNS-серверы" ++ ++msgid "Announced NTP servers" ++msgstr "Анонсируемые NTP-серверы" ++ ++msgid "Announced prefixes" ++msgstr "Анонсируемые префиксы" ++ ++msgid "Collecting data..." ++msgstr "Сбор данных..." ++ ++#, fuzzy ++msgid "Forwarder" ++msgstr "Перенаправление запросов" ++ ++msgid "General Setup" ++msgstr "Общие настройки" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 и IPv6" ++ ++msgid "IPv4 only" ++msgstr "Только IPv4" ++ ++msgid "IPv6 only" ++msgstr "Только IPv6" ++ ++msgid "Lease directory" ++msgstr "Директория арендованных адресов" ++ ++msgid "Lease validity time" ++msgstr "Срок действия аренды" ++ ++msgid "Log file" ++msgstr "Файл журнала" ++ ++msgid "Multicast address" ++msgstr "Групповой адрес" ++ ++msgid "Operation mode" ++msgstr "Режим работы" ++ ++msgid "Port" ++msgstr "Порт" ++ ++msgid "Protocol family" ++msgstr "Протокол" ++ ++msgid "Served interfaces" ++msgstr "Используемые интерфейсы" ++ ++msgid "Server" ++msgstr "Сервер" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Определяет IPv4 и IPv6 NTP-серверы" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Определяет IPv4 и IPv6 DNS-серверы" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Определяет IPv4- и IPv6-префиксы сети в нотации CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "Служба AHCP не запущена." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Служба AHCP запущена с ID %s." ++ ++msgid "There are no active leases." ++msgstr "Нет активных арендованных адресов." ++ ++msgid "Unique ID file" ++msgstr "Файл уникального идентификатора" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/sk/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/sk/ahcp.po +new file mode 100644 +index 0000000..b618490 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/sk/ahcp.po +@@ -0,0 +1,106 @@ ++msgid "" ++msgstr "" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" ++ ++msgid "AHCP Server" ++msgstr "" ++ ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++ ++msgid "Active AHCP Leases" ++msgstr "" ++ ++msgid "Address" ++msgstr "" ++ ++msgid "Advanced Settings" ++msgstr "" ++ ++msgid "Age" ++msgstr "" ++ ++msgid "Announced DNS servers" ++msgstr "" ++ ++msgid "Announced NTP servers" ++msgstr "" ++ ++msgid "Announced prefixes" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Forwarder" ++msgstr "" ++ ++msgid "General Setup" ++msgstr "" ++ ++msgid "IPv4 and IPv6" ++msgstr "" ++ ++msgid "IPv4 only" ++msgstr "" ++ ++msgid "IPv6 only" ++msgstr "" ++ ++msgid "Lease directory" ++msgstr "" ++ ++msgid "Lease validity time" ++msgstr "" ++ ++msgid "Log file" ++msgstr "" ++ ++msgid "Multicast address" ++msgstr "" ++ ++msgid "Operation mode" ++msgstr "" ++ ++msgid "Port" ++msgstr "" ++ ++msgid "Protocol family" ++msgstr "" ++ ++msgid "Served interfaces" ++msgstr "" ++ ++msgid "Server" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++ ++msgid "The AHCP Service is not running." ++msgstr "" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "" ++ ++msgid "There are no active leases." ++msgstr "" ++ ++msgid "Unique ID file" ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/sv/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/sv/ahcp.po +new file mode 100644 +index 0000000..b5f0b7d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/sv/ahcp.po +@@ -0,0 +1,109 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-04-27 22:52+0200\n" ++"Last-Translator: Umeaboy \n" ++"Language-Team: none\n" ++"Language: sv\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP-server" ++ ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++ ++msgid "Active AHCP Leases" ++msgstr "" ++ ++msgid "Address" ++msgstr "Adress" ++ ++msgid "Advanced Settings" ++msgstr "Avancerade inställningar" ++ ++msgid "Age" ++msgstr "Ålder" ++ ++msgid "Announced DNS servers" ++msgstr "Aviserade DNS-servrar" ++ ++msgid "Announced NTP servers" ++msgstr "Aviserade NTP-servrar" ++ ++msgid "Announced prefixes" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "Samlar in data..." ++ ++msgid "Forwarder" ++msgstr "" ++ ++msgid "General Setup" ++msgstr "Allmän inställning" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 och IPv6" ++ ++msgid "IPv4 only" ++msgstr "Endast IPv4" ++ ++msgid "IPv6 only" ++msgstr "Endast IPv6" ++ ++msgid "Lease directory" ++msgstr "" ++ ++msgid "Lease validity time" ++msgstr "" ++ ++msgid "Log file" ++msgstr "Logg-fil" ++ ++msgid "Multicast address" ++msgstr "" ++ ++msgid "Operation mode" ++msgstr "Driftsläge" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Protokoll-familj" ++ ++msgid "Served interfaces" ++msgstr "" ++ ++msgid "Server" ++msgstr "Server" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Specificerar de aviserade IPv4 och IPv6 NTP-servrarna" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Specificerar de aviserade IPv4 och IPv6 namn-servrarna" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++ ++msgid "The AHCP Service is not running." ++msgstr "AHCP-tjänsten körs inte." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "" ++ ++msgid "There are no active leases." ++msgstr "" ++ ++msgid "Unique ID file" ++msgstr "Unik ID-fil" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/templates/ahcp.pot b/feeds/luci/applications/luci-app-ahcp/po/templates/ahcp.pot +new file mode 100644 +index 0000000..ea6bb42 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/templates/ahcp.pot +@@ -0,0 +1,99 @@ ++msgid "" ++msgstr "Content-Type: text/plain; charset=UTF-8" ++ ++msgid "AHCP Server" ++msgstr "" ++ ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++ ++msgid "Active AHCP Leases" ++msgstr "" ++ ++msgid "Address" ++msgstr "" ++ ++msgid "Advanced Settings" ++msgstr "" ++ ++msgid "Age" ++msgstr "" ++ ++msgid "Announced DNS servers" ++msgstr "" ++ ++msgid "Announced NTP servers" ++msgstr "" ++ ++msgid "Announced prefixes" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Forwarder" ++msgstr "" ++ ++msgid "General Setup" ++msgstr "" ++ ++msgid "IPv4 and IPv6" ++msgstr "" ++ ++msgid "IPv4 only" ++msgstr "" ++ ++msgid "IPv6 only" ++msgstr "" ++ ++msgid "Lease directory" ++msgstr "" ++ ++msgid "Lease validity time" ++msgstr "" ++ ++msgid "Log file" ++msgstr "" ++ ++msgid "Multicast address" ++msgstr "" ++ ++msgid "Operation mode" ++msgstr "" ++ ++msgid "Port" ++msgstr "" ++ ++msgid "Protocol family" ++msgstr "" ++ ++msgid "Served interfaces" ++msgstr "" ++ ++msgid "Server" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++ ++msgid "The AHCP Service is not running." ++msgstr "" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "" ++ ++msgid "There are no active leases." ++msgstr "" ++ ++msgid "Unique ID file" ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/tr/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/tr/ahcp.po +new file mode 100644 +index 0000000..ca33071 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/tr/ahcp.po +@@ -0,0 +1,113 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-11-25 14:51+0200\n" ++"Last-Translator: qbilay \n" ++"Language-Team: none\n" ++"Language: tr\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP Sunucusu" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP bir IPv6 ve IPv4/IPv6 çift ağ için otomatik yapılandırma protokolüdür. " ++"Yönlendirici Bildirimleri ve DHCP sunucuları geçici olarak yerine dağıtılmış " ++"ağlar için tasarlanmıştır." ++ ++msgid "Active AHCP Leases" ++msgstr "Aktif ACHP Kiralamaları" ++ ++msgid "Address" ++msgstr "Adres" ++ ++msgid "Advanced Settings" ++msgstr "Gelişmiş Ayarlar" ++ ++msgid "Age" ++msgstr "Yaş" ++ ++msgid "Announced DNS servers" ++msgstr "" ++ ++msgid "Announced NTP servers" ++msgstr "" ++ ++msgid "Announced prefixes" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "Veriler toplanıyor..." ++ ++msgid "Forwarder" ++msgstr "" ++ ++msgid "General Setup" ++msgstr "Genel Ayarlar" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 ve IPv6" ++ ++msgid "IPv4 only" ++msgstr "Sadece IPv4" ++ ++msgid "IPv6 only" ++msgstr "Sadece IPv6" ++ ++msgid "Lease directory" ++msgstr "Kiralama Dizini" ++ ++msgid "Lease validity time" ++msgstr "Kiralama Geçerlilik Süresi" ++ ++msgid "Log file" ++msgstr "Kayıt Dosyası" ++ ++msgid "Multicast address" ++msgstr "" ++ ++msgid "Operation mode" ++msgstr "Çalışma Modu" ++ ++msgid "Port" ++msgstr "Port" ++ ++msgid "Protocol family" ++msgstr "Protokol Ailesi" ++ ++msgid "Served interfaces" ++msgstr "Sunucu Arayüzleri" ++ ++msgid "Server" ++msgstr "Sunucu" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++ ++msgid "The AHCP Service is not running." ++msgstr " AHCP Hizmeti Çalışmıyor" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr " AHCP Hizmeti ID %ile çalışıyor" ++ ++msgid "There are no active leases." ++msgstr "Aktif Kiralama Yok" ++ ++msgid "Unique ID file" ++msgstr "Benzersiz ID Dosyası" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/uk/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/uk/ahcp.po +new file mode 100644 +index 0000000..7649019 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/uk/ahcp.po +@@ -0,0 +1,115 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-04-28 21:17+0200\n" ++"Last-Translator: Yurii \n" ++"Language-Team: none\n" ++"Language: uk\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "Сервер AHCP" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP є протоколом автоматичної конфігурації мереж IPv6 та IPv6/IPv4, що " ++"разраблений для використання замість DHCP. Наприклад, він використовується у " ++"стільникових ad-hoc мережах." ++ ++msgid "Active AHCP Leases" ++msgstr "Активні оренди AHCP" ++ ++msgid "Address" ++msgstr "Адреса" ++ ++msgid "Advanced Settings" ++msgstr "Додаткові параметри" ++ ++msgid "Age" ++msgstr "Вік" ++ ++msgid "Announced DNS servers" ++msgstr "Оголошені DNS-сервери" ++ ++msgid "Announced NTP servers" ++msgstr "Оголошені NTP-сервери" ++ ++msgid "Announced prefixes" ++msgstr "Оголошені префікси" ++ ++msgid "Collecting data..." ++msgstr "Збирання даних..." ++ ++msgid "Forwarder" ++msgstr "Спрямовувач" ++ ++msgid "General Setup" ++msgstr "Загальні параметри" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 та IPv6" ++ ++msgid "IPv4 only" ++msgstr "Тільки IPv4" ++ ++msgid "IPv6 only" ++msgstr "Тільки IPv6" ++ ++msgid "Lease directory" ++msgstr "Каталог оренд" ++ ++msgid "Lease validity time" ++msgstr "Термін дії оренди" ++ ++msgid "Log file" ++msgstr "Файл журналу" ++ ++msgid "Multicast address" ++msgstr "Групова адреса" ++ ++msgid "Operation mode" ++msgstr "Режим роботи" ++ ++msgid "Port" ++msgstr "Порт" ++ ++msgid "Protocol family" ++msgstr "Протокол" ++ ++msgid "Served interfaces" ++msgstr "Інтерфейси, які обслуговуються" ++ ++msgid "Server" ++msgstr "Сервер" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Дозволяє вказати оголошувані IPv4 та IPv6 NTP-сервери" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Дозволяє вказати оголошувані IPv4 та IPv6 DNS-сервери" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "" ++"Дозволяє вказати оголошувані IPv4 та IPv6 префікси мережі в нотації CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "Сервіс AHCP не запущено" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Сервіс AHCP запущено з ID %s." ++ ++msgid "There are no active leases." ++msgstr "Активних оренд немає." ++ ++msgid "Unique ID file" ++msgstr "Файл унікальних ідентифікаторів" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/vi/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/vi/ahcp.po +new file mode 100644 +index 0000000..1041add +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/vi/ahcp.po +@@ -0,0 +1,114 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-12-05 04:46+0200\n" ++"Last-Translator: Thành \n" ++"Language-Team: none\n" ++"Language: vi\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP Server" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP là một giao thức tự động cấu hình cho IPv6 và mạng IPv6/IPv4 dual-stack " ++"thiết kế để được sử dụng trong địa điểm phát hiện router và DHCP trên mạng, " ++"nơi rất khó hoặc không thể cấu hình một máy chủ trong tất cả các lĩnh vực " ++"phát sóng liên kết lớp, ví dụ như mạng Ad-hoc." ++ ++msgid "Active AHCP Leases" ++msgstr "Kích hoạt thuê AHCP" ++ ++msgid "Address" ++msgstr "Địa chỉ" ++ ++msgid "Advanced Settings" ++msgstr "Thiết lập nâng cao" ++ ++msgid "Age" ++msgstr "Thời gian thuê" ++ ++msgid "Announced DNS servers" ++msgstr "Quảng bá máy chủ DNS" ++ ++msgid "Announced NTP servers" ++msgstr "Quảng bá máy chủ NTP" ++ ++msgid "Announced prefixes" ++msgstr "Quảng bá tiền tố" ++ ++msgid "Collecting data..." ++msgstr "Đang kết xuất dữ liệu..." ++ ++msgid "Forwarder" ++msgstr "Chuyển tiếp" ++ ++msgid "General Setup" ++msgstr "Thiết lập chung" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 và IPv6" ++ ++msgid "IPv4 only" ++msgstr "Chỉ IPv4" ++ ++msgid "IPv6 only" ++msgstr "Chỉ IPv6" ++ ++msgid "Lease directory" ++msgstr "Thư mục cho thuê" ++ ++msgid "Lease validity time" ++msgstr "Thời gian cho thuê" ++ ++msgid "Log file" ++msgstr "Tệp nhật ký" ++ ++msgid "Multicast address" ++msgstr "Đa địa chỉ" ++ ++msgid "Operation mode" ++msgstr "Chế độ hoạt động" ++ ++msgid "Port" ++msgstr "Cổng" ++ ++msgid "Protocol family" ++msgstr "Giao thức" ++ ++msgid "Served interfaces" ++msgstr "Giao diện phục vụ" ++ ++msgid "Server" ++msgstr "Máy chủ" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "Quy định cụ thể máy chủ IPv4, IPv6 và NTP" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "Quy định cụ thể tên máy chủ IPv4, IPv6 và NTP" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "Định rõ công bố IPv4 và IPv6 mạng tiền tố trong ký hiệu CIDR" ++ ++msgid "The AHCP Service is not running." ++msgstr "Dịch vụ AHCP khộng hoạt động." ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "Dịch vụ AHCP đang hoạt động với ID %s." ++ ++msgid "There are no active leases." ++msgstr "Hiện không có người thuê" ++ ++msgid "Unique ID file" ++msgstr "Tệp Unique ID" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/zh-cn/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/zh-cn/ahcp.po +new file mode 100644 +index 0000000..295bbe7 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/zh-cn/ahcp.po +@@ -0,0 +1,113 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-10-09 03:31+0200\n" ++"Last-Translator: Tanyingyu \n" ++"Language-Team: none\n" ++"Language: zh_CN\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP 服务器" ++ ++#, fuzzy ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++"AHCP是一个自动配置IPv6和IPv6/IPv4双栈网络的协议,用于在网络上进行路由探测和地" ++"址分配。因为在某些网络上为每个链路层广播域均配置服务器是非常困难的,例如移动" ++"ad-hoc网络。" ++ ++msgid "Active AHCP Leases" ++msgstr "活动的AHCP租约" ++ ++msgid "Address" ++msgstr "地址" ++ ++msgid "Advanced Settings" ++msgstr "高级设置" ++ ++msgid "Age" ++msgstr "有效期" ++ ++msgid "Announced DNS servers" ++msgstr "公布DNS服务器" ++ ++msgid "Announced NTP servers" ++msgstr "公布NTP服务器" ++ ++msgid "Announced prefixes" ++msgstr "公布地址前缀" ++ ++msgid "Collecting data..." ++msgstr "数据收集中..." ++ ++msgid "Forwarder" ++msgstr "转发器" ++ ++msgid "General Setup" ++msgstr "通用设置" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4和IPv6" ++ ++msgid "IPv4 only" ++msgstr "仅IPv4" ++ ++msgid "IPv6 only" ++msgstr "仅IPv6" ++ ++msgid "Lease directory" ++msgstr "租赁目录" ++ ++msgid "Lease validity time" ++msgstr "租约有效期" ++ ++msgid "Log file" ++msgstr "日志文件" ++ ++msgid "Multicast address" ++msgstr "多播地址" ++ ++msgid "Operation mode" ++msgstr "工作模式" ++ ++msgid "Port" ++msgstr "端口" ++ ++msgid "Protocol family" ++msgstr "协议簇" ++ ++msgid "Served interfaces" ++msgstr "服务接口" ++ ++msgid "Server" ++msgstr "服务器" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "指定IPv4与IPv6 时间服务器" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "指定IPv4与IPv6 域名服务器" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "指定IPv4与IPv6网络地址前缀(CIDR表示法)" ++ ++msgid "The AHCP Service is not running." ++msgstr "AHCP服务没有运行。" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "AHCP服务程序进程ID %s" ++ ++msgid "There are no active leases." ++msgstr "没有活跃租约。" ++ ++msgid "Unique ID file" ++msgstr "UID文件" +diff --git a/feeds/luci/applications/luci-app-ahcp/po/zh-tw/ahcp.po b/feeds/luci/applications/luci-app-ahcp/po/zh-tw/ahcp.po +new file mode 100644 +index 0000000..dc7f6c5 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/po/zh-tw/ahcp.po +@@ -0,0 +1,109 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-08-10 12:30+0200\n" ++"Last-Translator: mp607 \n" ++"Language-Team: none\n" ++"Language: zh_TW\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "AHCP Server" ++msgstr "AHCP伺服器" ++ ++msgid "" ++"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 " ++"networks designed to be used in place of router discovery or DHCP on " ++"networks where it is difficult or impossible to configure a server within " ++"every link-layer broadcast domain, for example mobile ad-hoc networks." ++msgstr "" ++ ++msgid "Active AHCP Leases" ++msgstr "" ++ ++msgid "Address" ++msgstr "位置" ++ ++msgid "Advanced Settings" ++msgstr "進階設定" ++ ++msgid "Age" ++msgstr "" ++ ++msgid "Announced DNS servers" ++msgstr "匿名的DNS伺服器" ++ ++msgid "Announced NTP servers" ++msgstr "匿名的NTP伺服器" ++ ++msgid "Announced prefixes" ++msgstr "匿名的前綴" ++ ++msgid "Collecting data..." ++msgstr "收集資料" ++ ++msgid "Forwarder" ++msgstr "" ++ ++msgid "General Setup" ++msgstr "一般設定" ++ ++msgid "IPv4 and IPv6" ++msgstr "IPv4 和 IPv6" ++ ++msgid "IPv4 only" ++msgstr "只有IPv4" ++ ++msgid "IPv6 only" ++msgstr "只有IPv6" ++ ++msgid "Lease directory" ++msgstr "租用目錄" ++ ++msgid "Lease validity time" ++msgstr "租用有效時間" ++ ++msgid "Log file" ++msgstr "記錄檔" ++ ++msgid "Multicast address" ++msgstr "多點廣播位置" ++ ++msgid "Operation mode" ++msgstr "操作模式" ++ ++msgid "Port" ++msgstr "通訊埠" ++ ++msgid "Protocol family" ++msgstr "協定群組" ++ ++msgid "Served interfaces" ++msgstr "提供服務的界面" ++ ++msgid "Server" ++msgstr "伺服器" ++ ++msgid "Specifies the announced IPv4 and IPv6 NTP servers" ++msgstr "特別的匿名IPv4 與 IPv6 NTP 伺服器" ++ ++msgid "Specifies the announced IPv4 and IPv6 name servers" ++msgstr "特別的匿名IPv4 與 IPv6 名稱伺服器" ++ ++msgid "Specifies the announced IPv4 and IPv6 network prefixes in CIDR notation" ++msgstr "特別的匿名IPv4 與 IPv6 網路CIDR前綴" ++ ++msgid "The AHCP Service is not running." ++msgstr "AHCP服務沒有運作" ++ ++msgid "The AHCP Service is running with ID %s." ++msgstr "AHCP服務運作中 ID為 %s" ++ ++msgid "There are no active leases." ++msgstr "沒有使用中的租用" ++ ++msgid "Unique ID file" ++msgstr "獨立的ID檔案" +diff --git a/feeds/luci/applications/luci-app-ahcp/root/etc/uci-defaults/luci-ahcp b/feeds/luci/applications/luci-app-ahcp/root/etc/uci-defaults/luci-ahcp +new file mode 100755 +index 0000000..f2b2487 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ahcp/root/etc/uci-defaults/luci-ahcp +@@ -0,0 +1,11 @@ ++#!/bin/sh ++ ++uci -q batch <<-EOF >/dev/null ++ delete ucitrack.@ahcpd[-1] ++ add ucitrack ahcpd ++ set ucitrack.@ahcpd[-1].init=ahcpd ++ commit ucitrack ++EOF ++ ++rm -f /tmp/luci-indexcache ++exit 0 +diff --git a/feeds/luci/applications/luci-app-asterisk/Makefile b/feeds/luci/applications/luci-app-asterisk/Makefile +new file mode 100644 +index 0000000..3434e16 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/Makefile +@@ -0,0 +1,13 @@ ++# ++# Copyright (C) 2008-2014 The LuCI Team ++# ++# This is free software, licensed under the Apache License, Version 2.0 . ++# ++ ++include $(TOPDIR)/rules.mk ++ ++LUCI_TITLE:=LuCI Support for Asterisk ++ ++include ../../luci.mk ++ ++# call BuildPackage - OpenWrt buildroot signature +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/asterisk.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/asterisk.lua +new file mode 100644 +index 0000000..ceb738d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/asterisk.lua +@@ -0,0 +1,746 @@ ++-- Copyright 2009 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++module("luci.asterisk", package.seeall) ++require("luci.asterisk.cc_idd") ++ ++local _io = require("io") ++local uci = require("luci.model.uci").cursor() ++local sys = require("luci.sys") ++local util = require("luci.util") ++ ++AST_BIN = "/usr/sbin/asterisk" ++AST_FLAGS = "-r -x" ++ ++ ++--- LuCI Asterisk - Resync uci context ++function uci_resync() ++ uci = luci.model.uci.cursor() ++end ++ ++--- LuCI Asterisk io interface ++-- Handles low level io. ++-- @type module ++io = luci.util.class() ++ ++--- Execute command and return output ++-- @param command String containing the command to execute ++-- @return String containing the command output ++function io.exec(command) ++ local fh = _io.popen( "%s %s %q" %{ AST_BIN, AST_FLAGS, command }, "r" ) ++ assert(fh, "Failed to invoke asterisk") ++ ++ local buffer = fh:read("*a") ++ fh:close() ++ return buffer ++end ++ ++--- Execute command and invoke given callback for each readed line ++-- @param command String containing the command to execute ++-- @param callback Function to call back for each line ++-- @return Always true ++function io.execl(command, callback) ++ local ln ++ local fh = _io.popen( "%s %s %q" %{ AST_BIN, AST_FLAGS, command }, "r" ) ++ assert(fh, "Failed to invoke asterisk") ++ ++ repeat ++ ln = fh:read("*l") ++ callback(ln) ++ until not ln ++ ++ fh:close() ++ return true ++end ++ ++--- Execute command and return an iterator that returns one line per invokation ++-- @param command String containing the command to execute ++-- @return Iterator function ++function io.execi(command) ++ local fh = _io.popen( "%s %s %q" %{ AST_BIN, AST_FLAGS, command }, "r" ) ++ assert(fh, "Failed to invoke asterisk") ++ ++ return function() ++ local ln = fh:read("*l") ++ if not ln then fh:close() end ++ return ln ++ end ++end ++ ++ ++--- LuCI Asterisk - core status ++core = luci.util.class() ++ ++--- Retrive version string. ++-- @return String containing the reported asterisk version ++function core.version(self) ++ local version = io.exec("core show version") ++ return version:gsub(" *\n", "") ++end ++ ++ ++--- LuCI Asterisk - SIP information. ++-- @type module ++sip = luci.util.class() ++ ++--- Get a list of known SIP peers ++-- @return Table containing each SIP peer ++function sip.peers(self) ++ local head = false ++ local peers = { } ++ ++ for line in io.execi("sip show peers") do ++ if not head then ++ head = true ++ elseif not line:match(" sip peers ") then ++ local online, delay, id, uid ++ local name, host, dyn, nat, acl, port, status = ++ line:match("(.-) +(.-) +([D ]) ([N ]) (.) (%d+) +(.+)") ++ ++ if host == '(Unspecified)' then host = nil end ++ if port == '0' then port = nil else port = tonumber(port) end ++ ++ dyn = ( dyn == 'D' and true or false ) ++ nat = ( nat == 'N' and true or false ) ++ acl = ( acl ~= ' ' and true or false ) ++ ++ online, delay = status:match("(OK) %((%d+) ms%)") ++ ++ if online == 'OK' then ++ online = true ++ delay = tonumber(delay) ++ elseif status ~= 'Unmonitored' then ++ online = false ++ delay = 0 ++ else ++ online = nil ++ delay = 0 ++ end ++ ++ id, uid = name:match("(.+)/(.+)") ++ ++ if not ( id and uid ) then ++ id = name .. "..." ++ uid = nil ++ end ++ ++ peers[#peers+1] = { ++ online = online, ++ delay = delay, ++ name = id, ++ user = uid, ++ dynamic = dyn, ++ nat = nat, ++ acl = acl, ++ host = host, ++ port = port ++ } ++ end ++ end ++ ++ return peers ++end ++ ++--- Get informations of given SIP peer ++-- @param peer String containing the name of the SIP peer ++function sip.peer(peer) ++ local info = { } ++ local keys = { } ++ ++ for line in io.execi("sip show peer " .. peer) do ++ if #line > 0 then ++ local key, val = line:match("(.-) *: +(.*)") ++ if key and val then ++ ++ key = key:gsub("^ +",""):gsub(" +$", "") ++ val = val:gsub("^ +",""):gsub(" +$", "") ++ ++ if key == "* Name" then ++ key = "Name" ++ elseif key == "Addr->IP" then ++ info.address, info.port = val:match("(.+) Port (.+)") ++ info.port = tonumber(info.port) ++ elseif key == "Status" then ++ info.online, info.delay = val:match("(OK) %((%d+) ms%)") ++ if info.online == 'OK' then ++ info.online = true ++ info.delay = tonumber(info.delay) ++ elseif status ~= 'Unmonitored' then ++ info.online = false ++ info.delay = 0 ++ else ++ info.online = nil ++ info.delay = 0 ++ end ++ end ++ ++ if val == 'Yes' or val == 'yes' or val == '' then ++ val = true ++ elseif val == 'No' or val == 'no' then ++ val = false ++ elseif val == '' or val == '(none)' then ++ val = nil ++ end ++ ++ keys[#keys+1] = key ++ info[key] = val ++ end ++ end ++ end ++ ++ return info, keys ++end ++ ++ ++--- LuCI Asterisk - Internal helpers ++-- @type module ++tools = luci.util.class() ++ ++--- Convert given value to a list of tokens. Split by white space. ++-- @param val String or table value ++-- @return Table containing tokens ++function tools.parse_list(v) ++ local tokens = { } ++ ++ v = type(v) == "table" and v or { v } ++ for _, v in ipairs(v) do ++ if type(v) == "string" then ++ for v in v:gmatch("(%S+)") do ++ tokens[#tokens+1] = v ++ end ++ end ++ end ++ ++ return tokens ++end ++ ++--- Convert given list to a collection of hyperlinks ++-- @param list Table of tokens ++-- @param url String pattern or callback function to construct urls (optional) ++-- @param sep String containing the seperator (optional, default is ", ") ++-- @return String containing the html fragment ++function tools.hyperlinks(list, url, sep) ++ local html ++ ++ local function mkurl(p, t) ++ if type(p) == "string" then ++ return p:format(t) ++ elseif type(p) == "function" then ++ return p(t) ++ else ++ return '#' ++ end ++ end ++ ++ list = list or { } ++ url = url or "%s" ++ sep = sep or ", " ++ ++ for _, token in ipairs(list) do ++ html = ( html and html .. sep or '' ) .. ++ '%s' %{ mkurl(url, token), token } ++ end ++ ++ return html or '' ++end ++ ++ ++--- LuCI Asterisk - International Direct Dialing Prefixes ++-- @type module ++idd = luci.util.class() ++ ++--- Lookup the country name for the given IDD code. ++-- @param country String containing IDD code ++-- @return String containing the country name ++function idd.country(c) ++ for _, v in ipairs(cc_idd.CC_IDD) do ++ if type(v[3]) == "table" then ++ for _, v2 in ipairs(v[3]) do ++ if v2 == tostring(c) then ++ return v[1] ++ end ++ end ++ elseif v[3] == tostring(c) then ++ return v[1] ++ end ++ end ++end ++ ++--- Lookup the country code for the given IDD code. ++-- @param country String containing IDD code ++-- @return Table containing the country code(s) ++function idd.cc(c) ++ for _, v in ipairs(cc_idd.CC_IDD) do ++ if type(v[3]) == "table" then ++ for _, v2 in ipairs(v[3]) do ++ if v2 == tostring(c) then ++ return type(v[2]) == "table" ++ and v[2] or { v[2] } ++ end ++ end ++ elseif v[3] == tostring(c) then ++ return type(v[2]) == "table" ++ and v[2] or { v[2] } ++ end ++ end ++end ++ ++--- Lookup the IDD code(s) for the given country. ++-- @param idd String containing the country name ++-- @return Table containing the IDD code(s) ++function idd.idd(c) ++ for _, v in ipairs(cc_idd.CC_IDD) do ++ if v[1]:lower():match(c:lower()) then ++ return type(v[3]) == "table" ++ and v[3] or { v[3] } ++ end ++ end ++end ++ ++--- Populate given CBI field with IDD codes. ++-- @param field CBI option object ++-- @return (nothing) ++function idd.cbifill(o) ++ for i, v in ipairs(cc_idd.CC_IDD) do ++ o:value("_%i" % i, util.pcdata(v[1])) ++ end ++ ++ o.formvalue = function(...) ++ local val = luci.cbi.Value.formvalue(...) ++ if val:sub(1,1) == "_" then ++ val = tonumber((val:gsub("^_", ""))) ++ if val then ++ return type(cc_idd.CC_IDD[val][3]) == "table" ++ and cc_idd.CC_IDD[val][3] or { cc_idd.CC_IDD[val][3] } ++ end ++ end ++ return val ++ end ++ ++ o.cfgvalue = function(...) ++ local val = luci.cbi.Value.cfgvalue(...) ++ if val then ++ val = tools.parse_list(val) ++ for i, v in ipairs(cc_idd.CC_IDD) do ++ if type(v[3]) == "table" then ++ if v[3][1] == val[1] then ++ return "_%i" % i ++ end ++ else ++ if v[3] == val[1] then ++ return "_%i" % i ++ end ++ end ++ end ++ end ++ return val ++ end ++end ++ ++ ++--- LuCI Asterisk - Country Code Prefixes ++-- @type module ++cc = luci.util.class() ++ ++--- Lookup the country name for the given CC code. ++-- @param country String containing CC code ++-- @return String containing the country name ++function cc.country(c) ++ for _, v in ipairs(cc_idd.CC_IDD) do ++ if type(v[2]) == "table" then ++ for _, v2 in ipairs(v[2]) do ++ if v2 == tostring(c) then ++ return v[1] ++ end ++ end ++ elseif v[2] == tostring(c) then ++ return v[1] ++ end ++ end ++end ++ ++--- Lookup the international dialing code for the given CC code. ++-- @param cc String containing CC code ++-- @return String containing IDD code ++function cc.idd(c) ++ for _, v in ipairs(cc_idd.CC_IDD) do ++ if type(v[2]) == "table" then ++ for _, v2 in ipairs(v[2]) do ++ if v2 == tostring(c) then ++ return type(v[3]) == "table" ++ and v[3] or { v[3] } ++ end ++ end ++ elseif v[2] == tostring(c) then ++ return type(v[3]) == "table" ++ and v[3] or { v[3] } ++ end ++ end ++end ++ ++--- Lookup the CC code(s) for the given country. ++-- @param country String containing the country name ++-- @return Table containing the CC code(s) ++function cc.cc(c) ++ for _, v in ipairs(cc_idd.CC_IDD) do ++ if v[1]:lower():match(c:lower()) then ++ return type(v[2]) == "table" ++ and v[2] or { v[2] } ++ end ++ end ++end ++ ++--- Populate given CBI field with CC codes. ++-- @param field CBI option object ++-- @return (nothing) ++function cc.cbifill(o) ++ for i, v in ipairs(cc_idd.CC_IDD) do ++ o:value("_%i" % i, util.pcdata(v[1])) ++ end ++ ++ o.formvalue = function(...) ++ local val = luci.cbi.Value.formvalue(...) ++ if val:sub(1,1) == "_" then ++ val = tonumber((val:gsub("^_", ""))) ++ if val then ++ return type(cc_idd.CC_IDD[val][2]) == "table" ++ and cc_idd.CC_IDD[val][2] or { cc_idd.CC_IDD[val][2] } ++ end ++ end ++ return val ++ end ++ ++ o.cfgvalue = function(...) ++ local val = luci.cbi.Value.cfgvalue(...) ++ if val then ++ val = tools.parse_list(val) ++ for i, v in ipairs(cc_idd.CC_IDD) do ++ if type(v[2]) == "table" then ++ if v[2][1] == val[1] then ++ return "_%i" % i ++ end ++ else ++ if v[2] == val[1] then ++ return "_%i" % i ++ end ++ end ++ end ++ end ++ return val ++ end ++end ++ ++ ++--- LuCI Asterisk - Dialzone ++-- @type module ++dialzone = luci.util.class() ++ ++--- Parse a dialzone section ++-- @param zone Table containing the zone info ++-- @return Table with parsed information ++function dialzone.parse(z) ++ if z['.name'] then ++ return { ++ trunks = tools.parse_list(z.uses), ++ name = z['.name'], ++ description = z.description or z['.name'], ++ addprefix = z.addprefix, ++ matches = tools.parse_list(z.match), ++ intlmatches = tools.parse_list(z.international), ++ countrycode = z.countrycode, ++ localzone = z.localzone, ++ localprefix = z.localprefix ++ } ++ end ++end ++ ++--- Get a list of known dial zones ++-- @return Associative table of zones and table of zone names ++function dialzone.zones() ++ local zones = { } ++ local znames = { } ++ uci:foreach("asterisk", "dialzone", ++ function(z) ++ zones[z['.name']] = dialzone.parse(z) ++ znames[#znames+1] = z['.name'] ++ end) ++ return zones, znames ++end ++ ++--- Get a specific dial zone ++-- @param name Name of the dial zone ++-- @return Table containing zone information ++function dialzone.zone(n) ++ local zone ++ uci:foreach("asterisk", "dialzone", ++ function(z) ++ if z['.name'] == n then ++ zone = dialzone.parse(z) ++ end ++ end) ++ return zone ++end ++ ++--- Find uci section hash for given zone number ++-- @param idx Zone number ++-- @return String containing the uci hash pointing to the section ++function dialzone.ucisection(i) ++ local hash ++ local index = 1 ++ i = tonumber(i) ++ uci:foreach("asterisk", "dialzone", ++ function(z) ++ if not hash and index == i then ++ hash = z['.name'] ++ end ++ index = index + 1 ++ end) ++ return hash ++end ++ ++ ++--- LuCI Asterisk - Voicemailbox ++-- @type module ++voicemail = luci.util.class() ++ ++--- Parse a voicemail section ++-- @param zone Table containing the mailbox info ++-- @return Table with parsed information ++function voicemail.parse(z) ++ if z.number and #z.number > 0 then ++ local v = { ++ id = '%s@%s' %{ z.number, z.context or 'default' }, ++ number = z.number, ++ context = z.context or 'default', ++ name = z.name or z['.name'] or 'OpenWrt', ++ zone = z.zone or 'homeloc', ++ password = z.password or '0000', ++ email = z.email or '', ++ page = z.page or '', ++ dialplans = { } ++ } ++ ++ uci:foreach("asterisk", "dialplanvoice", ++ function(s) ++ if s.dialplan and #s.dialplan > 0 and ++ s.voicebox == v.number ++ then ++ v.dialplans[#v.dialplans+1] = s.dialplan ++ end ++ end) ++ ++ return v ++ end ++end ++ ++--- Get a list of known voicemail boxes ++-- @return Associative table of boxes and table of box numbers ++function voicemail.boxes() ++ local vboxes = { } ++ local vnames = { } ++ uci:foreach("asterisk", "voicemail", ++ function(z) ++ local v = voicemail.parse(z) ++ if v then ++ local n = '%s@%s' %{ v.number, v.context } ++ vboxes[n] = v ++ vnames[#vnames+1] = n ++ end ++ end) ++ return vboxes, vnames ++end ++ ++--- Get a specific voicemailbox ++-- @param number Number of the voicemailbox ++-- @return Table containing mailbox information ++function voicemail.box(n) ++ local box ++ n = n:gsub("@.+$","") ++ uci:foreach("asterisk", "voicemail", ++ function(z) ++ if z.number == tostring(n) then ++ box = voicemail.parse(z) ++ end ++ end) ++ return box ++end ++ ++--- Find all voicemailboxes within the given dialplan ++-- @param plan Dialplan name or table ++-- @return Associative table containing extensions mapped to mailbox info ++function voicemail.in_dialplan(p) ++ local plan = type(p) == "string" and p or p.name ++ local boxes = { } ++ uci:foreach("asterisk", "dialplanvoice", ++ function(s) ++ if s.extension and #s.extension > 0 and s.dialplan == plan then ++ local box = voicemail.box(s.voicebox) ++ if box then ++ boxes[s.extension] = box ++ end ++ end ++ end) ++ return boxes ++end ++ ++--- Remove voicemailbox and associated extensions from config ++-- @param box Voicemailbox number or table ++-- @param ctx UCI context to use (optional) ++-- @return Boolean indicating success ++function voicemail.remove(v, ctx) ++ ctx = ctx or uci ++ local box = type(v) == "string" and v or v.number ++ local ok1 = ctx:delete_all("asterisk", "voicemail", {number=box}) ++ local ok2 = ctx:delete_all("asterisk", "dialplanvoice", {voicebox=box}) ++ return ( ok1 or ok2 ) and true or false ++end ++ ++ ++--- LuCI Asterisk - MeetMe Conferences ++-- @type module ++meetme = luci.util.class() ++ ++--- Parse a meetme section ++-- @param room Table containing the room info ++-- @return Table with parsed information ++function meetme.parse(r) ++ if r.room and #r.room > 0 then ++ local v = { ++ room = r.room, ++ pin = r.pin or '', ++ adminpin = r.adminpin or '', ++ description = r._description or '', ++ dialplans = { } ++ } ++ ++ uci:foreach("asterisk", "dialplanmeetme", ++ function(s) ++ if s.dialplan and #s.dialplan > 0 and s.room == v.room then ++ v.dialplans[#v.dialplans+1] = s.dialplan ++ end ++ end) ++ ++ return v ++ end ++end ++ ++--- Get a list of known meetme rooms ++-- @return Associative table of rooms and table of room numbers ++function meetme.rooms() ++ local mrooms = { } ++ local mnames = { } ++ uci:foreach("asterisk", "meetme", ++ function(r) ++ local v = meetme.parse(r) ++ if v then ++ mrooms[v.room] = v ++ mnames[#mnames+1] = v.room ++ end ++ end) ++ return mrooms, mnames ++end ++ ++--- Get a specific meetme room ++-- @param number Number of the room ++-- @return Table containing room information ++function meetme.room(n) ++ local room ++ uci:foreach("asterisk", "meetme", ++ function(r) ++ if r.room == tostring(n) then ++ room = meetme.parse(r) ++ end ++ end) ++ return room ++end ++ ++--- Find all meetme rooms within the given dialplan ++-- @param plan Dialplan name or table ++-- @return Associative table containing extensions mapped to room info ++function meetme.in_dialplan(p) ++ local plan = type(p) == "string" and p or p.name ++ local rooms = { } ++ uci:foreach("asterisk", "dialplanmeetme", ++ function(s) ++ if s.extension and #s.extension > 0 and s.dialplan == plan then ++ local room = meetme.room(s.room) ++ if room then ++ rooms[s.extension] = room ++ end ++ end ++ end) ++ return rooms ++end ++ ++--- Remove meetme room and associated extensions from config ++-- @param room Voicemailbox number or table ++-- @param ctx UCI context to use (optional) ++-- @return Boolean indicating success ++function meetme.remove(v, ctx) ++ ctx = ctx or uci ++ local room = type(v) == "string" and v or v.number ++ local ok1 = ctx:delete_all("asterisk", "meetme", {room=room}) ++ local ok2 = ctx:delete_all("asterisk", "dialplanmeetme", {room=room}) ++ return ( ok1 or ok2 ) and true or false ++end ++ ++ ++--- LuCI Asterisk - Dialplan ++-- @type module ++dialplan = luci.util.class() ++ ++--- Parse a dialplan section ++-- @param plan Table containing the plan info ++-- @return Table with parsed information ++function dialplan.parse(z) ++ if z['.name'] then ++ local plan = { ++ zones = { }, ++ name = z['.name'], ++ description = z.description or z['.name'] ++ } ++ ++ -- dialzones ++ for _, name in ipairs(tools.parse_list(z.include)) do ++ local zone = dialzone.zone(name) ++ if zone then ++ plan.zones[#plan.zones+1] = zone ++ end ++ end ++ ++ -- voicemailboxes ++ plan.voicemailboxes = voicemail.in_dialplan(plan) ++ ++ -- meetme conferences ++ plan.meetmerooms = meetme.in_dialplan(plan) ++ ++ return plan ++ end ++end ++ ++--- Get a list of known dial plans ++-- @return Associative table of plans and table of plan names ++function dialplan.plans() ++ local plans = { } ++ local pnames = { } ++ uci:foreach("asterisk", "dialplan", ++ function(p) ++ plans[p['.name']] = dialplan.parse(p) ++ pnames[#pnames+1] = p['.name'] ++ end) ++ return plans, pnames ++end ++ ++--- Get a specific dial plan ++-- @param name Name of the dial plan ++-- @return Table containing plan information ++function dialplan.plan(n) ++ local plan ++ uci:foreach("asterisk", "dialplan", ++ function(p) ++ if p['.name'] == n then ++ plan = dialplan.parse(p) ++ end ++ end) ++ return plan ++end +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/asterisk/cc_idd.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/asterisk/cc_idd.lua +new file mode 100644 +index 0000000..6ed8dfd +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/asterisk/cc_idd.lua +@@ -0,0 +1,245 @@ ++-- Licensed to the public under the Apache License 2.0. ++ ++module "luci.asterisk.cc_idd" ++ ++CC_IDD = { ++-- Country, CC, IDD ++ { "Afghanistan", "93", "00" }, ++ { "Albania", "355", "00" }, ++ { "Algeria", "213", "00" }, ++ { "American Samoa", "684", "00" }, ++ { "Andorra", "376", "00" }, ++ { "Angola", "244", "00" }, ++ { "Anguilla", "264", "011" }, ++ { "Antarctica", "672", "" }, ++ { "Antigua", "268", "011" }, ++ { "Argentina", "54", "00" }, ++ { "Armenia", "374", "00" }, ++ { "Aruba", "297", "00" }, ++ { "Ascension Island", "247", "00" }, ++ { "Australia", "61", "0011" }, ++ { "Austria", "43", "00" }, ++ { "Azberbaijan", "994", "00" }, ++ { "Bahamas", "242", "011" }, ++ { "Bahrain", "973", "00" }, ++ { "Bangladesh", "880", "00" }, ++ { "Barbados", "246", "011" }, ++ { "Barbuda", "268", "011" }, ++ { "Belarus", "375", "810" }, ++ { "Belgium", "32", "00" }, ++ { "Belize", "501", "00" }, ++ { "Benin", "229", "00" }, ++ { "Bermuda", "441", "011" }, ++ { "Bhutan", "975", "00" }, ++ { "Bolivia", "591", "00" }, ++ { "Bosnia", "387", "00" }, ++ { "Botswana", "267", "00" }, ++ { "Brazil", "55", "00" }, ++ { "British Virgin Islands", "284", "011" }, ++ { "Brunei", "673", "00" }, ++ { "Bulgaria", "359", "00" }, ++ { "Burkina Faso", "226", "00" }, ++ { "Burma (Myanmar)", "95", "00" }, ++ { "Burundi", "257", "00" }, ++ { "Cambodia", "855", "001" }, ++ { "Cameroon", "237", "00" }, ++ { "Canada", "1", "011" }, ++ { "Cape Verde Islands", "238", "0" }, ++ { "Cayman Islands", "345", "011" }, ++ { "Central African Rep.", "236", "00" }, ++ { "Chad", "235", "15" }, ++ { "Chile", "56", "00" }, ++ { "China", "86", "00" }, ++ { "Christmas Island", "61", "0011" }, ++ { "Cocos Islands", "61", "0011" }, ++ { "Colombia", "57", "00" }, ++ { "Comoros", "269", "00" }, ++ { "Congo", "242", "00" }, ++ { "Congo, Dem. Rep. of", "243", "00" }, ++ { "Cook Islands", "682", "00" }, ++ { "Costa Rica", "506", "00" }, ++ { "Croatia", "385", "00" }, ++ { "Cuba", "53", "119" }, ++ { "Cyprus", "357", "00" }, ++ { "Czech Republic", "420", "00" }, ++ { "Denmark", "45", "00" }, ++ { "Diego Garcia", "246", "00" }, ++ { "Djibouti", "253", "00" }, ++ { "Dominica", "767", "011" }, ++ { "Dominican Rep.", "809", "011" }, ++ { "Ecuador", "593", "00" }, ++ { "Egypt", "20", "00" }, ++ { "El Salvador", "503", "00" }, ++ { "Equatorial Guinea", "240", "00" }, ++ { "Eritrea", "291", "00" }, ++ { "Estonia", "372", "00" }, ++ { "Ethiopia", "251", "00" }, ++ { "Faeroe Islands", "298", "00" }, ++ { "Falkland Islands", "500", "00" }, ++ { "Fiji Islands", "679", "00" }, ++ { "Finland", "358", "00" }, ++ { "France", "33", "00" }, ++ { "French Antilles", "596", "00" }, ++ { "French Guiana", "594", "00" }, ++ { "French Polynesia", "689", "00" }, ++ { "Gabon", "241", "00" }, ++ { "Gambia", "220", "00" }, ++ { "Georgia", "995", "810" }, ++ { "Germany", "49", "00" }, ++ { "Ghana", "233", "00" }, ++ { "Gibraltar", "350", "00" }, ++ { "Greece", "30", "00" }, ++ { "Greenland", "299", "00" }, ++ { "Grenada", "473", "011" }, ++ { "Guadeloupe", "590", "00" }, ++ { "Guam", "671", "011" }, ++ { "Guantanamo Bay", "5399", "00" }, ++ { "Guatemala", "502", "00" }, ++ { "Guinea", "224", "00" }, ++ { "Guinea Bissau", "245", "00" }, ++ { "Guyana", "592", "001" }, ++ { "Haiti", "509", "00" }, ++ { "Honduras", "504", "00" }, ++ { "Hong Kong", "852", "001" }, ++ { "Hungary", "36", "00" }, ++ { "Iceland", "354", "00" }, ++ { "India", "91", "00" }, ++ { "Indonesia", "62", { "001", "008" } }, ++ { "Iran", "98", "00" }, ++ { "Iraq", "964", "00" }, ++ { "Ireland", "353", "00" }, ++ { "Israel", "972", "00" }, ++ { "Italy", "39", "00" }, ++ { "Ivory Coast", "225", "00" }, ++ { "Jamaica", "876", "011" }, ++ { "Japan", "81", "001" }, ++ { "Jordan", "962", "00" }, ++ { "Kazakhstan", "7", "810" }, ++ { "Kenya", "254", "000" }, ++ { "Kiribati", "686", "00" }, ++ { "Korea, North", "850", "00" }, ++ { "Korea, South", "82", "001" }, ++ { "Kuwait", "965", "00" }, ++ { "Kyrgyzstan", "996", "00" }, ++ { "Laos", "856", "00" }, ++ { "Latvia", "371", "00" }, ++ { "Lebanon", "961", "00" }, ++ { "Lesotho", "266", "00" }, ++ { "Liberia", "231", "00" }, ++ { "Libya", "218", "00" }, ++ { "Liechtenstein", "423", "00" }, ++ { "Lithuania", "370", "00" }, ++ { "Luxembourg", "352", "00" }, ++ { "Macau", "853", "00" }, ++ { "Macedonia", "389", "00" }, ++ { "Madagascar", "261", "00" }, ++ { "Malawi", "265", "00" }, ++ { "Malaysia", "60", "00" }, ++ { "Maldives", "960", "00" }, ++ { "Mali", "223", "00" }, ++ { "Malta", "356", "00" }, ++ { "Mariana Islands", "670", "011" }, ++ { "Marshall Islands", "692", "011" }, ++ { "Martinique", "596", "00" }, ++ { "Mauritania", "222", "00" }, ++ { "Mauritius", "230", "00" }, ++ { "Mayotte Islands", "269", "00" }, ++ { "Mexico", "52", "00" }, ++ { "Micronesia", "691", "011" }, ++ { "Midway Island", "808", "011" }, ++ { "Moldova", "373", "00" }, ++ { "Monaco", "377", "00" }, ++ { "Mongolia", "976", "001" }, ++ { "Montserrat", "664", "011" }, ++ { "Morocco", "212", "00" }, ++ { "Mozambique", "258", "00" }, ++ { "Myanmar (Burma)", "95", "00" }, ++ { "Namibia", "264", "00" }, ++ { "Nauru", "674", "00" }, ++ { "Nepal", "977", "00" }, ++ { "Netherlands", "31", "00" }, ++ { "Netherlands Antilles", "599", "00" }, ++ { "Nevis", "869", "011" }, ++ { "New Caledonia", "687", "00" }, ++ { "New Zealand", "64", "00" }, ++ { "Nicaragua", "505", "00" }, ++ { "Niger", "227", "00" }, ++ { "Nigeria", "234", "009" }, ++ { "Niue", "683", "00" }, ++ { "Norfolk Island", "672", "00" }, ++ { "Norway", "47", "00" }, ++ { "Oman", "968", "00" }, ++ { "Pakistan", "92", "00" }, ++ { "Palau", "680", "011" }, ++ { "Palestine", "970", "00" }, ++ { "Panama", "507", "00" }, ++ { "Papua New Guinea", "675", "05" }, ++ { "Paraguay", "595", "002" }, ++ { "Peru", "51", "00" }, ++ { "Philippines", "63", "00" }, ++ { "Poland", "48", "00" }, ++ { "Portugal", "351", "00" }, ++ { "Puerto Rico", { "787", "939" }, "011" }, ++ { "Qatar", "974", "00" }, ++ { "Reunion Island", "262", "00" }, ++ { "Romania", "40", "00" }, ++ { "Russia", "7", "810" }, ++ { "Rwanda", "250", "00" }, ++ { "St. Helena", "290", "00" }, ++ { "St. Kitts", "869", "011" }, ++ { "St. Lucia", "758", "011" }, ++ { "St. Perre & Miquelon", "508", "00" }, ++ { "St. Vincent", "784", "011" }, ++ { "San Marino", "378", "00" }, ++ { "Sao Tome & Principe", "239", "00" }, ++ { "Saudi Arabia", "966", "00" }, ++ { "Senegal", "221", "00" }, ++ { "Serbia", "381", "99" }, ++ { "Seychelles", "248", "00" }, ++ { "Sierra Leone", "232", "00" }, ++ { "Singapore", "65", "001" }, ++ { "Slovakia", "421", "00" }, ++ { "Slovenia", "386", "00" }, ++ { "Solomon Islands", "677", "00" }, ++ { "Somalia", "252", "00" }, ++ { "South Africa", "27", "09" }, ++ { "Spain", "34", "00" }, ++ { "Sri Lanka", "94", "00" }, ++ { "Sudan", "249", "00" }, ++ { "Suriname", "597", "00" }, ++ { "Swaziland", "268", "00" }, ++ { "Sweden", "46", "00" }, ++ { "Switzerland", "41", "00" }, ++ { "Syria", "963", "00" }, ++ { "Taiwan", "886", "002" }, ++ { "Tajikistan", "992", "810" }, ++ { "Tanzania", "255", "00" }, ++ { "Thailand", "66", "001" }, ++ { "Togo", "228", "00" }, ++ { "Tonga", "676", "00" }, ++ { "Trinidad & Tobago", "868", "011" }, ++ { "Tunisia", "216", "00" }, ++ { "Turkey", "90", "00" }, ++ { "Turkmenistan", "993", "810" }, ++ { "Turks & Caicos", "649", "011" }, ++ { "Tuvalu", "688", "00" }, ++ { "Uganda", "256", "000" }, ++ { "Ukraine", "380", "810" }, ++ { "United Arab Emirates", "971", "00" }, ++ { "United Kingdom", "44", "00" }, ++ { "Uruguay", "598", "00" }, ++ { "USA", "1", "011" }, ++ { "US Virgin Islands", "340", "011" }, ++ { "Uzbekistan", "998", "810" }, ++ { "Vanuatu", "678", "00" }, ++ { "Vatican City", "39", "00" }, ++ { "Venezuela", "58", "00" }, ++ { "Vietnam", "84", "00" }, ++ { "Wake Island", "808", "00" }, ++ { "Wallis & Futuna", "681", "19" }, ++ { "Western Samoa", "685", "00" }, ++ { "Yemen", "967", "00" }, ++ { "Yugoslavia", "381", "99" }, ++ { "Zambia", "260", "00" }, ++ { "Zimbabwe", "263", "00" } ++} +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/controller/asterisk.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/controller/asterisk.lua +new file mode 100644 +index 0000000..4923584 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/controller/asterisk.lua +@@ -0,0 +1,194 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++module("luci.controller.asterisk", package.seeall) ++ ++function index() ++ ++ entry({"admin", "services", "asterisk"}, cbi("asterisk"), "Asterisk", 80) ++ ++ entry({"admin", "services", "asterisk", "voice"}, cbi("asterisk-voice"), "Voice Functions", 1) ++ entry({"admin", "services", "asterisk", "meetme"}, cbi("asterisk-meetme"), "Meetme Conferences", 2) ++ ++ entry({"admin", "services", "asterisk", "iax-conns"}, cbi("asterisk-iax-connections"), "IAX Connections", 3) ++ entry({"admin", "services", "asterisk", "sip-conns"}, cbi("asterisk-sip-connections"), "SIP Connections", 4) ++ ++ entry({"admin", "services", "asterisk", "dialplans"}, cbi("asterisk-dialplans"), "Dial Plans", 5) ++ ++ entry({"admin", "services", "asterisk", "mod"}, cbi("asterisk-mod-app"), "Modules", 4) ++ entry({"admin", "services", "asterisk", "mod", "app"}, cbi("asterisk-mod-app"), "Applications", 1) ++ entry({"admin", "services", "asterisk", "mod", "cdr"}, cbi("asterisk-mod-cdr"), "Call Detail Records", 2) ++ entry({"admin", "services", "asterisk", "mod", "chan"}, cbi("asterisk-mod-chan"), "Channels", 3) ++ entry({"admin", "services", "asterisk", "mod", "codec"}, cbi("asterisk-mod-codec"), "Codecs", 4) ++ entry({"admin", "services", "asterisk", "mod", "format"}, cbi("asterisk-mod-format"), "Format", 5) ++ entry({"admin", "services", "asterisk", "mod", "func"}, cbi("asterisk-mod-func"), "Functions", 6) ++ entry({"admin", "services", "asterisk", "mod", "pbx"}, cbi("asterisk-mod-pbx"), "PBX", 7) ++ entry({"admin", "services", "asterisk", "mod", "res"}, cbi("asterisk-mod-res"), "Resources", 8) ++ entry({"admin", "services", "asterisk", "mod", "res", "feature"}, ++ cbi("asterisk-mod-res-feature"), "Feature Module Configuration", 9 ) ++ ++ ++ entry({"admin", "asterisk"}, cbi("asterisk/main"), "Asterisk", 99).i18n = "asterisk" ++ ++ entry({"admin", "asterisk", "phones"}, cbi("asterisk/phones"), "Phones", 1) ++ entry({"admin", "asterisk", "phones", "sip"}, cbi("asterisk/phone_sip"), nil, 1).leaf = true ++ --entry({"admin", "asterisk", "phones", "exten"}, cbi("asterisk/phone_exten"), "Extensions", 2).leaf = true ++ ++ entry({"admin", "asterisk", "trunks"}, cbi("asterisk/trunks"), "Trunks", 2) ++ entry({"admin", "asterisk", "trunks", "sip"}, cbi("asterisk/trunk_sip"), nil, 1).leaf = true ++ ++ entry({"admin", "asterisk", "voicemail"}, cbi("asterisk/voicemail"), "Voicemail", 3) ++ entry({"admin", "asterisk", "voicemail", "mailboxes"}, cbi("asterisk/voicemail"), "Mailboxes", 1) ++ entry({"admin", "asterisk", "voicemail", "settings"}, cbi("asterisk/voicemail_settings"), "Settings", 2) ++ ++ entry({"admin", "asterisk", "meetme"}, cbi("asterisk/meetme"), "MeetMe", 4) ++ entry({"admin", "asterisk", "meetme", "rooms"}, cbi("asterisk/meetme"), "Rooms", 1) ++ entry({"admin", "asterisk", "meetme", "settings"}, cbi("asterisk/meetme_settings"), "Settings", 2) ++ ++ entry({"admin", "asterisk", "dialplans"}, call("handle_dialplan"), "Call Routing", 5) ++ entry({"admin", "asterisk", "dialplans", "out"}, cbi("asterisk/dialplan_out"), nil, 1).leaf = true ++ entry({"admin", "asterisk", "dialplans", "zones"}, call("handle_dialzones"), "Dial Zones", 2).leaf = true ++ ++end ++ ++ ++function handle_dialplan() ++ local uci = luci.model.uci.cursor() ++ local ast = require "luci.asterisk" ++ local err = false ++ ++ for k, v in pairs(luci.http.formvaluetable("delzone")) do ++ local plan = ast.dialplan.plan(k) ++ if #v > 0 and plan then ++ local newinc = { } ++ ++ for _, z in ipairs(plan.zones) do ++ if z.name ~= v then ++ newinc[#newinc+1] = z.name ++ end ++ end ++ ++ uci:delete("asterisk", plan.name, "include") ++ ++ if #newinc > 0 then ++ uci:set("asterisk", plan.name, "include", newinc) ++ end ++ end ++ end ++ ++ for k, v in pairs(luci.http.formvaluetable("addzone")) do ++ local plan = ast.dialplan.plan(k) ++ local zone = ast.dialzone.zone(v) ++ if #v > 0 and plan and zone then ++ local newinc = { zone.name } ++ ++ for _, z in ipairs(plan.zones) do ++ newinc[#newinc+1] = z.name ++ end ++ ++ uci:delete("asterisk", plan.name, "include") ++ ++ if #newinc > 0 then ++ uci:set("asterisk", plan.name, "include", newinc) ++ end ++ end ++ end ++ ++ for k, v in pairs(luci.http.formvaluetable("delvbox")) do ++ local plan = ast.dialplan.plan(k) ++ if #v > 0 and plan then ++ uci:delete_all("asterisk", "dialplanvoice", ++ { extension=v, dialplan=plan.name }) ++ end ++ end ++ ++ for k, v in pairs(luci.http.formvaluetable("addvbox")) do ++ local plan = ast.dialplan.plan(k) ++ local vbox = ast.voicemail.box(v) ++ if plan and vbox then ++ local vext = luci.http.formvalue("addvboxext.%s" % plan.name) ++ vext = ( vext and #vext > 0 ) and vext or vbox.number ++ uci:section("asterisk", "dialplanvoice", nil, { ++ dialplan = plan.name, ++ extension = vext, ++ voicebox = vbox.number, ++ voicecontext = vbox.context ++ }) ++ end ++ end ++ ++ for k, v in pairs(luci.http.formvaluetable("delmeetme")) do ++ local plan = ast.dialplan.plan(k) ++ if #v > 0 and plan then ++ uci:delete_all("asterisk", "dialplanmeetme", ++ { extension=v, dialplan=plan.name }) ++ end ++ end ++ ++ for k, v in pairs(luci.http.formvaluetable("addmeetme")) do ++ local plan = ast.dialplan.plan(k) ++ local meetme = ast.meetme.room(v) ++ if plan and meetme then ++ local mext = luci.http.formvalue("addmeetmeext.%s" % plan.name) ++ mext = ( mext and #mext > 0 ) and mext or meetme.room ++ uci:section("asterisk", "dialplanmeetme", nil, { ++ dialplan = plan.name, ++ extension = mext, ++ room = meetme.room ++ }) ++ end ++ end ++ ++ local aname = luci.http.formvalue("addplan") ++ if aname and #aname > 0 then ++ if aname:match("^[a-zA-Z0-9_]+$") then ++ uci:section("asterisk", "dialplan", aname, { }) ++ else ++ err = true ++ end ++ end ++ ++ local dname = luci.http.formvalue("delplan") ++ if dname and #dname > 0 then ++ if uci:get("asterisk", dname) == "dialplan" then ++ uci:delete("asterisk", dname) ++ uci:delete_all("asterisk", "dialplanvoice", { dialplan=dname }) ++ uci:delete_all("asterisk", "dialplanmeetme", { dialplan=dname }) ++ end ++ end ++ ++ uci:save("asterisk") ++ ast.uci_resync() ++ ++ luci.template.render("asterisk/dialplans", { create_error = err }) ++end ++ ++function handle_dialzones() ++ local ast = require "luci.asterisk" ++ local uci = luci.model.uci.cursor() ++ local err = false ++ ++ if luci.http.formvalue("newzone") then ++ local name = luci.http.formvalue("newzone_name") ++ if name and name:match("^[a-zA-Z0-9_]+$") then ++ uci:section("asterisk", "dialzone", name, { ++ uses = ast.tools.parse_list(luci.http.formvalue("newzone_uses") or {}), ++ match = ast.tools.parse_list(luci.http.formvalue("newzone_match") or {}) ++ }) ++ uci:save("asterisk") ++ else ++ err = true ++ end ++ end ++ ++ if luci.http.formvalue("delzone") then ++ local name = luci.http.formvalue("delzone") ++ if uci:get("asterisk", name) == "dialzone" then ++ uci:delete("asterisk", name) ++ uci:save("asterisk") ++ end ++ end ++ ++ luci.template.render("asterisk/dialzones", { create_error = err }) ++end +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-dialplans.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-dialplans.lua +new file mode 100644 +index 0000000..d4daa68 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-dialplans.lua +@@ -0,0 +1,91 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++dialplan = cbimap:section(TypedSection, "dialplan", "Section dialplan", "") ++dialplan.addremove = true ++dialplan.dynamic = true ++ ++include = dialplan:option(MultiValue, "include", "Include zones and plans", "") ++cbimap.uci:foreach( "asterisk", "dialplan", function(s) include:value(s['.name']) end ) ++cbimap.uci:foreach( "asterisk", "dialzone", function(s) include:value(s['.name']) end ) ++ ++dialplanexten = cbimap:section(TypedSection, "dialplanexten", "Dialplan Extension", "") ++dialplanexten.anonymous = true ++dialplanexten.addremove = true ++dialplanexten.dynamic = true ++ ++ ++dialplangeneral = cbimap:section(TypedSection, "dialplangeneral", "Dialplan General Options", "") ++dialplangeneral.anonymous = true ++dialplangeneral.addremove = true ++ ++allowtransfer = dialplangeneral:option(Flag, "allowtransfer", "Allow transfer", "") ++allowtransfer.rmempty = true ++ ++canreinvite = dialplangeneral:option(ListValue, "canreinvite", "Reinvite/redirect media connections", "") ++canreinvite:value("yes", "Yes") ++canreinvite:value("nonat", "Yes when not behind NAT") ++canreinvite:value("update", "Use UPDATE rather than INVITE for path redirection") ++canreinvite:value("no", "No") ++canreinvite.rmempty = true ++ ++clearglobalvars = dialplangeneral:option(Flag, "clearglobalvars", "Clear global vars", "") ++clearglobalvars.rmempty = true ++ ++ ++dialplangoto = cbimap:section(TypedSection, "dialplangoto", "Dialplan Goto", "") ++dialplangoto.anonymous = true ++dialplangoto.addremove = true ++dialplangoto.dynamic = true ++ ++ ++dialplanmeetme = cbimap:section(TypedSection, "dialplanmeetme", "Dialplan Conference", "") ++dialplanmeetme.anonymous = true ++dialplanmeetme.addremove = true ++dialplanmeetme.dynamic = true ++ ++ ++dialplansaytime = cbimap:section(TypedSection, "dialplansaytime", "Dialplan Time", "") ++dialplansaytime.anonymous = true ++dialplansaytime.addremove = true ++dialplansaytime.dynamic = true ++ ++ ++dialplanvoice = cbimap:section(TypedSection, "dialplanvoice", "Dialplan Voicemail", "") ++dialplanvoice.anonymous = true ++dialplanvoice.addremove = true ++dialplanvoice.dynamic = true ++ ++ ++dialzone = cbimap:section(TypedSection, "dialzone", "Dial Zones for Dialplan", "") ++dialzone.addremove = true ++dialzone.template = "cbi/tblsection" ++ ++addprefix = dialzone:option(Value, "addprefix", "Prefix to add matching dialplans", "") ++addprefix.rmempty = true ++ ++--international = dialzone:option(DynamicList, "international", "Match International prefix", "") ++international = dialzone:option(Value, "international", "Match International prefix", "") ++international.rmempty = true ++ ++localprefix = dialzone:option(Value, "localprefix", "Prefix (0) to add/remove to/from intl. numbers", "") ++localprefix.rmempty = true ++ ++localzone = dialzone:option(Value, "localzone", "Dialzone for intl. numbers matched as local", "") ++localzone.titleref = luci.dispatcher.build_url( "admin", "services", "asterisk", "dialplans" ) ++cbimap.uci:foreach( "asterisk", "dialplan", function(s) localzone:value(s['.name']) end ) ++cbimap.uci:foreach( "asterisk", "dialzone", function(s) localzone:value(s['.name']) end ) ++ ++match = dialzone:option(Value, "match", "Match plan", "") ++match.rmempty = true ++ ++uses = dialzone:option(ListValue, "uses", "Connection to use", "") ++uses.titleref = luci.dispatcher.build_url( "admin", "services", "asterisk", "sip-conns" ) ++cbimap.uci:foreach( "asterisk", "sip", function(s) uses:value('SIP/'..s['.name']) end ) ++cbimap.uci:foreach( "asterisk", "iax", function(s) uses:value('IAX/'..s['.name']) end ) ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-iax-connections.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-iax-connections.lua +new file mode 100644 +index 0000000..d0eaf34 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-iax-connections.lua +@@ -0,0 +1,49 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++iax = cbimap:section(TypedSection, "iax", "IAX Connection", "") ++iax.addremove = true ++ ++alwaysinternational = iax:option(Flag, "alwaysinternational", "Always Dial International", "") ++alwaysinternational.optional = true ++ ++context = iax:option(ListValue, "context", "Context to use", "") ++context.titleref = luci.dispatcher.build_url( "admin", "services", "asterisk", "dialplans" ) ++cbimap.uci:foreach( "asterisk", "dialplan", function(s) context:value(s['.name']) end ) ++cbimap.uci:foreach( "asterisk", "dialzone", function(s) context:value(s['.name']) end ) ++ ++countrycode = iax:option(Value, "countrycode", "Country Code for connection", "") ++countrycode.optional = true ++ ++extension = iax:option(Value, "extension", "Add as Extension", "") ++extension.optional = true ++ ++host = iax:option(Value, "host", "Host name (or blank)", "") ++host.optional = true ++ ++internationalprefix = iax:option(Value, "internationalprefix", "International Dial Prefix", "") ++internationalprefix.optional = true ++ ++prefix = iax:option(Value, "prefix", "Dial Prefix (for external line)", "") ++prefix.optional = true ++ ++secret = iax:option(Value, "secret", "Secret", "") ++secret.optional = true ++ ++timeout = iax:option(Value, "timeout", "Dial Timeout (sec)", "") ++timeout.optional = true ++ ++type = iax:option(ListValue, "type", "Option type", "") ++type:value("friend", "Friend (outbound/inbound)") ++type:value("user", "User (inbound - authenticate by \"from\")") ++type:value("peer", "Peer (outbound - match by host)") ++type.optional = true ++ ++username = iax:option(Value, "username", "User name", "") ++username.optional = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-meetme.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-meetme.lua +new file mode 100644 +index 0000000..dd79e46 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-meetme.lua +@@ -0,0 +1,22 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++meetmegeneral = cbimap:section(TypedSection, "meetmegeneral", "Meetme Conference General Options", "") ++ ++audiobuffers = meetmegeneral:option(Value, "audiobuffers", "Number of 20ms audio buffers to be used", "") ++ ++ ++meetme = cbimap:section(TypedSection, "meetme", "Meetme Conference", "") ++meetme.addremove = true ++ ++adminpin = meetme:option(Value, "adminpin", "Admin PIN", "") ++adminpin.password = true ++ ++pin = meetme:option(Value, "pin", "Meeting PIN", "") ++pin.password = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-app.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-app.lua +new file mode 100644 +index 0000000..0a0a2d5 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-app.lua +@@ -0,0 +1,391 @@ ++cbimap = Map("asterisk", "asterisk", "") ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++app_alarmreceiver = module:option(ListValue, "app_alarmreceiver", "Alarm Receiver Application", "") ++app_alarmreceiver:value("yes", "Load") ++app_alarmreceiver:value("no", "Do Not Load") ++app_alarmreceiver:value("auto", "Load as Required") ++app_alarmreceiver.rmempty = true ++ ++app_authenticate = module:option(ListValue, "app_authenticate", "Authentication Application", "") ++app_authenticate:value("yes", "Load") ++app_authenticate:value("no", "Do Not Load") ++app_authenticate:value("auto", "Load as Required") ++app_authenticate.rmempty = true ++ ++app_cdr = module:option(ListValue, "app_cdr", "Make sure asterisk doesnt save CDR", "") ++app_cdr:value("yes", "Load") ++app_cdr:value("no", "Do Not Load") ++app_cdr:value("auto", "Load as Required") ++app_cdr.rmempty = true ++ ++app_chanisavail = module:option(ListValue, "app_chanisavail", "Check if channel is available", "") ++app_chanisavail:value("yes", "Load") ++app_chanisavail:value("no", "Do Not Load") ++app_chanisavail:value("auto", "Load as Required") ++app_chanisavail.rmempty = true ++ ++app_chanspy = module:option(ListValue, "app_chanspy", "Listen in on any channel", "") ++app_chanspy:value("yes", "Load") ++app_chanspy:value("no", "Do Not Load") ++app_chanspy:value("auto", "Load as Required") ++app_chanspy.rmempty = true ++ ++app_controlplayback = module:option(ListValue, "app_controlplayback", "Control Playback Application", "") ++app_controlplayback:value("yes", "Load") ++app_controlplayback:value("no", "Do Not Load") ++app_controlplayback:value("auto", "Load as Required") ++app_controlplayback.rmempty = true ++ ++app_cut = module:option(ListValue, "app_cut", "Cuts up variables", "") ++app_cut:value("yes", "Load") ++app_cut:value("no", "Do Not Load") ++app_cut:value("auto", "Load as Required") ++app_cut.rmempty = true ++ ++app_db = module:option(ListValue, "app_db", "Database access functions", "") ++app_db:value("yes", "Load") ++app_db:value("no", "Do Not Load") ++app_db:value("auto", "Load as Required") ++app_db.rmempty = true ++ ++app_dial = module:option(ListValue, "app_dial", "Dialing Application", "") ++app_dial:value("yes", "Load") ++app_dial:value("no", "Do Not Load") ++app_dial:value("auto", "Load as Required") ++app_dial.rmempty = true ++ ++app_dictate = module:option(ListValue, "app_dictate", "Virtual Dictation Machine Application", "") ++app_dictate:value("yes", "Load") ++app_dictate:value("no", "Do Not Load") ++app_dictate:value("auto", "Load as Required") ++app_dictate.rmempty = true ++ ++app_directed_pickup = module:option(ListValue, "app_directed_pickup", "Directed Call Pickup Support", "") ++app_directed_pickup:value("yes", "Load") ++app_directed_pickup:value("no", "Do Not Load") ++app_directed_pickup:value("auto", "Load as Required") ++app_directed_pickup.rmempty = true ++ ++app_directory = module:option(ListValue, "app_directory", "Extension Directory", "") ++app_directory:value("yes", "Load") ++app_directory:value("no", "Do Not Load") ++app_directory:value("auto", "Load as Required") ++app_directory.rmempty = true ++ ++app_disa = module:option(ListValue, "app_disa", "DISA (Direct Inward System Access) Application", "") ++app_disa:value("yes", "Load") ++app_disa:value("no", "Do Not Load") ++app_disa:value("auto", "Load as Required") ++app_disa.rmempty = true ++ ++app_dumpchan = module:option(ListValue, "app_dumpchan", "Dump channel variables Application", "") ++app_dumpchan:value("yes", "Load") ++app_dumpchan:value("no", "Do Not Load") ++app_dumpchan:value("auto", "Load as Required") ++app_dumpchan.rmempty = true ++ ++app_echo = module:option(ListValue, "app_echo", "Simple Echo Application", "") ++app_echo:value("yes", "Load") ++app_echo:value("no", "Do Not Load") ++app_echo:value("auto", "Load as Required") ++app_echo.rmempty = true ++ ++app_enumlookup = module:option(ListValue, "app_enumlookup", "ENUM Lookup", "") ++app_enumlookup:value("yes", "Load") ++app_enumlookup:value("no", "Do Not Load") ++app_enumlookup:value("auto", "Load as Required") ++app_enumlookup.rmempty = true ++ ++app_eval = module:option(ListValue, "app_eval", "Reevaluates strings", "") ++app_eval:value("yes", "Load") ++app_eval:value("no", "Do Not Load") ++app_eval:value("auto", "Load as Required") ++app_eval.rmempty = true ++ ++app_exec = module:option(ListValue, "app_exec", "Executes applications", "") ++app_exec:value("yes", "Load") ++app_exec:value("no", "Do Not Load") ++app_exec:value("auto", "Load as Required") ++app_exec.rmempty = true ++ ++app_externalivr = module:option(ListValue, "app_externalivr", "External IVR application interface", "") ++app_externalivr:value("yes", "Load") ++app_externalivr:value("no", "Do Not Load") ++app_externalivr:value("auto", "Load as Required") ++app_externalivr.rmempty = true ++ ++app_forkcdr = module:option(ListValue, "app_forkcdr", "Fork The CDR into 2 seperate entities", "") ++app_forkcdr:value("yes", "Load") ++app_forkcdr:value("no", "Do Not Load") ++app_forkcdr:value("auto", "Load as Required") ++app_forkcdr.rmempty = true ++ ++app_getcpeid = module:option(ListValue, "app_getcpeid", "Get ADSI CPE ID", "") ++app_getcpeid:value("yes", "Load") ++app_getcpeid:value("no", "Do Not Load") ++app_getcpeid:value("auto", "Load as Required") ++app_getcpeid.rmempty = true ++ ++app_groupcount = module:option(ListValue, "app_groupcount", "Group Management Routines", "") ++app_groupcount:value("yes", "Load") ++app_groupcount:value("no", "Do Not Load") ++app_groupcount:value("auto", "Load as Required") ++app_groupcount.rmempty = true ++ ++app_ices = module:option(ListValue, "app_ices", "Encode and Stream via icecast and ices", "") ++app_ices:value("yes", "Load") ++app_ices:value("no", "Do Not Load") ++app_ices:value("auto", "Load as Required") ++app_ices.rmempty = true ++ ++app_image = module:option(ListValue, "app_image", "Image Transmission Application", "") ++app_image:value("yes", "Load") ++app_image:value("no", "Do Not Load") ++app_image:value("auto", "Load as Required") ++app_image.rmempty = true ++ ++app_lookupblacklist = module:option(ListValue, "app_lookupblacklist", "Look up Caller*ID name/number from black", "") ++app_lookupblacklist:value("yes", "Load") ++app_lookupblacklist:value("no", "Do Not Load") ++app_lookupblacklist:value("auto", "Load as Required") ++app_lookupblacklist.rmempty = true ++ ++app_lookupcidname = module:option(ListValue, "app_lookupcidname", "Look up CallerID Name from local databas", "") ++app_lookupcidname:value("yes", "Load") ++app_lookupcidname:value("no", "Do Not Load") ++app_lookupcidname:value("auto", "Load as Required") ++app_lookupcidname.rmempty = true ++ ++app_macro = module:option(ListValue, "app_macro", "Extension Macros", "") ++app_macro:value("yes", "Load") ++app_macro:value("no", "Do Not Load") ++app_macro:value("auto", "Load as Required") ++app_macro.rmempty = true ++ ++app_math = module:option(ListValue, "app_math", "A simple math Application", "") ++app_math:value("yes", "Load") ++app_math:value("no", "Do Not Load") ++app_math:value("auto", "Load as Required") ++app_math.rmempty = true ++ ++app_md5 = module:option(ListValue, "app_md5", "MD5 checksum Application", "") ++app_md5:value("yes", "Load") ++app_md5:value("no", "Do Not Load") ++app_md5:value("auto", "Load as Required") ++app_md5.rmempty = true ++ ++app_milliwatt = module:option(ListValue, "app_milliwatt", "Digital Milliwatt (mu-law) Test Application", "") ++app_milliwatt:value("yes", "Load") ++app_milliwatt:value("no", "Do Not Load") ++app_milliwatt:value("auto", "Load as Required") ++app_milliwatt.rmempty = true ++ ++app_mixmonitor = module:option(ListValue, "app_mixmonitor", "Record a call and mix the audio during the recording", "") ++app_mixmonitor:value("yes", "Load") ++app_mixmonitor:value("no", "Do Not Load") ++app_mixmonitor:value("auto", "Load as Required") ++app_mixmonitor.rmempty = true ++ ++app_parkandannounce = module:option(ListValue, "app_parkandannounce", "Call Parking and Announce Application", "") ++app_parkandannounce:value("yes", "Load") ++app_parkandannounce:value("no", "Do Not Load") ++app_parkandannounce:value("auto", "Load as Required") ++app_parkandannounce.rmempty = true ++ ++app_playback = module:option(ListValue, "app_playback", "Trivial Playback Application", "") ++app_playback:value("yes", "Load") ++app_playback:value("no", "Do Not Load") ++app_playback:value("auto", "Load as Required") ++app_playback.rmempty = true ++ ++app_privacy = module:option(ListValue, "app_privacy", "Require phone number to be entered", "") ++app_privacy:value("yes", "Load") ++app_privacy:value("no", "Do Not Load") ++app_privacy:value("auto", "Load as Required") ++app_privacy.rmempty = true ++ ++app_queue = module:option(ListValue, "app_queue", "True Call Queueing", "") ++app_queue:value("yes", "Load") ++app_queue:value("no", "Do Not Load") ++app_queue:value("auto", "Load as Required") ++app_queue.rmempty = true ++ ++app_random = module:option(ListValue, "app_random", "Random goto", "") ++app_random:value("yes", "Load") ++app_random:value("no", "Do Not Load") ++app_random:value("auto", "Load as Required") ++app_random.rmempty = true ++ ++app_read = module:option(ListValue, "app_read", "Read Variable Application", "") ++app_read:value("yes", "Load") ++app_read:value("no", "Do Not Load") ++app_read:value("auto", "Load as Required") ++app_read.rmempty = true ++ ++app_readfile = module:option(ListValue, "app_readfile", "Read in a file", "") ++app_readfile:value("yes", "Load") ++app_readfile:value("no", "Do Not Load") ++app_readfile:value("auto", "Load as Required") ++app_readfile.rmempty = true ++ ++app_realtime = module:option(ListValue, "app_realtime", "Realtime Data Lookup/Rewrite", "") ++app_realtime:value("yes", "Load") ++app_realtime:value("no", "Do Not Load") ++app_realtime:value("auto", "Load as Required") ++app_realtime.rmempty = true ++ ++app_record = module:option(ListValue, "app_record", "Trivial Record Application", "") ++app_record:value("yes", "Load") ++app_record:value("no", "Do Not Load") ++app_record:value("auto", "Load as Required") ++app_record.rmempty = true ++ ++app_sayunixtime = module:option(ListValue, "app_sayunixtime", "Say time", "") ++app_sayunixtime:value("yes", "Load") ++app_sayunixtime:value("no", "Do Not Load") ++app_sayunixtime:value("auto", "Load as Required") ++app_sayunixtime.rmempty = true ++ ++app_senddtmf = module:option(ListValue, "app_senddtmf", "Send DTMF digits Application", "") ++app_senddtmf:value("yes", "Load") ++app_senddtmf:value("no", "Do Not Load") ++app_senddtmf:value("auto", "Load as Required") ++app_senddtmf.rmempty = true ++ ++app_sendtext = module:option(ListValue, "app_sendtext", "Send Text Applications", "") ++app_sendtext:value("yes", "Load") ++app_sendtext:value("no", "Do Not Load") ++app_sendtext:value("auto", "Load as Required") ++app_sendtext.rmempty = true ++ ++app_setcallerid = module:option(ListValue, "app_setcallerid", "Set CallerID Application", "") ++app_setcallerid:value("yes", "Load") ++app_setcallerid:value("no", "Do Not Load") ++app_setcallerid:value("auto", "Load as Required") ++app_setcallerid.rmempty = true ++ ++app_setcdruserfield = module:option(ListValue, "app_setcdruserfield", "CDR user field apps", "") ++app_setcdruserfield:value("yes", "Load") ++app_setcdruserfield:value("no", "Do Not Load") ++app_setcdruserfield:value("auto", "Load as Required") ++app_setcdruserfield.rmempty = true ++ ++app_setcidname = module:option(ListValue, "app_setcidname", "load => .so ; Set CallerID Name", "") ++app_setcidname:value("yes", "Load") ++app_setcidname:value("no", "Do Not Load") ++app_setcidname:value("auto", "Load as Required") ++app_setcidname.rmempty = true ++ ++app_setcidnum = module:option(ListValue, "app_setcidnum", "load => .so ; Set CallerID Number", "") ++app_setcidnum:value("yes", "Load") ++app_setcidnum:value("no", "Do Not Load") ++app_setcidnum:value("auto", "Load as Required") ++app_setcidnum.rmempty = true ++ ++app_setrdnis = module:option(ListValue, "app_setrdnis", "Set RDNIS Number", "") ++app_setrdnis:value("yes", "Load") ++app_setrdnis:value("no", "Do Not Load") ++app_setrdnis:value("auto", "Load as Required") ++app_setrdnis.rmempty = true ++ ++app_settransfercapability = module:option(ListValue, "app_settransfercapability", "Set ISDN Transfer Capability", "") ++app_settransfercapability:value("yes", "Load") ++app_settransfercapability:value("no", "Do Not Load") ++app_settransfercapability:value("auto", "Load as Required") ++app_settransfercapability.rmempty = true ++ ++app_sms = module:option(ListValue, "app_sms", "SMS/PSTN handler", "") ++app_sms:value("yes", "Load") ++app_sms:value("no", "Do Not Load") ++app_sms:value("auto", "Load as Required") ++app_sms.rmempty = true ++ ++app_softhangup = module:option(ListValue, "app_softhangup", "Hangs up the requested channel", "") ++app_softhangup:value("yes", "Load") ++app_softhangup:value("no", "Do Not Load") ++app_softhangup:value("auto", "Load as Required") ++app_softhangup.rmempty = true ++ ++app_stack = module:option(ListValue, "app_stack", "Stack Routines", "") ++app_stack:value("yes", "Load") ++app_stack:value("no", "Do Not Load") ++app_stack:value("auto", "Load as Required") ++app_stack.rmempty = true ++ ++app_system = module:option(ListValue, "app_system", "Generic System() application", "") ++app_system:value("yes", "Load") ++app_system:value("no", "Do Not Load") ++app_system:value("auto", "Load as Required") ++app_system.rmempty = true ++ ++app_talkdetect = module:option(ListValue, "app_talkdetect", "Playback with Talk Detection", "") ++app_talkdetect:value("yes", "Load") ++app_talkdetect:value("no", "Do Not Load") ++app_talkdetect:value("auto", "Load as Required") ++app_talkdetect.rmempty = true ++ ++app_test = module:option(ListValue, "app_test", "Interface Test Application", "") ++app_test:value("yes", "Load") ++app_test:value("no", "Do Not Load") ++app_test:value("auto", "Load as Required") ++app_test.rmempty = true ++ ++app_transfer = module:option(ListValue, "app_transfer", "Transfer", "") ++app_transfer:value("yes", "Load") ++app_transfer:value("no", "Do Not Load") ++app_transfer:value("auto", "Load as Required") ++app_transfer.rmempty = true ++ ++app_txtcidname = module:option(ListValue, "app_txtcidname", "TXTCIDName", "") ++app_txtcidname:value("yes", "Load") ++app_txtcidname:value("no", "Do Not Load") ++app_txtcidname:value("auto", "Load as Required") ++app_txtcidname.rmempty = true ++ ++app_url = module:option(ListValue, "app_url", "Send URL Applications", "") ++app_url:value("yes", "Load") ++app_url:value("no", "Do Not Load") ++app_url:value("auto", "Load as Required") ++app_url.rmempty = true ++ ++app_userevent = module:option(ListValue, "app_userevent", "Custom User Event Application", "") ++app_userevent:value("yes", "Load") ++app_userevent:value("no", "Do Not Load") ++app_userevent:value("auto", "Load as Required") ++app_userevent.rmempty = true ++ ++app_verbose = module:option(ListValue, "app_verbose", "Send verbose output", "") ++app_verbose:value("yes", "Load") ++app_verbose:value("no", "Do Not Load") ++app_verbose:value("auto", "Load as Required") ++app_verbose.rmempty = true ++ ++app_voicemail = module:option(ListValue, "app_voicemail", "Voicemail", "") ++app_voicemail:value("yes", "Load") ++app_voicemail:value("no", "Do Not Load") ++app_voicemail:value("auto", "Load as Required") ++app_voicemail.rmempty = true ++ ++app_waitforring = module:option(ListValue, "app_waitforring", "Waits until first ring after time", "") ++app_waitforring:value("yes", "Load") ++app_waitforring:value("no", "Do Not Load") ++app_waitforring:value("auto", "Load as Required") ++app_waitforring.rmempty = true ++ ++app_waitforsilence = module:option(ListValue, "app_waitforsilence", "Wait For Silence Application", "") ++app_waitforsilence:value("yes", "Load") ++app_waitforsilence:value("no", "Do Not Load") ++app_waitforsilence:value("auto", "Load as Required") ++app_waitforsilence.rmempty = true ++ ++app_while = module:option(ListValue, "app_while", "While Loops and Conditional Execution", "") ++app_while:value("yes", "Load") ++app_while:value("no", "Do Not Load") ++app_while:value("auto", "Load as Required") ++app_while.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-cdr.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-cdr.lua +new file mode 100644 +index 0000000..13dcba5 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-cdr.lua +@@ -0,0 +1,47 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++cdr_csv = module:option(ListValue, "cdr_csv", "Comma Separated Values CDR Backend", "") ++cdr_csv:value("yes", "Load") ++cdr_csv:value("no", "Do Not Load") ++cdr_csv:value("auto", "Load as Required") ++cdr_csv.rmempty = true ++ ++cdr_custom = module:option(ListValue, "cdr_custom", "Customizable Comma Separated Values CDR Backend", "") ++cdr_custom:value("yes", "Load") ++cdr_custom:value("no", "Do Not Load") ++cdr_custom:value("auto", "Load as Required") ++cdr_custom.rmempty = true ++ ++cdr_manager = module:option(ListValue, "cdr_manager", "Asterisk Call Manager CDR Backend", "") ++cdr_manager:value("yes", "Load") ++cdr_manager:value("no", "Do Not Load") ++cdr_manager:value("auto", "Load as Required") ++cdr_manager.rmempty = true ++ ++cdr_mysql = module:option(ListValue, "cdr_mysql", "MySQL CDR Backend", "") ++cdr_mysql:value("yes", "Load") ++cdr_mysql:value("no", "Do Not Load") ++cdr_mysql:value("auto", "Load as Required") ++cdr_mysql.rmempty = true ++ ++cdr_pgsql = module:option(ListValue, "cdr_pgsql", "PostgreSQL CDR Backend", "") ++cdr_pgsql:value("yes", "Load") ++cdr_pgsql:value("no", "Do Not Load") ++cdr_pgsql:value("auto", "Load as Required") ++cdr_pgsql.rmempty = true ++ ++cdr_sqlite = module:option(ListValue, "cdr_sqlite", "SQLite CDR Backend", "") ++cdr_sqlite:value("yes", "Load") ++cdr_sqlite:value("no", "Do Not Load") ++cdr_sqlite:value("auto", "Load as Required") ++cdr_sqlite.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-chan.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-chan.lua +new file mode 100644 +index 0000000..425569d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-chan.lua +@@ -0,0 +1,45 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++chan_agent = module:option(ListValue, "chan_agent", "Agent Proxy Channel", "") ++chan_agent:value("yes", "Load") ++chan_agent:value("no", "Do Not Load") ++chan_agent:value("auto", "Load as Required") ++chan_agent.rmempty = true ++ ++chan_alsa = module:option(ListValue, "chan_alsa", "Channel driver for GTalk", "") ++chan_alsa:value("yes", "Load") ++chan_alsa:value("no", "Do Not Load") ++chan_alsa:value("auto", "Load as Required") ++chan_alsa.rmempty = true ++ ++chan_gtalk = module:option(ListValue, "chan_gtalk", "Channel driver for GTalk", "") ++chan_gtalk:value("yes", "Load") ++chan_gtalk:value("no", "Do Not Load") ++chan_gtalk:value("auto", "Load as Required") ++chan_gtalk.rmempty = true ++ ++chan_iax2 = module:option(Flag, "chan_iax2", "Option chan_iax2", "") ++chan_iax2.rmempty = true ++ ++chan_local = module:option(ListValue, "chan_local", "Local Proxy Channel", "") ++chan_local:value("yes", "Load") ++chan_local:value("no", "Do Not Load") ++chan_local:value("auto", "Load as Required") ++chan_local.rmempty = true ++ ++chan_sip = module:option(ListValue, "chan_sip", "Session Initiation Protocol (SIP)", "") ++chan_sip:value("yes", "Load") ++chan_sip:value("no", "Do Not Load") ++chan_sip:value("auto", "Load as Required") ++chan_sip.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-codec.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-codec.lua +new file mode 100644 +index 0000000..0893c0e +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-codec.lua +@@ -0,0 +1,53 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++codec_a_mu = module:option(ListValue, "codec_a_mu", "A-law and Mulaw direct Coder/Decoder", "") ++codec_a_mu:value("yes", "Load") ++codec_a_mu:value("no", "Do Not Load") ++codec_a_mu:value("auto", "Load as Required") ++codec_a_mu.rmempty = true ++ ++codec_adpcm = module:option(ListValue, "codec_adpcm", "Adaptive Differential PCM Coder/Decoder", "") ++codec_adpcm:value("yes", "Load") ++codec_adpcm:value("no", "Do Not Load") ++codec_adpcm:value("auto", "Load as Required") ++codec_adpcm.rmempty = true ++ ++codec_alaw = module:option(ListValue, "codec_alaw", "A-law Coder/Decoder", "") ++codec_alaw:value("yes", "Load") ++codec_alaw:value("no", "Do Not Load") ++codec_alaw:value("auto", "Load as Required") ++codec_alaw.rmempty = true ++ ++codec_g726 = module:option(ListValue, "codec_g726", "ITU G.726-32kbps G726 Transcoder", "") ++codec_g726:value("yes", "Load") ++codec_g726:value("no", "Do Not Load") ++codec_g726:value("auto", "Load as Required") ++codec_g726.rmempty = true ++ ++codec_gsm = module:option(ListValue, "codec_gsm", "GSM/PCM16 (signed linear) Codec Translation", "") ++codec_gsm:value("yes", "Load") ++codec_gsm:value("no", "Do Not Load") ++codec_gsm:value("auto", "Load as Required") ++codec_gsm.rmempty = true ++ ++codec_speex = module:option(ListValue, "codec_speex", "Speex/PCM16 (signed linear) Codec Translator", "") ++codec_speex:value("yes", "Load") ++codec_speex:value("no", "Do Not Load") ++codec_speex:value("auto", "Load as Required") ++codec_speex.rmempty = true ++ ++codec_ulaw = module:option(ListValue, "codec_ulaw", "Mu-law Coder/Decoder", "") ++codec_ulaw:value("yes", "Load") ++codec_ulaw:value("no", "Do Not Load") ++codec_ulaw:value("auto", "Load as Required") ++codec_ulaw.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-format.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-format.lua +new file mode 100644 +index 0000000..9b59d94 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-format.lua +@@ -0,0 +1,89 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++format_au = module:option(ListValue, "format_au", "Sun Microsystems AU format (signed linear)", "") ++format_au:value("yes", "Load") ++format_au:value("no", "Do Not Load") ++format_au:value("auto", "Load as Required") ++format_au.rmempty = true ++ ++format_g723 = module:option(ListValue, "format_g723", "G.723.1 Simple Timestamp File Format", "") ++format_g723:value("yes", "Load") ++format_g723:value("no", "Do Not Load") ++format_g723:value("auto", "Load as Required") ++format_g723.rmempty = true ++ ++format_g726 = module:option(ListValue, "format_g726", "Raw G.726 (16/24/32/40kbps) data", "") ++format_g726:value("yes", "Load") ++format_g726:value("no", "Do Not Load") ++format_g726:value("auto", "Load as Required") ++format_g726.rmempty = true ++ ++format_g729 = module:option(ListValue, "format_g729", "Raw G729 data", "") ++format_g729:value("yes", "Load") ++format_g729:value("no", "Do Not Load") ++format_g729:value("auto", "Load as Required") ++format_g729.rmempty = true ++ ++format_gsm = module:option(ListValue, "format_gsm", "Raw GSM data", "") ++format_gsm:value("yes", "Load") ++format_gsm:value("no", "Do Not Load") ++format_gsm:value("auto", "Load as Required") ++format_gsm.rmempty = true ++ ++format_h263 = module:option(ListValue, "format_h263", "Raw h263 data", "") ++format_h263:value("yes", "Load") ++format_h263:value("no", "Do Not Load") ++format_h263:value("auto", "Load as Required") ++format_h263.rmempty = true ++ ++format_jpeg = module:option(ListValue, "format_jpeg", "JPEG (Joint Picture Experts Group) Image", "") ++format_jpeg:value("yes", "Load") ++format_jpeg:value("no", "Do Not Load") ++format_jpeg:value("auto", "Load as Required") ++format_jpeg.rmempty = true ++ ++format_pcm = module:option(ListValue, "format_pcm", "Raw uLaw 8khz Audio support (PCM)", "") ++format_pcm:value("yes", "Load") ++format_pcm:value("no", "Do Not Load") ++format_pcm:value("auto", "Load as Required") ++format_pcm.rmempty = true ++ ++format_pcm_alaw = module:option(ListValue, "format_pcm_alaw", "load => .so ; Raw aLaw 8khz PCM Audio support", "") ++format_pcm_alaw:value("yes", "Load") ++format_pcm_alaw:value("no", "Do Not Load") ++format_pcm_alaw:value("auto", "Load as Required") ++format_pcm_alaw.rmempty = true ++ ++format_sln = module:option(ListValue, "format_sln", "Raw Signed Linear Audio support (SLN)", "") ++format_sln:value("yes", "Load") ++format_sln:value("no", "Do Not Load") ++format_sln:value("auto", "Load as Required") ++format_sln.rmempty = true ++ ++format_vox = module:option(ListValue, "format_vox", "Dialogic VOX (ADPCM) File Format", "") ++format_vox:value("yes", "Load") ++format_vox:value("no", "Do Not Load") ++format_vox:value("auto", "Load as Required") ++format_vox.rmempty = true ++ ++format_wav = module:option(ListValue, "format_wav", "Microsoft WAV format (8000hz Signed Line", "") ++format_wav:value("yes", "Load") ++format_wav:value("no", "Do Not Load") ++format_wav:value("auto", "Load as Required") ++format_wav.rmempty = true ++ ++format_wav_gsm = module:option(ListValue, "format_wav_gsm", "Microsoft WAV format (Proprietary GSM)", "") ++format_wav_gsm:value("yes", "Load") ++format_wav_gsm:value("no", "Do Not Load") ++format_wav_gsm:value("auto", "Load as Required") ++format_wav_gsm.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-func.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-func.lua +new file mode 100644 +index 0000000..04eb974 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-func.lua +@@ -0,0 +1,29 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++func_callerid = module:option(ListValue, "func_callerid", "Caller ID related dialplan functions", "") ++func_callerid:value("yes", "Load") ++func_callerid:value("no", "Do Not Load") ++func_callerid:value("auto", "Load as Required") ++func_callerid.rmempty = true ++ ++func_enum = module:option(ListValue, "func_enum", "ENUM Functions", "") ++func_enum:value("yes", "Load") ++func_enum:value("no", "Do Not Load") ++func_enum:value("auto", "Load as Required") ++func_enum.rmempty = true ++ ++func_uri = module:option(ListValue, "func_uri", "URI encoding / decoding functions", "") ++func_uri:value("yes", "Load") ++func_uri:value("no", "Do Not Load") ++func_uri:value("auto", "Load as Required") ++func_uri.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-pbx.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-pbx.lua +new file mode 100644 +index 0000000..cca4f34 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-pbx.lua +@@ -0,0 +1,53 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++pbx_ael = module:option(ListValue, "pbx_ael", "Asterisk Extension Language Compiler", "") ++pbx_ael:value("yes", "Load") ++pbx_ael:value("no", "Do Not Load") ++pbx_ael:value("auto", "Load as Required") ++pbx_ael.rmempty = true ++ ++pbx_config = module:option(ListValue, "pbx_config", "Text Extension Configuration", "") ++pbx_config:value("yes", "Load") ++pbx_config:value("no", "Do Not Load") ++pbx_config:value("auto", "Load as Required") ++pbx_config.rmempty = true ++ ++pbx_functions = module:option(ListValue, "pbx_functions", "load => .so ; Builtin dialplan functions", "") ++pbx_functions:value("yes", "Load") ++pbx_functions:value("no", "Do Not Load") ++pbx_functions:value("auto", "Load as Required") ++pbx_functions.rmempty = true ++ ++pbx_loopback = module:option(ListValue, "pbx_loopback", "Loopback Switch", "") ++pbx_loopback:value("yes", "Load") ++pbx_loopback:value("no", "Do Not Load") ++pbx_loopback:value("auto", "Load as Required") ++pbx_loopback.rmempty = true ++ ++pbx_realtime = module:option(ListValue, "pbx_realtime", "Realtime Switch", "") ++pbx_realtime:value("yes", "Load") ++pbx_realtime:value("no", "Do Not Load") ++pbx_realtime:value("auto", "Load as Required") ++pbx_realtime.rmempty = true ++ ++pbx_spool = module:option(ListValue, "pbx_spool", "Outgoing Spool Support", "") ++pbx_spool:value("yes", "Load") ++pbx_spool:value("no", "Do Not Load") ++pbx_spool:value("auto", "Load as Required") ++pbx_spool.rmempty = true ++ ++pbx_wilcalu = module:option(ListValue, "pbx_wilcalu", "Wil Cal U (Auto Dialer)", "") ++pbx_wilcalu:value("yes", "Load") ++pbx_wilcalu:value("no", "Do Not Load") ++pbx_wilcalu:value("auto", "Load as Required") ++pbx_wilcalu.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-res-feature.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-res-feature.lua +new file mode 100644 +index 0000000..783aab2 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-res-feature.lua +@@ -0,0 +1,100 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++featuremap = cbimap:section(TypedSection, "featuremap", "Feature Key maps", "") ++featuremap.anonymous = true ++featuremap.addremove = true ++ ++atxfer = featuremap:option(Value, "atxfer", "Attended transfer key", "") ++atxfer.rmempty = true ++ ++blindxfer = featuremap:option(Value, "blindxfer", "Blind transfer key", "") ++blindxfer.rmempty = true ++ ++disconnect = featuremap:option(Value, "disconnect", "Key to Disconnect call", "") ++disconnect.rmempty = true ++ ++parkcall = featuremap:option(Value, "parkcall", "Key to Park call", "") ++parkcall.rmempty = true ++ ++ ++featurepark = cbimap:section(TypedSection, "featurepark", "Parking Feature", "") ++featurepark.anonymous = true ++ ++parkenabled = featurepark:option(Flag, "parkenabled", "Enable Parking", "") ++ ++adsipark = featurepark:option(Flag, "adsipark", "ADSI Park", "") ++adsipark.rmempty = true ++adsipark:depends({ parkenabled = "1" }) ++ ++atxfernoanswertimeout = featurepark:option(Value, "atxfernoanswertimeout", "Attended transfer timeout (sec)", "") ++atxfernoanswertimeout.rmempty = true ++atxfernoanswertimeout:depends({ parkenabled = "1" }) ++ ++automon = featurepark:option(Value, "automon", "One touch record key", "") ++automon.rmempty = true ++automon:depends({ parkenabled = "1" }) ++ ++context = featurepark:option(Value, "context", "Name of call context for parking", "") ++context.rmempty = true ++context:depends({ parkenabled = "1" }) ++ ++courtesytone = featurepark:option(Value, "courtesytone", "Sound file to play to parked caller", "") ++courtesytone.rmempty = true ++courtesytone:depends({ parkenabled = "1" }) ++ ++featuredigittimeout = featurepark:option(Value, "featuredigittimeout", "Max time (ms) between digits for feature activation", "") ++featuredigittimeout.rmempty = true ++featuredigittimeout:depends({ parkenabled = "1" }) ++ ++findslot = featurepark:option(ListValue, "findslot", "Method to Find Parking slot", "") ++findslot:value("first", "First available slot") ++findslot:value("next", "Next free parking space") ++findslot.rmempty = true ++findslot:depends({ parkenabled = "1" }) ++ ++parkedmusicclass = featurepark:option(ListValue, "parkedmusicclass", "Music on Hold class for the parked channel", "") ++parkedmusicclass.titleref = luci.dispatcher.build_url( "admin", "services", "asterisk" ) ++parkedmusicclass:depends({ parkenabled = "1" }) ++cbimap.uci:foreach( "asterisk", "moh", function(s) parkedmusicclass:value(s['.name']) end ) ++ ++parkedplay = featurepark:option(ListValue, "parkedplay", "Play courtesy tone to", "") ++parkedplay:value("caller", "Caller") ++parkedplay:value("parked", "Parked user") ++parkedplay:value("both", "Both") ++parkedplay.rmempty = true ++parkedplay:depends({ parkenabled = "1" }) ++ ++parkext = featurepark:option(Value, "parkext", "Extension to dial to park", "") ++parkext.rmempty = true ++parkext:depends({ parkenabled = "1" }) ++ ++parkingtime = featurepark:option(Value, "parkingtime", "Parking time (secs)", "") ++parkingtime.rmempty = true ++parkingtime:depends({ parkenabled = "1" }) ++ ++parkpos = featurepark:option(Value, "parkpos", "Range of extensions for call parking", "") ++parkpos.rmempty = true ++parkpos:depends({ parkenabled = "1" }) ++ ++pickupexten = featurepark:option(Value, "pickupexten", "Pickup extension", "") ++pickupexten.rmempty = true ++pickupexten:depends({ parkenabled = "1" }) ++ ++transferdigittimeout = featurepark:option(Value, "transferdigittimeout", "Seconds to wait bewteen digits when transferring", "") ++transferdigittimeout.rmempty = true ++transferdigittimeout:depends({ parkenabled = "1" }) ++ ++xferfailsound = featurepark:option(Value, "xferfailsound", "sound when attended transfer is complete", "") ++xferfailsound.rmempty = true ++xferfailsound:depends({ parkenabled = "1" }) ++ ++xfersound = featurepark:option(Value, "xfersound", "Sound when attended transfer fails", "") ++xfersound.rmempty = true ++xfersound:depends({ parkenabled = "1" }) ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-res.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-res.lua +new file mode 100644 +index 0000000..4bef199 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-mod-res.lua +@@ -0,0 +1,77 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++module = cbimap:section(TypedSection, "module", "Modules", "") ++module.anonymous = true ++ ++res_config_mysql = module:option(ListValue, "res_config_mysql", "MySQL Config Resource", "") ++res_config_mysql:value("yes", "Load") ++res_config_mysql:value("no", "Do Not Load") ++res_config_mysql:value("auto", "Load as Required") ++res_config_mysql.rmempty = true ++ ++res_config_odbc = module:option(ListValue, "res_config_odbc", "ODBC Config Resource", "") ++res_config_odbc:value("yes", "Load") ++res_config_odbc:value("no", "Do Not Load") ++res_config_odbc:value("auto", "Load as Required") ++res_config_odbc.rmempty = true ++ ++res_config_pgsql = module:option(ListValue, "res_config_pgsql", "PGSQL Module", "") ++res_config_pgsql:value("yes", "Load") ++res_config_pgsql:value("no", "Do Not Load") ++res_config_pgsql:value("auto", "Load as Required") ++res_config_pgsql.rmempty = true ++ ++res_crypto = module:option(ListValue, "res_crypto", "Cryptographic Digital Signatures", "") ++res_crypto:value("yes", "Load") ++res_crypto:value("no", "Do Not Load") ++res_crypto:value("auto", "Load as Required") ++res_crypto.rmempty = true ++ ++res_features = module:option(ListValue, "res_features", "Call Parking Resource", "") ++res_features:value("yes", "Load") ++res_features:value("no", "Do Not Load") ++res_features:value("auto", "Load as Required") ++res_features.rmempty = true ++ ++res_indications = module:option(ListValue, "res_indications", "Indications Configuration", "") ++res_indications:value("yes", "Load") ++res_indications:value("no", "Do Not Load") ++res_indications:value("auto", "Load as Required") ++res_indications.rmempty = true ++ ++res_monitor = module:option(ListValue, "res_monitor", "Call Monitoring Resource", "") ++res_monitor:value("yes", "Load") ++res_monitor:value("no", "Do Not Load") ++res_monitor:value("auto", "Load as Required") ++res_monitor.rmempty = true ++ ++res_musiconhold = module:option(ListValue, "res_musiconhold", "Music On Hold Resource", "") ++res_musiconhold:value("yes", "Load") ++res_musiconhold:value("no", "Do Not Load") ++res_musiconhold:value("auto", "Load as Required") ++res_musiconhold.rmempty = true ++ ++res_odbc = module:option(ListValue, "res_odbc", "ODBC Resource", "") ++res_odbc:value("yes", "Load") ++res_odbc:value("no", "Do Not Load") ++res_odbc:value("auto", "Load as Required") ++res_odbc.rmempty = true ++ ++res_smdi = module:option(ListValue, "res_smdi", "SMDI Module", "") ++res_smdi:value("yes", "Load") ++res_smdi:value("no", "Do Not Load") ++res_smdi:value("auto", "Load as Required") ++res_smdi.rmempty = true ++ ++res_snmp = module:option(ListValue, "res_snmp", "SNMP Module", "") ++res_snmp:value("yes", "Load") ++res_snmp:value("no", "Do Not Load") ++res_snmp:value("auto", "Load as Required") ++res_snmp.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-sip-connections.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-sip-connections.lua +new file mode 100644 +index 0000000..a095ec3 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-sip-connections.lua +@@ -0,0 +1,98 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++sip = cbimap:section(TypedSection, "sip", "SIP Connection", "") ++sip.addremove = true ++ ++alwaysinternational = sip:option(Flag, "alwaysinternational", "Always Dial International", "") ++alwaysinternational.optional = true ++ ++canreinvite = sip:option(ListValue, "canreinvite", "Reinvite/redirect media connections", "") ++canreinvite:value("yes", "Yes") ++canreinvite:value("nonat", "Yes when not behind NAT") ++canreinvite:value("update", "Use UPDATE rather than INVITE for path redirection") ++canreinvite:value("no", "No") ++canreinvite.optional = true ++ ++context = sip:option(ListValue, "context", "Context to use", "") ++context.titleref = luci.dispatcher.build_url( "admin", "services", "asterisk", "dialplans" ) ++cbimap.uci:foreach( "asterisk", "dialplan", function(s) context:value(s['.name']) end ) ++cbimap.uci:foreach( "asterisk", "dialzone", function(s) context:value(s['.name']) end ) ++ ++countrycode = sip:option(Value, "countrycode", "Country Code for connection", "") ++countrycode.optional = true ++ ++dtmfmode = sip:option(ListValue, "dtmfmode", "DTMF mode", "") ++dtmfmode:value("info", "Use RFC2833 or INFO for the BudgeTone") ++dtmfmode:value("rfc2833", "Use RFC2833 for the BudgeTone") ++dtmfmode:value("inband", "Use Inband (only with ulaw/alaw)") ++dtmfmode.optional = true ++ ++extension = sip:option(Value, "extension", "Add as Extension", "") ++extension.optional = true ++ ++fromdomain = sip:option(Value, "fromdomain", "Primary domain identity for From: headers", "") ++fromdomain.optional = true ++ ++fromuser = sip:option(Value, "fromuser", "From user (required by many SIP providers)", "") ++fromuser.optional = true ++ ++host = sip:option(Value, "host", "Host name (or blank)", "") ++host.optional = true ++ ++incoming = sip:option(DynamicList, "incoming", "Ring on incoming dialplan contexts", "") ++incoming.optional = true ++ ++insecure = sip:option(ListValue, "insecure", "Allow Insecure for", "") ++insecure:value("port", "Allow mismatched port number") ++insecure:value("invite", "Do not require auth of incoming INVITE") ++insecure:value("port,invite", "Allow mismatched port and Do not require auth of incoming INVITE") ++insecure.optional = true ++ ++internationalprefix = sip:option(Value, "internationalprefix", "International Dial Prefix", "") ++internationalprefix.optional = true ++ ++mailbox = sip:option(Value, "mailbox", "Mailbox for MWI", "") ++mailbox.optional = true ++ ++nat = sip:option(Flag, "nat", "NAT between phone and Asterisk", "") ++nat.optional = true ++ ++pedantic = sip:option(Flag, "pedantic", "Check tags in headers", "") ++pedantic.optional = true ++ ++port = sip:option(Value, "port", "SIP Port", "") ++port.optional = true ++ ++prefix = sip:option(Value, "prefix", "Dial Prefix (for external line)", "") ++prefix.optional = true ++ ++qualify = sip:option(Value, "qualify", "Reply Timeout (ms) for down connection", "") ++qualify.optional = true ++ ++register = sip:option(Flag, "register", "Register connection", "") ++register.optional = true ++ ++secret = sip:option(Value, "secret", "Secret", "") ++secret.optional = true ++ ++selfmailbox = sip:option(Flag, "selfmailbox", "Dial own extension for mailbox", "") ++selfmailbox.optional = true ++ ++timeout = sip:option(Value, "timeout", "Dial Timeout (sec)", "") ++timeout.optional = true ++ ++type = sip:option(ListValue, "type", "Client Type", "") ++type:value("friend", "Friend (outbound/inbound)") ++type:value("user", "User (inbound - authenticate by \"from\")") ++type:value("peer", "Peer (outbound - match by host)") ++type.optional = true ++ ++username = sip:option(Value, "username", "Username", "") ++username.optional = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-voice.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-voice.lua +new file mode 100644 +index 0000000..7341dfb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk-voice.lua +@@ -0,0 +1,41 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++voicegeneral = cbimap:section(TypedSection, "voicegeneral", "Voicemail general options", "") ++ ++serveremail = voicegeneral:option(Value, "serveremail", "From Email address of server", "") ++ ++ ++voicemail = cbimap:section(TypedSection, "voicemail", "Voice Mail boxes", "") ++voicemail.addremove = true ++ ++attach = voicemail:option(Flag, "attach", "Email contains attachment", "") ++attach.rmempty = true ++ ++email = voicemail:option(Value, "email", "Email", "") ++email.rmempty = true ++ ++name = voicemail:option(Value, "name", "Display Name", "") ++name.rmempty = true ++ ++password = voicemail:option(Value, "password", "Password", "") ++password.rmempty = true ++ ++zone = voicemail:option(ListValue, "zone", "Voice Zone", "") ++cbimap.uci:foreach( "asterisk", "voicezone", function(s) zone:value(s['.name']) end ) ++ ++ ++voicezone = cbimap:section(TypedSection, "voicezone", "Voice Zone settings", "") ++voicezone.addremove = true ++ ++message = voicezone:option(Value, "message", "Message Format", "") ++message.rmempty = true ++ ++zone = voicezone:option(Value, "zone", "Time Zone", "") ++zone.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk.lua +new file mode 100644 +index 0000000..026aab4 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk.lua +@@ -0,0 +1,151 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "asterisk", "") ++ ++asterisk = cbimap:section(TypedSection, "asterisk", "Asterisk General Options", "") ++asterisk.anonymous = true ++ ++agidir = asterisk:option(Value, "agidir", "AGI directory", "") ++agidir.rmempty = true ++ ++cache_record_files = asterisk:option(Flag, "cache_record_files", "Cache recorded sound files during recording", "") ++cache_record_files.rmempty = true ++ ++debug = asterisk:option(Value, "debug", "Debug Level", "") ++debug.rmempty = true ++ ++dontwarn = asterisk:option(Flag, "dontwarn", "Disable some warnings", "") ++dontwarn.rmempty = true ++ ++dumpcore = asterisk:option(Flag, "dumpcore", "Dump core on crash", "") ++dumpcore.rmempty = true ++ ++highpriority = asterisk:option(Flag, "highpriority", "High Priority", "") ++highpriority.rmempty = true ++ ++initcrypto = asterisk:option(Flag, "initcrypto", "Initialise Crypto", "") ++initcrypto.rmempty = true ++ ++internal_timing = asterisk:option(Flag, "internal_timing", "Use Internal Timing", "") ++internal_timing.rmempty = true ++ ++logdir = asterisk:option(Value, "logdir", "Log directory", "") ++logdir.rmempty = true ++ ++maxcalls = asterisk:option(Value, "maxcalls", "Maximum number of calls allowed", "") ++maxcalls.rmempty = true ++ ++maxload = asterisk:option(Value, "maxload", "Maximum load to stop accepting new calls", "") ++maxload.rmempty = true ++ ++nocolor = asterisk:option(Flag, "nocolor", "Disable console colors", "") ++nocolor.rmempty = true ++ ++record_cache_dir = asterisk:option(Value, "record_cache_dir", "Sound files Cache directory", "") ++record_cache_dir.rmempty = true ++record_cache_dir:depends({ ["cache_record_files"] = "true" }) ++ ++rungroup = asterisk:option(Flag, "rungroup", "The Group to run as", "") ++rungroup.rmempty = true ++ ++runuser = asterisk:option(Flag, "runuser", "The User to run as", "") ++runuser.rmempty = true ++ ++spooldir = asterisk:option(Value, "spooldir", "Voicemail Spool directory", "") ++spooldir.rmempty = true ++ ++systemname = asterisk:option(Value, "systemname", "Prefix UniquID with system name", "") ++systemname.rmempty = true ++ ++transcode_via_sln = asterisk:option(Flag, "transcode_via_sln", "Build transcode paths via SLINEAR, not directly", "") ++transcode_via_sln.rmempty = true ++ ++transmit_silence_during_record = asterisk:option(Flag, "transmit_silence_during_record", "Transmit SLINEAR silence while recording a channel", "") ++transmit_silence_during_record.rmempty = true ++ ++verbose = asterisk:option(Value, "verbose", "Verbose Level", "") ++verbose.rmempty = true ++ ++zone = asterisk:option(Value, "zone", "Time Zone", "") ++zone.rmempty = true ++ ++ ++hardwarereboot = cbimap:section(TypedSection, "hardwarereboot", "Reload Hardware Config", "") ++ ++method = hardwarereboot:option(ListValue, "method", "Reboot Method", "") ++method:value("web", "Web URL (wget)") ++method:value("system", "program to run") ++method.rmempty = true ++ ++param = hardwarereboot:option(Value, "param", "Parameter", "") ++param.rmempty = true ++ ++ ++iaxgeneral = cbimap:section(TypedSection, "iaxgeneral", "IAX General Options", "") ++iaxgeneral.anonymous = true ++iaxgeneral.addremove = true ++ ++allow = iaxgeneral:option(MultiValue, "allow", "Allow Codecs", "") ++allow:value("alaw", "alaw") ++allow:value("gsm", "gsm") ++allow:value("g726", "g726") ++allow.rmempty = true ++ ++canreinvite = iaxgeneral:option(ListValue, "canreinvite", "Reinvite/redirect media connections", "") ++canreinvite:value("yes", "Yes") ++canreinvite:value("nonat", "Yes when not behind NAT") ++canreinvite:value("update", "Use UPDATE rather than INVITE for path redirection") ++canreinvite:value("no", "No") ++canreinvite.rmempty = true ++ ++static = iaxgeneral:option(Flag, "static", "Static", "") ++static.rmempty = true ++ ++writeprotect = iaxgeneral:option(Flag, "writeprotect", "Write Protect", "") ++writeprotect.rmempty = true ++ ++ ++sipgeneral = cbimap:section(TypedSection, "sipgeneral", "Section sipgeneral", "") ++sipgeneral.anonymous = true ++sipgeneral.addremove = true ++ ++allow = sipgeneral:option(MultiValue, "allow", "Allow codecs", "") ++allow:value("ulaw", "ulaw") ++allow:value("alaw", "alaw") ++allow:value("gsm", "gsm") ++allow:value("g726", "g726") ++allow.rmempty = true ++ ++port = sipgeneral:option(Value, "port", "SIP Port", "") ++port.rmempty = true ++ ++realm = sipgeneral:option(Value, "realm", "SIP realm", "") ++realm.rmempty = true ++ ++ ++moh = cbimap:section(TypedSection, "moh", "Music On Hold", "") ++ ++application = moh:option(Value, "application", "Application", "") ++application.rmempty = true ++application:depends({ ["asterisk.moh.mode"] = "custom" }) ++ ++directory = moh:option(Value, "directory", "Directory of Music", "") ++directory.rmempty = true ++ ++mode = moh:option(ListValue, "mode", "Option mode", "") ++mode:value("system", "program to run") ++mode:value("files", "Read files from directory") ++mode:value("quietmp3", "Quite MP3") ++mode:value("mp3", "Loud MP3") ++mode:value("mp3nb", "unbuffered MP3") ++mode:value("quietmp3nb", "Quiet Unbuffered MP3") ++mode:value("custom", "Run a custom application") ++mode.rmempty = true ++ ++random = moh:option(Flag, "random", "Random Play", "") ++random.rmempty = true ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialplan_out.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialplan_out.lua +new file mode 100644 +index 0000000..b4c81bb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialplan_out.lua +@@ -0,0 +1,125 @@ ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require("luci.asterisk") ++ ++local function find_outgoing_contexts(uci) ++ local c = { } ++ local h = { } ++ ++-- uci:foreach("asterisk", "dialplan", ++-- function(s) ++-- if not h[s['.name']] then ++-- c[#c+1] = { s['.name'], "Dialplan: %s" % s['.name'] } ++-- h[s['.name']] = true ++-- end ++-- end) ++ ++ uci:foreach("asterisk", "dialzone", ++ function(s) ++ if not h[s['.name']] then ++ c[#c+1] = { s['.name'], "Dialzone: %s" % s['.name'] } ++ h[s['.name']] = true ++ end ++ end) ++ ++ return c ++end ++ ++local function find_incoming_contexts(uci) ++ local c = { } ++ local h = { } ++ ++ uci:foreach("asterisk", "sip", ++ function(s) ++ if s.context and not h[s.context] and ++ uci:get_bool("asterisk", s['.name'], "provider") ++ then ++ c[#c+1] = { s.context, "Incoming: %s" % s['.name'] or s.context } ++ h[s.context] = true ++ end ++ end) ++ ++ return c ++end ++ ++local function find_trunks(uci) ++ local t = { } ++ ++ uci:foreach("asterisk", "sip", ++ function(s) ++ if uci:get_bool("asterisk", s['.name'], "provider") then ++ t[#t+1] = { ++ "SIP/%s" % s['.name'], ++ "SIP: %s" % s['.name'] ++ } ++ end ++ end) ++ ++ uci:foreach("asterisk", "iax", ++ function(s) ++ t[#t+1] = { ++ "IAX/%s" % s['.name'], ++ "IAX: %s" % s.extension or s['.name'] ++ } ++ end) ++ ++ return t ++end ++ ++--[[ ++ ++dialzone {name} - Outgoing zone. ++ uses - Outgoing line to use: TYPE/Name ++ match (list) - Number to match ++ countrycode - The effective country code of this dialzone ++ international (list) - International prefix to match ++ localzone - dialzone for local numbers ++ addprefix - Prexix required to dial out. ++ localprefix - Prefix for a local call ++ ++]] ++ ++ ++-- ++-- SIP dialzone configuration ++-- ++if arg[1] then ++ cbimap = Map("asterisk", "Edit Dialplan Entry") ++ ++ entry = cbimap:section(NamedSection, arg[1]) ++ ++ back = entry:option(DummyValue, "_overview", "Back to dialplan overview") ++ back.value = "" ++ back.titleref = luci.dispatcher.build_url("admin", "asterisk", "dialplans") ++ ++ desc = entry:option(Value, "description", "Description") ++ function desc.cfgvalue(self, s, ...) ++ return Value.cfgvalue(self, s, ...) or s ++ end ++ ++ match = entry:option(DynamicList, "match", "Number matches") ++ ++ intl = entry:option(DynamicList, "international", "Intl. prefix matches (optional)") ++ ++ trunk = entry:option(MultiValue, "uses", "Used trunk") ++ for _, v in ipairs(find_trunks(cbimap.uci)) do ++ trunk:value(unpack(v)) ++ end ++ ++ aprefix = entry:option(Value, "addprefix", "Add prefix to dial out (optional)") ++ --ast.idd.cbifill(aprefix) ++ ++ ccode = entry:option(Value, "countrycode", "Effective countrycode (optional)") ++ ast.cc.cbifill(ccode) ++ ++ lzone = entry:option(ListValue, "localzone", "Dialzone for local numbers") ++ lzone:value("", "no special treatment of local numbers") ++ for _, v in ipairs(find_outgoing_contexts(cbimap.uci)) do ++ lzone:value(unpack(v)) ++ end ++ ++ lprefix = entry:option(Value, "localprefix", "Prefix for local calls (optional)") ++ ++ return cbimap ++end +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialplans.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialplans.lua +new file mode 100644 +index 0000000..4ffeca4 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialplans.lua +@@ -0,0 +1,103 @@ ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require("luci.asterisk") ++ ++cbimap = Map("asterisk", "Registered Trunks") ++cbimap.pageaction = false ++ ++local sip_peers = { } ++cbimap.uci:foreach("asterisk", "sip", ++ function(s) ++ if s.type == "peer" then ++ s.name = s['.name'] ++ s.info = ast.sip.peer(s.name) ++ sip_peers[s.name] = s ++ end ++ end) ++ ++ ++sip_table = cbimap:section(TypedSection, "sip", "SIP Trunks") ++sip_table.template = "cbi/tblsection" ++sip_table.extedit = luci.dispatcher.build_url("admin", "asterisk", "trunks", "sip", "%s") ++sip_table.addremove = true ++sip_table.sectionhead = "Extension" ++ ++function sip_table.filter(self, s) ++ return s and ( ++ cbimap.uci:get("asterisk", s, "type") == nil or ++ cbimap.uci:get_bool("asterisk", s, "provider") ++ ) ++end ++ ++function sip_table.create(self, section) ++ if TypedSection.create(self, section) then ++ created = section ++ else ++ self.invalid_cts = true ++ end ++end ++ ++function sip_table.parse(self, ...) ++ TypedSection.parse(self, ...) ++ if created then ++ cbimap.uci:tset("asterisk", created, { ++ type = "friend", ++ qualify = "yes", ++ provider = "yes" ++ }) ++ ++ cbimap.uci:save("asterisk") ++ luci.http.redirect(luci.dispatcher.build_url( ++ "admin", "asterisk", "trunks", "sip", created ++ )) ++ end ++end ++ ++ ++user = sip_table:option(DummyValue, "username", "Username") ++ ++host = sip_table:option(DummyValue, "host", "Hostname") ++function host.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.address then ++ return "%s:%i" %{ sip_peers[s].info.address, sip_peers[s].info.port } ++ else ++ return "n/a" ++ end ++end ++ ++context = sip_table:option(DummyValue, "context", "Dialplan") ++context.href = luci.dispatcher.build_url("admin", "asterisk", "dialplan") ++function context.cfgvalue(...) ++ return AbstractValue.cfgvalue(...) or "(default)" ++end ++ ++online = sip_table:option(DummyValue, "online", "Registered") ++function online.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.online == nil then ++ return "n/a" ++ else ++ return sip_peers[s] and sip_peers[s].info.online ++ and "yes" or "no (%s)" %{ ++ sip_peers[s] and sip_peers[s].info.Status:lower() or "unknown" ++ } ++ end ++end ++ ++delay = sip_table:option(DummyValue, "delay", "Delay") ++function delay.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.online then ++ return "%i ms" % sip_peers[s].info.delay ++ else ++ return "n/a" ++ end ++end ++ ++info = sip_table:option(Button, "_info", "Info") ++function info.write(self, s) ++ luci.http.redirect(luci.dispatcher.build_url( ++ "admin", "asterisk", "trunks", "sip", s, "info" ++ )) ++end ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialzones.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialzones.lua +new file mode 100644 +index 0000000..5585c06 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/dialzones.lua +@@ -0,0 +1,123 @@ ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require("luci.asterisk") ++local uci = require("luci.model.uci").cursor() ++ ++--[[ ++ Dialzone overview table ++]] ++ ++if not arg[1] then ++ zonemap = Map("asterisk", "Dial Zones", [[ ++ Dial zones hold patterns of dialed numbers to match. ++ Each zone has one or more trunks assigned. If the first trunk is ++ congested, Asterisk will try to use the next available connection. ++ If all trunks fail, then the following zones in the parent dialplan ++ are tried. ++ ]]) ++ ++ local zones, znames = ast.dialzone.zones() ++ ++ zonetbl = zonemap:section(Table, zones, "Zone Overview") ++ zonetbl.sectionhead = "Zone" ++ zonetbl.addremove = true ++ zonetbl.anonymous = false ++ zonetbl.extedit = luci.dispatcher.build_url( ++ "admin", "asterisk", "dialplans", "zones", "%s" ++ ) ++ ++ function zonetbl.cfgsections(self) ++ return znames ++ end ++ ++ function zonetbl.parse(self) ++ for k, v in pairs(self.map:formvaluetable( ++ luci.cbi.REMOVE_PREFIX .. self.config ++ ) or {}) do ++ if k:sub(-2) == ".x" then k = k:sub(1, #k - 2) end ++ uci:delete("asterisk", k) ++ uci:save("asterisk") ++ self.data[k] = nil ++ for i = 1,#znames do ++ if znames[i] == k then ++ table.remove(znames, i) ++ break ++ end ++ end ++ end ++ ++ Table.parse(self) ++ end ++ ++ zonetbl:option(DummyValue, "description", "Description") ++ zonetbl:option(DummyValue, "addprefix") ++ ++ match = zonetbl:option(DummyValue, "matches") ++ function match.cfgvalue(self, s) ++ return table.concat(zones[s].matches, ", ") ++ end ++ ++ trunks = zonetbl:option(DummyValue, "trunk") ++ trunks.template = "asterisk/cbi/cell" ++ function trunks.cfgvalue(self, s) ++ return ast.tools.hyperlinks(zones[s].trunks) ++ end ++ ++ return zonemap ++ ++--[[ ++ Zone edit form ++]] ++ ++else ++ zoneedit = Map("asterisk", "Edit Dialzone") ++ ++ entry = zoneedit:section(NamedSection, arg[1]) ++ entry.title = "Zone %q" % arg[1]; ++ ++ back = entry:option(DummyValue, "_overview", "Back to dialzone overview") ++ back.value = "" ++ back.titleref = luci.dispatcher.build_url( ++ "admin", "asterisk", "dialplans", "zones" ++ ) ++ ++ desc = entry:option(Value, "description", "Description") ++ function desc.cfgvalue(self, s, ...) ++ return Value.cfgvalue(self, s, ...) or s ++ end ++ ++ trunks = entry:option(MultiValue, "uses", "Used trunks") ++ trunks.widget = "checkbox" ++ uci:foreach("asterisk", "sip", ++ function(s) ++ if s.provider == "yes" then ++ trunks:value( ++ "SIP/%s" % s['.name'], ++ "SIP/%s (%s)" %{ s['.name'], s.host or 'n/a' } ++ ) ++ end ++ end) ++ ++ ++ match = entry:option(DynamicList, "match", "Number matches") ++ ++ intl = entry:option(DynamicList, "international", "Intl. prefix matches (optional)") ++ ++ aprefix = entry:option(Value, "addprefix", "Add prefix to dial out (optional)") ++ ccode = entry:option(Value, "countrycode", "Effective countrycode (optional)") ++ ++ lzone = entry:option(ListValue, "localzone", "Dialzone for local numbers") ++ lzone:value("", "no special treatment of local numbers") ++ for _, z in ipairs(ast.dialzone.zones()) do ++ lzone:value(z.name, "%q (%s)" %{ z.name, z.description }) ++ end ++ --for _, v in ipairs(find_outgoing_contexts(zoneedit.uci)) do ++ -- lzone:value(unpack(v)) ++ --end ++ ++ lprefix = entry:option(Value, "localprefix", "Prefix for local calls (optional)") ++ ++ return zoneedit ++ ++end +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/meetme.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/meetme.lua +new file mode 100644 +index 0000000..e409d70 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/meetme.lua +@@ -0,0 +1,38 @@ ++-- Copyright 2009 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require "luci.asterisk" ++ ++cbimap = Map("asterisk", "MeetMe - Rooms") ++ ++meetme = cbimap:section(TypedSection, "meetme", "MeetMe Rooms") ++meetme.addremove = true ++meetme.anonymous = true ++meetme.template = "cbi/tblsection" ++meetme:option(Value, "_description", "Description", "Short room description") ++ ++room = meetme:option(Value, "room", "Room Number", "Unique room identifier") ++ ++function room.write(self, s, val) ++ if val and #val > 0 then ++ local old = self:cfgvalue(s) ++ self.map.uci:foreach("asterisk", "dialplanmeetme", ++ function(v) ++ if v.room == old then ++ self.map:set(v['.name'], "room", val) ++ end ++ end) ++ Value.write(self, s, val) ++ end ++end ++ ++ ++meetme:option(Value, "pin", "PIN", "PIN required to access") ++meetme:option(Value, "adminpin", "Admin PIN", "PIN required for administration") ++ ++function meetme.remove(self, s) ++ return ast.meetme.remove(self.map:get(s, "room"), self.map.uci) ++end ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/meetme_settings.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/meetme_settings.lua +new file mode 100644 +index 0000000..9e5aed7 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/meetme_settings.lua +@@ -0,0 +1,17 @@ ++-- Copyright 2009 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++cbimap = Map("asterisk", "MeetMe - Common Settings", ++ "Common settings for MeetMe phone conferences.") ++ ++meetme = cbimap:section(TypedSection, "meetmegeneral", "General MeetMe Options") ++meetme.addremove = false ++meetme.anonymous = true ++ ++audiobuffers = meetme:option(ListValue, "audiobuffers", ++ "Number of 20ms audio buffers to use for conferences") ++ ++for i = 2, 32 do audiobuffers:value(i) end ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/phone_sip.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/phone_sip.lua +new file mode 100644 +index 0000000..01dfc16 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/phone_sip.lua +@@ -0,0 +1,145 @@ ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require("luci.asterisk") ++ ++local function find_outgoing_contexts(uci) ++ local c = { } ++ local h = { } ++ ++ uci:foreach("asterisk", "dialplan", ++ function(s) ++ if not h[s['.name']] then ++ c[#c+1] = { s['.name'], "Dialplan: %s" % s['.name'] } ++ h[s['.name']] = true ++ end ++ end) ++ ++ return c ++end ++ ++local function find_incoming_contexts(uci) ++ local c = { } ++ local h = { } ++ ++ uci:foreach("asterisk", "sip", ++ function(s) ++ if s.context and not h[s.context] and ++ uci:get_bool("asterisk", s['.name'], "provider") ++ then ++ c[#c+1] = { s.context, "Incoming: %s" % s['.name'] or s.context } ++ h[s.context] = true ++ end ++ end) ++ ++ return c ++end ++ ++ ++-- ++-- SIP phone info ++-- ++if arg[2] == "info" then ++ form = SimpleForm("asterisk", "SIP Phone Information") ++ form.reset = false ++ form.submit = "Back to overview" ++ ++ local info, keys = ast.sip.peer(arg[1]) ++ local data = { } ++ ++ for _, key in ipairs(keys) do ++ data[#data+1] = { ++ key = key, ++ val = type(info[key]) == "boolean" ++ and ( info[key] and "yes" or "no" ) ++ or ( info[key] == nil or #info[key] == 0 ) ++ and "(none)" ++ or tostring(info[key]) ++ } ++ end ++ ++ itbl = form:section(Table, data, "SIP Phone %q" % arg[1]) ++ itbl:option(DummyValue, "key", "Key") ++ itbl:option(DummyValue, "val", "Value") ++ ++ function itbl.parse(...) ++ luci.http.redirect( ++ luci.dispatcher.build_url("admin", "asterisk", "phones") ++ ) ++ end ++ ++ return form ++ ++-- ++-- SIP phone configuration ++-- ++elseif arg[1] then ++ cbimap = Map("asterisk", "Edit SIP Client") ++ ++ peer = cbimap:section(NamedSection, arg[1]) ++ peer.hidden = { ++ type = "friend", ++ qualify = "yes", ++ host = "dynamic", ++ nat = "no", ++ canreinvite = "no" ++ } ++ ++ back = peer:option(DummyValue, "_overview", "Back to phone overview") ++ back.value = "" ++ back.titleref = luci.dispatcher.build_url("admin", "asterisk", "phones") ++ ++ active = peer:option(Flag, "disable", "Account enabled") ++ active.enabled = "yes" ++ active.disabled = "no" ++ function active.cfgvalue(...) ++ return AbstractValue.cfgvalue(...) or "yes" ++ end ++ ++ exten = peer:option(Value, "extension", "Extension Number") ++ cbimap.uci:foreach("asterisk", "dialplanexten", ++ function(s) ++ exten:value( ++ s.extension, ++ "%s (via %s/%s)" %{ s.extension, s.type:upper(), s.target } ++ ) ++ end) ++ ++ display = peer:option(Value, "callerid", "Display Name") ++ ++ username = peer:option(Value, "username", "Authorization ID") ++ password = peer:option(Value, "secret", "Authorization Password") ++ password.password = true ++ ++ regtimeout = peer:option(Value, "registertimeout", "Registration Time Value") ++ function regtimeout.cfgvalue(...) ++ return AbstractValue.cfgvalue(...) or "60" ++ end ++ ++ sipport = peer:option(Value, "port", "SIP Port") ++ function sipport.cfgvalue(...) ++ return AbstractValue.cfgvalue(...) or "5060" ++ end ++ ++ linekey = peer:option(ListValue, "_linekey", "Linekey Mode (broken)") ++ linekey:value("", "Off") ++ linekey:value("trunk", "Trunk Appearance") ++ linekey:value("call", "Call Appearance") ++ ++ dialplan = peer:option(ListValue, "context", "Assign Dialplan") ++ dialplan.titleref = luci.dispatcher.build_url("admin", "asterisk", "dialplans") ++ for _, v in ipairs(find_outgoing_contexts(cbimap.uci)) do ++ dialplan:value(unpack(v)) ++ end ++ ++ incoming = peer:option(StaticList, "incoming", "Receive incoming calls from") ++ for _, v in ipairs(find_incoming_contexts(cbimap.uci)) do ++ incoming:value(unpack(v)) ++ end ++ ++ --function incoming.cfgvalue(...) ++ --error(table.concat(MultiValue.cfgvalue(...),".")) ++ --end ++ ++ return cbimap ++end +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/phones.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/phones.lua +new file mode 100644 +index 0000000..a6c44f9 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/phones.lua +@@ -0,0 +1,104 @@ ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require("luci.asterisk") ++ ++cbimap = Map("asterisk", "Registered Phones") ++cbimap.pageaction = false ++ ++local sip_peers = { } ++cbimap.uci:foreach("asterisk", "sip", ++ function(s) ++ if s.type ~= "peer" then ++ s.name = s['.name'] ++ s.info = ast.sip.peer(s.name) ++ sip_peers[s.name] = s ++ end ++ end) ++ ++ ++sip_table = cbimap:section(TypedSection, "sip", "SIP Phones") ++sip_table.template = "cbi/tblsection" ++sip_table.extedit = luci.dispatcher.build_url("admin", "asterisk", "phones", "sip", "%s") ++sip_table.addremove = true ++ ++function sip_table.filter(self, s) ++ return s and not cbimap.uci:get_bool("asterisk", s, "provider") ++end ++ ++function sip_table.create(self, section) ++ if TypedSection.create(self, section) then ++ created = section ++ cbimap.uci:tset("asterisk", section, { ++ type = "friend", ++ qualify = "yes", ++ provider = "no", ++ host = "dynamic", ++ nat = "no", ++ canreinvite = "no", ++ extension = section:match("^%d+$") and section or "", ++ username = section:match("^%d+$") and section or "" ++ }) ++ else ++ self.invalid_cts = true ++ end ++end ++ ++function sip_table.parse(self, ...) ++ TypedSection.parse(self, ...) ++ if created then ++ cbimap.uci:save("asterisk") ++ luci.http.redirect(luci.dispatcher.build_url( ++ "admin", "asterisk", "phones", "sip", created ++ )) ++ end ++end ++ ++ ++user = sip_table:option(DummyValue, "username", "Username") ++function user.cfgvalue(self, s) ++ return sip_peers[s] and sip_peers[s].callerid or ++ AbstractValue.cfgvalue(self, s) ++end ++ ++host = sip_table:option(DummyValue, "host", "Hostname") ++function host.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.address then ++ return "%s:%i" %{ sip_peers[s].info.address, sip_peers[s].info.port } ++ else ++ return "n/a" ++ end ++end ++ ++context = sip_table:option(DummyValue, "context", "Dialplan") ++context.href = luci.dispatcher.build_url("admin", "asterisk", "dialplan") ++ ++online = sip_table:option(DummyValue, "online", "Registered") ++function online.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.online == nil then ++ return "n/a" ++ else ++ return sip_peers[s] and sip_peers[s].info.online ++ and "yes" or "no (%s)" % { ++ sip_peers[s] and sip_peers[s].info.Status:lower() or "unknown" ++ } ++ end ++end ++ ++delay = sip_table:option(DummyValue, "delay", "Delay") ++function delay.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.online then ++ return "%i ms" % sip_peers[s].info.delay ++ else ++ return "n/a" ++ end ++end ++ ++info = sip_table:option(Button, "_info", "Info") ++function info.write(self, s) ++ luci.http.redirect(luci.dispatcher.build_url( ++ "admin", "asterisk", "phones", "sip", s, "info" ++ )) ++end ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/trunk_sip.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/trunk_sip.lua +new file mode 100644 +index 0000000..eedc1c2 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/trunk_sip.lua +@@ -0,0 +1,86 @@ ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require("luci.asterisk") ++ ++-- ++-- SIP trunk info ++-- ++if arg[2] == "info" then ++ form = SimpleForm("asterisk", "SIP Trunk Information") ++ form.reset = false ++ form.submit = "Back to overview" ++ ++ local info, keys = ast.sip.peer(arg[1]) ++ local data = { } ++ ++ for _, key in ipairs(keys) do ++ data[#data+1] = { ++ key = key, ++ val = type(info[key]) == "boolean" ++ and ( info[key] and "yes" or "no" ) ++ or ( info[key] == nil or #info[key] == 0 ) ++ and "(none)" ++ or tostring(info[key]) ++ } ++ end ++ ++ itbl = form:section(Table, data, "SIP Trunk %q" % arg[1]) ++ itbl:option(DummyValue, "key", "Key") ++ itbl:option(DummyValue, "val", "Value") ++ ++ function itbl.parse(...) ++ luci.http.redirect( ++ luci.dispatcher.build_url("admin", "asterisk", "trunks") ++ ) ++ end ++ ++ return form ++ ++-- ++-- SIP trunk config ++-- ++elseif arg[1] then ++ cbimap = Map("asterisk", "Edit SIP Trunk") ++ ++ peer = cbimap:section(NamedSection, arg[1]) ++ peer.hidden = { ++ type = "peer", ++ qualify = "yes", ++ } ++ ++ back = peer:option(DummyValue, "_overview", "Back to trunk overview") ++ back.value = "" ++ back.titleref = luci.dispatcher.build_url("admin", "asterisk", "trunks") ++ ++ sipdomain = peer:option(Value, "host", "SIP Domain") ++ sipport = peer:option(Value, "port", "SIP Port") ++ function sipport.cfgvalue(...) ++ return AbstractValue.cfgvalue(...) or "5060" ++ end ++ ++ username = peer:option(Value, "username", "Authorization ID") ++ password = peer:option(Value, "secret", "Authorization Password") ++ password.password = true ++ ++ outboundproxy = peer:option(Value, "outboundproxy", "Outbound Proxy") ++ outboundport = peer:option(Value, "outboundproxyport", "Outbound Proxy Port") ++ ++ register = peer:option(Flag, "register", "Register with peer") ++ register.enabled = "yes" ++ register.disabled = "no" ++ ++ regext = peer:option(Value, "registerextension", "Extension to register (optional)") ++ regext:depends({register="1"}) ++ ++ didval = peer:option(ListValue, "_did", "Number of assigned DID numbers") ++ didval:value("", "(none)") ++ for i=1,24 do didval:value(i) end ++ ++ dialplan = peer:option(ListValue, "context", "Dialplan Context") ++ dialplan:value(arg[1] .. "_inbound", "(default)") ++ cbimap.uci:foreach("asterisk", "dialplan", ++ function(s) dialplan:value(s['.name']) end) ++ ++ return cbimap ++end +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/trunks.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/trunks.lua +new file mode 100644 +index 0000000..44c8ca8 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/trunks.lua +@@ -0,0 +1,94 @@ ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require("luci.asterisk") ++ ++cbimap = Map("asterisk", "Trunks") ++cbimap.pageaction = false ++ ++local sip_peers = { } ++cbimap.uci:foreach("asterisk", "sip", ++ function(s) ++ if s.type == "peer" then ++ s.name = s['.name'] ++ s.info = ast.sip.peer(s.name) ++ sip_peers[s.name] = s ++ end ++ end) ++ ++ ++sip_table = cbimap:section(TypedSection, "sip", "SIP Trunks") ++sip_table.template = "cbi/tblsection" ++sip_table.extedit = luci.dispatcher.build_url("admin", "asterisk", "trunks", "sip", "%s") ++sip_table.addremove = true ++sip_table.sectionhead = "Extension" ++ ++function sip_table.filter(self, s) ++ return s and ( ++ cbimap.uci:get("asterisk", s, "type") == nil or ++ cbimap.uci:get_bool("asterisk", s, "provider") ++ ) ++end ++ ++function sip_table.create(self, section) ++ if TypedSection.create(self, section) then ++ created = section ++ else ++ self.invalid_cts = true ++ end ++end ++ ++function sip_table.parse(self, ...) ++ TypedSection.parse(self, ...) ++ if created then ++ cbimap.uci:tset("asterisk", created, { ++ type = "friend", ++ qualify = "yes", ++ provider = "yes" ++ }) ++ ++ cbimap.uci:save("asterisk") ++ luci.http.redirect(luci.dispatcher.build_url( ++ "admin", "asterisk", "trunks", "sip", created ++ )) ++ end ++end ++ ++ ++user = sip_table:option(DummyValue, "username", "Username") ++ ++context = sip_table:option(DummyValue, "context", "Dialplan") ++context.href = luci.dispatcher.build_url("admin", "asterisk", "dialplan") ++function context.cfgvalue(...) ++ return AbstractValue.cfgvalue(...) or "(default)" ++end ++ ++online = sip_table:option(DummyValue, "online", "Registered") ++function online.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.online == nil then ++ return "n/a" ++ else ++ return sip_peers[s] and sip_peers[s].info.online ++ and "yes" or "no (%s)" %{ ++ sip_peers[s] and sip_peers[s].info.Status:lower() or "unknown" ++ } ++ end ++end ++ ++delay = sip_table:option(DummyValue, "delay", "Delay") ++function delay.cfgvalue(self, s) ++ if sip_peers[s] and sip_peers[s].info.online then ++ return "%i ms" % sip_peers[s].info.delay ++ else ++ return "n/a" ++ end ++end ++ ++info = sip_table:option(Button, "_info", "Info") ++function info.write(self, s) ++ luci.http.redirect(luci.dispatcher.build_url( ++ "admin", "asterisk", "trunks", "sip", s, "info" ++ )) ++end ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/voicemail.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/voicemail.lua +new file mode 100644 +index 0000000..51143e6 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/voicemail.lua +@@ -0,0 +1,48 @@ ++-- Copyright 2009 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local ast = require "luci.asterisk" ++ ++cbimap = Map("asterisk", "Voicemail - Mailboxes") ++ ++voicemail = cbimap:section(TypedSection, "voicemail", "Voicemail Boxes") ++voicemail.addremove = true ++voicemail.anonymous = true ++voicemail.template = "cbi/tblsection" ++ ++context = voicemail:option(ListValue, "context", "Context") ++context:value("default") ++ ++number = voicemail:option(Value, "number", ++ "Mailbox Number", "Unique mailbox identifier") ++ ++function number.write(self, s, val) ++ if val and #val > 0 then ++ local old = self:cfgvalue(s) ++ self.map.uci:foreach("asterisk", "dialplanvoice", ++ function(v) ++ if v.voicebox == old then ++ self.map:set(v['.name'], "voicebox", val) ++ end ++ end) ++ Value.write(self, s, val) ++ end ++end ++ ++ ++voicemail:option(Value, "name", "Ownername", "Human readable display name") ++voicemail:option(Value, "password", "Password", "Access protection") ++voicemail:option(Value, "email", "eMail", "Where to send voice messages") ++voicemail:option(Value, "page", "Pager", "Pager number") ++ ++zone = voicemail:option(ListValue, "zone", "Timezone", "Used time format") ++zone.titleref = luci.dispatcher.build_url("admin/asterisk/voicemail/settings") ++cbimap.uci:foreach("asterisk", "voicezone", ++ function(s) zone:value(s['.name']) end) ++ ++function voicemail.remove(self, s) ++ return ast.voicemail.remove(self.map:get(s, "number"), self.map.uci) ++end ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/voicemail_settings.lua b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/voicemail_settings.lua +new file mode 100644 +index 0000000..ef52a32 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/model/cbi/asterisk/voicemail_settings.lua +@@ -0,0 +1,51 @@ ++-- Copyright 2009 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++require "luci.sys.zoneinfo" ++ ++ ++cbimap = Map("asterisk", "Voicemail - Common Settings") ++ ++voicegeneral = cbimap:section(TypedSection, "voicegeneral", ++ "General Voicemail Options", "Common settings for all mailboxes are " .. ++ "defined here. Most of them are optional. The storage format should " .. ++ "never be changed once set.") ++ ++voicegeneral.anonymous = true ++voicegeneral.addremove = false ++ ++format = voicegeneral:option(MultiValue, "Used storage formats") ++format.widget = "checkbox" ++format:value("wav49") ++format:value("gsm") ++format:value("wav") ++ ++voicegeneral:option(Flag, "sendvoicemail", "Enable sending of emails") ++voicegeneral:option(Flag, "attach", "Attach voice messages to emails") ++voicegeneral:option(Value, "serveremail", "Used email sender address") ++voicegeneral:option(Value, "emaildateformat", "Date format used in emails").optional = true ++voicegeneral:option(Value, "maxlogins", "Max. failed login attempts").optional = true ++voicegeneral:option(Value, "maxmsg", "Max. allowed messages per mailbox").optional = true ++voicegeneral:option(Value, "minmessage", "Min. number of seconds for voicemail").optional = true ++voicegeneral:option(Value, "maxmessage", "Max. number of seconds for voicemail").optional = true ++voicegeneral:option(Value, "maxsilence", "Seconds of silence until stop recording").optional = true ++voicegeneral:option(Value, "maxgreet", "Max. number of seconds for greetings").optional = true ++voicegeneral:option(Value, "skipms", "Milliseconds to skip for rew./ff.").optional = true ++voicegeneral:option(Value, "silencethreshold", "Threshold to detect silence").optional = true ++ ++ ++voicezone = cbimap:section(TypedSection, "voicezone", "Time Zones", ++ "Time zones define how dates and times are expressen when used in " .. ++ "an voice mails. Refer to the asterisk manual for placeholder values.") ++ ++voicezone.addremove = true ++voicezone.sectionhead = "Name" ++voicezone.template = "cbi/tblsection" ++ ++tz = voicezone:option(ListValue, "zone", "Location") ++for _, z in ipairs(luci.sys.zoneinfo.TZ) do tz:value(z[1]) end ++ ++voicezone:option(Value, "message", "Date Format") ++ ++ ++return cbimap +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/cbi/cell.htm b/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/cbi/cell.htm +new file mode 100644 +index 0000000..3afb26b +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/cbi/cell.htm +@@ -0,0 +1,13 @@ ++<%# ++ Copyright 2008 Steven Barth ++ Copyright 2008 Jo-Philipp Wich ++ Licensed to the public under the Apache License 2.0. ++-%> ++ ++<%+cbi/valueheader%> ++<% if self.href then %><% end -%> ++ <%=self:cfgvalue(section)%> ++<%- if self.href then %><%end%> ++  ++ ++<%+cbi/valuefooter%> +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm b/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm +new file mode 100644 +index 0000000..9f644ba +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/dialplans.htm +@@ -0,0 +1,245 @@ ++<%# ++ Copyright 2008 Steven Barth ++ Copyright 2008 Jo-Philipp Wich ++ Licensed to the public under the Apache License 2.0. ++-%> ++ ++<%+header%> ++ ++<% ++ local uci = luci.model.uci.cursor_state() ++ local ast = require "luci.asterisk" ++ ++ function digit_pattern(s,t) ++ return "%s" ++ %{ t and " title='" .. t .. "'" or "", s } ++ end ++ ++ function rowstyle(i) ++ return "cbi-rowstyle-%i" %{ ++ ( i % 2 ) == 0 and 2 or 1 ++ } ++ end ++ ++ function format_matches(z) ++ local html = { } ++ ++ if type(z) ~= "table" then ++ z = { matches = { z } } ++ end ++ ++ if z.localprefix then ++ for _, m in ipairs(z.matches) do ++ html[#html+1] = ++ digit_pattern(z.localprefix, "local prefix") .. " " .. ++ digit_pattern(m) ++ end ++ end ++ ++ if z.intlmatches and #z.intlmatches > 0 then ++ for _, i in ipairs(z.intlmatches) do ++ for _, m in ipairs(z.matches) do ++ html[#html+1] = "%s %s" %{ ++ digit_pattern("(%s)" % i, "intl. prefix"), ++ digit_pattern(m) ++ } ++ end ++ end ++ else ++ for _, m in ipairs(z.matches) do ++ html[#html+1] = digit_pattern(m) ++ end ++ end ++ ++ return table.concat(html, "; ") ++ end ++%> ++ ++ ++
++
++ ++ ++ ++
++ ++
++

Outgoing Call Routing

++
++ Here you can manage your dial plans which are used to route outgoing calls from your local extensions.

++ Related tasks:
++ Manage dialzones | ++ Manage voicemail boxes | ++ Manage meetme rooms ++
++ ++
++ ++
++ ++ <% for i, plan in pairs(ast.dialplan.plans()) do %> ++
++ ++ ++ ++ ++ ++ ++ ++ <% local zones_used = { }; local row = 0 %> ++ <% for i, zone in ipairs(plan.zones) do zones_used[zone.name] = true %> ++ ++ ++ ++ ++ <% row = row + 1; end %> ++ ++ ++ ++ <% local boxes_used = { } %> ++ <% for ext, box in luci.util.kspairs(plan.voicemailboxes) do boxes_used[box.id] = true %> ++ ++ ++ ++ ++ <% row = row + 1; end %> ++ ++ ++ ++ <% local rooms_used = { } %> ++ <% for ext, room in luci.util.kspairs(plan.meetmerooms) do rooms_used[room.room] = true %> ++ ++ ++ ++ ++ <% row = row + 1; end %> ++ ++ ++ ++ ++ ++ ++
++ Dialplan <%=plan.name%> ++ ++ ++ Remove this dialplan ++ ++
++ └ Dialzone <%=zone.name%> (<%=zone.description%>) ++

++ Lines: ++ <%=ast.tools.hyperlinks( ++ zone.trunks, function(v) ++ return luci.dispatcher.build_url("admin", "asterisk", "trunks", "%s") % v:lower() ++ end ++ )%>
++ Matches: ++ <%=format_matches(zone)%> ++

++
++ ++ Edit dialzone ++ ++ ++ Remove from this dialplan ++ ++
++ └ Voicemailbox <%=box.id%> (<%=box.name%>) ++

++ Owner: <%=box.name%> | ++ eMail: <%=#box.email > 0 and box.email or 'n/a'%> | ++ Pager: <%=#box.page > 0 and box.page or 'n/a'%>
++ Matches: <%=format_matches(ext)%> ++

++
++ ++ Manage mailboxes ... ++ ++ ++ Remove from this dialplan ++ ++
++ └ MeetMe Room <%=room.room%> ++ <% if room.description and #room.description > 0 then %> (<%=room.description%>)<% end %> ++

++ Matches: <%=format_matches(ext)%> ++

++
++ ++ Manage conferences ... ++ ++ ++ Remove from this dialplan ++ ++
++
++ ++ Add Dialzone:
++ ++

++ ++ Add Voicemailbox:
++ ++ as extension ++ ++

++ ++ Add MeetMe Conference:
++ ++ as extension ++ ++

++ ++ ++
++ ++
++
++
++ <% end %> ++ ++
++
++

Create a new dialplan

++ The name is required and must be unique. It may only contain the characters A-Z, a-z, 0-9 and _ .
++ ++ <%- if create_error then %> ++
Invalid name given!
++ <% end -%> ++ ++
++ ++ ++
++
++ ++
++
++
++
++<%+footer%> +diff --git a/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm b/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm +new file mode 100644 +index 0000000..ffdbbcf +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/luasrc/view/asterisk/dialzones.htm +@@ -0,0 +1,165 @@ ++<%# ++ Copyright 2008 Steven Barth ++ Copyright 2008 Jo-Philipp Wich ++ Licensed to the public under the Apache License 2.0. ++-%> ++ ++<%+header%> ++ ++<% ++ local uci = luci.model.uci.cursor_state() ++ local ast = require("luci.asterisk") ++ ++ function digit_pattern(s) ++ return "%s" % s ++ end ++ ++ function rowstyle(i) ++ return "cbi-rowstyle-%i" %{ ++ ( i % 2 ) == 0 and 2 or 1 ++ } ++ end ++ ++ local function find_trunks() ++ local t = { } ++ ++ uci:foreach("asterisk", "sip", ++ function(s) ++ if uci:get_bool("asterisk", s['.name'], "provider") then ++ t[#t+1] = { ++ "SIP/%s" % s['.name'], ++ "SIP: %s" % s['.name'] ++ } ++ end ++ end) ++ ++ uci:foreach("asterisk", "iax", ++ function(s) ++ t[#t+1] = { ++ "IAX/%s" % s['.name'], ++ "IAX: %s" % s.extension or s['.name'] ++ } ++ end) ++ ++ return t ++ end ++ ++%> ++ ++ ++
++
++ ++ ++ ++
++ ++
++

Dial Zone Management

++
++ " class="cbi-title-ref">Back to dialplan overview

++ Here you can manage your dial zones. The zones are used to route outgoing calls to the destination. ++ Each zone groups multiple trunks and number matches to represent a logical destination. Zones can ++ also be used to enforce certain dial restrictions on selected extensions. ++
++ ++ ++
++
++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ <% for i, rule in pairs(ast.dialzone.zones()) do %> ++ ++ ++ ++ ++ ++ ++ ++ ++ <% end %> ++
++

Dialzone Overview

++
NamePrepend- MatchTrunkDescription
++ <%=rule.name%> ++ ++ <% for _ in ipairs(rule.matches) do %> ++ <%=rule.addprefix and digit_pattern(rule.addprefix)%> 
++ <% end %> ++
++ <% for _, m in ipairs(rule.matches) do %> ++ <%=rule.localprefix and "%s " % digit_pattern(rule.localprefix)%> ++ <%=digit_pattern(m)%>
++ <% end %> ++
++ <%=ast.tools.hyperlinks( ++ rule.trunks, function(v) ++ return luci.dispatcher.build_url("admin", "asterisk", "trunks", "%s") % v:lower() ++ end ++ )%> ++ ++ <%=rule.description or rule.name%> ++ ++ ++ Edit entry ++ ++ ++ Delete entry ++ ++
++
++
++
++ ++
++
++

Create a new dialzone

++ The name is required and must be unique. It may only contain the characters A-Z, a-z, 0-9 and _ .
++ You can specifiy multiple number matches by separating them with spaces.
++ ++ <%- if create_error then %> ++
Invalid name given!
++ <% end -%> ++ ++ ++ ++ ++ ++ ++
++
++ ++

++ ++
++ ++
++
++ ++
++
++ ++ ++
++
++
++
++
++
++<%+footer%> +diff --git a/feeds/luci/applications/luci-app-asterisk/po/ca/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/ca/asterisk.po +new file mode 100644 +index 0000000..9775758 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/ca/asterisk.po +@@ -0,0 +1,680 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:40+0200\n" ++"PO-Revision-Date: 2009-05-31 19:18+0200\n" ++"Last-Translator: Eduard Duran \n" ++"Language-Team: LANGUAGE \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Pootle 1.1.0\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Opcions Generals d'Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Directori AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Desa en memòria cau els sons gravats durant la gravació" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Nivell de depuració" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Desactiva algunes alertes" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Bolca el nucli en cas de fallada" ++ ++#~ msgid "High Priority" ++#~ msgstr "Alta Prioritat" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Inicialitza Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Utilitza l'hora interna" ++ ++#~ msgid "Log directory" ++#~ msgstr "Directori de registres" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Número màxim de trucades permeses" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Càrrega màxima per deixar d'acceptar trucades noves" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Desactiva els colors de consola" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Directori de memòria cau dels fitxers de so" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Executa amb els permisos del Grup" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Executa amb els permisos de l'Usuari" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Directori de bústia de correu" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Prefixa l'UniquID amb el nom del sistema" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "Munta les rutes de transcodificació via SLINEAR, no directament" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Transmet silenci SLINEAR mentre s'enregistri un canal" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Nivell de detall" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Secció Dialplan" ++ ++#~ msgid "include" ++#~ msgstr "inclou" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Connector Dialplan" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Opcions generals de Dialplan" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Permet la transferència" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Buida les variables globals" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "Dialplan Goto" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Conferència Dialplan" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Dialplan Time" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Bústia de correu Dialplan" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Zones de marcatge per Dialplan" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "Prefix per afegir als Dialplan que coincideixin" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "Coincideix amb el prefix Internacional" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Prefix (0) per afegir/esborrar a/des de números internacionals" ++ ++#~ msgid "localzone" ++#~ msgstr "zona local" ++ ++#~ msgid "Match plan" ++#~ msgstr "Pla coincident" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Connexió a fer servir" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Mapa de Funcions Principals" ++ ++#~ msgid "Attended transfer key" ++#~ msgstr "Tecla de transferència assistida" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "Tecla de transferència cega" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Tecla per desconnectar trucada" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Tecla per trucada en espera" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Funció de trucada en espera" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "Trucada en espera ADSI" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "Temps d'espera de transferència assistida (seg)" ++ ++#~ msgid "One touch record key" ++#~ msgstr "Tecla de registre d'un toc" ++ ++#~ msgid "Name of call context for parking" ++#~ msgstr "Nom del context de la trucada en espera" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Fitxer de so per reproduir a la trucada en espera" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "Temps màxim (en ms) entre dígits per l'activació de funció" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Mètode per trobar una ranura de trucada en espera" ++ ++#~ msgid "parkedmusicclass" ++#~ msgstr "parkedmusicclass" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Reprodueix to de cortesia a" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Activa les trucades en espera" ++ ++#~ msgid "Extension to dial to park" ++#~ msgstr "Extensió per marcar per deixar en espera una trucada" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Temps de trucada en espera (secs)" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "Rang d'extensions per trucada en espera" ++ ++#~ msgid "Pickup extension" ++#~ msgstr "Connector de recol·lecció" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Segons a esperar entre dígits quan es transfereix" ++ ++#~ msgid "sound when attended transfer is complete" ++#~ msgstr "so quan es completa la transferència assistida" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "so quan falla la transferència assitida" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Recarrega la configuració de maquinari" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Mètode de Reinici" ++ ++#~ msgid "Parameter" ++#~ msgstr "Paràmetre" ++ ++#~ msgid "Option type" ++#~ msgstr "Tipus d'opció" ++ ++#~ msgid "User name" ++#~ msgstr "Nom d'usuari" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Opcions generals IAX" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Permet Codecs" ++ ++#~ msgid "Static" ++#~ msgstr "Estàtic" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Protecció d'escriptura" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Conferència Meetme" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "PIN d'administrador" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "PIN de reunió" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Opcions generals de conferència Meetme" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Número de memòries intermitges d'àudio de 20 ms a utilitzar" ++ ++#~ msgid "Modules" ++#~ msgstr "Mòduls" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Aplicació de recepció d'alarma" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Aplicació d'autenticació" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "Assegura't que asterisk no desa CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Comprova que el canal estigui disponible" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Escolta a qualsevol canal" ++ ++#~ msgid "Control Playback Application" ++#~ msgstr "Aplicació de control de reproducció" ++ ++#~ msgid "Cuts up variables" ++#~ msgstr "Talla les variables" ++ ++#~ msgid "Database access functions" ++#~ msgstr "Funcions d'accés a base de dades" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Aplicació de marcatge" ++ ++#~ msgid "Virtual Dictation Machine Application" ++#~ msgstr "Aplicació de màquina de dictat virtual" ++ ++#~ msgid "Directed Call Pickup Support" ++#~ msgstr "Suport de recollida de trucades adreçades" ++ ++#~ msgid "Extension Directory" ++#~ msgstr "Directori de connectors" ++ ++#~ msgid "DISA (Direct Inward System Access) Application" ++#~ msgstr "Aplicació DISA (Direct Inward System Access)" ++ ++#~ msgid "Dump channel variables Application" ++#~ msgstr "Bolca les variables de canal de l'aplicació" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Aplicació d'eco simple" ++ ++#~ msgid "ENUM Lookup" ++#~ msgstr "Consulta ENUM" ++ ++#~ msgid "Reevaluates strings" ++#~ msgstr "Reavalua cadenes" ++ ++#~ msgid "Executes applications" ++#~ msgstr "Executa aplicacions" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "Interfície d'aplicació IVR externa" ++ ++#~ msgid "Fork The CDR into 2 seperate entities" ++#~ msgstr "Bifurca el CDR en 2 entitats separades" ++ ++#~ msgid "Get ADSI CPE ID" ++#~ msgstr "Obtingues la ADSI CPE ID" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Rutines de gestió de grup" ++ ++#~ msgid "Encode and Stream via icecast and ices" ++#~ msgstr "Codifica i emet via icecast i ices" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Aplicació de transmissió d'imatge" ++ ++#~ msgid "Look up Caller*ID name/number from black" ++#~ msgstr "Cerca la ID/nom/número de qui truca de negre" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "Cerca la ID/nom/número de qui truca de la base de dades local" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Macros de connectors" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Una aplicació de matemàtiques simple" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "Aplicació de suma de verificació MD5" ++ ++#~ msgid "Digital Milliwatt (mu-law) Test Application" ++#~ msgstr "Aplicació de prova de milliwat digital (mu-law)" ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Registra una trucada i mescla l'àudio durant la gravació" ++ ++#~ msgid "Call Parking and Announce Application" ++#~ msgstr "Aplicació d'anunci de trucades i trucada en espera" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Aplicació de reproducció trivial" ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Requereix que s'entri un número de telèfon" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "Encuament de trucades real" ++ ++#~ msgid "Random goto" ++#~ msgstr "Goto aleatori" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Aplicació de lectura de variables" ++ ++#~ msgid "Read in a file" ++#~ msgstr "Llegeix en un fitxer" ++ ++#~ msgid "Realtime Data Lookup/Rewrite" ++#~ msgstr "Cerca/reescriptura de dades en temps real" ++ ++#~ msgid "Trivial Record Application" ++#~ msgstr "Aplicació d'enregistrament trivial" ++ ++#~ msgid "Say time" ++#~ msgstr "Digues l'hora" ++ ++#~ msgid "Send DTMF digits Application" ++#~ msgstr "Envia aplicació de dígits DTMF" ++ ++#~ msgid "Send Text Applications" ++#~ msgstr "Envia aplicacions de text" ++ ++#~ msgid "Set CallerID Application" ++#~ msgstr "Estableix l'aplicació CallerID" ++ ++#~ msgid "CDR user field apps" ++#~ msgstr "Aplicacions de camp d'usuari CDR" ++ ++#~ msgid "load => .so ; Set CallerID Name" ++#~ msgstr "load => .so ; Estableix el nom CallerID" ++ ++#~ msgid "load => .so ; Set CallerID Number" ++#~ msgstr "load => .so ; Estableix el número CallerID" ++ ++#~ msgid "Set RDNIS Number" ++#~ msgstr "Estableix el número RDNIS" ++ ++#~ msgid "Set ISDN Transfer Capability" ++#~ msgstr "Estableix la capacitat de transferència XDSI" ++ ++#~ msgid "SMS/PSTN handler" ++#~ msgstr "Gestor SMS/PSTN" ++ ++#~ msgid "Hangs up the requested channel" ++#~ msgstr "Penja el canal sol·licitat" ++ ++#~ msgid "Stack Routines" ++#~ msgstr "Rutines de pila" ++ ++#~ msgid "Generic System() application" ++#~ msgstr "Aplicació genèrica de System()" ++ ++#~ msgid "Playback with Talk Detection" ++#~ msgstr "Playback amb Detecció de Parla" ++ ++#~ msgid "Interface Test Application" ++#~ msgstr "Aplicació de proves d'interfície" ++ ++#~ msgid "Transfer" ++#~ msgstr "Transfereix" ++ ++#~ msgid "TXTCIDName" ++#~ msgstr "TXTCIDName" ++ ++#~ msgid "Send URL Applications" ++#~ msgstr "Envia aplicacions d'URL" ++ ++#~ msgid "Custom User Event Application" ++#~ msgstr "Aplicació d'esdeveniments personalitzats d'usuari" ++ ++#~ msgid "Send verbose output" ++#~ msgstr "Envia sortida detallada" ++ ++#~ msgid "Voicemail" ++#~ msgstr "Bústia de veu" ++ ++#~ msgid "Waits until first ring after time" ++#~ msgstr "Espera fins el primer to després del temps" ++ ++#~ msgid "Wait For Silence Application" ++#~ msgstr "Espera l'aplicació de silenci" ++ ++#~ msgid "While Loops and Conditional Execution" ++#~ msgstr "Execució de bucles while i condicionals" ++ ++#~ msgid "Comma Separated Values CDR Backend" ++#~ msgstr "Valors de Backend CDR separats per comes" ++ ++#~ msgid "Customizable Comma Separated Values CDR Backend" ++#~ msgstr "Valors de Backend CDR personalitzats separats per comes" ++ ++#~ msgid "Asterisk Call Manager CDR Backend" ++#~ msgstr "Backend CDR del gestor de trucades Asterisk" ++ ++#~ msgid "MySQL CDR Backend" ++#~ msgstr "Backend CDR MySQL" ++ ++#~ msgid "PostgreSQL CDR Backend" ++#~ msgstr "Backend CDR PostgreSQL" ++ ++#~ msgid "SQLite CDR Backend" ++#~ msgstr "Backend CDR SQLite" ++ ++#~ msgid "Agent Proxy Channel" ++#~ msgstr "Canal de l'Agent Proxy" ++ ++#~ msgid "Option chan_iax2" ++#~ msgstr "Opció chan_iax2" ++ ++#~ msgid "Local Proxy Channel" ++#~ msgstr "Canal de proxy local" ++ ++#~ msgid "Session Initiation Protocol (SIP)" ++#~ msgstr "Protocol d'inicialització de sessió (SIP)" ++ ++#~ msgid "Adaptive Differential PCM Coder/Decoder" ++#~ msgstr "Codificador/Decodificador PCM adaptatiu diferencial" ++ ++#~ msgid "A-law Coder/Decoder" ++#~ msgstr "Codificador/Decodificador de llei A" ++ ++#~ msgid "A-law and Mulaw direct Coder/Decoder" ++#~ msgstr "Codificador/Decodificador directe de llei A i Mu" ++ ++#~ msgid "ITU G.726-32kbps G726 Transcoder" ++#~ msgstr "Transcodificador ITU G.726-32kbps G726" ++ ++#~ msgid "GSM/PCM16 (signed linear) Codec Translation" ++#~ msgstr "Còdec de traducció GSM/PCM16 (lineal amb signe)" ++ ++#~ msgid "Speex/PCM16 (signed linear) Codec Translator" ++#~ msgstr "Còdec de traducció Speex/PCM16 (lineal amb signe)" ++ ++#~ msgid "Mu-law Coder/Decoder" ++#~ msgstr "Codificador/Decodificador llei Mu" ++ ++#~ msgid "Sun Microsystems AU format (signed linear)" ++#~ msgstr "Format AU de Sun Microsystems (lineal amb signe)" ++ ++#~ msgid "G.723.1 Simple Timestamp File Format" ++#~ msgstr "Format de fitxer de marca de temps simple G.723.1" ++ ++#~ msgid "Raw G.726 (16/24/32/40kbps) data" ++#~ msgstr "Dades Raw G.726 (16/24/32/40kbps)" ++ ++#~ msgid "Raw G729 data" ++#~ msgstr "Dades Raw G729" ++ ++#~ msgid "Raw GSM data" ++#~ msgstr "Dades Raw GSM" ++ ++#~ msgid "Raw h263 data" ++#~ msgstr "Dades Raw h263" ++ ++#~ msgid "JPEG (Joint Picture Experts Group) Image" ++#~ msgstr "Imatge JPEG (Joint Picture Experts Group)" ++ ++#~ msgid "Raw uLaw 8khz Audio support (PCM)" ++#~ msgstr "Suport d'àudio Raw llei-u 8khz (PCM)" ++ ++#~ msgid "load => .so ; Raw aLaw 8khz PCM Audio support" ++#~ msgstr "load => .so ; suport d'àudio Raw llei-a 8khz PCM" ++ ++#~ msgid "Raw Signed Linear Audio support (SLN)" ++#~ msgstr "Suport d'àudio Raw amb signe lineal (SLN)" ++ ++#~ msgid "Dialogic VOX (ADPCM) File Format" ++#~ msgstr "Format de fitxer Dialogic VOX (ADPCM)" ++ ++#~ msgid "Microsoft WAV format (8000hz Signed Line" ++#~ msgstr "Format Microsoft WAV (8000hz amb signe lineal)" ++ ++#~ msgid "Microsoft WAV format (Proprietary GSM)" ++#~ msgstr "Format Microsoft WAV (GSM propietari)" ++ ++#~ msgid "Caller ID related dialplan functions" ++#~ msgstr "Functions de dialplan relacionades amb la ID de qui truca" ++ ++#~ msgid "ENUM Functions" ++#~ msgstr "Funcions ENUM" ++ ++#~ msgid "URI encoding / decoding functions" ++#~ msgstr "Funcions de codificació / decodificació d'URI" ++ ++#~ msgid "Asterisk Extension Language Compiler" ++#~ msgstr "Compilador del llenguatge de connectors d'Asterisk" ++ ++#~ msgid "Text Extension Configuration" ++#~ msgstr "Configuració del connector de text" ++ ++#~ msgid "load => .so ; Builtin dialplan functions" ++#~ msgstr "load => .s ; Funcions integrades dialplan" ++ ++#~ msgid "Loopback Switch" ++#~ msgstr "Switch loopback" ++ ++#~ msgid "Realtime Switch" ++#~ msgstr "Switch en temps real" ++ ++#~ msgid "Outgoing Spool Support" ++#~ msgstr "Suport de gestió de cues sortint" ++ ++#~ msgid "Wil Cal U (Auto Dialer)" ++#~ msgstr "Wil Cal U (Auto Marcatge)" ++ ++#~ msgid "MySQL Config Resource" ++#~ msgstr "Configuració del recurs MySQL" ++ ++#~ msgid "ODBC Config Resource" ++#~ msgstr "Configuració del recurs ODBC" ++ ++#~ msgid "PGSQL Module" ++#~ msgstr "Mòdul PGSQL" ++ ++#~ msgid "Cryptographic Digital Signatures" ++#~ msgstr "Signatures digitals criptogràfiques" ++ ++#~ msgid "Call Parking Resource" ++#~ msgstr "Recurs de trucada en espera" ++ ++#~ msgid "Indications Configuration" ++#~ msgstr "Configuració d'indicacions" ++ ++#~ msgid "Call Monitoring Resource" ++#~ msgstr "Recurs de monitoreig de trucades" ++ ++#~ msgid "Music On Hold Resource" ++#~ msgstr "Recurs de música en espera" ++ ++#~ msgid "ODBC Resource" ++#~ msgstr "Recurs ODBC" ++ ++#~ msgid "SMDI Module" ++#~ msgstr "Mòdul SMDI" ++ ++#~ msgid "SNMP Module" ++#~ msgstr "Mòdul SNMP" ++ ++#~ msgid "Music On Hold" ++#~ msgstr "Música en espera" ++ ++#~ msgid "Application" ++#~ msgstr "Aplicació" ++ ++#~ msgid "Directory of Music" ++#~ msgstr "Directori de música" ++ ++#~ msgid "Option mode" ++#~ msgstr "Mode d'opció" ++ ++#~ msgid "Random Play" ++#~ msgstr "Reproducció aleatòria" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "Mode DTMF" ++ ++#~ msgid "Primary domain identity for From: headers" ++#~ msgstr "Domini d'identitat primari per les capçaleres From:" ++ ++#~ msgid "From user (required by many SIP providers)" ++#~ msgstr "Usuari d'inici (requerit per diversos proveïdors SIP)" ++ ++#~ msgid "Ring on incoming dialplan contexts" ++#~ msgstr "Truca en contextos d'entrades dialplan" ++ ++#~ msgid "Allow Insecure for" ++#~ msgstr "Permet insegur per" ++ ++#~ msgid "Mailbox for MWI" ++#~ msgstr "Bústia de veu per MWI" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "NAT entre el telèfon i l'Asterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "Comprova etiquetes a les capçaleres" ++ ++#~ msgid "Reply Timeout (ms) for down connection" ++#~ msgstr "Temps d'esperi per contestar (ms) per caigudes de connexió" ++ ++#~ msgid "Register connection" ++#~ msgstr "Registra connexió" ++ ++#~ msgid "Dial own extension for mailbox" ++#~ msgstr "Truca el propi connector per la bústia de veu" ++ ++#~ msgid "Client Type" ++#~ msgstr "Tipus de client" ++ ++#~ msgid "Username" ++#~ msgstr "Nom d'usuari" ++ ++#~ msgid "Section sipgeneral" ++#~ msgstr "Secció sipgeneral" ++ ++#~ msgid "Allow codecs" ++#~ msgstr "Permet còdecs" ++ ++#~ msgid "SIP realm" ++#~ msgstr "Reialme SIP" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "Opcions generals de bústia de veu" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "Adreça de correu electrònic d'origen del servidor" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "Bústies de la bústia de veu" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "El correu electrònic conté fitxers adjunts" ++ ++#~ msgid "Email" ++#~ msgstr "Correu electrònic" ++ ++#~ msgid "Display Name" ++#~ msgstr "Nom a mostrar" ++ ++#~ msgid "Password" ++#~ msgstr "Contrasenya" ++ ++#~ msgid "zone" ++#~ msgstr "zona" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Configuració de zona de veu" ++ ++#~ msgid "Message Format" ++#~ msgstr "Format de missatge" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/cs/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/cs/asterisk.po +new file mode 100644 +index 0000000..7341d57 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/cs/asterisk.po +@@ -0,0 +1,11 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"Language: \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/de/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/de/asterisk.po +new file mode 100644 +index 0000000..f289849 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/de/asterisk.po +@@ -0,0 +1,131 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-26 17:57+0200\n" ++"PO-Revision-Date: 2012-02-23 16:29+0200\n" ++"Last-Translator: Martin \n" ++"Language-Team: LANGUAGE \n" ++"Language: de\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Asterisk Grundeinstellungen" ++ ++#~ msgid "AGI directory" ++#~ msgstr "AGI - Verzeichnis" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Audiodateien während der Aufnahme zwischenspeichern" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Debug Stufe" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Schalte einige Warnungen aus" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Speicherabbild bei Absturz erstellen" ++ ++#~ msgid "High Priority" ++#~ msgstr "Hohe Priorität" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Verschlüsselung initialisieren" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Interne Zeitreferenz benutzen" ++ ++#~ msgid "Log directory" ++#~ msgstr "Log - Verzeichnis" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Maximale Anruferanzahl" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Maximale CPU Auslastung um eingehende Anrufe anzunehmen" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Farbige Ausgabe auf der Konsole deaktivieren" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Verzeichnis zum Zwischenspeichern von Audiodateien" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "zu benutzende Gruppenkennung" ++ ++#~ msgid "The User to run as" ++#~ msgstr "zu benutzende Benutzerkennung" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Sprachnachrichten Puffer" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Systemnamen als Präfix von UniquID benutzen" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "Transcode Pfade durch SLINEAR bauen, indirekt" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Übertrage Stille (SLINEAR) während der Aufnahme eines Kanals" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Detailgrad" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Übertragung erlauben" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "globale Variablen Zurücksetzen" ++ ++#~ msgid "localzone" ++#~ msgstr "Zeitzone" ++ ++#~ msgid "Connection to use" ++#~ msgstr "zu verwendende Verbindung" ++ ++#~ msgid "One touch record key" ++#~ msgstr "Sofortaufnahmetaste" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Hardwarekonfiguration neuladen" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Neustartmethode" ++ ++#~ msgid "Parameter" ++#~ msgstr "Parameter" ++ ++#~ msgid "User name" ++#~ msgstr "Benutzername" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "IAX Allgemeine Einstellungen" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Codecs erlauben" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "Admin PIN" ++ ++#~ msgid "Modules" ++#~ msgstr "Module" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Prüfen, ob der Kanal verfügbar ist" ++ ++#~ msgid "Control Playback Application" ++#~ msgstr "Anwendung zur Wiedergabesteuerung" ++ ++#~ msgid "Executes applications" ++#~ msgstr "startet Anwendungen" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Einfache Mathe-Anwendung" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "MD5-Prüfsummen Anwendung" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/el/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/el/asterisk.po +new file mode 100644 +index 0000000..7a0fee7 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/el/asterisk.po +@@ -0,0 +1,71 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:40+0200\n" ++"PO-Revision-Date: 2012-03-19 14:55+0200\n" ++"Last-Translator: Vasilis \n" ++"Language-Team: LANGUAGE \n" ++"Language: el\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Γενικές επιλογές του Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Φάκελος AGI" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Επίπεδο αποσφαλμάτωσης" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Απενεργοποίηση ορισμένων μηνυμάτων" ++ ++#~ msgid "High Priority" ++#~ msgstr "Υψηλή Προτεραιότητα" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Αρχικοποίηση Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Χρήση εσωτερικού χρονόμετρου" ++ ++#~ msgid "Log directory" ++#~ msgstr "Φάκελος καταγραφής" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Μέγιστος επιτρεπόμενος αριθμός κλήσεων" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Μέγιστος φόρτος για παύση εισερχόμενων κλήσεων" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Απενεργοποίηση χρωμάτων κονσόλας" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Κρυφός φάκελος αρχείων ήχου" ++ ++#~ msgid "include" ++#~ msgstr "περιλαμβάνω" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Καθαρισμός γενικών μεταβλητών" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Χρήση σύνδεσης" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Μέθοδος Επανεκκίνησης" ++ ++#~ msgid "Parameter" ++#~ msgstr "Παράμετρος" ++ ++#~ msgid "JPEG (Joint Picture Experts Group) Image" ++#~ msgstr "Εικόνα JPEG (Joint Picture Experts Group)" ++ ++#~ msgid "Application" ++#~ msgstr "Εφαρμογή" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/en/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/en/asterisk.po +new file mode 100644 +index 0000000..e462f56 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/en/asterisk.po +@@ -0,0 +1,680 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:35+0200\n" ++"PO-Revision-Date: 2011-06-03 10:45+0200\n" ++"Last-Translator: Ladislav \n" ++"Language-Team: LANGUAGE \n" ++"Language: en\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Asterisk General Options" ++ ++#~ msgid "AGI directory" ++#~ msgstr "AGI directory" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Cache recorded sound files during recording" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Debug Level" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Disable some warnings" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Dump core on crash" ++ ++#~ msgid "High Priority" ++#~ msgstr "High Priority" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Initialise Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Use Internal Timing" ++ ++#~ msgid "Log directory" ++#~ msgstr "Log directory" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Maximum number of calls allowed" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Maximum load to stop accepting new calls" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Disable console colors" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Sound files Cache directory" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "The Group to run as" ++ ++#~ msgid "The User to run as" ++#~ msgstr "The User to run as" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Voicemail Spool directory" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Prefix UniquID with system name" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "Build transcode paths via SLINEAR, not directly" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Transmit SLINEAR silence while recording a channel" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Verbose Level" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Section dialplan" ++ ++#~ msgid "include" ++#~ msgstr "include" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Dialplan Extension" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Dialplan General Options" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Allow transfer" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Clear global vars" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "Dialplan Goto" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Dialplan Conference" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Dialplan Time" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Dialplan Voicemail" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Dial Zones for Dialplan" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "Prefix to add matching dialplans" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "Match International prefix" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Prefix (0) to add/remove to/from international numbers" ++ ++#~ msgid "localzone" ++#~ msgstr "localzone" ++ ++#~ msgid "Match plan" ++#~ msgstr "Match plan" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Connection to use" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Feature Key maps" ++ ++#~ msgid "Attended transfer key" ++#~ msgstr "Attended transfer key" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "Blind transfer key" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Key to Disconnect call" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Key to Park call" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Parking Feature" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "ADSI Park" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "Attended transfer timeout (sec)" ++ ++#~ msgid "One touch record key" ++#~ msgstr "One touch record key" ++ ++#~ msgid "Name of call context for parking" ++#~ msgstr "Name of call context for parking" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Sound file to play to parked caller" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "Max time (ms) between digits for feature activation" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Method to Find Parking slot" ++ ++#~ msgid "parkedmusicclass" ++#~ msgstr "parkedmusicclass" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Play courtesy tone to" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Enable Parking" ++ ++#~ msgid "Extension to dial to park" ++#~ msgstr "Extension to dial to park" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Parking time (secs)" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "Range of extensions for call parking" ++ ++#~ msgid "Pickup extension" ++#~ msgstr "Pickup extension" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Seconds to wait bewteen digits when transferring" ++ ++#~ msgid "sound when attended transfer is complete" ++#~ msgstr "sound when attended transfer is complete" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "Sound when attended transfer fails" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Reload Hardware Config" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Reboot Method" ++ ++#~ msgid "Parameter" ++#~ msgstr "Parameter" ++ ++#~ msgid "Option type" ++#~ msgstr "Option type" ++ ++#~ msgid "User name" ++#~ msgstr "User name" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "IAX General Options" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Allow Codecs" ++ ++#~ msgid "Static" ++#~ msgstr "Static" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Write Protect" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Meetme Conference" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "Admin PIN" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "Meeting PIN" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Meetme Conference General Options" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Number of 20ms audio buffers to be used" ++ ++#~ msgid "Modules" ++#~ msgstr "Modules" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Alarm Receiver Application" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Authentication Application" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "Make sure asterisk doesnt save CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Check if channel is available" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Listen in on any channel" ++ ++#~ msgid "Control Playback Application" ++#~ msgstr "Control Playback Application" ++ ++#~ msgid "Cuts up variables" ++#~ msgstr "Cuts up variables" ++ ++#~ msgid "Database access functions" ++#~ msgstr "Database access functions" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Dialing Application" ++ ++#~ msgid "Virtual Dictation Machine Application" ++#~ msgstr "Virtual Dictation Machine Application" ++ ++#~ msgid "Directed Call Pickup Support" ++#~ msgstr "Directed Call Pickup Support" ++ ++#~ msgid "Extension Directory" ++#~ msgstr "Extension Directory" ++ ++#~ msgid "DISA (Direct Inward System Access) Application" ++#~ msgstr "DISA (Direct Inward System Access) Application" ++ ++#~ msgid "Dump channel variables Application" ++#~ msgstr "Dump channel variables Application" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Simple Echo Application" ++ ++#~ msgid "ENUM Lookup" ++#~ msgstr "ENUM Lookup" ++ ++#~ msgid "Reevaluates strings" ++#~ msgstr "Reevaluates strings" ++ ++#~ msgid "Executes applications" ++#~ msgstr "Executes applications" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "External IVR application interface" ++ ++#~ msgid "Fork The CDR into 2 seperate entities" ++#~ msgstr "Fork The CDR into 2 seperate entities" ++ ++#~ msgid "Get ADSI CPE ID" ++#~ msgstr "Get ADSI CPE ID" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Group Management Routines" ++ ++#~ msgid "Encode and Stream via icecast and ices" ++#~ msgstr "Encode and Stream via icecast and ices" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Image Transmission Application" ++ ++#~ msgid "Look up Caller*ID name/number from black" ++#~ msgstr "Look up Caller*ID name/number from black" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "Look up CallerID Name from local databas" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Extension Macros" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "A simple math Application" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "MD5 checksum Application" ++ ++#~ msgid "Digital Milliwatt (mu-law) Test Application" ++#~ msgstr "Digital Milliwatt (mu-law) Test Application" ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Record a call and mix the audio during the recording" ++ ++#~ msgid "Call Parking and Announce Application" ++#~ msgstr "Call Parking and Announce Application" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Trivial Playback Application" ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Require phone number to be entered" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "True Call Queueing" ++ ++#~ msgid "Random goto" ++#~ msgstr "Random goto" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Read Variable Application" ++ ++#~ msgid "Read in a file" ++#~ msgstr "Read in a file" ++ ++#~ msgid "Realtime Data Lookup/Rewrite" ++#~ msgstr "Realtime Data Lookup/Rewrite" ++ ++#~ msgid "Trivial Record Application" ++#~ msgstr "Trivial Record Application" ++ ++#~ msgid "Say time" ++#~ msgstr "Say time" ++ ++#~ msgid "Send DTMF digits Application" ++#~ msgstr "Send DTMF digits Application" ++ ++#~ msgid "Send Text Applications" ++#~ msgstr "Send Text Applications" ++ ++#~ msgid "Set CallerID Application" ++#~ msgstr "Set CallerID Application" ++ ++#~ msgid "CDR user field apps" ++#~ msgstr "CDR user field apps" ++ ++#~ msgid "load => .so ; Set CallerID Name" ++#~ msgstr "load => .so ; Set CallerID Name" ++ ++#~ msgid "load => .so ; Set CallerID Number" ++#~ msgstr "load => .so ; Set CallerID Number" ++ ++#~ msgid "Set RDNIS Number" ++#~ msgstr "Set RDNIS Number" ++ ++#~ msgid "Set ISDN Transfer Capability" ++#~ msgstr "Set ISDN Transfer Capability" ++ ++#~ msgid "SMS/PSTN handler" ++#~ msgstr "SMS/PSTN handler" ++ ++#~ msgid "Hangs up the requested channel" ++#~ msgstr "Hangs up the requested channel" ++ ++#~ msgid "Stack Routines" ++#~ msgstr "Stack Routines" ++ ++#~ msgid "Generic System() application" ++#~ msgstr "Generic System() application" ++ ++#~ msgid "Playback with Talk Detection" ++#~ msgstr "Playback with Talk Detection" ++ ++#~ msgid "Interface Test Application" ++#~ msgstr "Interface Test Application" ++ ++#~ msgid "Transfer" ++#~ msgstr "Transfer" ++ ++#~ msgid "TXTCIDName" ++#~ msgstr "TXTCIDName" ++ ++#~ msgid "Send URL Applications" ++#~ msgstr "Send URL Applications" ++ ++#~ msgid "Custom User Event Application" ++#~ msgstr "Custom User Event Application" ++ ++#~ msgid "Send verbose output" ++#~ msgstr "Send verbose output" ++ ++#~ msgid "Voicemail" ++#~ msgstr "Voicemail" ++ ++#~ msgid "Waits until first ring after time" ++#~ msgstr "Waits until first ring after time" ++ ++#~ msgid "Wait For Silence Application" ++#~ msgstr "Wait For Silence Application" ++ ++#~ msgid "While Loops and Conditional Execution" ++#~ msgstr "While Loops and Conditional Execution" ++ ++#~ msgid "Comma Separated Values CDR Backend" ++#~ msgstr "Comma Separated Values CDR Backend" ++ ++#~ msgid "Customizable Comma Separated Values CDR Backend" ++#~ msgstr "Customizable Comma Separated Values CDR Backend" ++ ++#~ msgid "Asterisk Call Manager CDR Backend" ++#~ msgstr "Asterisk Call Manager CDR Backend" ++ ++#~ msgid "MySQL CDR Backend" ++#~ msgstr "MySQL CDR Backend" ++ ++#~ msgid "PostgreSQL CDR Backend" ++#~ msgstr "PostgreSQL CDR Backend" ++ ++#~ msgid "SQLite CDR Backend" ++#~ msgstr "SQLite CDR Backend" ++ ++#~ msgid "Agent Proxy Channel" ++#~ msgstr "Agent Proxy Channel" ++ ++#~ msgid "Option chan_iax2" ++#~ msgstr "Option chan_iax2" ++ ++#~ msgid "Local Proxy Channel" ++#~ msgstr "Local Proxy Channel" ++ ++#~ msgid "Session Initiation Protocol (SIP)" ++#~ msgstr "Session Initiation Protocol (SIP)" ++ ++#~ msgid "Adaptive Differential PCM Coder/Decoder" ++#~ msgstr "Adaptive Differential PCM Coder/Decoder" ++ ++#~ msgid "A-law Coder/Decoder" ++#~ msgstr "A-law Coder/Decoder" ++ ++#~ msgid "A-law and Mulaw direct Coder/Decoder" ++#~ msgstr "A-law and Mulaw direct Coder/Decoder" ++ ++#~ msgid "ITU G.726-32kbps G726 Transcoder" ++#~ msgstr "ITU G.726-32kbps G726 Transcoder" ++ ++#~ msgid "GSM/PCM16 (signed linear) Codec Translation" ++#~ msgstr "GSM/PCM16 (signed linear) Codec Translation" ++ ++#~ msgid "Speex/PCM16 (signed linear) Codec Translator" ++#~ msgstr "Speex/PCM16 (signed linear) Codec Translator" ++ ++#~ msgid "Mu-law Coder/Decoder" ++#~ msgstr "Mu-law Coder/Decoder" ++ ++#~ msgid "Sun Microsystems AU format (signed linear)" ++#~ msgstr "Sun Microsystems AU format (signed linear)" ++ ++#~ msgid "G.723.1 Simple Timestamp File Format" ++#~ msgstr "G.723.1 Simple Timestamp File Format" ++ ++#~ msgid "Raw G.726 (16/24/32/40kbps) data" ++#~ msgstr "Raw G.726 (16/24/32/40kbps) data" ++ ++#~ msgid "Raw G729 data" ++#~ msgstr "Raw G729 data" ++ ++#~ msgid "Raw GSM data" ++#~ msgstr "Raw GSM data" ++ ++#~ msgid "Raw h263 data" ++#~ msgstr "Raw h263 data" ++ ++#~ msgid "JPEG (Joint Picture Experts Group) Image" ++#~ msgstr "JPEG (Joint Picture Experts Group) Image" ++ ++#~ msgid "Raw uLaw 8khz Audio support (PCM)" ++#~ msgstr "Raw uLaw 8khz Audio support (PCM)" ++ ++#~ msgid "load => .so ; Raw aLaw 8khz PCM Audio support" ++#~ msgstr "load => .so ; Raw aLaw 8khz PCM Audio support" ++ ++#~ msgid "Raw Signed Linear Audio support (SLN)" ++#~ msgstr "Raw Signed Linear Audio support (SLN)" ++ ++#~ msgid "Dialogic VOX (ADPCM) File Format" ++#~ msgstr "Dialogic VOX (ADPCM) File Format" ++ ++#~ msgid "Microsoft WAV format (8000hz Signed Line" ++#~ msgstr "Microsoft WAV format (8000hz Signed Line" ++ ++#~ msgid "Microsoft WAV format (Proprietary GSM)" ++#~ msgstr "Microsoft WAV format (Proprietary GSM)" ++ ++#~ msgid "Caller ID related dialplan functions" ++#~ msgstr "Caller ID related dialplan functions" ++ ++#~ msgid "ENUM Functions" ++#~ msgstr "ENUM Functions" ++ ++#~ msgid "URI encoding / decoding functions" ++#~ msgstr "URI encoding / decoding functions" ++ ++#~ msgid "Asterisk Extension Language Compiler" ++#~ msgstr "Asterisk Extension Language Compiler" ++ ++#~ msgid "Text Extension Configuration" ++#~ msgstr "Text Extension Configuration" ++ ++#~ msgid "load => .so ; Builtin dialplan functions" ++#~ msgstr "load => .so ; Builtin dialplan functions" ++ ++#~ msgid "Loopback Switch" ++#~ msgstr "Loopback Switch" ++ ++#~ msgid "Realtime Switch" ++#~ msgstr "Realtime Switch" ++ ++#~ msgid "Outgoing Spool Support" ++#~ msgstr "Outgoing Spool Support" ++ ++#~ msgid "Wil Cal U (Auto Dialer)" ++#~ msgstr "Wil Cal U (Auto Dialer)" ++ ++#~ msgid "MySQL Config Resource" ++#~ msgstr "MySQL Config Resource" ++ ++#~ msgid "ODBC Config Resource" ++#~ msgstr "ODBC Config Resource" ++ ++#~ msgid "PGSQL Module" ++#~ msgstr "PGSQL Module" ++ ++#~ msgid "Cryptographic Digital Signatures" ++#~ msgstr "Cryptographic Digital Signatures" ++ ++#~ msgid "Call Parking Resource" ++#~ msgstr "Call Parking Resource" ++ ++#~ msgid "Indications Configuration" ++#~ msgstr "Indications Configuration" ++ ++#~ msgid "Call Monitoring Resource" ++#~ msgstr "Call Monitoring Resource" ++ ++#~ msgid "Music On Hold Resource" ++#~ msgstr "Music On Hold Resource" ++ ++#~ msgid "ODBC Resource" ++#~ msgstr "ODBC Resource" ++ ++#~ msgid "SMDI Module" ++#~ msgstr "SMDI Module" ++ ++#~ msgid "SNMP Module" ++#~ msgstr "SNMP Module" ++ ++#~ msgid "Music On Hold" ++#~ msgstr "Music On Hold" ++ ++#~ msgid "Application" ++#~ msgstr "Application" ++ ++#~ msgid "Directory of Music" ++#~ msgstr "Directory of Music" ++ ++#~ msgid "Option mode" ++#~ msgstr "Option mode" ++ ++#~ msgid "Random Play" ++#~ msgstr "Random Play" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "DTMF mode" ++ ++#~ msgid "Primary domain identity for From: headers" ++#~ msgstr "Primary domain identity for From: headers" ++ ++#~ msgid "From user (required by many SIP providers)" ++#~ msgstr "From user (required by many SIP providers)" ++ ++#~ msgid "Ring on incoming dialplan contexts" ++#~ msgstr "Ring on incoming dialplan contexts" ++ ++#~ msgid "Allow Insecure for" ++#~ msgstr "Allow Insecure for" ++ ++#~ msgid "Mailbox for MWI" ++#~ msgstr "Mailbox for MWI" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "NAT between phone and Asterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "Check tags in headers" ++ ++#~ msgid "Reply Timeout (ms) for down connection" ++#~ msgstr "Reply Timeout (ms) for down connection" ++ ++#~ msgid "Register connection" ++#~ msgstr "Register connection" ++ ++#~ msgid "Dial own extension for mailbox" ++#~ msgstr "Dial own extension for mailbox" ++ ++#~ msgid "Client Type" ++#~ msgstr "Client Type" ++ ++#~ msgid "Username" ++#~ msgstr "Username" ++ ++#~ msgid "Section sipgeneral" ++#~ msgstr "Section sipgeneral" ++ ++#~ msgid "Allow codecs" ++#~ msgstr "Allow codecs" ++ ++#~ msgid "SIP realm" ++#~ msgstr "SIP realm" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "Voicemail general options" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "From Email address of server" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "Voice Mail boxes" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "Email contains attachment" ++ ++#~ msgid "Email" ++#~ msgstr "Email" ++ ++#~ msgid "Display Name" ++#~ msgstr "Display Name" ++ ++#~ msgid "Password" ++#~ msgstr "Password" ++ ++#~ msgid "zone" ++#~ msgstr "zone" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Voice Zone settings" ++ ++#~ msgid "Message Format" ++#~ msgstr "Message Format" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/es/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/es/asterisk.po +new file mode 100644 +index 0000000..8e2fe1e +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/es/asterisk.po +@@ -0,0 +1,355 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:41+0200\n" ++"PO-Revision-Date: 2012-04-16 00:52+0200\n" ++"Last-Translator: Jose \n" ++"Language-Team: LANGUAGE \n" ++"Language: es\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Opciones Generales de Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Directorio AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Almacena los ficheros de sonido mientras se graba" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Nivel de Depuración" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Desactivar algunos avisos" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Volcar núcleo en caso de fallo" ++ ++#~ msgid "High Priority" ++#~ msgstr "Prioridad Alta" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Inicializar Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Usar temporización interna" ++ ++#~ msgid "Log directory" ++#~ msgstr "Directorio de registro" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Número máximo de llamadas permitidas" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Carga máxima para dejar de admitir nuevas llamadas" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Desactivar colores en la consola" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Directorio de caché de archivos de sonido" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Grupo en el que ejecutarse" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Usuario como el que se ejecutará" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Directorio de la cola de mensajes de voz" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Prefijo UniquID con el nombre del sistema" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "" ++#~ "Construir las rutas de transcodificación usando SLINEAR, no directamente" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Transmitir silencio SLINEAR mientras graba un canal" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Nivel de detalle" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Sección Dialplan" ++ ++#~ msgid "include" ++#~ msgstr "incluir" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Extensión Dialplan" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Opciones generales de Dialplan" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Permitir transferencia" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Limpiar las variables globales" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "Dialplan Goto" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Conferencia Dialplan" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Dialplan Time" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Buzón de voz de Dialplan" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Zonas de marcado para Dialplan" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "Prefijo para añadir coincidencias de plan de marcado" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "Coincidir con el prefijo internacional" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Prefijo (0) para añadir/eliminar a/de números internacionales" ++ ++#~ msgid "localzone" ++#~ msgstr "zona local" ++ ++#~ msgid "Match plan" ++#~ msgstr "Coincidir con el plan" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Conexión que se utilizará" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Mapa de Funciones Clave" ++ ++#~ msgid "Attended transfer key" ++#~ msgstr "Tecla de transferencia asistida" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "Tecla de transferencia ciega" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Tecla para desconectar la llamada" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Tecla para retener la llamada" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Función de llamada en espera" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "Llamada en espera ADSI" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "Tiempo de espera de transferencia asistida (seg)" ++ ++#~ msgid "One touch record key" ++#~ msgstr "Tecla de grabacion con una sola tecla" ++ ++#~ msgid "Name of call context for parking" ++#~ msgstr "Nombre del contexto de la llamada en espera" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Archivo de sonido para reproducir en la llamada en espera" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "Tiempo máximo (en ms) entre digitos para la activación de funciones" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Método para encontrar una ranura de llamada en espera" ++ ++#~ msgid "parkedmusicclass" ++#~ msgstr "parkedmusicclass" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Reproducir tono de cortesía en" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Activar llamadas en espera" ++ ++#~ msgid "Extension to dial to park" ++#~ msgstr "Extensión a marcar para dejar en espera una llamada" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Tiempo de llamada en espera (segs)" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "Rango de extensiones para llamadas en espera" ++ ++#~ msgid "Pickup extension" ++#~ msgstr "Extensión de Pickup" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Segundos de espera entre digitos mientras se transfiere" ++ ++#~ msgid "sound when attended transfer is complete" ++#~ msgstr "sonido cuando se completa la transferencia asistida" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "sonido para cuando falla la transferencia asistida" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Recargar la configuración del Hardware" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Método de reinicio" ++ ++#~ msgid "Parameter" ++#~ msgstr "Parámetro" ++ ++#~ msgid "Option type" ++#~ msgstr "Tipo de opción" ++ ++#~ msgid "User name" ++#~ msgstr "Nombre de Usuario" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Opciones Generales de IAX" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Permitir Codecs" ++ ++#~ msgid "Static" ++#~ msgstr "Estático" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Protección contra escritura" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Conferencia Meetme (entre dos)" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "PIN de Administrador" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "PIN de Reunión (Meeting)" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Opciones generales de conferencia Meetme (entre dos)" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Número de memorias intermedias de audio de 20 ms a utilizar" ++ ++#~ msgid "Modules" ++#~ msgstr "Módulos" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Aplicación de Recepción de Alarma" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Aplicación de autenticación" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "Asegúrate que asterisk no graba CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Comprueba que el canal esté disponible" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Escuchar en cualquier canal" ++ ++#~ msgid "Control Playback Application" ++#~ msgstr "Aplicación para el control de reproducción" ++ ++#~ msgid "Cuts up variables" ++#~ msgstr "Variables de corte" ++ ++#~ msgid "Database access functions" ++#~ msgstr "Funciones de acceso a la Base de Datos" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Aplicación de marcado telefónico" ++ ++#~ msgid "Virtual Dictation Machine Application" ++#~ msgstr "Aplicación de máquina de Dictado Virtual" ++ ++#~ msgid "Directed Call Pickup Support" ++#~ msgstr "Apoyo a la captura de llamadas dirigidas" ++ ++#~ msgid "Extension Directory" ++#~ msgstr "Directorio de Extensiones" ++ ++#~ msgid "DISA (Direct Inward System Access) Application" ++#~ msgstr "Aplicación DISA (Acceso directo entrante al sistema)" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Aplicación de Eco Simple" ++ ++#~ msgid "ENUM Lookup" ++#~ msgstr "Consulta ENUM" ++ ++#~ msgid "Reevaluates strings" ++#~ msgstr "Reevaluar secuencia de caracteres" ++ ++#~ msgid "Executes applications" ++#~ msgstr "Ejecuta aplicaciones" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "Interfaz de aplicación IVR externa" ++ ++#~ msgid "Fork The CDR into 2 seperate entities" ++#~ msgstr "Bifurcar el CDR en 2 entidades separadas" ++ ++#~ msgid "Get ADSI CPE ID" ++#~ msgstr "Obtener el ADSI CPE ID" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Rutinas de Administración de grupo" ++ ++#~ msgid "Encode and Stream via icecast and ices" ++#~ msgstr "Codifica y emite a través de icecast e ices" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Aplicación de transmisión de imagen" ++ ++#~ msgid "Look up Caller*ID name/number from black" ++#~ msgstr "Buscar la identidad del llamante nombre/número en la lista negra" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "" ++#~ "Buscar el nombre de identidad del llamante en las bases de datos locales" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Macros de Extensión" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Una simple aplicación matemática" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "Aplicación de suma de verificación MD5" ++ ++#~ msgid "Digital Milliwatt (mu-law) Test Application" ++#~ msgstr "Aplicación de testeo de Milivatios Digitales (mu-law)" ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Grabar una llamada y mezclar el sonido durante la grabación" ++ ++#~ msgid "Call Parking and Announce Application" ++#~ msgstr "Aplicación de Anuncio y Llamada en Espera" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Aplicación de reproducción trivial" ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Requiere que se introduzca un número de teléfono" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "Lista de espera real de llamadas" ++ ++#~ msgid "Random goto" ++#~ msgstr "Goto (ir a) Aleatorio" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Aplicación de lectura de variables" ++ ++#~ msgid "Read in a file" ++#~ msgstr "Leer en un archivo" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/fr/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/fr/asterisk.po +new file mode 100644 +index 0000000..75c1d38 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/fr/asterisk.po +@@ -0,0 +1,569 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:36+0200\n" ++"PO-Revision-Date: 2011-11-23 22:34+0200\n" ++"Last-Translator: fredb \n" ++"Language-Team: LANGUAGE \n" ++"Language: fr\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Paramètres généraux d'Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Répertoire AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Mes les sons enregistrés en cache pendant l'enregistrement" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Niveau de déboguage" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Désactiver certaines alertes" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Créer une image-core en cas de crash" ++ ++#~ msgid "High Priority" ++#~ msgstr "Priorité haute" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Initialise le chiffrage" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Utiliser un délai interne" ++ ++#~ msgid "Log directory" ++#~ msgstr "Répertoire des journaux" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Nombre maximum d'appels autorisés" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Charge maximum jusqu'à laquelle on accepte de nouveaux appels" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Désactiver les couleurs de la console" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Répertoire de cache des ficihers-sons" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Exécuté avec ce groupe" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Exécuté avec cet utilisateur" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Répertoire de stockage du répondeur" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Préfixer le « UniquID » avec le nom du système" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "Construire des chemins de traduction via SLINEAR, pas directement" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Transmettre le silence SLINEAR lors de l'enregistrement d'un canal" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Niveau de verbosité" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Section du plan de numérotation" ++ ++#~ msgid "include" ++#~ msgstr "Inclure" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Extension du plan de numérotation" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Paramètres généraux du plan de numérotation" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Permettre le transfert" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Effacer les variables globales" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Règles d'aiguillage pour la conférence" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Règles d'aiguillage liées au temps" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Règles d'aiguillage de la messagerie vocale" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "Préfixe correspondant à l'international" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Préfixe (0) à ajouter à/retirer d'un numéro international" ++ ++#~ msgid "localzone" ++#~ msgstr "zone locale" ++ ++#~ msgid "Match plan" ++#~ msgstr "Règle de correspondance" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Connexion à utiliser" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "Touche de transfert en aveugle" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Touche pour déconnecter un appel" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Touche pour parquer un appel" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Capacité de mise en parking" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "Parking ADSI" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "Délai max d'un transfert programmé (secondes)" ++ ++#~ msgid "Name of call context for parking" ++#~ msgstr "Nom du contexte d'appel pour une mise en parking" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Fichier-son à jouer aux appelants mis en parking" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "" ++#~ "Durée max (en ms) entre les chiffres pour l'activation d'une commande" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Méthode pour trouver une place de parking" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Jouer une tonalité de courtoisie à" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Activer la mise en parking" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Durée de mise en parking (secondes)" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Attente en secondes entre les chiffres Lors d'un transfert" ++ ++#~ msgid "sound when attended transfer is complete" ++#~ msgstr "Son joué quand un transfert programmé est effectué" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "Son joué quand nu transfert programmé rate" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Relit la configuration matérielle" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Méthode de redémarrage" ++ ++#~ msgid "Parameter" ++#~ msgstr "Paramètre" ++ ++#~ msgid "Option type" ++#~ msgstr "Type d'option" ++ ++#~ msgid "User name" ++#~ msgstr "Nom d'utilisateur" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Paramètres généraux du protocole IAX" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Codecs autorisés" ++ ++#~ msgid "Static" ++#~ msgstr "Statique" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Protection contre l'écriture" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Conférence « Meetme »" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "ID d'administrateur" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "Code de conférence" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Options générales de conférence « Meetme »" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Nombre de buffers audio de 20 ms à utiliser" ++ ++#~ msgid "Modules" ++#~ msgstr "Modules" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Application de réception d'alarme" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Application d'authentification" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "S'assure qu'Asterisk ne sauve pas le CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Vérifie que le canal est libre" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Écoute sur n'importe quel canal" ++ ++#~ msgid "Database access functions" ++#~ msgstr "Fonctions d'accès aux bases de données" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Application de numérotation" ++ ++#~ msgid "Virtual Dictation Machine Application" ++#~ msgstr "Application de dictaphone virtuel" ++ ++#~ msgid "Dump channel variables Application" ++#~ msgstr "Application de copie des variables d'un canal" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Application de simple écho" ++ ++#~ msgid "ENUM Lookup" ++#~ msgstr "Résolution d'un ENUM" ++ ++#~ msgid "Reevaluates strings" ++#~ msgstr "Ré-évaluer les chaînes" ++ ++#~ msgid "Executes applications" ++#~ msgstr "Lance les applications" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "Interface d'application SVI externe" ++ ++#~ msgid "Fork The CDR into 2 seperate entities" ++#~ msgstr "Dupliquer le CDR en deux entités séparées" ++ ++#~ msgid "Get ADSI CPE ID" ++#~ msgstr "Obtenir le « ADSI CPE ID »" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Fonctions de gestion des groupes" ++ ++#~ msgid "Encode and Stream via icecast and ices" ++#~ msgstr "Coder et diffuser via icecast et ices" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Application d'envoi d'image" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "Rechercher le nom de l'appelant dans la base locale" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Macros d'extension" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Une simple application mathématique" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "Application de signature MD5" ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Enregistre un appelle et mixe le son pendant l'enregistrement" ++ ++#~ msgid "Call Parking and Announce Application" ++#~ msgstr "Application de mise en parking d'appel et annonce" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Application de simple écoute" ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Nécessite d'entrer un numéro de téléphone" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "Véritable sérialisation des appels" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Application de lecture d'une variable" ++ ++#~ msgid "Read in a file" ++#~ msgstr "Lire dans un fichier" ++ ++#~ msgid "Realtime Data Lookup/Rewrite" ++#~ msgstr "Recherche/ré-écriture de données en temps-réel" ++ ++#~ msgid "Trivial Record Application" ++#~ msgstr "Application de simple enregistrement" ++ ++#~ msgid "Say time" ++#~ msgstr "Dis l'heure" ++ ++#~ msgid "Send DTMF digits Application" ++#~ msgstr "Application d'envoi de chiffres en DTMF" ++ ++#~ msgid "Send Text Applications" ++#~ msgstr "Applications d'envoi de texte" ++ ++#~ msgid "Set CallerID Application" ++#~ msgstr "Application de positionnement de l'identifiant de l'appelant" ++ ++#~ msgid "load => .so ; Set CallerID Name" ++#~ msgstr "" ++#~ "charger => .so ; Positionner le nom dans l'identifiant de l'appelant" ++ ++#~ msgid "load => .so ; Set CallerID Number" ++#~ msgstr "" ++#~ "charger => .so ; Positionner le numéro dans l'identifiant de l'appelant" ++ ++#~ msgid "Set RDNIS Number" ++#~ msgstr "Positionner le numéro RDNIS" ++ ++#~ msgid "Set ISDN Transfer Capability" ++#~ msgstr "Activer la possibilité de transfert RNIS" ++ ++#~ msgid "SMS/PSTN handler" ++#~ msgstr "Gestionnaire SMS/RTC" ++ ++#~ msgid "Hangs up the requested channel" ++#~ msgstr "Raccroche le canal demandé" ++ ++#~ msgid "Stack Routines" ++#~ msgstr "Empile les routines" ++ ++#~ msgid "Generic System() application" ++#~ msgstr "Application générique System()" ++ ++#~ msgid "Playback with Talk Detection" ++#~ msgstr "Jouer un son avec la détection de parole" ++ ++#~ msgid "Interface Test Application" ++#~ msgstr "Application de test d'interface" ++ ++#~ msgid "Transfer" ++#~ msgstr "Transfert" ++ ++#~ msgid "Send URL Applications" ++#~ msgstr "Applications d'envois d'URL" ++ ++#~ msgid "Send verbose output" ++#~ msgstr "Envoyer une sortie détaillée" ++ ++#~ msgid "Voicemail" ++#~ msgstr "Répondeur" ++ ++#~ msgid "Wait For Silence Application" ++#~ msgstr "Application d'attente de silence" ++ ++#~ msgid "Session Initiation Protocol (SIP)" ++#~ msgstr "Session Initiation Protocol (SIP)" ++ ++#~ msgid "Adaptive Differential PCM Coder/Decoder" ++#~ msgstr "Codec PCM différentiel adaptatif (ADPCM)" ++ ++#~ msgid "A-law Coder/Decoder" ++#~ msgstr "Codec loi-A" ++ ++#~ msgid "A-law and Mulaw direct Coder/Decoder" ++#~ msgstr "Codec loi-A et loi-Mu directs" ++ ++#~ msgid "ITU G.726-32kbps G726 Transcoder" ++#~ msgstr "Transcodeur G726 (ITU G.726 32 kbit/s)" ++ ++#~ msgid "GSM/PCM16 (signed linear) Codec Translation" ++#~ msgstr "Codec de traduction GSM/PCM16 (linéaire signé)" ++ ++#~ msgid "Speex/PCM16 (signed linear) Codec Translator" ++#~ msgstr "Codec de traduction Speex/PCM16 (linéaire signé)" ++ ++#~ msgid "Mu-law Coder/Decoder" ++#~ msgstr "Codec loi-Mu" ++ ++#~ msgid "Sun Microsystems AU format (signed linear)" ++#~ msgstr "Format Sun Microsystems AU (linéaire signé)" ++ ++#~ msgid "G.723.1 Simple Timestamp File Format" ++#~ msgstr "Format de fichier G.723.1 à horodatage simple" ++ ++#~ msgid "Raw G.726 (16/24/32/40kbps) data" ++#~ msgstr "Données brutes G.726 (16/24/32/40 kbit/s)" ++ ++#~ msgid "Raw G729 data" ++#~ msgstr "Données brutes G729" ++ ++#~ msgid "Raw GSM data" ++#~ msgstr "Données brutes GSM" ++ ++#~ msgid "Raw h263 data" ++#~ msgstr "Données brutes h263" ++ ++#~ msgid "JPEG (Joint Picture Experts Group) Image" ++#~ msgstr "Image JPEG (Joint Picture Experts Group)" ++ ++#~ msgid "Raw uLaw 8khz Audio support (PCM)" ++#~ msgstr "Gestion de l'audio en loi-µ 8 kHz brute (PCM)" ++ ++#~ msgid "load => .so ; Raw aLaw 8khz PCM Audio support" ++#~ msgstr "Charger => .so ; Gestion de l'audio en loi-A brute PCM 8 kHz" ++ ++#~ msgid "Raw Signed Linear Audio support (SLN)" ++#~ msgstr "Gestion de l'audio en linéaire signé brut (SLN)" ++ ++#~ msgid "Dialogic VOX (ADPCM) File Format" ++#~ msgstr "Format de fichier Dialogic VOX (ADPCM)" ++ ++#~ msgid "Microsoft WAV format (8000hz Signed Line" ++#~ msgstr "Format Microsoft WAV (8 kHz linéaire signé)" ++ ++#~ msgid "Microsoft WAV format (Proprietary GSM)" ++#~ msgstr "Format Microsoft WAV (GSM propriétaire)" ++ ++#~ msgid "Caller ID related dialplan functions" ++#~ msgstr "Fonctions d'aiguillage des appels liées à l'identifiant d'appel" ++ ++#~ msgid "ENUM Functions" ++#~ msgstr "Fonctions ENUM" ++ ++#~ msgid "URI encoding / decoding functions" ++#~ msgstr "Fonctions de codage/décodage des URI" ++ ++#~ msgid "Asterisk Extension Language Compiler" ++#~ msgstr "Compilateur du langage d'extension d'Asterisk" ++ ++#~ msgid "Text Extension Configuration" ++#~ msgstr "Configuration de l'extension Texte" ++ ++#~ msgid "load => .so ; Builtin dialplan functions" ++#~ msgstr "charger => .so ; fonctions natives d'aiguillages des appels" ++ ++#~ msgid "Outgoing Spool Support" ++#~ msgstr "Gestion d'un spool sortant" ++ ++#~ msgid "Wil Cal U (Auto Dialer)" ++#~ msgstr "Wil Cal U (composeur automatique)" ++ ++#~ msgid "MySQL Config Resource" ++#~ msgstr "Ressource de configuration de MySQL" ++ ++#~ msgid "ODBC Config Resource" ++#~ msgstr "Ressource de configuration d'ODBC" ++ ++#~ msgid "PGSQL Module" ++#~ msgstr "Module PGSQL" ++ ++#~ msgid "Cryptographic Digital Signatures" ++#~ msgstr "Signatures de chiffrage numérique" ++ ++#~ msgid "Call Parking Resource" ++#~ msgstr "Ressource de mise en parking des appels" ++ ++#~ msgid "Call Monitoring Resource" ++#~ msgstr "Ressource de supervision des appels" ++ ++#~ msgid "Music On Hold Resource" ++#~ msgstr "Ressource de mise en attente musicale" ++ ++#~ msgid "ODBC Resource" ++#~ msgstr "Ressource ODBC" ++ ++#~ msgid "SMDI Module" ++#~ msgstr "Module SMDI" ++ ++#~ msgid "SNMP Module" ++#~ msgstr "Module SNMP" ++ ++#~ msgid "Music On Hold" ++#~ msgstr "Mise en attente musicale" ++ ++#~ msgid "Application" ++#~ msgstr "Application" ++ ++#~ msgid "Directory of Music" ++#~ msgstr "Répertoire sonore" ++ ++#~ msgid "Random Play" ++#~ msgstr "morceau choisi aléatoirement" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "Mode DTMF" ++ ++#~ msgid "Primary domain identity for From: headers" ++#~ msgstr "Identité du domaine primaire pour les entêtes « From: »" ++ ++#~ msgid "From user (required by many SIP providers)" ++#~ msgstr "Utilisateur « From » (requis par de nombreux fournisseurs SIP)" ++ ++#~ msgid "Allow Insecure for" ++#~ msgstr "Autoriser le mode non sécurisé pour" ++ ++#~ msgid "Mailbox for MWI" ++#~ msgstr "Boîte aux lettres pour MWI" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "NAT entre le téléphone et Asterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "Vérifier les « tags » dans les entêtes" ++ ++#~ msgid "Reply Timeout (ms) for down connection" ++#~ msgstr "Délai de réponse (en ms) indiquant une connexion tombée" ++ ++#~ msgid "Register connection" ++#~ msgstr "Connexion au registre" ++ ++#~ msgid "Client Type" ++#~ msgstr "Type de client" ++ ++#~ msgid "Username" ++#~ msgstr "Nom d'utilisateur" ++ ++#~ msgid "Section sipgeneral" ++#~ msgstr "Section générale SIP" ++ ++#~ msgid "Allow codecs" ++#~ msgstr "Codecs autorisés" ++ ++#~ msgid "SIP realm" ++#~ msgstr "Domaine SIP" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "Options générales de la messagerie vocale" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "Adresse de courrier électronique source du serveur" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "Boîtes de messagerie vocale" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "Courriel contenant une pièce-jointe" ++ ++#~ msgid "Email" ++#~ msgstr "Courriel" ++ ++#~ msgid "Display Name" ++#~ msgstr "Nom affiché" ++ ++#~ msgid "Password" ++#~ msgstr "Mot de passe" ++ ++#~ msgid "zone" ++#~ msgstr "zone" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Paramètres de la zone Voix" ++ ++#~ msgid "Message Format" ++#~ msgstr "Format de message" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/he/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/he/asterisk.po +new file mode 100644 +index 0000000..25ed5bb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/he/asterisk.po +@@ -0,0 +1,194 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2011-07-14 12:48+0200\n" ++"Last-Translator: zstorch \n" ++"Language-Team: none\n" ++"Language: he\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "הגדרות כלליות של Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "תיקית AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "שמור את קבצי הקול במהלך ההקלטה" ++ ++#~ msgid "Debug Level" ++#~ msgstr "רמת מצב ניפוי שגיאות" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "בטל חלק מהאזהרות" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "תעד את מצב הליבה בעת נפילת המערכת" ++ ++#~ msgid "High Priority" ++#~ msgstr "עדיפות גבוהה" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "מפעיל את Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "השתמש בשעון הפנימי" ++ ++#~ msgid "Log directory" ++#~ msgstr "תיקית התיעוד" ++ ++# צריך לבדוק אם מדובר על שיחות "בו זמנית" אם כן חשוב לציין אם לא הנל טעות חמורה ++#, fuzzy ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "מקסימום שיחות בו זמנית" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "מקסימות שיחות שבו המערכת תדחה שיחות נוספות" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "בטל צבעים במסוף" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "תיקית קבצי הקול" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "הפעל עם הרשאות קבוצת" ++ ++#~ msgid "The User to run as" ++#~ msgstr "הפעל עם הרשאות משתמש" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "תיקית התא קולי" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "הוסף לUniquID את שם המערכת" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "המר תבניות קול ישירות עם SLINEAR" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "שדר שקט של SLINEAR במהלך הקלטה" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "רמת דו\"ח המערכת" ++ ++#~ msgid "Time Zone" ++#~ msgstr "אזור זמן" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "מחלקה בתוכנית השיחות" ++ ++#~ msgid "include" ++#~ msgstr "כולל" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "שלוחה בתוכנית השיחות" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "הגדרות כללית של תוכנית השיחות" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "אפשר העברה" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "נקה משתנים כללים" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "\"לך אל\" בתוכנית השיחות" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "שיחת ועידה בתוכנית השיחות" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "זמן בתוכנית השיחות" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "תא קולי בתוכנית השיחות" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "אזורי חיוג עבור תוכנית השיחות" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "קידומת להוספה עבור תוכניות שיחה דומות" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "השווה קידומת בין לאומית" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "קידומת (0) להוספה או הסרה במספר בין לאומי" ++ ++#~ msgid "localzone" ++#~ msgstr "מיקום" ++ ++#~ msgid "Match plan" ++#~ msgstr "תוכנית מתאימה" ++ ++#~ msgid "Connection to use" ++#~ msgstr "השתמש בחיבור מסוג" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "מיפוי מקשים יעודיים" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "נתב (NAT) בין מכשיר הטלפון לAsterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "בדוק את התגיות בהקדמה" ++ ++#, fuzzy ++#~ msgid "Reply Timeout (ms) for down connection" ++#~ msgstr "החזר את פרק זמן (timeout) במילישניות עבור חבורים סגורים" ++ ++#~ msgid "Register connection" ++#~ msgstr "חיבור רשום (מנוי)" ++ ++#~ msgid "Dial own extension for mailbox" ++#~ msgstr "חיוג סיפרה בודדת עבור תא דואר" ++ ++#~ msgid "Client Type" ++#~ msgstr "סוג הלקוח" ++ ++#~ msgid "Username" ++#~ msgstr "שם משתמש" ++ ++#~ msgid "Allow codecs" ++#~ msgstr "מקודדים מאושרים" ++ ++#~ msgid "SIP realm" ++#~ msgstr "מתחם SIP" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "הגדרות כלליות עבור התא קולי" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "שדה דואר אלקטרוני מאת (של השרת)" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "תאים קוליים" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "מצורף תוכן ההודעה" ++ ++#~ msgid "Email" ++#~ msgstr "דואר אלקטרוני" ++ ++#~ msgid "Display Name" ++#~ msgstr "שם תצוגה" ++ ++#~ msgid "Password" ++#~ msgstr "סיסמה" ++ ++#~ msgid "zone" ++#~ msgstr "אזור" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "הגדרות אזוריות עבור הקול" ++ ++#~ msgid "Message Format" ++#~ msgstr "תבנית ההודעה" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/hu/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/hu/asterisk.po +new file mode 100644 +index 0000000..c6a5d81 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/hu/asterisk.po +@@ -0,0 +1,134 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-04-18 23:18+0200\n" ++"Last-Translator: Anonymous Pootle User\n" ++"Language-Team: none\n" ++"Language: hu\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Általános Asterisk beállítások" ++ ++#~ msgid "AGI directory" ++#~ msgstr "AGI könyvtár" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "A felvett hang fájlok gyorsítótárazása a felvétel alatt" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Nyomkövetési szint" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Néhány figyelmeztetés letilása" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Memóriatartalom kiírása összeomláskor" ++ ++#~ msgid "High Priority" ++#~ msgstr "Magas prioritás" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Titkosítás inicializálása" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Belső időzítés használata" ++ ++#~ msgid "Log directory" ++#~ msgstr "Napló könyvtár" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "A hivások megengedett maximális száma" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "A CPU maximális terhelése új hívások fogadásához" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Konzol színek letiltása" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "A gyorsítótárazott hang fájlok könyvtára" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Csoport futtatása mint" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Felhasználó futtatása mint" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Hangposta puffer könyvtár" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Rendszer név használata UniquID előtagként" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Részletes szint" ++ ++#~ msgid "Time Zone" ++#~ msgstr "Időzóna" ++ ++#~ msgid "include" ++#~ msgstr "tartalmaz" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Átvitel engedélyezése" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Globális változók törlése" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Várakoztatás engedélyezése" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Várakoztatási idő (másodperc)" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Újraindítás módja" ++ ++#~ msgid "Parameter" ++#~ msgstr "Paraméter" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Általános IAX beállítások" ++ ++#~ msgid "Static" ++#~ msgstr "Statikus" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Írásvédelem" ++ ++#~ msgid "Modules" ++#~ msgstr "Modulok" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "DTMF mód" ++ ++#~ msgid "Client Type" ++#~ msgstr "Ügyfél típusa" ++ ++#~ msgid "Username" ++#~ msgstr "Felhasználónév" ++ ++#~ msgid "Email" ++#~ msgstr "E-mail" ++ ++#~ msgid "Display Name" ++#~ msgstr "Megjelenítendő név" ++ ++#~ msgid "Password" ++#~ msgstr "Jelszó" ++ ++#~ msgid "zone" ++#~ msgstr "zóna" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Hang zóna beállítások" ++ ++#~ msgid "Message Format" ++#~ msgstr "Üzenet formátuma" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/it/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/it/asterisk.po +new file mode 100644 +index 0000000..9eb24da +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/it/asterisk.po +@@ -0,0 +1,162 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:40+0200\n" ++"PO-Revision-Date: 2012-04-19 23:40+0200\n" ++"Last-Translator: claudyus \n" ++"Language-Team: LANGUAGE \n" ++"Language: it\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Asterisk Opzioni Generali" ++ ++#~ msgid "AGI directory" ++#~ msgstr "AGI directory" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Cache dei file audio registrati durante la registrazione" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Livello di debug" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Disattivare alcuni avvis" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Effettua il core dump al crash" ++ ++#~ msgid "High Priority" ++#~ msgstr "Alta Priorità" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Usa temporizzazione interna" ++ ++#~ msgid "Log directory" ++#~ msgstr "Accedi alla directory" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Numero massimo di chiamate consentite" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Smettere di accettare carico massimo di nuove chiamate" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Disabilitare la console dei colori" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Cache directori files suoni" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Prefisso UniquID con il nome di sistema" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "Costruire percorsi di transcodifica via SLINEAR, non direttamente" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Livello verbose" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Sezione dialplan" ++ ++#~ msgid "include" ++#~ msgstr "include" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Estensione Dialplan" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Opzioni generali Dialplan" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Permettere il trasferimento" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Cancella le variabili globali" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Conferenza Dialplan" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "Aggiungere il prefisso corrispondente per Dialplans" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "" ++#~ "Prefisso (0) per aggiungere / rimuovere a / da numeri internazionali" ++ ++#~ msgid "localzone" ++#~ msgstr "localzone" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Connessione da utilizzare" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Caratteristica chiave delle mappe" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Chiave per disconnettere una chiamata" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Chiave di riserva per chiamata" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Riserva futura" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "Riserva ADSI" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Ascolta il tono di cortesia per" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Abilita la sosta" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Ora di sosta (in secondi)" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "Gamma di estensioni per la sosta di chiamata" ++ ++#~ msgid "Pickup extension" ++#~ msgstr "Estensione Pickup" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Secondi di attesa tra le cifre per il trasferimento" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "Suono quando il trasferimento non ha partecipato" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Ricarica Hardware Config" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Metodo per riavviare" ++ ++#~ msgid "Parameter" ++#~ msgstr "Parametro" ++ ++#~ msgid "Option type" ++#~ msgstr "Tipo di opzione" ++ ++#~ msgid "User name" ++#~ msgstr "Usare il nome" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Opzione generale per IAX" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Lasciare il codec" ++ ++#~ msgid "Static" ++#~ msgstr "Statico" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Protezione da scrittura" ++ ++#~ msgid "Message Format" ++#~ msgstr "Formato messaggio" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/ja/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/ja/asterisk.po +new file mode 100644 +index 0000000..98bd10b +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/ja/asterisk.po +@@ -0,0 +1,44 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:36+0200\n" ++"PO-Revision-Date: 2012-01-08 13:20+0200\n" ++"Last-Translator: Kentaro \n" ++"Language-Team: LANGUAGE \n" ++"Language: ja\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Asterisk の全般オプション" ++ ++#~ msgid "AGI directory" ++#~ msgstr "AGI ディレクトリ" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "録音されたサウンドを録音中にキャッシュ" ++ ++#~ msgid "Debug Level" ++#~ msgstr "デバッグレベル" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "いくつかの警告を無効にする" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "クラッシュ時にコアダンプを出力する" ++ ++#~ msgid "High Priority" ++#~ msgstr "高優先度" ++ ++#~ msgid "Log directory" ++#~ msgstr "ログ ディレクトリ" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "転送を許可" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "グローバル変数を消去" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/ms/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/ms/asterisk.po +new file mode 100644 +index 0000000..e1260e1 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/ms/asterisk.po +@@ -0,0 +1,611 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2010-05-03 12:40+1000\n" ++"PO-Revision-Date: 2010-05-05 23:32+1000\n" ++"Last-Translator: Wai Chet Teow \n" ++"Language-Team: LANGUAGE\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Pootle 1.1.0\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Pilihan Umum Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "AGI Direktori" ++ ++#, fuzzy ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Cache dicatat semasa rakaman fail bunyi" ++ ++#, fuzzy ++#~ msgid "Debug Level" ++#~ msgstr "Tingkatan debug" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Mematikan beberapa amaran" ++ ++#, fuzzy ++#~ msgid "Dump core on crash" ++#~ msgstr "Dump teras dalam kemalangan" ++ ++#~ msgid "High Priority" ++#~ msgstr "Keutamaan Tinggi" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Menginisialisasinya Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Gunakan Intern pemilihan waktu" ++ ++#, fuzzy ++#~ msgid "Log directory" ++#~ msgstr "Direktori log" ++ ++#, fuzzy ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Jumlah maksimum panggilan dibenarkan" ++ ++#, fuzzy ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "beban maksimum untuk berhenti menerima panggilan baru" ++ ++#, fuzzy ++#~ msgid "Disable console colors" ++#~ msgstr "Matikan warna konsol" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Sound fail Direktori Cache" ++ ++#, fuzzy ++#~ msgid "The Group to run as" ++#~ msgstr "Kumpulan untuk menjalankan sebagai" ++ ++#, fuzzy ++#~ msgid "The User to run as" ++#~ msgstr "Pengguna untuk menjalankan sebagai" ++ ++#, fuzzy ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Surat suara spool Direktori" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Awalan UniquID dengan nama sistem" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "Membangun transcode jalan melalui SLINEAR, tidak secara langsung" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Transmit SLINEAR keheningan ketika sedang merakam saluran" ++ ++#, fuzzy ++#~ msgid "Verbose Level" ++#~ msgstr "Tingkat verbose" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Bahagian dial rencana" ++ ++#~ msgid "include" ++#~ msgstr "memasukkan" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Ekstensi dial rencana" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Pilihan Umum Dialplan" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Membolehkan pemindahan" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Hapus variable global" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "Buka dial rencana" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Persidangan dial rencana" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Masa dial rencana" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Surat suara dial rencana" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Dial Zon untuk dial rencana" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "Prefix untuk menambah pencocokan dial rencana" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "Awalan Antarabangsa Match" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Awalan (0) untuk menambah / memadam ke / dari nombor antarabangsa" ++ ++#~ msgid "localzone" ++#~ msgstr "zon tempatan" ++ ++#~ msgid "Match plan" ++#~ msgstr "Rencana sesuai" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Sambungan yang digunakan" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Ciri-ciri kunci peta" ++ ++#~ msgid "Attended transfer key" ++#~ msgstr "Mengikuti memindahkan kunci" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "kunci pemindahkan buta" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Kunci untuk Putus panggilan" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Kunci untuk Park panggilan" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Parkir Ciri-ciri" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "ADSI Park" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "Mengikuti pemindahan timeout (saat)" ++ ++#~ msgid "One touch record key" ++#~ msgstr "Satu nota sentuh butang" ++ ++#~ msgid "Name of call context for parking" ++#~ msgstr "Nama konteks panggilan untuk parkir" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Fail bunyi untuk memainkan ke pemanggil parkir" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "Maksimum masa (milidetik) antara nombor untuk pengaktifan ciri" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Kaedah untuk Menemukan slot Parkir" ++ ++#~ msgid "parkedmusicclass" ++#~ msgstr "parkir muzik kelas" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Nada kebaikan yang dimainkan untuk" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Aktifkan Parkir" ++ ++#~ msgid "Extension to dial to park" ++#~ msgstr "Extension untuk dial ke taman" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Parkir waktu (saat)" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "Rentang sambungan untuk parkir panggilan" ++ ++#~ msgid "Pickup extension" ++#~ msgstr "Angkat sambungan" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Detik untuk menunggu antara nombor ketika memindahkan" ++ ++#~ msgid "sound when attended transfer is complete" ++#~ msgstr "suara saat menghadiri pemindahan selesai" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "Suara saat menghadiri gagal transfer" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Beban kembali menatarajah peranti keras" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Kaedah Reboot" ++ ++#~ msgid "Parameter" ++#~ msgstr "Parameter" ++ ++#~ msgid "Option type" ++#~ msgstr "Pilihan jenis" ++ ++#~ msgid "User name" ++#~ msgstr "Nama pemakai" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Pilihan Umum IAX" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Izinkan Codec" ++ ++#~ msgid "Static" ++#~ msgstr "Statik" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Dilindungi Menulis" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Persidangan Meetme" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "PIN Admin" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "PIN Pertemuan" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Pilihan Umum Persidangan Meetme" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Jumlah buffer audio yang akan digunakan dalam 20 mili detik" ++ ++#~ msgid "Modules" ++#~ msgstr "Modul" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Penggera Aplikasi Penerima" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Pengesahan Aplikasi" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "Membuat asterisk yakin tidak menyimpan CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Periksa sama ada saluran sedia" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Mendengar pada setiap saluran" ++ ++#~ msgid "Control Playback Application" ++#~ msgstr "Kawalan Main Aplikasi" ++ ++#~ msgid "Cuts up variables" ++#~ msgstr "Memotong pembolehubah" ++ ++#~ msgid "Database access functions" ++#~ msgstr "fungsi untuk mengakses dasar data" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Aplikasi Panggilan" ++ ++#~ msgid "Virtual Dictation Machine Application" ++#~ msgstr "Aplikasi Dikte Virtual Machine" ++ ++#~ msgid "Directed Call Pickup Support" ++#~ msgstr "Sokongan Pengarah Angkatan Pangillan" ++ ++#~ msgid "Extension Directory" ++#~ msgstr "Extension Direktori" ++ ++#~ msgid "DISA (Direct Inward System Access) Application" ++#~ msgstr "Aplikasi DISA (Direct Inward System Access)" ++ ++#~ msgid "Dump channel variables Application" ++#~ msgstr "Aplikasi membuang variable saluran" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Echo Aplikasi Mudah" ++ ++#~ msgid "ENUM Lookup" ++#~ msgstr "Pencarian ENUM" ++ ++#~ msgid "Reevaluates strings" ++#~ msgstr "Menilai semula string" ++ ++#~ msgid "Executes applications" ++#~ msgstr "Menjalankan aplikasi" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "IVR aplikasi antara muka luaran" ++ ++#~ msgid "Fork The CDR into 2 seperate entities" ++#~ msgstr "CDR garpu menjadi 2 entiti yang berasingan" ++ ++#~ msgid "Get ADSI CPE ID" ++#~ msgstr "Dapatkan ADSI CPE ID" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Pengurusan Kumpulan Rutinitas" ++ ++#~ msgid "Encode and Stream via icecast and ices" ++#~ msgstr "Menyandi dan Stream melalui icecast dan es" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Aplikasi Transmisi Gambar" ++ ++#~ msgid "Look up Caller*ID name/number from black" ++#~ msgstr "Mencari nama / nombor Pemangil dari hitam" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "Mencari Nama Pemangil dari database tempatan" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Makro Extension" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Sebuah Aplikasi matematik senang" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "Aplikasi MD5 checksum" ++ ++#~ msgid "Digital Milliwatt (mu-law) Test Application" ++#~ msgstr "Milliwatt digital (mu-law) Aplikasi Uji" ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Merakam panggilan dan campuran audio semasa rakaman" ++ ++#~ msgid "Call Parking and Announce Application" ++#~ msgstr "Panggilan Parkir dan Aplikasi Pengumuman" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Aplikasi Pemain Trivial" ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Nombor telefon diperlukan untuk dimasuk" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "Panggilan antrian benar" ++ ++#~ msgid "Random goto" ++#~ msgstr "Pergi ke random" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Aplikasi Baca Variabel" ++ ++#~ msgid "Read in a file" ++#~ msgstr "Baca dalam fail" ++ ++#~ msgid "Realtime Data Lookup/Rewrite" ++#~ msgstr "Masa benar mencari / menulis kembali data " ++ ++#~ msgid "Trivial Record Application" ++#~ msgstr "Aplikasi Trivial Rakam" ++ ++#~ msgid "Say time" ++#~ msgstr "Katakan masa" ++ ++#~ msgid "Send DTMF digits Application" ++#~ msgstr "Aplikasi Hantar DTMF angka" ++ ++#~ msgid "Send Text Applications" ++#~ msgstr "Aplikasi Kirim Mesej" ++ ++#~ msgid "Set CallerID Application" ++#~ msgstr "Aplikasi menetapkan CallerID" ++ ++#~ msgid "CDR user field apps" ++#~ msgstr "Aplikasi CDR bidang pengguna" ++ ++#~ msgid "load => .so ; Set CallerID Name" ++#~ msgstr "beban => .so ; Menetapkan Nama CallerID" ++ ++#~ msgid "Set RDNIS Number" ++#~ msgstr "Menetapkan Nombor RDNIS" ++ ++#~ msgid "Set ISDN Transfer Capability" ++#~ msgstr "Menetapkan Kemampuan Transfer ISDN" ++ ++#~ msgid "SMS/PSTN handler" ++#~ msgstr "Penangan SMS/PSTN" ++ ++#~ msgid "Hangs up the requested channel" ++#~ msgstr "Menutup saluran yang diminta" ++ ++#~ msgid "Stack Routines" ++#~ msgstr "Rutinitas Stack" ++ ++#~ msgid "Generic System() application" ++#~ msgstr "Aplikasi Generic Sistem()" ++ ++#~ msgid "Playback with Talk Detection" ++#~ msgstr "Putar dengan Pengesanan Bicara" ++ ++#~ msgid "Interface Test Application" ++#~ msgstr "Aplikasi Antarmuka Test" ++ ++#~ msgid "Transfer" ++#~ msgstr "Transfer" ++ ++#~ msgid "TXTCIDName" ++#~ msgstr "Nama TXTCID" ++ ++#~ msgid "Send URL Applications" ++#~ msgstr "Aplikasi Kirim URL" ++ ++#~ msgid "Custom User Event Application" ++#~ msgstr "Aplikasi Acara Pengguna Tersuai" ++ ++#~ msgid "Send verbose output" ++#~ msgstr "Kirim keluaran verbose" ++ ++#~ msgid "Voicemail" ++#~ msgstr "Voicemail" ++ ++#~ msgid "Waits until first ring after time" ++#~ msgstr "Menunggu waktu sampai setelah deringan pertama" ++ ++#~ msgid "Wait For Silence Application" ++#~ msgstr "Aplikasi Tunggu Untuk Tenang" ++ ++#~ msgid "While Loops and Conditional Execution" ++#~ msgstr "Sementara Loops dan Pelaksanaan bersyarat" ++ ++#~ msgid "Comma Separated Values CDR Backend" ++#~ msgstr "Hujung belakang nilai-nilai dipisahkan koma CDR" ++ ++#~ msgid "Customizable Comma Separated Values CDR Backend" ++#~ msgstr "Nilai-nilai dipisahkan koma CDR hujung belakang yang disesuaikan" ++ ++#~ msgid "Asterisk Call Manager CDR Backend" ++#~ msgstr "Hujung belakang asterisk panggilan pengurus CDR " ++ ++#~ msgid "MySQL CDR Backend" ++#~ msgstr "Hujung belakang MySQL CDR" ++ ++#~ msgid "PostgreSQL CDR Backend" ++#~ msgstr "Hujung belakang PostgreSQL CDR" ++ ++#~ msgid "SQLite CDR Backend" ++#~ msgstr "Hujung belakang SQLite CDR" ++ ++#~ msgid "Agent Proxy Channel" ++#~ msgstr "Agen Proksi Saluran" ++ ++#~ msgid "Option chan_iax2" ++#~ msgstr "Pilihan chan_iax2" ++ ++#~ msgid "Local Proxy Channel" ++#~ msgstr "Saluran Proksi Tempatan" ++ ++#~ msgid "Session Initiation Protocol (SIP)" ++#~ msgstr "Session Initiation Protocol (SIP)" ++ ++#~ msgid "Adaptive Differential PCM Coder/Decoder" ++#~ msgstr "Adaptif Pengkamiran PCM Coder/Decoder" ++ ++#~ msgid "GSM/PCM16 (signed linear) Codec Translation" ++#~ msgstr "GSM/PCM16 (ditandatangani linier) Codec Terjemahan" ++ ++#~ msgid "Speex/PCM16 (signed linear) Codec Translator" ++#~ msgstr "Speex/PCM16 (ditandatangani linier) Codec Terjemahan" ++ ++#~ msgid "Sun Microsystems AU format (signed linear)" ++#~ msgstr "Sun Microsystems AU format (ditandatangani linier)" ++ ++#~ msgid "Asterisk Extension Language Compiler" ++#~ msgstr "Asterisk Sambungan Bahasa Compiler" ++ ++#~ msgid "Text Extension Configuration" ++#~ msgstr "Teks Sambungan Tatarajah" ++ ++#~ msgid "Loopback Switch" ++#~ msgstr "Loop Beralih Kembali" ++ ++#~ msgid "MySQL Config Resource" ++#~ msgstr "MySQL menatarajah sumber daya" ++ ++#~ msgid "ODBC Config Resource" ++#~ msgstr "ODBC tatarajah sumber daya" ++ ++#~ msgid "PGSQL Module" ++#~ msgstr "Modul PGSQL" ++ ++#~ msgid "Cryptographic Digital Signatures" ++#~ msgstr "tanda tangan digital kriptografi" ++ ++#~ msgid "Call Parking Resource" ++#~ msgstr "Panggilan Parkir Sumber Daya" ++ ++#~ msgid "Indications Configuration" ++#~ msgstr "Penunjuk Konfigurasi" ++ ++#~ msgid "Call Monitoring Resource" ++#~ msgstr "panggilan pemantauan sumber daya" ++ ++#~ msgid "Music On Hold Resource" ++#~ msgstr "Muzik Pada Sumber Daya Tahan" ++ ++#~ msgid "ODBC Resource" ++#~ msgstr "Sumber ODBC" ++ ++#~ msgid "SMDI Module" ++#~ msgstr "Modul SMDI" ++ ++#~ msgid "SNMP Module" ++#~ msgstr "Modul SNMP" ++ ++#~ msgid "Music On Hold" ++#~ msgstr "Muzik Di Tahan" ++ ++#~ msgid "Application" ++#~ msgstr "Aplikasi" ++ ++#~ msgid "Directory of Music" ++#~ msgstr "Direktori Muzik" ++ ++#~ msgid "Option mode" ++#~ msgstr "Pilihan mod" ++ ++#~ msgid "Random Play" ++#~ msgstr "Bermain Rawak" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "Mode DTMF" ++ ++#~ msgid "Primary domain identity for From: headers" ++#~ msgstr "Domain utama identiti untuk Dari: header" ++ ++#~ msgid "From user (required by many SIP providers)" ++#~ msgstr "Dari pengguna (diperlukan oleh banyak pembekal SIP)" ++ ++#~ msgid "Ring on incoming dialplan contexts" ++#~ msgstr "Dering pada konteks rancangan panggilan masuk" ++ ++#~ msgid "Allow Insecure for" ++#~ msgstr "Biarkan tidak selamat untuk" ++ ++#~ msgid "Mailbox for MWI" ++#~ msgstr "Peti mel untuk MWI" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "NAT antara telefon dan asterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "Menyemak tag di header" ++ ++#~ msgid "Reply Timeout (ms) for down connection" ++#~ msgstr "Balas Masa tamat (ms) untuk sambungan ke bawah" ++ ++#~ msgid "Register connection" ++#~ msgstr "Register sambungan" ++ ++#~ msgid "Dial own extension for mailbox" ++#~ msgstr "Dial perpanjangan sendiri untuk peti mel" ++ ++#~ msgid "Client Type" ++#~ msgstr "Pelanggan Jenis" ++ ++#~ msgid "Section sipgeneral" ++#~ msgstr "Bahagian sipgeneral" ++ ++#~ msgid "Allow codecs" ++#~ msgstr "Membenarkan codec" ++ ++#~ msgid "SIP realm" ++#~ msgstr "Dunia SIP" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "Pilihan umum Voicemail" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "Dari alamat email server" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "Kotak mail suara" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "Email mengandungi lampiran" ++ ++#~ msgid "Display Name" ++#~ msgstr "Nama Paparan" ++ ++#~ msgid "Password" ++#~ msgstr "Kata laluan" ++ ++#~ msgid "zone" ++#~ msgstr "daerah" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Tetapan Zon Suara" ++ ++#~ msgid "Message Format" ++#~ msgstr "Format Mesej" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/no/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/no/asterisk.po +new file mode 100644 +index 0000000..70c448d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/no/asterisk.po +@@ -0,0 +1,12 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"Language: \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/pl/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/pl/asterisk.po +new file mode 100644 +index 0000000..f092853 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/pl/asterisk.po +@@ -0,0 +1,75 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-04-18 01:39+0200\n" ++"Last-Translator: Michał \n" ++"Language-Team: none\n" ++"Language: pl\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " ++"|| n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Ustawienia Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Katalog AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Buforuj nagrane pliki podczas nagrywania" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Poziom debugowania" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Wyłącz niektóre ostrzeżenia" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Wykonaj zrzut pamięci podczas awarii" ++ ++#~ msgid "High Priority" ++#~ msgstr "Wysoki Priorytet" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Uruchom Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Użyj wbudowanego próbkowania" ++ ++#~ msgid "Log directory" ++#~ msgstr "Katalog logów" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Max. dozwolona ilość połączeń" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Max. obciążenie powodujące odrzucanie nowych połączeń" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Wyłącz kolory konsoli" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Katalog tymczasowy dla plików dźwiękowych" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Grupa dla uruchamiania" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Użytkownik dla uruchamiania" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Katalog bufora poczty głosowej" ++ ++#~ msgid "Time Zone" ++#~ msgstr "Strefa Czasowa" ++ ++#~ msgid "localzone" ++#~ msgstr "localzone" ++ ++#~ msgid "parkedmusicclass" ++#~ msgstr "parkedmusicclass" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/pt-br/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/pt-br/asterisk.po +new file mode 100644 +index 0000000..07d7052 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/pt-br/asterisk.po +@@ -0,0 +1,691 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:41+0200\n" ++"PO-Revision-Date: 2011-10-18 22:20+0200\n" ++"Last-Translator: Luiz Angelo \n" ++"Language-Team: LANGUAGE \n" ++"Language: pt_BR\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Opções Gerais do Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Diretório do AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Guardar em cache os arquivos de som durante a gravação" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Nível de detalhamento" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Desativar alguns avisos" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Guardar o core quando o programa estourar" ++ ++#~ msgid "High Priority" ++#~ msgstr "Alta Prioridade" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Inicializar Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Usar Temporização Interna" ++ ++#~ msgid "Log directory" ++#~ msgstr "Diretório de registos" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Número máximo de chamadas permitidas" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Carga máxima para deixar de aceitar novas chamadas" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Desativar cores no console" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Diretório de cache para arquivos de som" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "O grupo sob o qual o asterisk será executado" ++ ++#~ msgid "The User to run as" ++#~ msgstr "O usuário sob o qual o asterisk será executado" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Directorio da spool de voicemail" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Prefixar o nome de sistema à UniquID" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "" ++#~ "Construir os caminhos de transcode atraves de SLINEAR e não directamente" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Transmitir silencio SLINEAR durante a gravação de um canal" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Nível de Detalhamento" ++ ++#~ msgid "Time Zone" ++#~ msgstr "Fuso Horário" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Seção do Plano de Marcação" ++ ++#~ msgid "include" ++#~ msgstr "incluir" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Extensão do Plano de Discagem" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Opções Gerais do Plano de Discagem" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Permitir transferência" ++ ++#~ msgid "Reinvite/redirect media connections" ++#~ msgstr "Reconvidar/redirecionar conexões multimídia" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Limpar variáveis globais" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "Encaminhamento do Plano de Discagem" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Conferência do Plano de Discagem" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Tempo do Plano de Discagem" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Correio de voz do Plano de Discagem" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Zonas do Plano de Discagem" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "Prefixo para adicionar aos planos de discagem correspondentes" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "Coincidir com o prefixo internacional" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Prefixo (0) para adicionar/remover para/de números internacionais" ++ ++#~ msgid "localzone" ++#~ msgstr "zona local" ++ ++#~ msgid "Match plan" ++#~ msgstr "Plano de combinação" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Conexão usada" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Mapeamentos de Tecla de Função" ++ ++#~ msgid "Attended transfer key" ++#~ msgstr "Tecla de transferência assistida" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "Tecla de transferência cega" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Tecla para Desligar a chamada" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Tecla para Estacionar a chamada" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Recurso de Estacionamento" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "Estacionamento ADSI" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "Tempo limite (seg) da transferência assistida" ++ ++#~ msgid "One touch record key" ++#~ msgstr "Tecla de gravação em um toque" ++ ++#~ msgid "Name of call context for parking" ++#~ msgstr "Nome do contexto de chamada para o estacionamento" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Arquivo de som para tocar para o chamador estacionado" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "Tempo máximo (ms) entre os dígitos para ativação de recursos" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Método para Encontrar uma Vaga de Estacionamento" ++ ++#~ msgid "parkedmusicclass" ++#~ msgstr "parkedmusicclass" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Toque o tom de cortesia para" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Habilitar Estacionamento" ++ ++#~ msgid "Extension to dial to park" ++#~ msgstr "Extensão para discar para estacionar" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Tempo de estacionamento (seg)" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "faixa de extensões para o estacionamento de chamada" ++ ++#~ msgid "Pickup extension" ++#~ msgstr "Extensão de captura" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Segundos para esperar entre os dígitos quando transferindo" ++ ++#~ msgid "sound when attended transfer is complete" ++#~ msgstr "emitir som quando a transferência assistida estiver completa" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "Emitir som quando a transferência assistida falhar" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Recarregar a Configuração de Hardware" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Método de Reinicialização" ++ ++#~ msgid "Parameter" ++#~ msgstr "Parâmetro" ++ ++#~ msgid "Option type" ++#~ msgstr "Tipo de Opção" ++ ++#~ msgid "User name" ++#~ msgstr "Nome do usuário" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Opções Gerais do Plano de Discagem" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Permitir Codificadores (codecs)" ++ ++#~ msgid "Static" ++#~ msgstr "Estático" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Proteção à Escrita" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Conferência Encontre-me" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "PIN do Administrador" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "PIN da Conferência" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Opções Gerais da Conferência Encontre-me" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Número de buffers de 20ms que serão usados" ++ ++#~ msgid "Modules" ++#~ msgstr "Módulos" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Aplicativo de Recepção de Alarmes" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Aplicativo de Autenticação" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "Garanta que o asterisk não salva o CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Verifique se o canal está disponível" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Escute em qualquer canal" ++ ++#~ msgid "Control Playback Application" ++#~ msgstr "Controlar o Aplicativo de Reprodução" ++ ++#~ msgid "Cuts up variables" ++#~ msgstr "Variáveis de Cortes" ++ ++#~ msgid "Database access functions" ++#~ msgstr "Funções de acesso ao banco de dados" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Aplicativo de Discagem" ++ ++#~ msgid "Virtual Dictation Machine Application" ++#~ msgstr "Aplicativo de Máquina de Ditado Virtual" ++ ++#~ msgid "Directed Call Pickup Support" ++#~ msgstr "Suporte a Captura de Chamadas Direcionadas" ++ ++#~ msgid "Extension Directory" ++#~ msgstr "Diretório de Extensão" ++ ++#~ msgid "DISA (Direct Inward System Access) Application" ++#~ msgstr "Aplicativo DISA (Acesso Direto ao Sistema Interior)" ++ ++#~ msgid "Dump channel variables Application" ++#~ msgstr "Descarregar Aplicativo de variáveis do canal" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Aplicativo de Eco Simples" ++ ++#~ msgid "ENUM Lookup" ++#~ msgstr "Pesquisa ENUM" ++ ++#~ msgid "Reevaluates strings" ++#~ msgstr "Reavaliar sequências de caracteres" ++ ++#~ msgid "Executes applications" ++#~ msgstr "Executa aplicativos" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "Interface de aplicativo IVR externo" ++ ++#~ msgid "Fork The CDR into 2 seperate entities" ++#~ msgstr "Bifurcar o CDR em duas entidades separadas" ++ ++#~ msgid "Get ADSI CPE ID" ++#~ msgstr "Pegar o ID do CPE ADSI" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Rotinas de Gerenciamento e Grupo" ++ ++#~ msgid "Encode and Stream via icecast and ices" ++#~ msgstr "Codificar e Transmitir através do icecast e ices" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Aplicativo de Transmissão de Imagem" ++ ++# what is this black? Seems to be truncated! ++#~ msgid "Look up Caller*ID name/number from black" ++#~ msgstr "Buscar o Identificador de chamadas/nome/número do preto" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "Buscar o Identificador de chamadas/nome/número do banco de dados" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Macros de extensão" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Um Aplicativo simples de matemática" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "Aplicativo de soma de verificação MD5" ++ ++#~ msgid "Digital Milliwatt (mu-law) Test Application" ++#~ msgstr "Aplicativo de Teste de Miliwatt (mu-law) Digital" ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Gravar uma ligação e mixar o áudio durante a gravação" ++ ++#~ msgid "Call Parking and Announce Application" ++#~ msgstr "Aplicativo de Anúncio e Estacionamento de Chamada" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Aplicativo de Reprodução Trivial" ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Requer que seja informado um número de telefone" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "Enfileiramento Real da Chamada" ++ ++#~ msgid "Random goto" ++#~ msgstr "Vá para aleatório" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Aplicativo de Leitura de Variável" ++ ++#~ msgid "Read in a file" ++#~ msgstr "Ler em um arquivo" ++ ++#~ msgid "Realtime Data Lookup/Rewrite" ++#~ msgstr "Escrita/Consulta de Dados em Tempo Real" ++ ++#~ msgid "Trivial Record Application" ++#~ msgstr "Aplicativo de Gravação Trivial" ++ ++#~ msgid "Say time" ++#~ msgstr "Dizer a hora" ++ ++#~ msgid "Send DTMF digits Application" ++#~ msgstr "Aplicativo para Enviar dígitos DTMF" ++ ++#~ msgid "Send Text Applications" ++#~ msgstr "Aplicativos para Enviar Texto" ++ ++#~ msgid "Set CallerID Application" ++#~ msgstr "Aplicativo de Definir a Identificação da Chamada" ++ ++# I guess there is something wrong with English here ++#~ msgid "CDR user field apps" ++#~ msgstr "Aplicativos do campo do usuário no CDR" ++ ++#~ msgid "load => .so ; Set CallerID Name" ++#~ msgstr "Carregar => .so ; Definir o Nome na Identificação da Chamada" ++ ++#~ msgid "load => .so ; Set CallerID Number" ++#~ msgstr "Carregar => .so ; Definir o Número na Identificação da Chamada" ++ ++#~ msgid "Set RDNIS Number" ++#~ msgstr "Definir o Número do RDNIS" ++ ++#~ msgid "Set ISDN Transfer Capability" ++#~ msgstr "Definir Capacidade de Transferência ISDN" ++ ++#~ msgid "SMS/PSTN handler" ++#~ msgstr "Tratador do SMS/PSTN" ++ ++#~ msgid "Hangs up the requested channel" ++#~ msgstr "Termina a ligação no canal requisitado" ++ ++#~ msgid "Stack Routines" ++#~ msgstr "Rotinas de Empilhamento" ++ ++#~ msgid "Generic System() application" ++#~ msgstr "Aplicativo de Sistema Genérico" ++ ++#~ msgid "Playback with Talk Detection" ++#~ msgstr "Reprodução com Detecção de Conversa" ++ ++#~ msgid "Interface Test Application" ++#~ msgstr "Aplicativo de Teste de Interface" ++ ++#~ msgid "Transfer" ++#~ msgstr "Transferir" ++ ++#~ msgid "TXTCIDName" ++#~ msgstr "TXTCIDName" ++ ++#~ msgid "Send URL Applications" ++#~ msgstr "Aplicativo para Enviar URL" ++ ++#~ msgid "Custom User Event Application" ++#~ msgstr "Aplicativo para Eventos do Usuário Personalizados" ++ ++#~ msgid "Send verbose output" ++#~ msgstr "Enviar saída detalhada" ++ ++#~ msgid "Voicemail" ++#~ msgstr "Correio de Voz" ++ ++#~ msgid "Waits until first ring after time" ++#~ msgstr "Espere até o primeiro toque após tempo" ++ ++#~ msgid "Wait For Silence Application" ++#~ msgstr "Aplicativo para Esperar Por Silêncio" ++ ++#~ msgid "While Loops and Conditional Execution" ++#~ msgstr "Laços de Repetição e Execução Condicional" ++ ++#~ msgid "Comma Separated Values CDR Backend" ++#~ msgstr "Serviço de CDR em Valores Separados por Vírgula" ++ ++#~ msgid "Customizable Comma Separated Values CDR Backend" ++#~ msgstr "Serviço de CDR em Valores Separados por Vírgula Personalizável" ++ ++#~ msgid "Asterisk Call Manager CDR Backend" ++#~ msgstr "Serviço de CDR de Gerenciamento de Chamadas Asterisk" ++ ++#~ msgid "MySQL CDR Backend" ++#~ msgstr "Serviço de CDR em MySQL" ++ ++#~ msgid "PostgreSQL CDR Backend" ++#~ msgstr "Serviço de CDR em PostgreSQL" ++ ++#~ msgid "SQLite CDR Backend" ++#~ msgstr "Serviço de CDR em SQLite" ++ ++#~ msgid "Agent Proxy Channel" ++#~ msgstr "Canal de Proxy do Agente" ++ ++#~ msgid "Option chan_iax2" ++#~ msgstr "Opção chan_iax2" ++ ++#~ msgid "Local Proxy Channel" ++#~ msgstr "Canal de Proxy Local" ++ ++#~ msgid "Session Initiation Protocol (SIP)" ++#~ msgstr "Protocolo de Iniciação de Sessão (SIP)" ++ ++#~ msgid "Adaptive Differential PCM Coder/Decoder" ++#~ msgstr "Codificador/Decodificador PCM Diferencial Adaptativo" ++ ++#~ msgid "A-law Coder/Decoder" ++#~ msgstr "Codificador/Decodificador A-law" ++ ++#~ msgid "A-law and Mulaw direct Coder/Decoder" ++#~ msgstr "Codificador/Decodificador direto A-law e Mulaw" ++ ++#~ msgid "ITU G.726-32kbps G726 Transcoder" ++#~ msgstr "Transcodificador G726 ITU G.726-32kbps" ++ ++#~ msgid "GSM/PCM16 (signed linear) Codec Translation" ++#~ msgstr "Tradutor de codificação GSM/PCM16 (linear com sinal)" ++ ++#~ msgid "Speex/PCM16 (signed linear) Codec Translator" ++#~ msgstr "Tradutor de codificação Speex/PCM16 (linear com sinal)" ++ ++#~ msgid "Mu-law Coder/Decoder" ++#~ msgstr "Codificador/Decodificador Mu-law" ++ ++#~ msgid "Sun Microsystems AU format (signed linear)" ++#~ msgstr "Formato AU Sun Microsystems (linear com sinal)" ++ ++#~ msgid "G.723.1 Simple Timestamp File Format" ++#~ msgstr "Formato de Arquivo de Selo Temporal Simples G.723.1" ++ ++#~ msgid "Raw G.726 (16/24/32/40kbps) data" ++#~ msgstr "Dado G.726 bruto (16/24/32/40kbps)" ++ ++#~ msgid "Raw G729 data" ++#~ msgstr "Dado G729 bruto" ++ ++#~ msgid "Raw GSM data" ++#~ msgstr "Dado GSM bruto" ++ ++#~ msgid "Raw h263 data" ++#~ msgstr "Dado h263 bruto" ++ ++#~ msgid "JPEG (Joint Picture Experts Group) Image" ++#~ msgstr "Imagem JPEG ((Joint Picture Experts Group)" ++ ++#~ msgid "Raw uLaw 8khz Audio support (PCM)" ++#~ msgstr "Suporte a uLaw 8khz Áudio bruto (PCM)" ++ ++#~ msgid "load => .so ; Raw aLaw 8khz PCM Audio support" ++#~ msgstr "carregar => .so ; Suporte a uLaw 8khz Áudio PCM bruto" ++ ++#~ msgid "Raw Signed Linear Audio support (SLN)" ++#~ msgstr "Suporte a Áudio Linear com Sinal (SLN)" ++ ++#~ msgid "Dialogic VOX (ADPCM) File Format" ++#~ msgstr "Formato de Arquivo Dialogic VOX (ADPCM)" ++ ++#~ msgid "Microsoft WAV format (8000hz Signed Line" ++#~ msgstr "Formato WAV da Microsoft (8000hz Linear com Sinal)" ++ ++#~ msgid "Microsoft WAV format (Proprietary GSM)" ++#~ msgstr "Formato WAV da Microsoft (GSM Proprietário) " ++ ++#~ msgid "Caller ID related dialplan functions" ++#~ msgstr "" ++#~ "Funções do plano de discagem relacionadas ao identificador da chamada" ++ ++#~ msgid "ENUM Functions" ++#~ msgstr "Funções ENUM" ++ ++#~ msgid "URI encoding / decoding functions" ++#~ msgstr "Funções de codificação / decodificação de URI" ++ ++#~ msgid "Asterisk Extension Language Compiler" ++#~ msgstr "Compilador da Linguagem de Extensão do Asterisk" ++ ++#~ msgid "Text Extension Configuration" ++#~ msgstr "Configuração da Extensão de Texto" ++ ++#~ msgid "load => .so ; Builtin dialplan functions" ++#~ msgstr "carregar => .so ; Funções de plano de discagem embutidas" ++ ++#~ msgid "Loopback Switch" ++#~ msgstr "Interruptor loopback" ++ ++#~ msgid "Realtime Switch" ++#~ msgstr "Interruptor de Tempo Real" ++ ++#~ msgid "Outgoing Spool Support" ++#~ msgstr "Suporte a bufferização da Saída" ++ ++#~ msgid "Wil Cal U (Auto Dialer)" ++#~ msgstr "Wil Cal U (Discador Automático)" ++ ++#~ msgid "MySQL Config Resource" ++#~ msgstr "Recurso de Configuração do Mysql" ++ ++#~ msgid "ODBC Config Resource" ++#~ msgstr "Recurso de Configuração do ODBC" ++ ++#~ msgid "PGSQL Module" ++#~ msgstr "Módulo do PGSQL" ++ ++#~ msgid "Cryptographic Digital Signatures" ++#~ msgstr "Assinaturas Digitais Criptográficas" ++ ++#~ msgid "Call Parking Resource" ++#~ msgstr "Recurso de Estacionamento de Chamadas" ++ ++#~ msgid "Indications Configuration" ++#~ msgstr "Configuração dos Indicadores" ++ ++#~ msgid "Call Monitoring Resource" ++#~ msgstr "Recurso de Monitoramento de Chamada" ++ ++#~ msgid "Music On Hold Resource" ++#~ msgstr "Recurso da Música de Espera" ++ ++#~ msgid "ODBC Resource" ++#~ msgstr "Recurso do ODBC" ++ ++#~ msgid "SMDI Module" ++#~ msgstr "Módulo SMDI" ++ ++#~ msgid "SNMP Module" ++#~ msgstr "Módulo SNMP" ++ ++#~ msgid "Music On Hold" ++#~ msgstr "Música de Espera" ++ ++#~ msgid "Application" ++#~ msgstr "Aplicativo" ++ ++#~ msgid "Directory of Music" ++#~ msgstr "Diretório de Música" ++ ++#~ msgid "Option mode" ++#~ msgstr "Modo da opção" ++ ++#~ msgid "Random Play" ++#~ msgstr "Toque Aleatoriamente" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "Modo DTMF" ++ ++#~ msgid "Primary domain identity for From: headers" ++#~ msgstr "Identidade do primeiro domínio para cabeçalhos De:" ++ ++#~ msgid "From user (required by many SIP providers)" ++#~ msgstr "Do usuário (necessário para muitos provedores de SIP)" ++ ++# I didn't undestand this one ++#~ msgid "Ring on incoming dialplan contexts" ++#~ msgstr "Tocar no contextos de plano de discagem recebidas" ++ ++#~ msgid "Allow Insecure for" ++#~ msgstr "Permitir Inseguro para" ++ ++#~ msgid "Mailbox for MWI" ++#~ msgstr "Caixa de Correio para MWI" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "NAT entre o telefone e o Asterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "Verifique as etiquetas nos cabeçalhos" ++ ++#~ msgid "Reply Timeout (ms) for down connection" ++#~ msgstr "Tempo Limite da Resposta (ms) para conexões desconectadas" ++ ++#~ msgid "Register connection" ++#~ msgstr "Registro da conexão" ++ ++#~ msgid "Dial own extension for mailbox" ++#~ msgstr "Discar extensão própria para a caixa de correio" ++ ++#~ msgid "Client Type" ++#~ msgstr "Tipo de Cliente" ++ ++#~ msgid "Username" ++#~ msgstr "Usuário" ++ ++#~ msgid "Section sipgeneral" ++#~ msgstr "Opções Gerais do SIP" ++ ++#~ msgid "Allow codecs" ++#~ msgstr "Permitir codificações" ++ ++#~ msgid "SIP realm" ++#~ msgstr "Domínio do SIP (realm)" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "Opções gerais do correio de voz" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "Endereço do email de origem do servidor" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "Caixas de Correio de Voz" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "O email contém anexos" ++ ++#~ msgid "Email" ++#~ msgstr "Email" ++ ++#~ msgid "Display Name" ++#~ msgstr "Nome para exibição" ++ ++#~ msgid "Password" ++#~ msgstr "Senha" ++ ++#~ msgid "zone" ++#~ msgstr "zona" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Configuração de Zona da Voz" ++ ++#~ msgid "Message Format" ++#~ msgstr "Formato da Mensagem" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/pt/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/pt/asterisk.po +new file mode 100644 +index 0000000..d1b9836 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/pt/asterisk.po +@@ -0,0 +1,150 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-26 19:03+0200\n" ++"PO-Revision-Date: 2009-05-20 11:54+0200\n" ++"Last-Translator: Jose Monteiro \n" ++"Language-Team: LANGUAGE \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Pootle 1.1.0\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Opções Gerais do Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Directorio AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Guardar em cache os ficheiros de som durante a gravação" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Nível de debug" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Desactivar alguns avisos" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Guardar o core quando houver crash" ++ ++#~ msgid "High Priority" ++#~ msgstr "Alta Prioridade" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Inicializar Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Usar temporizações internas" ++ ++#~ msgid "Log directory" ++#~ msgstr "Directorio de registos" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Maximo de chamadas permitidas" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Maximo de carga para deixar de aceitar novas chamadas" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Desactivar cores na consola" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Directorio de cache para ficheiros de som" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "O grupo sob o qual o asterisk será executado" ++ ++#~ msgid "The User to run as" ++#~ msgstr "O utilizador sob o qual o asterisk será executado" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Directorio da spool de voicemail" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Prefixar o nome de sistema à UniquID" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "" ++#~ "Construir os caminhos de transcode atraves de SLINEAR e não directamente" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Transmitir silencio SLINEAR durante a gravação de um canal" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Nivel de verbosidade" ++ ++#~ msgid "Time Zone" ++#~ msgstr "Fuso Horário" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Secção do Plano de Marcação" ++ ++#~ msgid "include" ++#~ msgstr "incluir" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Extensão do Plano de Marcação" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Opções Gerais do Plano de Marcação" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Permitir transferência" ++ ++#~ msgid "Reinvite/redirect media connections" ++#~ msgstr "Redirigir/Repetir ligações multimedia" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Limpar variaveis globais" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "Encaminhamento do Plano de Marcação" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Conferencia do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Dialplan Time" ++#~ msgstr "Conferencia do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Encaminhamento do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Secção do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Connection to use" ++#~ msgstr "Secção do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "IAX General Options" ++#~ msgstr "Opções Gerais do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Allow Codecs" ++#~ msgstr "Opções Gerais do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Section sipgeneral" ++#~ msgstr "Opções Gerais do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Allow codecs" ++#~ msgstr "Opções Gerais do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "SIP realm" ++#~ msgstr "Opções Gerais do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Voicemail general options" ++#~ msgstr "Opções Gerais do Plano de Marcação" ++ ++#, fuzzy ++#~ msgid "Voice Zone settings" ++#~ msgstr "Secção do Plano de Marcação" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/ro/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/ro/asterisk.po +new file mode 100644 +index 0000000..e271370 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/ro/asterisk.po +@@ -0,0 +1,54 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2011-10-07 00:35+0200\n" ++"Last-Translator: Daniel \n" ++"Language-Team: none\n" ++"Language: ro\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " ++"20)) ? 1 : 2);;\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Optiunile generale Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Director AGI" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Dezactiveaza cateva avertizari" ++ ++#~ msgid "High Priority" ++#~ msgstr "Prioritate inalta" ++ ++#~ msgid "Log directory" ++#~ msgstr "Director de loguri" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Incarcarea maxima de cand se refuza apeluri noi" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Dezactiveaza culorile in consola" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Ruleaza sub grupul" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Ruleaza sub utilizatorul" ++ ++#~ msgid "Time Zone" ++#~ msgstr "Fusul orar" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Permite transferul" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Goleste variabilele globale" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Conexiunea pentru folosire" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/ru/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/ru/asterisk.po +new file mode 100644 +index 0000000..acedb82 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/ru/asterisk.po +@@ -0,0 +1,515 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:36+0200\n" ++"PO-Revision-Date: 2012-04-02 15:02+0200\n" ++"Last-Translator: Kamal \n" ++"Language-Team: LANGUAGE \n" ++"Language: ru\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Общие настройки Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Каталог AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Кэшировать звуковые файлы во время записи" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Уровень отладки" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Отключить некоторые предупреждения" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Сохранять дамп ядра при фатальной ошибке" ++ ++#~ msgid "High Priority" ++#~ msgstr "Высокий приоритет" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Включить шифрование" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Использовать внутренние тайминги" ++ ++#~ msgid "Log directory" ++#~ msgstr "Каталог файлов журнала" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Максимальное разрешённое количество вызовов" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Максимальная нагрузка для запрета приёма новых вызовов" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Выключить цвета консоли" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Каталог кэша звуковых файлов" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Группа, от имени которой запускать" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Пользователь, от имени которого запускать" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Добавлять имя системы к уникальному идентификатору (UID)" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Передавать тишину в формате SLINEAR при записи канала" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Раздел правил набора" ++ ++#~ msgid "include" ++#~ msgstr "включить" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Раcширение правила набора" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Общие настройки правил набора" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Разрешить перевод" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Очистить глобальные переменные" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Правила набора для конференции" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Время правил набора" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Правила набора для голосовой почты" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Зоны для правил набора" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Префикс (0) для добавления/удаления к/из международных номеров" ++ ++#~ msgid "localzone" ++#~ msgstr "местная зона" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Использовать соединение" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Назначения функцилнальных клавиш" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "Клавиша для разрыва соединения" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "Клавиша для \"парковки\" вызова " ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Функция \"Парковка\"" ++ ++#~ msgid "One touch record key" ++#~ msgstr "Клавиша записи в одно касание" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Аудио файл, проигрываемый \"припаркованному\"" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "Максимальное время (мс) между нажатиями для активации функции" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Метод поиска слота для парковки" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Играть тон вежливости для" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "Разрешить \"Парковку\"" ++ ++#~ msgid "Extension to dial to park" ++#~ msgstr "Расширение набора для \"парковки\"" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Время \"Парковки\" (секунды)" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "Диапазон расширений для \"парковки\" вызова" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Перезагрузить конфигурацию оборудования" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "Метод перезагрузки" ++ ++#~ msgid "Parameter" ++#~ msgstr "Параметр" ++ ++#~ msgid "Option type" ++#~ msgstr "Тип параметра" ++ ++#~ msgid "User name" ++#~ msgstr "Имя пользователя" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Общие параметры IAX" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Разрешить кодеки" ++ ++#~ msgid "Static" ++#~ msgstr "Статический" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Защита от записи" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Конференция Meetme" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "PIN администратора" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "PIN совещания" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Общие параметры конференции Meetme" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Количество используемых 20 мс буферов" ++ ++#~ msgid "Modules" ++#~ msgstr "Модули" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Приложение сбора сигналов тревоги" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Приложение аутентификации" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "Убедитесь что Asterisk не сохраняет CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Проверить канал на доступность" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Слашать на любом канале" ++ ++#~ msgid "Database access functions" ++#~ msgstr "Функции доступа базы данных" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Приложение набора" ++ ++#~ msgid "DISA (Direct Inward System Access) Application" ++#~ msgstr "" ++#~ "Приложение доступа к добавочной линии путем прямого установления " ++#~ "входящего соединения (DISA)" ++ ++#~ msgid "Dump channel variables Application" ++#~ msgstr "Приложение сбора переменных канала" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Приложение эха" ++ ++#~ msgid "Executes applications" ++#~ msgstr "Выполняет приложение" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "Интерфейс внешнего IVR приложения" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Операции управления группой" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Приложение передачи изображений" ++ ++#~ msgid "Look up Caller*ID name/number from black" ++#~ msgstr "Искать имя CallerID в \"черном\" списке" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "Искать имя CallerID в локальной базе" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Макрос расширения" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Простое математическое приложение" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "Приложение MD5" ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Записать вызов и микшировать аудио во время записи" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Приложение для воспроизведения" ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Требовать номер телефона, который необходимо ввести" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "Постановка вызовов на ожидание" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Приложение чтения переменных" ++ ++#~ msgid "Read in a file" ++#~ msgstr "Читать в файл" ++ ++#~ msgid "Trivial Record Application" ++#~ msgstr "Приложения для записи" ++ ++#~ msgid "Send DTMF digits Application" ++#~ msgstr "Приложение отправки DTMF" ++ ++#~ msgid "Send Text Applications" ++#~ msgstr "Приложения отправки текста" ++ ++#~ msgid "Set CallerID Application" ++#~ msgstr "Приложение установки CallerID" ++ ++#~ msgid "Set RDNIS Number" ++#~ msgstr "Установить номер RDNIS" ++ ++#~ msgid "Set ISDN Transfer Capability" ++#~ msgstr "Установить возможности передачи ISDN " ++ ++#~ msgid "SMS/PSTN handler" ++#~ msgstr "Обработчик SMS/PSTN" ++ ++#~ msgid "Hangs up the requested channel" ++#~ msgstr "Отсоединяет запрошенный канал" ++ ++#~ msgid "Stack Routines" ++#~ msgstr "Функции стека" ++ ++#~ msgid "Generic System() application" ++#~ msgstr "Приложение System()" ++ ++#~ msgid "Playback with Talk Detection" ++#~ msgstr "Воспроизведение с обнаружением разговора" ++ ++#~ msgid "Interface Test Application" ++#~ msgstr "Приложение для тестирования интерфейса" ++ ++#~ msgid "Transfer" ++#~ msgstr "Пересылка" ++ ++#~ msgid "TXTCIDName" ++#~ msgstr "Имя TXTCID" ++ ++#~ msgid "Send URL Applications" ++#~ msgstr "Приложения отсылки URL" ++ ++#~ msgid "Custom User Event Application" ++#~ msgstr "Приложение пользовательских событий" ++ ++#~ msgid "Send verbose output" ++#~ msgstr "Отправлять подробный вывод" ++ ++#~ msgid "Voicemail" ++#~ msgstr "Голосовая почта" ++ ++#~ msgid "While Loops and Conditional Execution" ++#~ msgstr "Циклы while и условное выполнение" ++ ++#~ msgid "Asterisk Call Manager CDR Backend" ++#~ msgstr "Бэкенд CDR менеджера вызовов Asterisk" ++ ++#~ msgid "MySQL CDR Backend" ++#~ msgstr "Бэкенд MySQL CDR" ++ ++#~ msgid "PostgreSQL CDR Backend" ++#~ msgstr "Бэкенд PostgreSQL CDR" ++ ++#~ msgid "SQLite CDR Backend" ++#~ msgstr "Бэкенд SQLite CDR" ++ ++#~ msgid "Local Proxy Channel" ++#~ msgstr "Локальный прокси-канал" ++ ++#~ msgid "Session Initiation Protocol (SIP)" ++#~ msgstr "Session Initiation Protocol - протокол установления сеанса (SIP)" ++ ++#~ msgid "Adaptive Differential PCM Coder/Decoder" ++#~ msgstr "Адаптивный дифференциальный PCM кодер/декодер" ++ ++#~ msgid "A-law Coder/Decoder" ++#~ msgstr "A-law кодер/декодер" ++ ++#~ msgid "A-law and Mulaw direct Coder/Decoder" ++#~ msgstr "A-law и Mu-law прямой кодер/декодер" ++ ++#~ msgid "ITU G.726-32kbps G726 Transcoder" ++#~ msgstr "ITU G.726-32кбит/с G726 транскодер" ++ ++#~ msgid "GSM/PCM16 (signed linear) Codec Translation" ++#~ msgstr "Транслятор кодека GSM/PCM16 (знаковый линейный)" ++ ++#~ msgid "Speex/PCM16 (signed linear) Codec Translator" ++#~ msgstr "Транслятор кодека Speex/PCM16 (знаковый линейный)" ++ ++#~ msgid "Mu-law Coder/Decoder" ++#~ msgstr "Mu-law кодер/декодер" ++ ++#~ msgid "Sun Microsystems AU format (signed linear)" ++#~ msgstr "Формат Sun Microsystems AU (знаковый линейный)" ++ ++#~ msgid "Raw G.726 (16/24/32/40kbps) data" ++#~ msgstr "Необработанные данные G.726 (16/24/32/40кбит/с)" ++ ++#~ msgid "Raw G729 data" ++#~ msgstr "Необработанные данные G729" ++ ++#~ msgid "Raw GSM data" ++#~ msgstr "Необработанные данные GSM" ++ ++#~ msgid "Raw h263 data" ++#~ msgstr "Необработанные данные h263" ++ ++#~ msgid "JPEG (Joint Picture Experts Group) Image" ++#~ msgstr "Изображение JPEG (Joint Picture Experts Group) " ++ ++#~ msgid "Dialogic VOX (ADPCM) File Format" ++#~ msgstr "Формат Dialogic VOX (ADPCM)" ++ ++#~ msgid "Microsoft WAV format (8000hz Signed Line" ++#~ msgstr "Формат Microsoft WAV (800Гц, линейный знаковый)" ++ ++#~ msgid "Microsoft WAV format (Proprietary GSM)" ++#~ msgstr "Формат Microsoft WAV (проприетарный GSM)" ++ ++#~ msgid "Caller ID related dialplan functions" ++#~ msgstr "Функции правил набора Caller ID" ++ ++#~ msgid "ENUM Functions" ++#~ msgstr "Функции ENUM" ++ ++#~ msgid "URI encoding / decoding functions" ++#~ msgstr "Функции кодирования/декодирования URI" ++ ++#~ msgid "Asterisk Extension Language Compiler" ++#~ msgstr "Компилятор языка расширений Asterisk" ++ ++#~ msgid "Text Extension Configuration" ++#~ msgstr "Настройка текстового расширения" ++ ++#~ msgid "Wil Cal U (Auto Dialer)" ++#~ msgstr "Позвоню тебе (Wil Cal U, автодозвонщик)" ++ ++#~ msgid "MySQL Config Resource" ++#~ msgstr "Ресурс конфигурации MySQL" ++ ++#~ msgid "ODBC Config Resource" ++#~ msgstr "Ресурс конфигурации ODBC" ++ ++#~ msgid "PGSQL Module" ++#~ msgstr "PGSQL модуль" ++ ++#~ msgid "Cryptographic Digital Signatures" ++#~ msgstr "Цифровые подписи" ++ ++#~ msgid "Call Parking Resource" ++#~ msgstr "Ресурс \"парковки\"" ++ ++#~ msgid "Indications Configuration" ++#~ msgstr "Конфигурация индикаций" ++ ++#~ msgid "Call Monitoring Resource" ++#~ msgstr "Ресурс мониторинга вызова" ++ ++#~ msgid "ODBC Resource" ++#~ msgstr "Ресурс ODBC" ++ ++#~ msgid "SMDI Module" ++#~ msgstr "Модуль SMDI" ++ ++#~ msgid "SNMP Module" ++#~ msgstr "Модуль SNMP" ++ ++#~ msgid "Music On Hold" ++#~ msgstr "Музыка при ожидании" ++ ++#~ msgid "Application" ++#~ msgstr "Приложение" ++ ++#~ msgid "Directory of Music" ++#~ msgstr "Директория музыки" ++ ++#~ msgid "Random Play" ++#~ msgstr "Воспроизведение в случайном порядке" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "DTMF режим" ++ ++#~ msgid "From user (required by many SIP providers)" ++#~ msgstr "From user (от пользователя, требуется многими SIP-провайдерами)" ++ ++#~ msgid "Allow Insecure for" ++#~ msgstr "Разрешить небезопасные для" ++ ++#~ msgid "Mailbox for MWI" ++#~ msgstr "Почтовый ящик для MWI" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "NAT между телефоном и Asterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "Проверять метки в заголовках" ++ ++#~ msgid "Register connection" ++#~ msgstr "Зарегистрировать соединение" ++ ++#~ msgid "Client Type" ++#~ msgstr "Тип клиента" ++ ++#~ msgid "Username" ++#~ msgstr "Имя пользователя" ++ ++#~ msgid "Section sipgeneral" ++#~ msgstr "Общие SIP" ++ ++#~ msgid "SIP realm" ++#~ msgstr "SIP realm" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "Общие настройки голосовой почты" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "От адреса эл. почты сервера" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "Ящики голосовой почты" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "Письмо содержит вложение" ++ ++#~ msgid "Email" ++#~ msgstr "Эл. почта" ++ ++#~ msgid "Display Name" ++#~ msgstr "Отображаемое имя" ++ ++#~ msgid "Password" ++#~ msgstr "Пароль" ++ ++#~ msgid "zone" ++#~ msgstr "зона" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Настройки голосовой зоны" ++ ++#~ msgid "Message Format" ++#~ msgstr "Формат сообщения" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/sk/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/sk/asterisk.po +new file mode 100644 +index 0000000..e69de29 +diff --git a/feeds/luci/applications/luci-app-asterisk/po/sv/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/sv/asterisk.po +new file mode 100644 +index 0000000..e69de29 +diff --git a/feeds/luci/applications/luci-app-asterisk/po/templates/asterisk.pot b/feeds/luci/applications/luci-app-asterisk/po/templates/asterisk.pot +new file mode 100644 +index 0000000..e69de29 +diff --git a/feeds/luci/applications/luci-app-asterisk/po/tr/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/tr/asterisk.po +new file mode 100644 +index 0000000..c8b4e58 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/tr/asterisk.po +@@ -0,0 +1,12 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"Language: \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/uk/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/uk/asterisk.po +new file mode 100644 +index 0000000..d6dd63e +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/uk/asterisk.po +@@ -0,0 +1,79 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-03-21 14:22+0200\n" ++"Last-Translator: Anonymous Pootle User\n" ++"Language-Team: none\n" ++"Language: uk\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Головні налаштування Asterisk" ++ ++#~ msgid "AGI directory" ++#~ msgstr "AGI тека " ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Кешувати файли записів поки йде запис" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Рівень налагоджування" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Вимкнути деякі попередження" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Зберегти дамп ядра в разі фатальної помилки" ++ ++#~ msgid "High Priority" ++#~ msgstr "Високий пріоритет" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Ініціалізувати шифрування" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Використовувати внутрішні таймінги" ++ ++#~ msgid "Log directory" ++#~ msgstr "Тека з журналом" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Максимальна кількість дозволених дзвінків" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Максимальне навантаження, при якому зупиняти прийом дзвінків" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Вимкнути кольори в консолі" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Тека з кешованими звуковими файлами" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Запустити з правами Групи" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Запустити з правами Користувача" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Тека з голосовою поштою" ++ ++#, fuzzy ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Префікс Uniquid з назвою системи " ++ ++#~ msgid "Time Zone" ++#~ msgstr "Часовий пояс" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Дозволити переадресацію" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Видалити глобальні змінні" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/vi/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/vi/asterisk.po +new file mode 100644 +index 0000000..d1cc6b2 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/vi/asterisk.po +@@ -0,0 +1,680 @@ ++# asterisk.pot ++# generated from ./applications/luci-asterisk/luasrc/i18n/asterisk.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-08-16 06:58+0200\n" ++"PO-Revision-Date: 2009-08-16 08:36+0200\n" ++"Last-Translator: Hong Phuc Dang \n" ++"Language-Team: LANGUAGE \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Pootle 1.1.0\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Asterisk những tùy chọn căn bản" ++ ++#~ msgid "AGI directory" ++#~ msgstr "Thư mục AGI" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "Cache ghi lại tập tin âm thanh trong suốt qua trình recording" ++ ++#~ msgid "Debug Level" ++#~ msgstr "Debug Level" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "Vô hiệu hóa một số cảnh báo" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "Dump core on crash" ++ ++#~ msgid "High Priority" ++#~ msgstr "High Priority" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "Initialise Crypto" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "Sử dụng thời gian nội bộ" ++ ++#~ msgid "Log directory" ++#~ msgstr "Thư mục log" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "Số lượng cuộc gọi tối đa cho phép" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "Mức độ tải tối đa để ngừng thu nhận cuộc gọi mới" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "Vô hiệu hóa bản điều khiển màu sắc" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "Thư mục sound files cache" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "Nhóm vận hành như" ++ ++#~ msgid "The User to run as" ++#~ msgstr "Người sử dụng vận hành như" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "Thư mục Voicemail Spool " ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "Tiền tố UniquID với tên hệ thống" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "Xây dựng đừng dẫn transcode via SLINEAR, không trực tiếp" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "Truyền SLINEAR silence trong khi recording một channel" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "Verbose Level" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "Section dialplan" ++ ++#~ msgid "include" ++#~ msgstr "bao gồm" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "Dialplan Extension" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "Dialplan tùy chọn tổng quát" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "Cho phép chuyển đổi" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "Xóa global vars" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "Dialplan Goto" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "Dialplan Conference" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "Dialplan Time" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "Dialplan Voicemail" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "Dial Zones cho Dialplan" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "Tiền tố để thêm vào matching dialplans" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "Match tiền tố quốc tê" ++ ++#~ msgid "Prefix (0) to add/remove to/from international numbers" ++#~ msgstr "Tiền tố để thêm vào/ bỏ ra/ từ số gọi quốc tế" ++ ++#~ msgid "localzone" ++#~ msgstr "vùng địa phương" ++ ++#~ msgid "Match plan" ++#~ msgstr "Match plan" ++ ++#~ msgid "Connection to use" ++#~ msgstr "Kết nối sử dụng" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "Bản đồ phím tính năng" ++ ++#~ msgid "Attended transfer key" ++#~ msgstr "Attended transfer key" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "phím chuyển đổi ẩn" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "phím để vô hiệu hóa cuộc gọi" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "phím để định vị cuộc gọi" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "Tính năng định vị" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "định vị ADSI" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "Attended transfer timeout (sec)" ++ ++#~ msgid "One touch record key" ++#~ msgstr "Phím thu chạm một lần" ++ ++#~ msgid "Name of call context for parking" ++#~ msgstr "Tên của call context cho parking" ++ ++#~ msgid "Sound file to play to parked caller" ++#~ msgstr "Tập tin âm thanh để play to parked caller" ++ ++#~ msgid "Max time (ms) between digits for feature activation" ++#~ msgstr "Thời gian tối đa (ms) giữa các digits cho feature activation" ++ ++#~ msgid "Method to Find Parking slot" ++#~ msgstr "Phương pháp tìm điểm định vị" ++ ++#~ msgid "parkedmusicclass" ++#~ msgstr "parkedmusicclass" ++ ++#~ msgid "Play courtesy tone to" ++#~ msgstr "Play courtesy tone để" ++ ++#~ msgid "Enable Parking" ++#~ msgstr "cho phép định vị" ++ ++#~ msgid "Extension to dial to park" ++#~ msgstr "nhanh số để gọi để định vị" ++ ++#~ msgid "Parking time (secs)" ++#~ msgstr "Thời gian định vị" ++ ++#~ msgid "Range of extensions for call parking" ++#~ msgstr "Vùng của đuôi mở rộng cho call parking" ++ ++#~ msgid "Pickup extension" ++#~ msgstr "Pickup extension" ++ ++#~ msgid "Seconds to wait bewteen digits when transferring" ++#~ msgstr "Thời gian chờ giữa những chữ số khi chuyển đổi" ++ ++#~ msgid "sound when attended transfer is complete" ++#~ msgstr "âm thanh khi chuyển đổi hoàn tất" ++ ++#~ msgid "Sound when attended transfer fails" ++#~ msgstr "âm thanh khi chuyển đổi không thành công" ++ ++#~ msgid "Reload Hardware Config" ++#~ msgstr "Tải lại cấu hình phần cứng" ++ ++#~ msgid "Reboot Method" ++#~ msgstr "phương pháp khởi động lại" ++ ++#~ msgid "Parameter" ++#~ msgstr "Tham số" ++ ++#~ msgid "Option type" ++#~ msgstr "Lựa chọn" ++ ++#~ msgid "User name" ++#~ msgstr "Tên người dùng" ++ ++#~ msgid "IAX General Options" ++#~ msgstr "Những lựa chọn tổng quát IAX" ++ ++#~ msgid "Allow Codecs" ++#~ msgstr "Cho phép Codecs" ++ ++#~ msgid "Static" ++#~ msgstr "Tĩnh" ++ ++#~ msgid "Write Protect" ++#~ msgstr "Viết bảo vệ" ++ ++#~ msgid "Meetme Conference" ++#~ msgstr "Gặp mặt thảo luận" ++ ++#~ msgid "Admin PIN" ++#~ msgstr "PIN quản trị" ++ ++#~ msgid "Meeting PIN" ++#~ msgstr "PIN cuộc gặp" ++ ++#~ msgid "Meetme Conference General Options" ++#~ msgstr "Lựu chọn chung về thảo luận trực tiếp" ++ ++#~ msgid "Number of 20ms audio buffers to be used" ++#~ msgstr "Số của 20ms audio buffers để được dùng" ++ ++#~ msgid "Modules" ++#~ msgstr "Modules" ++ ++#~ msgid "Alarm Receiver Application" ++#~ msgstr "Ứng dụng nhận báo thức" ++ ++#~ msgid "Authentication Application" ++#~ msgstr "Ứng dụng xác thực" ++ ++#~ msgid "Make sure asterisk doesnt save CDR" ++#~ msgstr "Bảo đảm asterisk không lưu CDR" ++ ++#~ msgid "Check if channel is available" ++#~ msgstr "Kiểm tra xem nếu kênh đã có sẵn" ++ ++#~ msgid "Listen in on any channel" ++#~ msgstr "Nghe trên bất kỳ kênh nào" ++ ++#~ msgid "Control Playback Application" ++#~ msgstr "Điều khiển ứng dụng phát lại" ++ ++#~ msgid "Cuts up variables" ++#~ msgstr "Cuts up variables" ++ ++#~ msgid "Database access functions" ++#~ msgstr "Chức năng truy cập cơ sở dữ liệu" ++ ++#~ msgid "Dialing Application" ++#~ msgstr "Ứng dụng quay số" ++ ++#~ msgid "Virtual Dictation Machine Application" ++#~ msgstr "Ứng dụng virtual Dictation Machine " ++ ++#~ msgid "Directed Call Pickup Support" ++#~ msgstr "Directed hỗ trợ call pickup" ++ ++#~ msgid "Extension Directory" ++#~ msgstr "Danh bạ nhánh số" ++ ++#~ msgid "DISA (Direct Inward System Access) Application" ++#~ msgstr "Ứng dụng DISA (Direct Inward System Access) " ++ ++#~ msgid "Dump channel variables Application" ++#~ msgstr "Dump channel variables Application" ++ ++#~ msgid "Simple Echo Application" ++#~ msgstr "Ứng dụng Echo đơn giản" ++ ++#~ msgid "ENUM Lookup" ++#~ msgstr "ENUM tra cứu" ++ ++#~ msgid "Reevaluates strings" ++#~ msgstr "Đánh giá lại strings" ++ ++#~ msgid "Executes applications" ++#~ msgstr "thực thi ứng dụng" ++ ++#~ msgid "External IVR application interface" ++#~ msgstr "Ứng dụng giao diện bên ngoài IVR" ++ ++#~ msgid "Fork The CDR into 2 seperate entities" ++#~ msgstr "Fork The CDR into 2 nhân riêng biệt" ++ ++#~ msgid "Get ADSI CPE ID" ++#~ msgstr "Lấy ADSI CPE ID" ++ ++#~ msgid "Group Management Routines" ++#~ msgstr "Group Management Routines" ++ ++#~ msgid "Encode and Stream via icecast and ices" ++#~ msgstr "Encode và Stream via icecast và ices" ++ ++#~ msgid "Image Transmission Application" ++#~ msgstr "Ứng dụng truyền hình ảnh" ++ ++#~ msgid "Look up Caller*ID name/number from black" ++#~ msgstr "Tra cứu tên/số của người gọi" ++ ++#~ msgid "Look up CallerID Name from local databas" ++#~ msgstr "Tra cứu tên người gọi từ cơ sở dữ liệu địa phương" ++ ++#~ msgid "Extension Macros" ++#~ msgstr "Nhánh số Macro" ++ ++#~ msgid "A simple math Application" ++#~ msgstr "Ứng dụng tính toán đơn giản" ++ ++#~ msgid "MD5 checksum Application" ++#~ msgstr "Ứng dụng MD5 checksum " ++ ++#~ msgid "Digital Milliwatt (mu-law) Test Application" ++#~ msgstr "Ứng dụng kiểm tra Digital Milliwatt (mu-law) " ++ ++#~ msgid "Record a call and mix the audio during the recording" ++#~ msgstr "Thu âm cuộc gọi và phối âm trong khi thu" ++ ++#~ msgid "Call Parking and Announce Application" ++#~ msgstr "Định vị cuộc gọi và ứng dụng thông báo" ++ ++#~ msgid "Trivial Playback Application" ++#~ msgstr "Ứng dụng trivial Playback " ++ ++#~ msgid "Require phone number to be entered" ++#~ msgstr "Yêu cầu nhập số điện thoại" ++ ++#~ msgid "True Call Queueing" ++#~ msgstr "True Call Queueing" ++ ++#~ msgid "Random goto" ++#~ msgstr "Random goto" ++ ++#~ msgid "Read Variable Application" ++#~ msgstr "Ứng dụng đọc variable " ++ ++#~ msgid "Read in a file" ++#~ msgstr "Đọc trong một tập tin" ++ ++#~ msgid "Realtime Data Lookup/Rewrite" ++#~ msgstr "Tra cứu dữ liệu đúng lúc/ Viết lại" ++ ++#~ msgid "Trivial Record Application" ++#~ msgstr "Ứng dụng trivial record" ++ ++#~ msgid "Say time" ++#~ msgstr "Nói thời gian" ++ ++#~ msgid "Send DTMF digits Application" ++#~ msgstr "Ứng dụng gửi những chữ số DTMF" ++ ++#~ msgid "Send Text Applications" ++#~ msgstr "Gửi ứng dụng tin nhắn" ++ ++#~ msgid "Set CallerID Application" ++#~ msgstr "Ứng dụng cài đặt định dạng cuộc gọi" ++ ++#~ msgid "CDR user field apps" ++#~ msgstr "CDR user field apps" ++ ++#~ msgid "load => .so ; Set CallerID Name" ++#~ msgstr "load =&gt; .so ; Đặt tên CallerID " ++ ++#~ msgid "load => .so ; Set CallerID Number" ++#~ msgstr "load =&gt; .so ; Đặt số CallerID " ++ ++#~ msgid "Set RDNIS Number" ++#~ msgstr "Cài đặt số RDNIS" ++ ++#~ msgid "Set ISDN Transfer Capability" ++#~ msgstr "Cài đặt công suất truyền tải ISDN" ++ ++#~ msgid "SMS/PSTN handler" ++#~ msgstr "SMS/PSTN handler" ++ ++#~ msgid "Hangs up the requested channel" ++#~ msgstr "Bãi bỏ kênh yêu cầu" ++ ++#~ msgid "Stack Routines" ++#~ msgstr "Ngăn xếp Routines" ++ ++#~ msgid "Generic System() application" ++#~ msgstr "Ứng dụng Genetic System" ++ ++#~ msgid "Playback with Talk Detection" ++#~ msgstr "Playback với bộ phát hiện tiếng nói" ++ ++#~ msgid "Interface Test Application" ++#~ msgstr "Ứng dụng kiểm tra giao diện" ++ ++#~ msgid "Transfer" ++#~ msgstr "truyền tải" ++ ++#~ msgid "TXTCIDName" ++#~ msgstr "TXTCIDName" ++ ++#~ msgid "Send URL Applications" ++#~ msgstr "Gửi những ứng dụng URL" ++ ++#~ msgid "Custom User Event Application" ++#~ msgstr "Ứng dụng Custom User Event " ++ ++#~ msgid "Send verbose output" ++#~ msgstr "Gửi verbose output" ++ ++#~ msgid "Voicemail" ++#~ msgstr "Thư thoại" ++ ++#~ msgid "Waits until first ring after time" ++#~ msgstr "Đợi tới tiếng ring đầu tiên sau khi" ++ ++#~ msgid "Wait For Silence Application" ++#~ msgstr "Đợi ứng dụng im lặng" ++ ++#~ msgid "While Loops and Conditional Execution" ++#~ msgstr "Trong khi Loops và Conditional Execution" ++ ++#~ msgid "Comma Separated Values CDR Backend" ++#~ msgstr "Comma Separated Values CDR Backend" ++ ++#~ msgid "Customizable Comma Separated Values CDR Backend" ++#~ msgstr "Tùy chỉnh Comma Separated Values CDR Backend" ++ ++#~ msgid "Asterisk Call Manager CDR Backend" ++#~ msgstr "Asterisk Call Manager CDR Backend" ++ ++#~ msgid "MySQL CDR Backend" ++#~ msgstr "MySQL CDR Backend" ++ ++#~ msgid "PostgreSQL CDR Backend" ++#~ msgstr "PostgreSQL CDR Backend" ++ ++#~ msgid "SQLite CDR Backend" ++#~ msgstr "SQLite CDR Backend" ++ ++#~ msgid "Agent Proxy Channel" ++#~ msgstr "Agent Proxy Channel" ++ ++#~ msgid "Option chan_iax2" ++#~ msgstr "Tùy chọn chan_iax2" ++ ++#~ msgid "Local Proxy Channel" ++#~ msgstr "Local Proxy Channel" ++ ++#~ msgid "Session Initiation Protocol (SIP)" ++#~ msgstr "Session Initiation Protocol (SIP)" ++ ++#~ msgid "Adaptive Differential PCM Coder/Decoder" ++#~ msgstr "Adaptive Differential PCM Coder/Decoder" ++ ++#~ msgid "A-law Coder/Decoder" ++#~ msgstr "A-law Coder/Decoder" ++ ++#~ msgid "A-law and Mulaw direct Coder/Decoder" ++#~ msgstr "A-law and Mulaw direct Coder/Decoder" ++ ++#~ msgid "ITU G.726-32kbps G726 Transcoder" ++#~ msgstr "ITU G.726-32kbps G726 Transcoder" ++ ++#~ msgid "GSM/PCM16 (signed linear) Codec Translation" ++#~ msgstr "GSM/PCM16 (signed linear) Codec Translation" ++ ++#~ msgid "Speex/PCM16 (signed linear) Codec Translator" ++#~ msgstr "Speex/PCM16 (signed linear) Codec Translator" ++ ++#~ msgid "Mu-law Coder/Decoder" ++#~ msgstr "Mu-law Coder/Decoder" ++ ++#~ msgid "Sun Microsystems AU format (signed linear)" ++#~ msgstr "Sun Microsystems AU format (signed linear)" ++ ++#~ msgid "G.723.1 Simple Timestamp File Format" ++#~ msgstr "G.723.1 Simple Timestamp File Format" ++ ++#~ msgid "Raw G.726 (16/24/32/40kbps) data" ++#~ msgstr "Raw G.726 (16/24/32/40kbps) data" ++ ++#~ msgid "Raw G729 data" ++#~ msgstr "Raw G729 data" ++ ++#~ msgid "Raw GSM data" ++#~ msgstr "Raw GSM data" ++ ++#~ msgid "Raw h263 data" ++#~ msgstr "Raw h263 data" ++ ++#~ msgid "JPEG (Joint Picture Experts Group) Image" ++#~ msgstr "JPEG (Joint Picture Experts Group) Image" ++ ++#~ msgid "Raw uLaw 8khz Audio support (PCM)" ++#~ msgstr "Raw uLaw 8khz Audio support (PCM)" ++ ++#~ msgid "load => .so ; Raw aLaw 8khz PCM Audio support" ++#~ msgstr "load =&gt; .so ; Raw aLaw 8khz PCM Audio support" ++ ++#~ msgid "Raw Signed Linear Audio support (SLN)" ++#~ msgstr "Raw Signed Linear Audio support (SLN)" ++ ++#~ msgid "Dialogic VOX (ADPCM) File Format" ++#~ msgstr "Dialogic VOX (ADPCM) File Format" ++ ++#~ msgid "Microsoft WAV format (8000hz Signed Line" ++#~ msgstr "Microsoft WAV format (8000hz Signed Line" ++ ++#~ msgid "Microsoft WAV format (Proprietary GSM)" ++#~ msgstr "Microsoft WAV format (Proprietary GSM)" ++ ++#~ msgid "Caller ID related dialplan functions" ++#~ msgstr "Caller ID liên quan đến chức năng dialplan " ++ ++#~ msgid "ENUM Functions" ++#~ msgstr "chức năng ENUM" ++ ++#~ msgid "URI encoding / decoding functions" ++#~ msgstr "Chức năng URI encoding / decoding " ++ ++#~ msgid "Asterisk Extension Language Compiler" ++#~ msgstr "Asterisk Extension Language Compiler" ++ ++#~ msgid "Text Extension Configuration" ++#~ msgstr "Cấu hình Text Extension " ++ ++#~ msgid "load => .so ; Builtin dialplan functions" ++#~ msgstr "load =&gt; .so ; chức năng Builtin dialplan " ++ ++#~ msgid "Loopback Switch" ++#~ msgstr "Loopback Switch" ++ ++#~ msgid "Realtime Switch" ++#~ msgstr "Realtime Switch" ++ ++#~ msgid "Outgoing Spool Support" ++#~ msgstr "Hỗ trợ outgoing spool" ++ ++#~ msgid "Wil Cal U (Auto Dialer)" ++#~ msgstr "Wil Cal U (Auto Dialer)" ++ ++#~ msgid "MySQL Config Resource" ++#~ msgstr "MySQL Config Resource" ++ ++#~ msgid "ODBC Config Resource" ++#~ msgstr "ODBC Config Resource" ++ ++#~ msgid "PGSQL Module" ++#~ msgstr "PGSQL Module" ++ ++#~ msgid "Cryptographic Digital Signatures" ++#~ msgstr "Cryptographic Digital Signatures" ++ ++#~ msgid "Call Parking Resource" ++#~ msgstr "Call Parking Resource" ++ ++#~ msgid "Indications Configuration" ++#~ msgstr "Cấu hình indications" ++ ++#~ msgid "Call Monitoring Resource" ++#~ msgstr "Call Monitoring Resource" ++ ++#~ msgid "Music On Hold Resource" ++#~ msgstr "Music On Hold Resource" ++ ++#~ msgid "ODBC Resource" ++#~ msgstr "ODBC Resource" ++ ++#~ msgid "SMDI Module" ++#~ msgstr "SMDI Module" ++ ++#~ msgid "SNMP Module" ++#~ msgstr "SNMP Module" ++ ++#~ msgid "Music On Hold" ++#~ msgstr "Music On Hold" ++ ++#~ msgid "Application" ++#~ msgstr "Ứng dụng" ++ ++#~ msgid "Directory of Music" ++#~ msgstr "Thư mục music" ++ ++#~ msgid "Option mode" ++#~ msgstr "Chế độ tùy chọn" ++ ++#~ msgid "Random Play" ++#~ msgstr "Random Play" ++ ++#~ msgid "DTMF mode" ++#~ msgstr "chế độ DTMF" ++ ++#~ msgid "Primary domain identity for From: headers" ++#~ msgstr "Nhận dạng primary domain cho From: headers" ++ ++#~ msgid "From user (required by many SIP providers)" ++#~ msgstr "Từ user (yêu cầu bởi nhiều nhà cung cấp SIP)" ++ ++#~ msgid "Ring on incoming dialplan contexts" ++#~ msgstr "Ring on incoming dialplan contexts" ++ ++#~ msgid "Allow Insecure for" ++#~ msgstr "Cho phép không an toàn cho" ++ ++#~ msgid "Mailbox for MWI" ++#~ msgstr "Hộp thư cho MWI" ++ ++#~ msgid "NAT between phone and Asterisk" ++#~ msgstr "NAT giữa điện thoại và Asterisk" ++ ++#~ msgid "Check tags in headers" ++#~ msgstr "Kiểm tra tags trong headers" ++ ++#~ msgid "Reply Timeout (ms) for down connection" ++#~ msgstr "Trả lời Timeout (ms) cho down kết nối" ++ ++#~ msgid "Register connection" ++#~ msgstr "Đăng ký kết nối" ++ ++#~ msgid "Dial own extension for mailbox" ++#~ msgstr "Gọi nhánh số cho hộp thư" ++ ++#~ msgid "Client Type" ++#~ msgstr "Loại Client" ++ ++#~ msgid "Username" ++#~ msgstr "Username" ++ ++#~ msgid "Section sipgeneral" ++#~ msgstr "Section sipgeneral" ++ ++#~ msgid "Allow codecs" ++#~ msgstr "Cho phép Codecs" ++ ++#~ msgid "SIP realm" ++#~ msgstr "SIP realm" ++ ++#~ msgid "Voicemail general options" ++#~ msgstr "Thư thoại tùy chọn tổng quát" ++ ++#~ msgid "From Email address of server" ++#~ msgstr "Từ địa chỉ email của server" ++ ++#~ msgid "Voice Mail boxes" ++#~ msgstr "Hộp thư thoại" ++ ++#~ msgid "Email contains attachment" ++#~ msgstr "Email bao gồm attachment" ++ ++#~ msgid "Email" ++#~ msgstr "Email" ++ ++#~ msgid "Display Name" ++#~ msgstr "Tên display" ++ ++#~ msgid "Password" ++#~ msgstr "Mật khẩu" ++ ++#~ msgid "zone" ++#~ msgstr "zone" ++ ++#~ msgid "Voice Zone settings" ++#~ msgstr "Cài đặt voice zone" ++ ++#~ msgid "Message Format" ++#~ msgstr "Message Format" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/zh-cn/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/zh-cn/asterisk.po +new file mode 100644 +index 0000000..9ef2f1f +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/zh-cn/asterisk.po +@@ -0,0 +1,171 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:40+0200\n" ++"PO-Revision-Date: 2012-04-02 19:34+0200\n" ++"Last-Translator: Anonymous Pootle User\n" ++"Language-Team: LANGUAGE \n" ++"Language: zh_CN\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++#~ msgid "Asterisk General Options" ++#~ msgstr "Asterisk 基本选项" ++ ++# test ++#~ msgid "AGI directory" ++#~ msgstr "AGI 目录" ++ ++#~ msgid "Cache recorded sound files during recording" ++#~ msgstr "录音时缓存录音文件" ++ ++#~ msgid "Debug Level" ++#~ msgstr "调试级别" ++ ++#~ msgid "Disable some warnings" ++#~ msgstr "屏蔽部分警告" ++ ++#~ msgid "Dump core on crash" ++#~ msgstr "系统崩溃时记录错误信息" ++ ++#~ msgid "High Priority" ++#~ msgstr "高优先级" ++ ++#~ msgid "Initialise Crypto" ++#~ msgstr "初始化加密" ++ ++#~ msgid "Use Internal Timing" ++#~ msgstr "使用内部计时器" ++ ++#~ msgid "Log directory" ++#~ msgstr "日志目录" ++ ++#~ msgid "Maximum number of calls allowed" ++#~ msgstr "最大允许呼叫数" ++ ++#~ msgid "Maximum load to stop accepting new calls" ++#~ msgstr "允许接受新呼叫的最大负载" ++ ++#~ msgid "Disable console colors" ++#~ msgstr "禁用控制台色彩" ++ ++#~ msgid "Sound files Cache directory" ++#~ msgstr "音效文件缓存目录" ++ ++#~ msgid "The Group to run as" ++#~ msgstr "以此“组”权限运行" ++ ++#~ msgid "The User to run as" ++#~ msgstr "以此“用户”身份运行" ++ ++#~ msgid "Voicemail Spool directory" ++#~ msgstr "语音邮件缓存目录" ++ ++#~ msgid "Prefix UniquID with system name" ++#~ msgstr "UniquID前加系统名做前缀" ++ ++#~ msgid "Build transcode paths via SLINEAR, not directly" ++#~ msgstr "由SLINEAR间接建立转码路径" ++ ++#~ msgid "Transmit SLINEAR silence while recording a channel" ++#~ msgstr "对频道录音时传送SLINEAR静默" ++ ++#~ msgid "Verbose Level" ++#~ msgstr "详细级别" ++ ++#~ msgid "Time Zone" ++#~ msgstr "时区" ++ ++#~ msgid "Section dialplan" ++#~ msgstr "段内拨号计划" ++ ++#~ msgid "include" ++#~ msgstr "包含" ++ ++#~ msgid "Dialplan Extension" ++#~ msgstr "拨号计划 扩展" ++ ++#~ msgid "Dialplan General Options" ++#~ msgstr "拨号计划 基本参数" ++ ++#~ msgid "Allow transfer" ++#~ msgstr "允许 呼叫转移" ++ ++#~ msgid "Clear global vars" ++#~ msgstr "清除全局变量" ++ ++#~ msgid "Dialplan Goto" ++#~ msgstr "拨号计划至" ++ ++#~ msgid "Dialplan Conference" ++#~ msgstr "会议拨号计划" ++ ++#~ msgid "Dialplan Time" ++#~ msgstr "时间拨号计划" ++ ++#~ msgid "Dialplan Voicemail" ++#~ msgstr "语音信箱拨号计划" ++ ++#~ msgid "Dial Zones for Dialplan" ++#~ msgstr "适用拨号计划的拨号区域" ++ ++#~ msgid "Prefix to add matching dialplans" ++#~ msgstr "用于匹配拨号计划的前缀" ++ ++#~ msgid "Match International prefix" ++#~ msgstr "匹配的国际前缀" ++ ++#~ msgid "localzone" ++#~ msgstr "本地区域" ++ ++#~ msgid "Match plan" ++#~ msgstr "匹配计划" ++ ++#~ msgid "Connection to use" ++#~ msgstr "使用连接" ++ ++#~ msgid "Feature Key maps" ++#~ msgstr "特殊键映射" ++ ++#~ msgid "Attended transfer key" ++#~ msgstr "加入传输键" ++ ++#~ msgid "Blind transfer key" ++#~ msgstr "屏蔽传输键" ++ ++#~ msgid "Key to Disconnect call" ++#~ msgstr "结束呼叫键" ++ ++#~ msgid "Key to Park call" ++#~ msgstr "呼叫驻留键" ++ ++#~ msgid "Parking Feature" ++#~ msgstr "驻留特性" ++ ++#~ msgid "ADSI Park" ++#~ msgstr "ADSI驻留" ++ ++#~ msgid "Attended transfer timeout (sec)" ++#~ msgstr "加入传输超时(秒)" ++ ++#~ msgid "One touch record key" ++#~ msgstr "一键录制" ++ ++#~ msgid "Email" ++#~ msgstr "Email" ++ ++#~ msgid "Display Name" ++#~ msgstr "显示名字" ++ ++#~ msgid "Password" ++#~ msgstr "密码" ++ ++#~ msgid "zone" ++#~ msgstr "区" ++ ++#~ msgid "Message Format" ++#~ msgstr "消息格式" +diff --git a/feeds/luci/applications/luci-app-asterisk/po/zh-tw/asterisk.po b/feeds/luci/applications/luci-app-asterisk/po/zh-tw/asterisk.po +new file mode 100644 +index 0000000..c7eef9d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/po/zh-tw/asterisk.po +@@ -0,0 +1,13 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2013-08-06 23:52+0200\n" ++"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" ++"Last-Translator: FULL NAME \n" ++"Language-Team: LANGUAGE \n" ++"Language: \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=utf-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Translate Toolkit 1.9.0\n" +diff --git a/feeds/luci/applications/luci-app-asterisk/root/etc/config/asterisk b/feeds/luci/applications/luci-app-asterisk/root/etc/config/asterisk +new file mode 100644 +index 0000000..2484097 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/root/etc/config/asterisk +@@ -0,0 +1,231 @@ ++config 'asterisk' ++ option 'verbose' 3 ++ option 'debug' 3 ++ option 'zone' 'Australia/Perth' ++ ++config 'hardware' 'reboot' ++ option 'method' 'web' ++ option 'param' 'http://ata.lan/admin/reboot' ++ ++config 'feature' 'park' ++ option 'parkenabled' 'yes' ++ option 'parkext' '700' ++ option 'parkpos' '701-720' ++ option 'context' 'parkedcalls' ++ option 'parkingtime' '45' ++ option 'courtesytone' 'beep' ++ option 'parkedplay' 'caller' ++ option 'adsipark' 'yes' ++ option 'findslot' 'first' ++ option 'parkedmusicclass' 'default' ++ option 'transferdigittimeout' '3' ++ option 'xfersound' 'beep' ++ option 'xferfailsound' 'beeperr' ++ option 'pickupexten' '"*8"' ++ option 'featuredigittimeout' '500' ++ option 'atxfernoanswertimeout' '15' ++ ++config 'feature' 'map' ++ option 'blindxfer' '#1' ++ option 'disconnect' '*0' ++ option 'automon' '*1' ++ option 'atxfer' '#2' ++ option 'parkcall' '#30' ++ ++config 'sipgeneral' ++ option 'realm' 'sip.mydomain.net' ++ option 'allow' 'alaw' ++ option 'extension' '102' ++ ++config 'module' ++ option 'res_config_mysql' 'no' ++ option 'res_crypto' 'auto' ++ option 'chan_iax2' 'yes' ++ ++config 'sip' 'PAP2T' ++ option 'type' 'friend' ++ option 'extension' '101' ++ option 'username' 'PAP2T' ++ option 'secret' 'mypass' ++ option 'port' '5061' ++ option 'host' '' ++ option 'dtmfmode' 'rfc2833' ++ option 'insecure' 'very' ++ option 'context' 'internal' ++ option 'mailbox' '1001@default' ++ option 'nat' 'no' ++ option 'canreinvite' 'nonat' ++ option 'selfmailbox' 'yes' ++ option 'incoming' 'provider_inbound' ++ ++config 'sip' 'PAP2T2' ++ option 'type' 'friend' ++ option 'extension' '101' ++ option 'username' 'PAP2T2' ++ option 'secret' 'mysecret' ++ option 'port' '5060' ++ option 'host' '' ++ option 'dtmfmode' 'rfc2833' ++ option 'insecure' 'very' ++ option 'context' 'internal' ++ option 'mailbox' '1001@default' ++ option 'nat' 'no' ++ option 'canreinvite' 'nonat' ++ option 'selfmailbox' 'yes' ++ option 'incoming' 'provider_inbound' ++ ++config 'sip' 'providerphone' ++ option 'provider' 'yes' ++ option 'type' 'friend' ++ option 'timeout' '55' ++ option 'internationalprefix' '0011' ++ option 'alwaysinternational' 'no' ++ option 'countrycode' '63' ++ option 'register' 'yes' ++ option 'host' '200.200.200.200' ++ option 'username' '0899999999' ++ option 'fromuser' '0899999999' ++ option 'secret' 'mysecret' ++ option 'fromdomain' 'providerphone.provider.net.au' ++ option 'context' 'provider_inbound' ++ option 'canreinvite' 'no' ++ option 'nat' 'yes' ++ option 'qualify' 'yes' ++ option 'insecure' 'very' ++ option 'pedantic' 'no' ++ option 'qualify' '1000' ++ ++config 'iaxgeneral' ++ option 'static' 'yes' ++ option 'writeprotect' 'no' ++ option 'canreinvite' 'no' ++ option 'allow' 'ulaw,gsm' ++ ++config 'iax' 'nell' ++ option 'type' 'friend' ++ option 'extension' '108' ++ option 'host' '' ++ option 'username' 'nell' ++ option 'secret' 'mypass' ++ option 'context' 'internal' ++ ++config 'iax' 'iax_vista' ++ option 'extension' '106' ++ option 'type' 'friend' ++ option 'host' '' ++ option 'username' 'vista' ++ option 'secret' 'mysecret' ++ option 'context' 'internal' ++ ++config 'iax' 'sam' ++ option 'type' 'friend' ++ option 'extension' '103' ++ option 'host' '' ++ option 'username' 'sam' ++ option 'secret' 'mysecret' ++ option 'context' 'internal' ++ ++config 'voicegeneral' ++ option 'serveremail' 'voice@sip.mydomain.net' ++ ++config 'voicemail' ++ option 'number' '1001' ++ option 'context' 'default' ++ option 'password' '0000' ++ option 'name' 'Family' ++ option 'email' 'us@mydomain.net' ++ option 'zone' 'wa' ++ option 'attach' 'no' ++ ++config 'voicezone' 'wa' ++ option 'zone' 'Australia/Perth' ++ option 'message' 'Q IMp' ++ ++config 'voicezone' 'military' ++ option 'zone' 'Zulu' ++ option 'message' '"vm-received" q "digits/at" H N "hours" "phonetic/z_p"' ++ ++config 'incominggeneral' ++ option 'allowtransfer' 'no' ++ option 'timeout' '20' ++ option 'answerfirst' 'no' ++ option 'mailbox' '1001@default' ++ ++config 'dialplangeneral' ++ option 'static' 'yes' ++ option 'writeprotect' 'no' ++ option 'canreinvite' 'no' ++ option 'clearglobalvars' 'no' ++ option 'allowtransfer' 'no' ++ ++config 'dialplan' 'internal' ++ option 'include' 'localcall interstate smartnumber emergency extensions' ++ ++config 'dialplanvoice' ++ option 'dialplan' 'internal' ++ option 'extension' '1001' ++ option 'voicecontext' 'default' ++ option 'voicebox' '1001' ++ ++config 'dialplansaytime' ++ option 'dialplan' 'internal' ++ option 'extension' '108' ++ ++config 'dialplanmeetme' ++ option 'dialplan' 'internal' ++ option 'extension' '109' ++ option 'room' '101' ++ ++config 'dialplanmeetme' ++ option 'dialplan' 'internal' ++ option 'extension' '1009' ++ option 'room' '' ++ ++config 'dialplan' 'localinternational' ++ option 'include' 'mobile interstate' ++ ++config 'dialzone' 'interstate' ++ option 'uses' 'SIP/providerphone' ++ option 'match' '0[235-8]NXXXXXXX' ++ option 'localprefix' '0' ++ ++config 'dialzone' 'mobile' ++ option 'uses' 'SIP/providerphone' ++ option 'match' '04XXXXXXXX' ++ option 'localprefix' '0' ++ ++config 'dialzone' 'smartnumber' ++ option 'uses' 'SIP/providerphone' ++ option 'match' '1[835]00.' ++ option 'match' '13ZXXX' ++ ++config 'dialzone' 'emergency' ++ option 'uses' 'SIP/providerphone' ++ option 'match' '000' ++ option 'match' '112' ++ ++config 'dialzone' 'localcall' ++ option 'uses' 'SIP/providerphone' ++ option 'match' 'NXXXXXXX' ++ option 'addprefix' '08' ++ option 'localprefix' '0' ++ ++config 'dialzone' 'international' ++ option 'uses' 'SIP/providerphone' ++ option 'international' '0011,+' ++ option 'localzone' 'localinternational' ++ option 'localprefix' '0' ++ option 'addprefix' '' ++ ++config 'meetmegeneral' ++ option 'audiobuffers' '32' ++ ++config 'meetme' ++ option 'room' '101' ++ option 'pin' '' ++ option 'adminpin' '' ++ ++config 'moh' 'default' ++ option 'mode' 'files' ++ option 'directory' '/opt/moh' ++ option 'random' 'no' +diff --git a/feeds/luci/applications/luci-app-asterisk/root/etc/uci-defaults/luci-asterisk b/feeds/luci/applications/luci-app-asterisk/root/etc/uci-defaults/luci-asterisk +new file mode 100755 +index 0000000..e45819f +--- /dev/null ++++ b/feeds/luci/applications/luci-app-asterisk/root/etc/uci-defaults/luci-asterisk +@@ -0,0 +1,11 @@ ++#!/bin/sh ++ ++uci -q batch <<-EOF >/dev/null ++ delete ucitrack.@asterisk[-1] ++ add ucitrack asterisk ++ set ucitrack.@asterisk[-1].init=asterisk ++ commit ucitrack ++EOF ++ ++rm -f /tmp/luci-indexcache ++exit 0 +diff --git a/feeds/luci/applications/luci-app-commands/Makefile b/feeds/luci/applications/luci-app-commands/Makefile +new file mode 100644 +index 0000000..dc5d0ca +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/Makefile +@@ -0,0 +1,14 @@ ++# ++# Copyright (C) 2008-2014 The LuCI Team ++# ++# This is free software, licensed under the Apache License, Version 2.0 . ++# ++ ++include $(TOPDIR)/rules.mk ++ ++LUCI_TITLE:=LuCI Shell Command Module ++LUCI_DEPENDS:= ++ ++include ../../luci.mk ++ ++# call BuildPackage - OpenWrt buildroot signature +diff --git a/feeds/luci/applications/luci-app-commands/luasrc/controller/commands.lua b/feeds/luci/applications/luci-app-commands/luasrc/controller/commands.lua +new file mode 100644 +index 0000000..16528d1 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/luasrc/controller/commands.lua +@@ -0,0 +1,227 @@ ++-- Copyright 2012 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++module("luci.controller.commands", package.seeall) ++ ++function index() ++ entry({"admin", "system", "commands"}, firstchild(), _("Custom Commands"), 80) ++ entry({"admin", "system", "commands", "dashboard"}, template("commands"), _("Dashboard"), 1) ++ entry({"admin", "system", "commands", "config"}, cbi("commands"), _("Configure"), 2) ++ entry({"admin", "system", "commands", "run"}, call("action_run"), nil, 3).leaf = true ++ entry({"admin", "system", "commands", "download"}, call("action_download"), nil, 3).leaf = true ++ ++ entry({"command"}, call("action_public"), nil, 1).leaf = true ++end ++ ++--- Decode a given string into arguments following shell quoting rules ++--- [[abc \def "foo\"bar" abc'def']] -> [[abc def]] [[foo"bar]] [[abcdef]] ++local function parse_args(str) ++ local args = { } ++ ++ local function isspace(c) ++ if c == 9 or c == 10 or c == 11 or c == 12 or c == 13 or c == 32 then ++ return c ++ end ++ end ++ ++ local function isquote(c) ++ if c == 34 or c == 39 or c == 96 then ++ return c ++ end ++ end ++ ++ local function isescape(c) ++ if c == 92 then ++ return c ++ end ++ end ++ ++ local function ismeta(c) ++ if c == 36 or c == 92 or c == 96 then ++ return c ++ end ++ end ++ ++ --- Convert given table of byte values into a Lua string and append it to ++ --- the "args" table. Segment byte value sequence into chunks of 256 values ++ --- to not trip over the parameter limit for string.char() ++ local function putstr(bytes) ++ local chunks = { } ++ local csz = 256 ++ local upk = unpack ++ local chr = string.char ++ local min = math.min ++ local len = #bytes ++ local off ++ ++ for off = 1, len, csz do ++ chunks[#chunks+1] = chr(upk(bytes, off, min(off + csz - 1, len))) ++ end ++ ++ args[#args+1] = table.concat(chunks) ++ end ++ ++ --- Scan substring defined by the indexes [s, e] of the string "str", ++ --- perform unquoting and de-escaping on the fly and store the result in ++ --- a table of byte values which is passed to putstr() ++ local function unquote(s, e) ++ local off, esc, quote ++ local res = { } ++ ++ for off = s, e do ++ local byte = str:byte(off) ++ local q = isquote(byte) ++ local e = isescape(byte) ++ local m = ismeta(byte) ++ ++ if e then ++ esc = true ++ elseif esc then ++ if m then res[#res+1] = 92 end ++ res[#res+1] = byte ++ esc = false ++ elseif q and quote and q == quote then ++ quote = nil ++ elseif q and not quote then ++ quote = q ++ else ++ if m then res[#res+1] = 92 end ++ res[#res+1] = byte ++ end ++ end ++ ++ putstr(res) ++ end ++ ++ --- Find substring boundaries in "str". Ignore escaped or quoted ++ --- whitespace, pass found start- and end-index for each substring ++ --- to unquote() ++ local off, esc, start, quote ++ for off = 1, #str + 1 do ++ local byte = str:byte(off) ++ local q = isquote(byte) ++ local s = isspace(byte) or (off > #str) ++ local e = isescape(byte) ++ ++ if esc then ++ esc = false ++ elseif e then ++ esc = true ++ elseif q and quote and q == quote then ++ quote = nil ++ elseif q and not quote then ++ start = start or off ++ quote = q ++ elseif s and not quote then ++ if start then ++ unquote(start, off - 1) ++ start = nil ++ end ++ else ++ start = start or off ++ end ++ end ++ ++ --- If the "quote" is still set we encountered an unfinished string ++ if quote then ++ unquote(start, #str) ++ end ++ ++ return args ++end ++ ++local function parse_cmdline(cmdid, args) ++ local uci = require "luci.model.uci".cursor() ++ if uci:get("luci", cmdid) == "command" then ++ local cmd = uci:get_all("luci", cmdid) ++ local argv = parse_args(cmd.command) ++ local i, v ++ ++ if cmd.param == "1" and args then ++ for i, v in ipairs(parse_args(luci.http.urldecode(args))) do ++ argv[#argv+1] = v ++ end ++ end ++ ++ for i, v in ipairs(argv) do ++ if v:match("[^%w%.%-i/]") then ++ argv[i] = '"%s"' % v:gsub('"', '\\"') ++ end ++ end ++ ++ return argv ++ end ++end ++ ++function action_run(...) ++ local fs = require "nixio.fs" ++ local argv = parse_cmdline(...) ++ if argv then ++ local outfile = os.tmpname() ++ local errfile = os.tmpname() ++ ++ local rv = os.execute(table.concat(argv, " ") .. " >%s 2>%s" %{ outfile, errfile }) ++ local stdout = fs.readfile(outfile, 1024 * 512) or "" ++ local stderr = fs.readfile(errfile, 1024 * 512) or "" ++ ++ fs.unlink(outfile) ++ fs.unlink(errfile) ++ ++ local binary = not not (stdout:match("[%z\1-\8\14-\31]")) ++ ++ luci.http.prepare_content("application/json") ++ luci.http.write_json({ ++ command = table.concat(argv, " "), ++ stdout = not binary and stdout, ++ stderr = stderr, ++ exitcode = rv, ++ binary = binary ++ }) ++ else ++ luci.http.status(404, "No such command") ++ end ++end ++ ++function action_download(...) ++ local fs = require "nixio.fs" ++ local argv = parse_cmdline(...) ++ if argv then ++ local fd = io.popen(table.concat(argv, " ") .. " 2>/dev/null") ++ if fd then ++ local chunk = fd:read(4096) or "" ++ local name ++ if chunk:match("[%z\1-\8\14-\31]") then ++ luci.http.header("Content-Disposition", "attachment; filename=%s" ++ % fs.basename(argv[1]):gsub("%W+", ".") .. ".bin") ++ luci.http.prepare_content("application/octet-stream") ++ else ++ luci.http.header("Content-Disposition", "attachment; filename=%s" ++ % fs.basename(argv[1]):gsub("%W+", ".") .. ".txt") ++ luci.http.prepare_content("text/plain") ++ end ++ ++ while chunk do ++ luci.http.write(chunk) ++ chunk = fd:read(4096) ++ end ++ ++ fd:close() ++ else ++ luci.http.status(500, "Failed to execute command") ++ end ++ else ++ luci.http.status(404, "No such command") ++ end ++end ++ ++function action_public(cmdid, args) ++ local uci = require "luci.model.uci".cursor() ++ if cmdid and ++ uci:get("luci", cmdid) == "command" and ++ uci:get("luci", cmdid, "public") == "1" ++ then ++ action_download(cmdid, args) ++ else ++ luci.http.status(403, "Access to command denied") ++ end ++end +diff --git a/feeds/luci/applications/luci-app-commands/luasrc/model/cbi/commands.lua b/feeds/luci/applications/luci-app-commands/luasrc/model/cbi/commands.lua +new file mode 100644 +index 0000000..7794f15 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/luasrc/model/cbi/commands.lua +@@ -0,0 +1,27 @@ ++-- Copyright 2012 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local m, s ++ ++m = Map("luci", translate("Custom Commands"), ++ translate("This page allows you to configure custom shell commands which can be easily invoked from the web interface.")) ++ ++s = m:section(TypedSection, "command", "") ++s.template = "cbi/tblsection" ++s.anonymous = true ++s.addremove = true ++ ++ ++s:option(Value, "name", translate("Description"), ++ translate("A short textual description of the configured command")) ++ ++s:option(Value, "command", translate("Command"), ++ translate("Command line to execute")) ++ ++s:option(Flag, "param", translate("Custom arguments"), ++ translate("Allow the user to provide additional command line arguments")) ++ ++s:option(Flag, "public", translate("Public access"), ++ translate("Allow executing the command and downloading its output without prior authentication")) ++ ++return m +diff --git a/feeds/luci/applications/luci-app-commands/luasrc/view/commands.htm b/feeds/luci/applications/luci-app-commands/luasrc/view/commands.htm +new file mode 100644 +index 0000000..73b9e6a +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/luasrc/view/commands.htm +@@ -0,0 +1,169 @@ ++<%# ++ Copyright 2012 Jo-Philipp Wich ++ Licensed to the public under the Apache License 2.0. ++-%> ++ ++<% css = [[ ++ ++.commandbox { ++ height: 12em; ++ width: 30%; ++ float: left; ++ height: 12em; ++ margin: 5px; ++ position: relative; ++} ++ ++.commandbox h3 { ++ font-size: 1.5em !important; ++ line-height: 2em !important; ++ margin: 0 !important; ++} ++ ++.commandbox input[type="text"] { ++ width: 50% !important; ++} ++ ++.commandbox div { ++ position: absolute; ++ left: 0; ++ bottom: 1.5em; ++} ++ ++]] -%> ++ ++<%+header%> ++ ++ ++ ++ ++<% ++ local uci = require "luci.model.uci".cursor() ++ local commands = { } ++ ++ uci:foreach("luci", "command", function(s) commands[#commands+1] = s end) ++%> ++ ++
"> ++
++

<%:Custom Commands%>

++ ++
++ <% local _, command; for _, command in ipairs(commands) do %> ++
++

<%=pcdata(command.name)%>

++

<%:Command:%> <%=pcdata(command.command)%>

++ <% if command.param == "1" then %> ++

<%:Arguments:%>

++ <% end %> ++
++ ++ ++ <% if command.public == "1" then %> ++ ++ <% end %> ++
++
++ <% end %> ++ ++

++ ++
++
++ ++ ++
++ ++<%+footer%> +diff --git a/feeds/luci/applications/luci-app-commands/po/ca/commands.po b/feeds/luci/applications/luci-app-commands/po/ca/commands.po +new file mode 100644 +index 0000000..9dc23b2 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/ca/commands.po +@@ -0,0 +1,98 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-06-06 10:41+0200\n" ++"Last-Translator: Alex \n" ++"Language-Team: none\n" ++"Language: ca\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Una breva descripció textual de l'ordre configurat" ++ ++msgid "Access command with" ++msgstr "Accedeix l'ordre amb" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Permet la execució de l'ordre i la baixada de la seva sortida sense " ++"autenticació prèvia" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Permet que l'usuari proveïa paràmetres de línia de consola addicionals" ++ ++msgid "Arguments:" ++msgstr "Paràmetres:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Els dades binaris no es mostren, descarregueu-los." ++ ++msgid "Code:" ++msgstr "Codi:" ++ ++msgid "Collecting data..." ++msgstr "Recollint dades..." ++ ++msgid "Command" ++msgstr "Ordre" ++ ++msgid "Command failed" ++msgstr "L'ordre ha fallat" ++ ++msgid "Command line to execute" ++msgstr "Línia d'ordre per executar" ++ ++msgid "Command successful" ++msgstr "L'ordre ha tingut èxit" ++ ++msgid "Command:" ++msgstr "Ordre;" ++ ++msgid "Configure" ++msgstr "Configura" ++ ++msgid "Custom Commands" ++msgstr "Ordres personalitzats" ++ ++msgid "Custom arguments" ++msgstr "Paràmetres personalitzats" ++ ++msgid "Dashboard" ++msgstr "Panell" ++ ++msgid "Description" ++msgstr "Descripció" ++ ++msgid "Download" ++msgstr "Baixa" ++ ++msgid "Failed to execute command!" ++msgstr "L'execució de l'ordre ha fallat!" ++ ++msgid "Link" ++msgstr "Enllaç" ++ ++msgid "Loading" ++msgstr "Carregant" ++ ++msgid "Public access" ++msgstr "Accés públic" ++ ++msgid "Run" ++msgstr "Executa" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Aquesta pàgina us permet configurar ordres de consola personalitzats que es " ++"poden invocar fàcilment de la interfície web." ++ ++msgid "Waiting for command to complete..." ++msgstr "Esperant que l'ordre acabi..." +diff --git a/feeds/luci/applications/luci-app-commands/po/cs/commands.po b/feeds/luci/applications/luci-app-commands/po/cs/commands.po +new file mode 100644 +index 0000000..64949bd +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/cs/commands.po +@@ -0,0 +1,96 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-08-04 19:01+0200\n" ++"Last-Translator: KubaCZ \n" ++"Language-Team: none\n" ++"Language: cs\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Krátky popis nastaveného příkazu" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "Povolit vykonání příkazu a stažení výstupu bez předchozí autentizace." ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Povolit uživateli poskytnout dodatečné argumenty příkazového řádku" ++ ++msgid "Arguments:" ++msgstr "Argumenty:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Binární data nezobrazena, stáhněte si je." ++ ++msgid "Code:" ++msgstr "Kód:" ++ ++msgid "Collecting data..." ++msgstr "Sbírání dat..." ++ ++msgid "Command" ++msgstr "Příkaz" ++ ++msgid "Command failed" ++msgstr "Příkaz selhal" ++ ++msgid "Command line to execute" ++msgstr "Příkazový řádek k vykonání" ++ ++msgid "Command successful" ++msgstr "Příkaz úspěšný." ++ ++msgid "Command:" ++msgstr "Příkaz:" ++ ++msgid "Configure" ++msgstr "Konfigurovat" ++ ++msgid "Custom Commands" ++msgstr "Vlastní příkazy" ++ ++msgid "Custom arguments" ++msgstr "Vlastní parametry" ++ ++msgid "Dashboard" ++msgstr "Řídicí panel" ++ ++msgid "Description" ++msgstr "Popis" ++ ++msgid "Download" ++msgstr "Stáhnout" ++ ++msgid "Failed to execute command!" ++msgstr "Chyba při zpracování příkazu!" ++ ++msgid "Link" ++msgstr "Odkaz" ++ ++msgid "Loading" ++msgstr "Nahrávám" ++ ++msgid "Public access" ++msgstr "Veřejný přístup" ++ ++msgid "Run" ++msgstr "Spustit" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Tato stránka umožňuje nastavit vlastní příkazy shellu, které lze snadno " ++"vyvolat z webového rozhraní." ++ ++msgid "Waiting for command to complete..." ++msgstr "Čekejte na dokončení příkazu..." +diff --git a/feeds/luci/applications/luci-app-commands/po/de/commands.po b/feeds/luci/applications/luci-app-commands/po/de/commands.po +new file mode 100644 +index 0000000..2b7c631 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/de/commands.po +@@ -0,0 +1,98 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-11-21 18:45+0200\n" ++"Last-Translator: Jo-Philipp \n" ++"Language-Team: none\n" ++"Language: de\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Kurze Beschreibung des abgespeicherten Kommandos" ++ ++msgid "Access command with" ++msgstr "Kommando aufrufen mit" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Ausführen des Kommandos und Herunterladen der Ausgabe ohne vorherige " ++"Authentifizierung ermöglichen" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Erlaube dem Nutzer zusätzliche Kommandozeilenargumente zu übergeben" ++ ++msgid "Arguments:" ++msgstr "Argumente:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Binärdaten ausgeblendet, laden Sie die Ausgaben stattdessen herunter" ++ ++msgid "Code:" ++msgstr "Rückgabewert:" ++ ++msgid "Collecting data..." ++msgstr "Sammle Daten..." ++ ++msgid "Command" ++msgstr "Kommando" ++ ++msgid "Command failed" ++msgstr "Kommando fehlgeschlagen" ++ ++msgid "Command line to execute" ++msgstr "Auszuführende Kommandozeile" ++ ++msgid "Command successful" ++msgstr "Kommando erfolgreich" ++ ++msgid "Command:" ++msgstr "Kommando:" ++ ++msgid "Configure" ++msgstr "Konfigurieren" ++ ++msgid "Custom Commands" ++msgstr "Benutzerdefinierte Kommandos" ++ ++msgid "Custom arguments" ++msgstr "Benutzerdefinierte Argumente" ++ ++msgid "Dashboard" ++msgstr "Übersicht" ++ ++msgid "Description" ++msgstr "Beschreibung" ++ ++msgid "Download" ++msgstr "Herunterladen" ++ ++msgid "Failed to execute command!" ++msgstr "Kommando konnte nicht ausgeführt werden!" ++ ++msgid "Link" ++msgstr "Link" ++ ++msgid "Loading" ++msgstr "Lade" ++ ++msgid "Public access" ++msgstr "Öffentlicher Zugriff" ++ ++msgid "Run" ++msgstr "Ausführen" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Diese Seite ermöglicht die Konfiguration eigener Shell-Kommandos um diese " ++"einfach über das Webinterface ausführen zu können." ++ ++msgid "Waiting for command to complete..." ++msgstr "Warte auf die Ausführung des Kommandos..." +diff --git a/feeds/luci/applications/luci-app-commands/po/el/commands.po b/feeds/luci/applications/luci-app-commands/po/el/commands.po +new file mode 100644 +index 0000000..0e9e65d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/el/commands.po +@@ -0,0 +1,91 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/en/commands.po b/feeds/luci/applications/luci-app-commands/po/en/commands.po +new file mode 100644 +index 0000000..754a229 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/en/commands.po +@@ -0,0 +1,95 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "A short textual description of the configured command" ++ ++msgid "Access command with" ++msgstr "Access command with" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Allow the user to provide additional command line arguments" ++ ++msgid "Arguments:" ++msgstr "Arguments:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Binary data not displayed, download instead." ++ ++msgid "Code:" ++msgstr "Code:" ++ ++msgid "Collecting data..." ++msgstr "Collecting data..." ++ ++msgid "Command" ++msgstr "Command" ++ ++msgid "Command failed" ++msgstr "Command failed" ++ ++msgid "Command line to execute" ++msgstr "Command line to execute" ++ ++msgid "Command successful" ++msgstr "Command successful" ++ ++msgid "Command:" ++msgstr "Command:" ++ ++msgid "Configure" ++msgstr "Configure" ++ ++msgid "Custom Commands" ++msgstr "Custom Commands" ++ ++msgid "Custom arguments" ++msgstr "Custom arguments" ++ ++msgid "Dashboard" ++msgstr "Dashboard" ++ ++msgid "Description" ++msgstr "Description" ++ ++msgid "Download" ++msgstr "Download" ++ ++msgid "Failed to execute command!" ++msgstr "Failed to execute command!" ++ ++msgid "Link" ++msgstr "Link" ++ ++msgid "Loading" ++msgstr "Loading" ++ ++msgid "Public access" ++msgstr "Public access" ++ ++msgid "Run" ++msgstr "Run" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++ ++msgid "Waiting for command to complete..." ++msgstr "Waiting for command to complete..." +diff --git a/feeds/luci/applications/luci-app-commands/po/es/commands.po b/feeds/luci/applications/luci-app-commands/po/es/commands.po +new file mode 100644 +index 0000000..8052452 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/es/commands.po +@@ -0,0 +1,97 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-11-24 10:16+0200\n" ++"Last-Translator: José Vicente \n" ++"Language-Team: none\n" ++"Language: es\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Descripción breve del comando a configurar" ++ ++msgid "Access command with" ++msgstr "Acceder al comando con" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Permitir ejecutar el comando y descargar su salida sin más autentificación" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Permitir al usuario añadir parámetros de línea de comandos" ++ ++msgid "Arguments:" ++msgstr "Parámetros:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "No se pueden mostrar datos binarios, descárguelos." ++ ++msgid "Code:" ++msgstr "Código:" ++ ++msgid "Collecting data..." ++msgstr "Recuperando datos..." ++ ++msgid "Command" ++msgstr "Comando" ++ ++msgid "Command failed" ++msgstr "Falló" ++ ++msgid "Command line to execute" ++msgstr "Comando a ejecutar" ++ ++msgid "Command successful" ++msgstr "OK" ++ ++msgid "Command:" ++msgstr "Comando:" ++ ++msgid "Configure" ++msgstr "Configurar" ++ ++msgid "Custom Commands" ++msgstr "Comandos propios" ++ ++msgid "Custom arguments" ++msgstr "Parámetros propios" ++ ++msgid "Dashboard" ++msgstr "Panel" ++ ++msgid "Description" ++msgstr "Descripción" ++ ++msgid "Download" ++msgstr "Descarga" ++ ++msgid "Failed to execute command!" ++msgstr "¡Error al ejecutar el comando!" ++ ++msgid "Link" ++msgstr "Enlace" ++ ++msgid "Loading" ++msgstr "Cargando" ++ ++msgid "Public access" ++msgstr "Acceso público" ++ ++msgid "Run" ++msgstr "Ejecutar" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Aquí puede configurar sus propios comandos shell para lanzarlos fácilmente " ++"desde el interfaz web." ++ ++msgid "Waiting for command to complete..." ++msgstr "Esperando a que termine el comando..." +diff --git a/feeds/luci/applications/luci-app-commands/po/fr/commands.po b/feeds/luci/applications/luci-app-commands/po/fr/commands.po +new file mode 100644 +index 0000000..fac1aff +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/fr/commands.po +@@ -0,0 +1,100 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-12-12 13:36+0200\n" ++"Last-Translator: maximeguillaud \n" ++"Language-Team: none\n" ++"Language: fr\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Une courte description de la commande configurée" ++ ++msgid "Access command with" ++msgstr "Accéder à la commande par" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Autoriser l'exécution de la commande et le téléchargement de son résultat " ++"sans authentification préalable" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++"Autoriser l'utilisateur à fournir des arguments de ligne de commande " ++"supplémentaires" ++ ++msgid "Arguments:" ++msgstr "Arguments :" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Données binaires non affichables, elle peuvent être téléchargées." ++ ++msgid "Code:" ++msgstr "Code : " ++ ++msgid "Collecting data..." ++msgstr "Récupération des données ..." ++ ++msgid "Command" ++msgstr "Commande" ++ ++msgid "Command failed" ++msgstr "Echec de la commande" ++ ++msgid "Command line to execute" ++msgstr "Ligne de commande à exécuter" ++ ++msgid "Command successful" ++msgstr "Commande réussie" ++ ++msgid "Command:" ++msgstr "Commande :" ++ ++msgid "Configure" ++msgstr "Configurer" ++ ++msgid "Custom Commands" ++msgstr "Commandes personnalisées" ++ ++msgid "Custom arguments" ++msgstr "Arguments personnalisés" ++ ++msgid "Dashboard" ++msgstr "Tableau de bord" ++ ++msgid "Description" ++msgstr "Description" ++ ++msgid "Download" ++msgstr "Télécharger" ++ ++msgid "Failed to execute command!" ++msgstr "Echec de l'exécution de la commande ! " ++ ++msgid "Link" ++msgstr "Lien" ++ ++msgid "Loading" ++msgstr "Chargement" ++ ++msgid "Public access" ++msgstr "Accès public" ++ ++msgid "Run" ++msgstr "Exécuter" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Cette page vous permet de configurer des commandes shell personnalisées, " ++"pouvant être invoquées facilement depuis l'interface web." ++ ++msgid "Waiting for command to complete..." ++msgstr "En attente de la commande pour finir..." +diff --git a/feeds/luci/applications/luci-app-commands/po/he/commands.po b/feeds/luci/applications/luci-app-commands/po/he/commands.po +new file mode 100644 +index 0000000..0e9e65d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/he/commands.po +@@ -0,0 +1,91 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/hu/commands.po b/feeds/luci/applications/luci-app-commands/po/hu/commands.po +new file mode 100644 +index 0000000..5cd0ec7 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/hu/commands.po +@@ -0,0 +1,98 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-01-24 18:47+0200\n" ++"Last-Translator: Gábor \n" ++"Language-Team: none\n" ++"Language: hu\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "A beállított parancs rövid szöveges leírása" ++ ++msgid "Access command with" ++msgstr "Parancs hozzáférése" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Engedélyezi a parancs végrehajtását és kimenetének letöltését előzetes " ++"hitelesítés nélkül" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "A felhasználó által további parancsori argumentumok adhatók meg" ++ ++msgid "Arguments:" ++msgstr "Argumentumok:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Bináris adat nem jelenik meg, töltse le helyette." ++ ++msgid "Code:" ++msgstr "Kód:" ++ ++msgid "Collecting data..." ++msgstr "Adatgyűjtés..." ++ ++msgid "Command" ++msgstr "Paracs" ++ ++msgid "Command failed" ++msgstr "Parancs végrehajtás sikertelen" ++ ++msgid "Command line to execute" ++msgstr "Futtatandó parancssor" ++ ++msgid "Command successful" ++msgstr "Parancs végrehajtás sikeres" ++ ++msgid "Command:" ++msgstr "Parancs:" ++ ++msgid "Configure" ++msgstr "Beállítás" ++ ++msgid "Custom Commands" ++msgstr "Egyedi parancsok" ++ ++msgid "Custom arguments" ++msgstr "Egyedi argumentumok" ++ ++msgid "Dashboard" ++msgstr "Vezérlőpult" ++ ++msgid "Description" ++msgstr "Leírás" ++ ++msgid "Download" ++msgstr "Letöltés" ++ ++msgid "Failed to execute command!" ++msgstr "Parancs végrehajtása sikertelen!" ++ ++msgid "Link" ++msgstr "Link" ++ ++msgid "Loading" ++msgstr "Betöltés" ++ ++msgid "Public access" ++msgstr "Nyilvános hozzáférés" ++ ++msgid "Run" ++msgstr "Futtatás" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Ezen az oldalon egyéni shell parancsokat állíthat be, amelyeket könnyen " ++"felhasználhat a webes felületen." ++ ++msgid "Waiting for command to complete..." ++msgstr "Várakozás a parancs befejezésére..." +diff --git a/feeds/luci/applications/luci-app-commands/po/it/commands.po b/feeds/luci/applications/luci-app-commands/po/it/commands.po +new file mode 100644 +index 0000000..c14b910 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/it/commands.po +@@ -0,0 +1,99 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-02-03 13:52+0200\n" ++"Last-Translator: Francesco <3gasas@gmail.com>\n" ++"Language-Team: none\n" ++"Language: it\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Una breve descrizione testuale del comando configurato" ++ ++msgid "Access command with" ++msgstr "Accesso comando con" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Consentire l'esecuzione del comando e il download del suo output senza " ++"previa autenticazione" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++"Consente all'utente di fornire ulteriori argomenti della riga di comando" ++ ++msgid "Arguments:" ++msgstr "Argomenti:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "I dati binari non vengono visualizzati, ma possono essere scaricati." ++ ++msgid "Code:" ++msgstr "Codice:" ++ ++msgid "Collecting data..." ++msgstr "Raccolta dei dati..." ++ ++msgid "Command" ++msgstr "Comando" ++ ++msgid "Command failed" ++msgstr "Comando fallito" ++ ++msgid "Command line to execute" ++msgstr "Riga di comando da eseguire" ++ ++msgid "Command successful" ++msgstr "Comando riuscito" ++ ++msgid "Command:" ++msgstr "Comando:" ++ ++msgid "Configure" ++msgstr "Configura" ++ ++msgid "Custom Commands" ++msgstr "Comandi Personalizzati" ++ ++msgid "Custom arguments" ++msgstr "Argomenti Personalizzati" ++ ++msgid "Dashboard" ++msgstr "Dashboard" ++ ++msgid "Description" ++msgstr "Descrizione" ++ ++msgid "Download" ++msgstr "Download" ++ ++msgid "Failed to execute command!" ++msgstr "Impossibile eseguire il comando!" ++ ++msgid "Link" ++msgstr "Collegamento" ++ ++msgid "Loading" ++msgstr "Caricamento" ++ ++msgid "Public access" ++msgstr "Accesso Pubblico" ++ ++msgid "Run" ++msgstr "Esegui" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Questa pagina consente di configurare i comandi della shell personalizzate " ++"che possono essere facilmente richiamati dall'interfaccia web." ++ ++msgid "Waiting for command to complete..." ++msgstr "In attesa del comando da completare..." +diff --git a/feeds/luci/applications/luci-app-commands/po/ja/commands.po b/feeds/luci/applications/luci-app-commands/po/ja/commands.po +new file mode 100644 +index 0000000..3b01a35 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/ja/commands.po +@@ -0,0 +1,94 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-10-05 17:15+0200\n" ++"Last-Translator: Kentaro \n" ++"Language-Team: none\n" ++"Language: ja\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "設定したコマンドの簡単な説明文を記載します" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "コマンドラインに対する引数の追記を許可するか設定します" ++ ++msgid "Arguments:" ++msgstr "引数:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "バイナリデータは表示されずにダウンロードされます。" ++ ++msgid "Code:" ++msgstr "コード:" ++ ++msgid "Collecting data..." ++msgstr "データ収集中です..." ++ ++msgid "Command" ++msgstr "コマンド" ++ ++msgid "Command failed" ++msgstr "コマンド失敗" ++ ++msgid "Command line to execute" ++msgstr "実行するコマンドラインを記載します" ++ ++msgid "Command successful" ++msgstr "コマンド成功" ++ ++msgid "Command:" ++msgstr "コマンド:" ++ ++msgid "Configure" ++msgstr "設定" ++ ++msgid "Custom Commands" ++msgstr "カスタムコマンド" ++ ++msgid "Custom arguments" ++msgstr "カスタム引数" ++ ++msgid "Dashboard" ++msgstr "ダッシュボード" ++ ++msgid "Description" ++msgstr "説明" ++ ++msgid "Download" ++msgstr "ダウンロード" ++ ++msgid "Failed to execute command!" ++msgstr "コマンドの実行に失敗しました!" ++ ++msgid "Link" ++msgstr "リンク" ++ ++msgid "Loading" ++msgstr "読み込み中" ++ ++msgid "Public access" ++msgstr "パブリック・アクセス" ++ ++msgid "Run" ++msgstr "実行" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "このページでは、ウェブインターフェースから簡単にシェル・コマンドを実行することができます。" ++ ++msgid "Waiting for command to complete..." ++msgstr "コマンド実行中です..." +diff --git a/feeds/luci/applications/luci-app-commands/po/ms/commands.po b/feeds/luci/applications/luci-app-commands/po/ms/commands.po +new file mode 100644 +index 0000000..6fbb983 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/ms/commands.po +@@ -0,0 +1,90 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/no/commands.po b/feeds/luci/applications/luci-app-commands/po/no/commands.po +new file mode 100644 +index 0000000..29b76e5 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/no/commands.po +@@ -0,0 +1,98 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-03-25 23:38+0200\n" ++"Last-Translator: protx \n" ++"Language-Team: none\n" ++"Language: no\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "En kort tekstlig beskrivelse av den konfigurerte kommandoen" ++ ++msgid "Access command with" ++msgstr "Åpne kommandoen med" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Tillat å utføre kommandoen og laste ned resultatet uten forutgående " ++"godkjenning" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Tillat brukeren å gi ytterligere kommandolinjeargumenter" ++ ++msgid "Arguments:" ++msgstr "Argumenter:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Binære data vises ikke, last ned i stedet." ++ ++msgid "Code:" ++msgstr "Kode:" ++ ++msgid "Collecting data..." ++msgstr "Henter data..." ++ ++msgid "Command" ++msgstr "Kommando" ++ ++msgid "Command failed" ++msgstr "Kommando feilet" ++ ++msgid "Command line to execute" ++msgstr "Kommandolinje å utføre" ++ ++msgid "Command successful" ++msgstr "Kommando vellykket" ++ ++msgid "Command:" ++msgstr "Kommando:" ++ ++msgid "Configure" ++msgstr "Konfigurer" ++ ++msgid "Custom Commands" ++msgstr "Egendefinerte Kommandoer" ++ ++msgid "Custom arguments" ++msgstr "Egendefinerte argumenter" ++ ++msgid "Dashboard" ++msgstr "Dashboard" ++ ++msgid "Description" ++msgstr "Beskrivelse" ++ ++msgid "Download" ++msgstr "Nedlasting" ++ ++msgid "Failed to execute command!" ++msgstr "Kunne ikke utføre kommandoen!" ++ ++msgid "Link" ++msgstr "Link" ++ ++msgid "Loading" ++msgstr "Laster" ++ ++msgid "Public access" ++msgstr "Tilgjengelig for alle" ++ ++msgid "Run" ++msgstr "Kjør" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Denne siden lar deg konfigurere egendefinerte shell-kommandoer som lett kan " ++"startes fra webgrensesnittet." ++ ++msgid "Waiting for command to complete..." ++msgstr "Venter på at kommandoen fullføres..." +diff --git a/feeds/luci/applications/luci-app-commands/po/pl/commands.po b/feeds/luci/applications/luci-app-commands/po/pl/commands.po +new file mode 100644 +index 0000000..6f660ba +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/pl/commands.po +@@ -0,0 +1,99 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-02-25 18:03+0200\n" ++"Last-Translator: TheTranslator2238 \n" ++"Language-Team: none\n" ++"Language: pl\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " ++"|| n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Krótki opis konfigurowanej komendy" ++ ++msgid "Access command with" ++msgstr "Dostęp do komendy przez" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Zezwól na uruchomienie komendy i pobranie wyjścia bez uprzedniego " ++"uwierzytelnienia" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Pozwól użytkownikowi dodać argumenty wiersza poleceń" ++ ++msgid "Arguments:" ++msgstr "Argumenty:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Nie wyświetlono danych binarnych, możesz je pobrać." ++ ++msgid "Code:" ++msgstr "Kod:" ++ ++msgid "Collecting data..." ++msgstr "Zbieram dane:" ++ ++msgid "Command" ++msgstr "Komenda" ++ ++msgid "Command failed" ++msgstr "Zła komenda" ++ ++msgid "Command line to execute" ++msgstr "Linia Komendy do wykonania" ++ ++msgid "Command successful" ++msgstr "Komenda Wykonana" ++ ++msgid "Command:" ++msgstr "Komenda:" ++ ++msgid "Configure" ++msgstr "Konfiguracja" ++ ++msgid "Custom Commands" ++msgstr "Własne komendy" ++ ++msgid "Custom arguments" ++msgstr "Własne argumenty" ++ ++msgid "Dashboard" ++msgstr "Tablica" ++ ++msgid "Description" ++msgstr "Opis" ++ ++msgid "Download" ++msgstr "Download" ++ ++msgid "Failed to execute command!" ++msgstr "Nie można wykonać komendy!" ++ ++msgid "Link" ++msgstr "Łącze" ++ ++msgid "Loading" ++msgstr "Ładowanie" ++ ++msgid "Public access" ++msgstr "Publiczny dostęp" ++ ++msgid "Run" ++msgstr "Uruchom" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Ta strona pozwala ci skonfigurować niestandardową komendę którą można łatwo " ++"użyć z Web Interfejsa" ++ ++msgid "Waiting for command to complete..." ++msgstr "Czekanie na wykonanie komendy..." +diff --git a/feeds/luci/applications/luci-app-commands/po/pt-br/commands.po b/feeds/luci/applications/luci-app-commands/po/pt-br/commands.po +new file mode 100644 +index 0000000..83c7bd5 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/pt-br/commands.po +@@ -0,0 +1,98 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-03-15 22:02+0200\n" ++"Last-Translator: Luiz Angelo \n" ++"Language-Team: none\n" ++"Language: pt_BR\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Uma pequena descrição textual do comando configurado" ++ ++msgid "Access command with" ++msgstr "Acessar o comando com" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Permitir a execução do comando e descarregar o resultado sem autenticação " ++"prévia" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Permitir ao usuário inserir argumentos de linha de comando adicionais" ++ ++msgid "Arguments:" ++msgstr "Argumentos:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Dados binários não mostrados, mas podem ser baixados." ++ ++msgid "Code:" ++msgstr "Código:" ++ ++msgid "Collecting data..." ++msgstr "Adquirindo dados..." ++ ++msgid "Command" ++msgstr "Comando" ++ ++msgid "Command failed" ++msgstr "O comando falhou" ++ ++msgid "Command line to execute" ++msgstr "Linha de comandos a executar" ++ ++msgid "Command successful" ++msgstr "Comando executado com sucesso" ++ ++msgid "Command:" ++msgstr "Comando:" ++ ++msgid "Configure" ++msgstr "Configurar" ++ ++msgid "Custom Commands" ++msgstr "Comandos Personalizados" ++ ++msgid "Custom arguments" ++msgstr "Argumentos personalizados" ++ ++msgid "Dashboard" ++msgstr "Painel de Controle" ++ ++msgid "Description" ++msgstr "Descrição" ++ ++msgid "Download" ++msgstr "Baixar" ++ ++msgid "Failed to execute command!" ++msgstr "Falha ao executar comando!" ++ ++msgid "Link" ++msgstr "Endereço" ++ ++msgid "Loading" ++msgstr "Carregando" ++ ++msgid "Public access" ++msgstr "Acesso público" ++ ++msgid "Run" ++msgstr "Executar" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Esta página permite a configuração de comandos personalizados que podem ser " ++"facilmente executados através da interface web." ++ ++msgid "Waiting for command to complete..." ++msgstr "Aguardando a conclusão do comando..." +diff --git a/feeds/luci/applications/luci-app-commands/po/pt/commands.po b/feeds/luci/applications/luci-app-commands/po/pt/commands.po +new file mode 100644 +index 0000000..a46b7d2 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/pt/commands.po +@@ -0,0 +1,99 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-06-02 19:17+0200\n" ++"Last-Translator: joao.f.vieira \n" ++"Language-Team: none\n" ++"Language: pt\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Uma pequena descrição textual do comando configurado" ++ ++msgid "Access command with" ++msgstr "Aceder ao comando com" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Permitir a execução do comando e descarregar o resultado sem autenticação " ++"prévia" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++"Permitir que o utilizador forneça argumentos adicionais na linha de comandos" ++ ++msgid "Arguments:" ++msgstr "Argumentos:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Dados binários não mostrados, mas pode descarregar." ++ ++msgid "Code:" ++msgstr "Código:" ++ ++msgid "Collecting data..." ++msgstr "A obter dados..." ++ ++msgid "Command" ++msgstr "Comando" ++ ++msgid "Command failed" ++msgstr "O comando falhou" ++ ++msgid "Command line to execute" ++msgstr "Linha de comandos a executar" ++ ++msgid "Command successful" ++msgstr "Comando executado com sucesso" ++ ++msgid "Command:" ++msgstr "Comando:" ++ ++msgid "Configure" ++msgstr "Configurar" ++ ++msgid "Custom Commands" ++msgstr "Comandos Personalizados" ++ ++msgid "Custom arguments" ++msgstr "Argumentos personalizados" ++ ++msgid "Dashboard" ++msgstr "Painel de Controlo" ++ ++msgid "Description" ++msgstr "Descrição" ++ ++msgid "Download" ++msgstr "Descarregar" ++ ++msgid "Failed to execute command!" ++msgstr "Falha ao executar comando!" ++ ++msgid "Link" ++msgstr "Link" ++ ++msgid "Loading" ++msgstr "A carregar" ++ ++msgid "Public access" ++msgstr "Acesso público" ++ ++msgid "Run" ++msgstr "Executar" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Esta página permite-lhe configurar uma linha de comandos personalizada que " ++"pode facilmente ser executada a partir da interface web." ++ ++msgid "Waiting for command to complete..." ++msgstr "A aguardar que o comando termine..." +diff --git a/feeds/luci/applications/luci-app-commands/po/ro/commands.po b/feeds/luci/applications/luci-app-commands/po/ro/commands.po +new file mode 100644 +index 0000000..05c4574 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/ro/commands.po +@@ -0,0 +1,99 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-06-28 18:45+0200\n" ++"Last-Translator: xxvirusxx \n" ++"Language-Team: none\n" ++"Language: ro\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " ++"20)) ? 1 : 2);;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "O scurta descriere textuala a comenzii configurate" ++ ++msgid "Access command with" ++msgstr "Acces la comanda cu" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Permite executarea comenzii si descarcarea rezultatului fara o autentificare " ++"anterioara" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "Permite utilizatorului sa adauge parametrii in linia de comanda" ++ ++msgid "Arguments:" ++msgstr "Parametrii:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Datele binare nu sunt afisate, descarcale in schimb" ++ ++msgid "Code:" ++msgstr "Cod:" ++ ++msgid "Collecting data..." ++msgstr "Colectare date..." ++ ++msgid "Command" ++msgstr "Comandă" ++ ++msgid "Command failed" ++msgstr "Comandă eşuată" ++ ++msgid "Command line to execute" ++msgstr "Linie de comanda pentru a executa" ++ ++msgid "Command successful" ++msgstr "Comanda reusita" ++ ++msgid "Command:" ++msgstr "Comanda:" ++ ++msgid "Configure" ++msgstr "Configureaza" ++ ++msgid "Custom Commands" ++msgstr "Comenzi particulare" ++ ++msgid "Custom arguments" ++msgstr "Argumenta particulare" ++ ++msgid "Dashboard" ++msgstr "Dashboard" ++ ++msgid "Description" ++msgstr "Descriere" ++ ++msgid "Download" ++msgstr "Descarca" ++ ++msgid "Failed to execute command!" ++msgstr "S-a esuat executarea comenzii!!" ++ ++msgid "Link" ++msgstr "Link" ++ ++msgid "Loading" ++msgstr "Se incarca" ++ ++msgid "Public access" ++msgstr "Access public" ++ ++msgid "Run" ++msgstr "Ruleaza" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Aceasta pagina permite configurarea de comenzi personale ce pot fi usor " ++"apelate din interfata grafica" ++ ++msgid "Waiting for command to complete..." ++msgstr "Astept finalizarea comenzii..." +diff --git a/feeds/luci/applications/luci-app-commands/po/ru/commands.po b/feeds/luci/applications/luci-app-commands/po/ru/commands.po +new file mode 100644 +index 0000000..6197231 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/ru/commands.po +@@ -0,0 +1,102 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-10-15 16:48+0200\n" ++"Last-Translator: datasheet \n" ++"Language-Team: none\n" ++"Language: ru\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "Короткое текстовое описание команды" ++ ++msgid "Access command with" ++msgstr "Доступ к команде через" ++ ++#, fuzzy ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++"Разрешить выполнение команды и загрузку ее вывода без предварительной " ++"аутентификации" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++"Разрешить пользователям использовать дополнительные аргументы командной " ++"строки" ++ ++msgid "Arguments:" ++msgstr "Аргументы:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "Двоичные данные не отображаются, вместо этого - выгружаются" ++ ++msgid "Code:" ++msgstr "Код:" ++ ++msgid "Collecting data..." ++msgstr "Сбор данных..." ++ ++msgid "Command" ++msgstr "Команда" ++ ++msgid "Command failed" ++msgstr "Команда не выполнена" ++ ++msgid "Command line to execute" ++msgstr "Командная строка для выполнения" ++ ++msgid "Command successful" ++msgstr "Команда выполнена" ++ ++msgid "Command:" ++msgstr "Команда:" ++ ++msgid "Configure" ++msgstr "Настроить" ++ ++msgid "Custom Commands" ++msgstr "Пользовательские команды" ++ ++msgid "Custom arguments" ++msgstr "Пользовательские аргументы" ++ ++msgid "Dashboard" ++msgstr "Информационная панель" ++ ++msgid "Description" ++msgstr "Описание" ++ ++msgid "Download" ++msgstr "Скачать" ++ ++msgid "Failed to execute command!" ++msgstr "Ошибка выполнения команды!" ++ ++msgid "Link" ++msgstr "Ссылка" ++ ++msgid "Loading" ++msgstr "Загрузка" ++ ++msgid "Public access" ++msgstr "Публичный доступ" ++ ++msgid "Run" ++msgstr "Запуск" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Эта страница предоставляет возможность настраивать пользовательские " ++"консольные команды, которые могут быть легко вызваны из веб-интерфейса" ++ ++msgid "Waiting for command to complete..." ++msgstr "Ожидание завершения команды..." +diff --git a/feeds/luci/applications/luci-app-commands/po/sk/commands.po b/feeds/luci/applications/luci-app-commands/po/sk/commands.po +new file mode 100644 +index 0000000..4133dfb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/sk/commands.po +@@ -0,0 +1,91 @@ ++msgid "" ++msgstr "" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/sv/commands.po b/feeds/luci/applications/luci-app-commands/po/sv/commands.po +new file mode 100644 +index 0000000..9fbe0af +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/sv/commands.po +@@ -0,0 +1,92 @@ ++msgid "" ++msgstr "" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"Language: sv\n" ++"MIME-Version: 1.0\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/templates/commands.pot b/feeds/luci/applications/luci-app-commands/po/templates/commands.pot +new file mode 100644 +index 0000000..5d2ffae +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/templates/commands.pot +@@ -0,0 +1,84 @@ ++msgid "" ++msgstr "Content-Type: text/plain; charset=UTF-8" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/tr/commands.po b/feeds/luci/applications/luci-app-commands/po/tr/commands.po +new file mode 100644 +index 0000000..4132274 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/tr/commands.po +@@ -0,0 +1,91 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/uk/commands.po b/feeds/luci/applications/luci-app-commands/po/uk/commands.po +new file mode 100644 +index 0000000..74a19f3 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/uk/commands.po +@@ -0,0 +1,103 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-08-14 12:14+0200\n" ++"Last-Translator: zubr_139 \n" ++"Language-Team: none\n" ++"Language: uk\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++#, fuzzy ++msgid "A short textual description of the configured command" ++msgstr "Короткий опис команд налаштування" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++#, fuzzy ++msgid "Arguments:" ++msgstr "Аргументи:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "Код:" ++ ++msgid "Collecting data..." ++msgstr "Збирання даних..." ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "Команда не виконана" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "Конфігурація" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++#, fuzzy ++msgid "Dashboard" ++msgstr "Панель керування" ++ ++msgid "Description" ++msgstr "Опис" ++ ++msgid "Download" ++msgstr "Завантажити" ++ ++#, fuzzy ++msgid "Failed to execute command!" ++msgstr "Помилка під час запуску команди!" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "Триває завантаження" ++ ++msgid "Public access" ++msgstr "Відкритий доступ" ++ ++msgid "Run" ++msgstr "Запустити" ++ ++#, fuzzy ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++"Ця сторінка дозволяє налаштувати користувацькі команди оболонки, яка може " ++"бути легко запущена з веб-інтерфейсу." ++ ++#, fuzzy ++msgid "Waiting for command to complete..." ++msgstr "Очікування завершення команди..." +diff --git a/feeds/luci/applications/luci-app-commands/po/vi/commands.po b/feeds/luci/applications/luci-app-commands/po/vi/commands.po +new file mode 100644 +index 0000000..4132274 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/vi/commands.po +@@ -0,0 +1,91 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "" ++ ++msgid "Access command with" ++msgstr "" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "" ++ ++msgid "Arguments:" ++msgstr "" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "" ++ ++msgid "Code:" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Command" ++msgstr "" ++ ++msgid "Command failed" ++msgstr "" ++ ++msgid "Command line to execute" ++msgstr "" ++ ++msgid "Command successful" ++msgstr "" ++ ++msgid "Command:" ++msgstr "" ++ ++msgid "Configure" ++msgstr "" ++ ++msgid "Custom Commands" ++msgstr "" ++ ++msgid "Custom arguments" ++msgstr "" ++ ++msgid "Dashboard" ++msgstr "" ++ ++msgid "Description" ++msgstr "" ++ ++msgid "Download" ++msgstr "" ++ ++msgid "Failed to execute command!" ++msgstr "" ++ ++msgid "Link" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Public access" ++msgstr "" ++ ++msgid "Run" ++msgstr "" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "" ++ ++msgid "Waiting for command to complete..." ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-commands/po/zh-cn/commands.po b/feeds/luci/applications/luci-app-commands/po/zh-cn/commands.po +new file mode 100644 +index 0000000..8b2b032 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/zh-cn/commands.po +@@ -0,0 +1,94 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-10-08 15:47+0200\n" ++"Last-Translator: Tanyingyu \n" ++"Language-Team: none\n" ++"Language: zh_CN\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "简短描述命令用途" ++ ++msgid "Access command with" ++msgstr "访问命令" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "允许在不认证的前提下执行命令,并获取其输出。" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "允许用户提供额外的命令行参数" ++ ++msgid "Arguments:" ++msgstr "参数:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "不显示二进制数据,使用下载方式替代。" ++ ++msgid "Code:" ++msgstr "代码:" ++ ++msgid "Collecting data..." ++msgstr "收集数据:" ++ ++msgid "Command" ++msgstr "命令" ++ ++msgid "Command failed" ++msgstr "执行命令失败" ++ ++msgid "Command line to execute" ++msgstr "执行命令行" ++ ++msgid "Command successful" ++msgstr "执行命令成功" ++ ++msgid "Command:" ++msgstr "命令:" ++ ++msgid "Configure" ++msgstr "配置" ++ ++msgid "Custom Commands" ++msgstr "自定义命令" ++ ++msgid "Custom arguments" ++msgstr "自定义参数" ++ ++msgid "Dashboard" ++msgstr "看板" ++ ++msgid "Description" ++msgstr "描述" ++ ++msgid "Download" ++msgstr "下载" ++ ++msgid "Failed to execute command!" ++msgstr "执行命令失败!" ++ ++msgid "Link" ++msgstr "连接" ++ ++msgid "Loading" ++msgstr "加载中" ++ ++msgid "Public access" ++msgstr "公共访问" ++ ++msgid "Run" ++msgstr "运行" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "此页面允许您配置自定义Shell命令,并可以从Web界面调用shell命令。" ++ ++msgid "Waiting for command to complete..." ++msgstr "等待命令执行完成... ..." +diff --git a/feeds/luci/applications/luci-app-commands/po/zh-tw/commands.po b/feeds/luci/applications/luci-app-commands/po/zh-tw/commands.po +new file mode 100644 +index 0000000..4377ead +--- /dev/null ++++ b/feeds/luci/applications/luci-app-commands/po/zh-tw/commands.po +@@ -0,0 +1,94 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-05-18 19:59+0200\n" ++"Last-Translator: omnistack \n" ++"Language-Team: none\n" ++"Language: zh_TW\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "A short textual description of the configured command" ++msgstr "以短文描述設定指令" ++ ++msgid "Access command with" ++msgstr "存取指令" ++ ++msgid "" ++"Allow executing the command and downloading its output without prior " ++"authentication" ++msgstr "允許執行這指令及下載它的輸出無須事先驗證" ++ ++msgid "Allow the user to provide additional command line arguments" ++msgstr "允許用戶提供額外的指令行參數" ++ ++msgid "Arguments:" ++msgstr "參數:" ++ ++msgid "Binary data not displayed, download instead." ++msgstr "二進進資料未顯示, 以下載替代." ++ ++msgid "Code:" ++msgstr "碼:" ++ ++msgid "Collecting data..." ++msgstr "收集資料中..." ++ ++msgid "Command" ++msgstr "指令" ++ ++msgid "Command failed" ++msgstr "命令失敗" ++ ++msgid "Command line to execute" ++msgstr "要執行的指令行" ++ ++msgid "Command successful" ++msgstr "命令成功" ++ ++msgid "Command:" ++msgstr "命令:" ++ ++msgid "Configure" ++msgstr "設定" ++ ++msgid "Custom Commands" ++msgstr "自訂指令集" ++ ++msgid "Custom arguments" ++msgstr "自訂參數集" ++ ++msgid "Dashboard" ++msgstr "儀表板" ++ ++msgid "Description" ++msgstr "描述" ++ ++msgid "Download" ++msgstr "下載" ++ ++msgid "Failed to execute command!" ++msgstr "執行指令失敗!" ++ ++msgid "Link" ++msgstr "連結" ++ ++msgid "Loading" ++msgstr "掛載" ++ ++msgid "Public access" ++msgstr "公用存取" ++ ++msgid "Run" ++msgstr "執行" ++ ++msgid "" ++"This page allows you to configure custom shell commands which can be easily " ++"invoked from the web interface." ++msgstr "只要可以從web介輕易調用, 這頁面允許你自定shell指令." ++ ++msgid "Waiting for command to complete..." ++msgstr "等待完整命令中..." +diff --git a/feeds/luci/applications/luci-app-coovachilli/Makefile b/feeds/luci/applications/luci-app-coovachilli/Makefile +new file mode 100644 +index 0000000..6120991 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/Makefile +@@ -0,0 +1,14 @@ ++# ++# Copyright (C) 2008-2014 The LuCI Team ++# ++# This is free software, licensed under the Apache License, Version 2.0 . ++# ++ ++include $(TOPDIR)/rules.mk ++ ++LUCI_TITLE:=LuCI Support for Coova Chilli ++LUCI_DEPENDS:=@BROKEN ++ ++include ../../luci.mk ++ ++# call BuildPackage - OpenWrt buildroot signature +diff --git a/feeds/luci/applications/luci-app-coovachilli/luasrc/controller/coovachilli.lua b/feeds/luci/applications/luci-app-coovachilli/luasrc/controller/coovachilli.lua +new file mode 100644 +index 0000000..f962b9b +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/luasrc/controller/coovachilli.lua +@@ -0,0 +1,15 @@ ++-- Copyright 2008 Steven Barth ++-- Licensed to the public under the Apache License 2.0. ++ ++module("luci.controller.coovachilli", package.seeall) ++ ++function index() ++ local cc ++ ++ cc = entry( { "admin", "services", "coovachilli" }, cbi("coovachilli"), _("CoovaChilli"), 90) ++ cc.subindex = true ++ ++ entry( { "admin", "services", "coovachilli", "network" }, cbi("coovachilli_network"), _("Network Configuration"), 10) ++ entry( { "admin", "services", "coovachilli", "radius" }, cbi("coovachilli_radius"), _("RADIUS configuration"), 20) ++ entry( { "admin", "services", "coovachilli", "auth" }, cbi("coovachilli_auth"), _("UAM and MAC Authentication"), 30) ++end +diff --git a/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli.lua b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli.lua +new file mode 100644 +index 0000000..7a2056c +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli.lua +@@ -0,0 +1,19 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++m = Map("coovachilli") ++ ++-- general ++s = m:section(TypedSection, "general") ++s.anonymous = true ++ ++s:option( Flag, "debug" ) ++s:option( Value, "interval" ) ++s:option( Value, "pidfile" ).optional = true ++s:option( Value, "statedir" ).optional = true ++s:option( Value, "cmdsock" ).optional = true ++s:option( Value, "logfacility" ).optional = true ++ ++ ++return m +diff --git a/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_auth.lua b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_auth.lua +new file mode 100644 +index 0000000..4123532 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_auth.lua +@@ -0,0 +1,64 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++m = Map("coovachilli") ++ ++-- uam config ++s1 = m:section(TypedSection, "uam") ++s1.anonymous = true ++ ++s1:option( Value, "uamserver" ) ++s1:option( Value, "uamsecret" ).password = true ++ ++s1:option( Flag, "uamanydns" ) ++s1:option( Flag, "nouamsuccess" ) ++s1:option( Flag, "nouamwispr" ) ++s1:option( Flag, "chillixml" ) ++s1:option( Flag, "uamanyip" ).optional = true ++s1:option( Flag, "dnsparanoia" ).optional = true ++s1:option( Flag, "usestatusfile" ).optional = true ++ ++s1:option( Value, "uamhomepage" ).optional = true ++s1:option( Value, "uamlisten" ).optional = true ++s1:option( Value, "uamport" ).optional = true ++s1:option( Value, "uamiport" ).optional = true ++s1:option( DynamicList, "uamdomain" ).optional = true ++s1:option( Value, "uamlogoutip" ).optional = true ++s1:option( DynamicList, "uamallowed" ).optional = true ++s1:option( Value, "uamui" ).optional = true ++ ++s1:option( Value, "wisprlogin" ).optional = true ++ ++s1:option( Value, "defsessiontimeout" ).optional = true ++s1:option( Value, "defidletimeout" ).optional = true ++s1:option( Value, "definteriminterval" ).optional = true ++ ++s1:option( Value, "ssid" ).optional = true ++s1:option( Value, "vlan" ).optional = true ++s1:option( Value, "nasip" ).optional = true ++s1:option( Value, "nasmac" ).optional = true ++s1:option( Value, "wwwdir" ).optional = true ++s1:option( Value, "wwwbin" ).optional = true ++ ++s1:option( Value, "localusers" ).optional = true ++s1:option( Value, "postauthproxy" ).optional = true ++s1:option( Value, "postauthproxyport" ).optional = true ++s1:option( Value, "locationname" ).optional = true ++ ++ ++-- mac authentication ++s2 = m:section(TypedSection, "macauth") ++s2.anonymous = true ++ ++s2:option( Flag, "macauth" ) ++s2:option( Flag, "macallowlocal" ) ++s2:option( DynamicList, "macallowed" ) ++ ++pw = s2:option( Value, "macpasswd" ) ++pw.optional = true ++pw.password = true ++ ++s2:option( Value, "macsuffix" ).optional = true ++ ++return m +diff --git a/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_network.lua b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_network.lua +new file mode 100644 +index 0000000..025bc17 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_network.lua +@@ -0,0 +1,56 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++local sys = require"luci.sys" ++local ip = require "luci.ip" ++ ++m = Map("coovachilli") ++ ++-- tun ++s1 = m:section(TypedSection, "tun") ++s1.anonymous = true ++ ++s1:option( Flag, "usetap" ) ++s1:option( Value, "tundev" ).optional = true ++s1:option( Value, "txqlen" ).optional = true ++ ++net = s1:option( Value, "net" ) ++for _, route in ipairs(ip.routes({ family = 4, type = 1 })) do ++ if route.dest:prefix() > 0 and route.dest:prefix() < 32 then ++ net:value( route.dest:string() ) ++ end ++end ++ ++s1:option( Value, "dynip" ).optional = true ++s1:option( Value, "statip" ).optional = true ++ ++s1:option( Value, "dns1" ).optional = true ++s1:option( Value, "dns2" ).optional = true ++s1:option( Value, "domain" ).optional = true ++ ++s1:option( Value, "ipup" ).optional = true ++s1:option( Value, "ipdown" ).optional = true ++ ++s1:option( Value, "conup" ).optional = true ++s1:option( Value, "condown" ).optional = true ++ ++ ++-- dhcp config ++s2 = m:section(TypedSection, "dhcp") ++s2.anonymous = true ++ ++dif = s2:option( Value, "dhcpif" ) ++for _, nif in ipairs(sys.net.devices()) do ++ if nif ~= "lo" then dif:value(nif) end ++end ++ ++s2:option( Value, "dhcpmac" ).optional = true ++s2:option( Value, "lease" ).optional = true ++s2:option( Value, "dhcpstart" ).optional = true ++s2:option( Value, "dhcpend" ).optional = true ++ ++s2:option( Flag, "eapolenable" ) ++ ++ ++return m +diff --git a/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_radius.lua b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_radius.lua +new file mode 100644 +index 0000000..e2cbe49 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/luasrc/model/cbi/coovachilli_radius.lua +@@ -0,0 +1,55 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Licensed to the public under the Apache License 2.0. ++ ++m = Map("coovachilli") ++ ++-- radius server ++s1 = m:section(TypedSection, "radius") ++s1.anonymous = true ++ ++s1:option( Value, "radiusserver1" ) ++s1:option( Value, "radiusserver2" ) ++s1:option( Value, "radiussecret" ).password = true ++ ++s1:option( Value, "radiuslisten" ).optional = true ++s1:option( Value, "radiusauthport" ).optional = true ++s1:option( Value, "radiusacctport" ).optional = true ++ ++s1:option( Value, "radiusnasid" ).optional = true ++s1:option( Value, "radiusnasip" ).optional = true ++ ++s1:option( Value, "radiuscalled" ).optional = true ++s1:option( Value, "radiuslocationid" ).optional = true ++s1:option( Value, "radiuslocationname" ).optional = true ++ ++s1:option( Value, "radiusnasporttype" ).optional = true ++ ++s1:option( Flag, "radiusoriginalurl" ) ++ ++s1:option( Value, "adminuser" ).optional = true ++rs = s1:option( Value, "adminpassword" ) ++rs.optional = true ++rs.password = true ++ ++s1:option( Flag, "swapoctets" ) ++s1:option( Flag, "openidauth" ) ++s1:option( Flag, "wpaguests" ) ++s1:option( Flag, "acctupdate" ) ++ ++s1:option( Value, "coaport" ).optional = true ++s1:option( Flag, "coanoipcheck" ) ++ ++ ++-- radius proxy ++s2 = m:section(TypedSection, "proxy") ++s2.anonymous = true ++ ++s2:option( Value, "proxylisten" ).optional = true ++s2:option( Value, "proxyport" ).optional = true ++s2:option( Value, "proxyclient" ).optional = true ++ps = s2:option( Value, "proxysecret" ) ++ps.optional = true ++ps.password = true ++ ++return m +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/ca/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/ca/coovachilli.po +new file mode 100644 +index 0000000..085d991 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/ca/coovachilli.po +@@ -0,0 +1,655 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:40+0200\n" ++"PO-Revision-Date: 2014-06-01 22:48+0200\n" ++"Last-Translator: Alex \n" ++"Language-Team: LANGUAGE \n" ++"Language: ca\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Configuració de xarxa" ++ ++msgid "RADIUS configuration" ++msgstr "Configuració RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Autenticació UAM i MAC" ++ ++#~ msgid "General configuration" ++#~ msgstr "Configuració general" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Configuració CoovaChilli general" ++ ++#~ msgid "Command socket" ++#~ msgstr "Socket de comanda" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "SocketUNIX usat per comunicació amb chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Configuració d'interval de refresc" ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Re-llegeix el fitxer de configuració i les consultes DNS cada interval " ++#~ "segons. Això té el mateix efecte que enviar el senyal HUP. Si l'interval " ++#~ "és 0 (zero) es deshabilita la funció." ++ ++#~ msgid "Pid file" ++#~ msgstr "Fitxer PID" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "Nom de fitxer on posar la ID de procés" ++ ++#~ msgid "State directory" ++#~ msgstr "Directori d'estat" ++ ++#~ msgid "Directory of non-volatile data" ++#~ msgstr "Directori de dades no volàtils" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "Configuració TUN/TAP" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Configuració de xarxa/tun" ++ ++#~ msgid "Network down script" ++#~ msgstr "Script de baixada de xarxa" ++ ++#~ msgid "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++#~ msgstr "" ++#~ "Script executat quan es mou una sessió des de l'estat autoritzat a no " ++#~ "autoritzat" ++ ++#~ msgid "Network up script" ++#~ msgstr "Script de pujada de xarxa" ++ ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "Script executat després que la interfície de xarxa tun s'hagi alçat" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Servidor DNS primari" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Servidor DNS secundari" ++ ++#~ msgid "Domain name" ++#~ msgstr "Nom de domini" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "" ++#~ "S'utilitza per informar el client sobre el no mde domini a utilitzar per " ++#~ "les consultes DNS" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Bateria d'adreces IP dinàmiques" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Especifica una bateria d'adreces IP dinàmiques" ++ ++#~ msgid "IP down script" ++#~ msgstr "Scripts de baixada IP" ++ ++#~ msgid "Script executed after the tun network interface has been taken down" ++#~ msgstr "" ++#~ "Script executat després que s'hagi abaixat la interfície de xarxa tun" ++ ++#~ msgid "IP up script" ++#~ msgstr "Script de pujada IP" ++ ++#~ msgid "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++#~ msgstr "" ++#~ "Script executat després que s'hagi apujat la interfície de xarxa TUN/TAP" ++ ++#~ msgid "Uplink subnet" ++#~ msgstr "Subxarxa de pujada" ++ ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "Adreça de xarxa de la interfície d'enllaç de pujada (notació CIDR)" ++ ++#~ msgid "Static IP address pool" ++#~ msgstr "Bateria d'adreces IP estàtiques" ++ ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Especifica una bateria d'adreces IP estàtiques" ++ ++#~ msgid "TUN/TAP device" ++#~ msgstr "Dispositiu TUN/TAP" ++ ++#~ msgid "The specific device to use for the TUN/TAP interface" ++#~ msgstr "El dispositiu específic utilitzar per la interfície TUN/TAP" ++ ++#~ msgid "TX queue length" ++#~ msgstr "Llargària de la cua TX" ++ ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "La llargària de la cua TX per establir la interfície TUN/TAP" ++ ++#~ msgid "Use TAP device" ++#~ msgstr "Utilitza dispositiu TAP" ++ ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Utilitza la interfície TAP en comptes de TUN" ++ ++#~ msgid "DHCP configuration" ++#~ msgstr "Configuració DHCP" ++ ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Estebleix les opcions DHCP pels clients connectats" ++ ++#~ msgid "DHCP end number" ++#~ msgstr "Número final de DHCP" ++ ++#~ msgid "Where to stop assigning IP addresses (default 254)" ++#~ msgstr "Quan deixar d'assignar adreces IP (per defecte 254)" ++ ++#~ msgid "DHCP interface" ++#~ msgstr "Interfície DHCP" ++ ++#~ msgid "Ethernet interface to listen to for the downlink interface" ++#~ msgstr "" ++#~ "Interfície Ethernet per escoltar les connexions a la interfície de baixada" ++ ++#~ msgid "Listen MAC address" ++#~ msgstr "Escolta adreça MAC" ++ ++#~ msgid "" ++#~ "MAC address to listen to. If not specified the MAC address of the " ++#~ "interface will be used" ++#~ msgstr "" ++#~ "Adreça MAC per escoltar. Si no s'especifica, s'utilitzarà l'adreça MAC de " ++#~ "la interfície." ++ ++#~ msgid "DHCP start number" ++#~ msgstr "Número d'inici de DHCP" ++ ++#~ msgid "Where to start assigning IP addresses (default 10)" ++#~ msgstr "Quan començar a assignar adreces IP (per defecte 10)" ++ ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Activa IEEE 802.1x" ++ ++#~ msgid "Enable IEEE 802.1x authentication and listen for EAP requests" ++#~ msgstr "Activa l'autenticació IEEE 802.1x i escolta peticions EAP" ++ ++#~ msgid "Leasetime" ++#~ msgstr "Temps de Lease" ++ ++#~ msgid "Use a DHCP lease of seconds (default 600)" ++#~ msgstr "Utilitza un lease de segons (per defecte 600)" ++ ++#~ msgid "Allow session update through RADIUS" ++#~ msgstr "Permet l'actualització de sessió a través de RADIUS" ++ ++#~ msgid "" ++#~ "Allow updating of session parameters with RADIUS attributes sent in " ++#~ "Accounting-Response" ++#~ msgstr "" ++#~ "Permet l'actualització dels paràmetres de sessió amb atributs RADIUS " ++#~ "enviats per Accounting-Response" ++ ++#~ msgid "Admin password" ++#~ msgstr "Contrasenya d'administració" ++ ++#~ msgid "" ++#~ "Password to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Contrasenya per utilitzar per autenticació d'usuari administrador per " ++#~ "agafar configurcions Chilli i establir una sessió \"system\" de dispositiu" ++ ++#~ msgid "Admin user" ++#~ msgstr "Usuari administrador" ++ ++#~ msgid "" ++#~ "User-name to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Nom d'usuari per utilitzar per autenticació d'usuari administrador per " ++#~ "agafar configurcions Chilli i establir una sessió \"system\" de dispositiu" ++ ++#~ msgid "Do not check disconnection requests" ++#~ msgstr "No comprovis les peticions de desconnexió" ++ ++#~ msgid "Do not check the source IP address of radius disconnect requests" ++#~ msgstr "" ++#~ "No comprovis l'origen de l'adreça IP de les peticions de desconnexió " ++#~ "RADIUS" ++ ++#~ msgid "RADIUS disconnect port" ++#~ msgstr "Port de desconnexió RADIUS" ++ ++#~ msgid "UDP port to listen to for accepting radius disconnect requests" ++#~ msgstr "Port UDP per acceptar peticions de desconnexió RADIUS" ++ ++#~ msgid "NAS IP" ++#~ msgstr "NAS IP" ++ ++#~ msgid "Value to use in RADIUS NAS-IP-Address attribute" ++#~ msgstr "Valor per utilitzar a l'atribut RADIUS adreça NAS-IP" ++ ++#~ msgid "NAS MAC" ++#~ msgstr "NAS MAC" ++ ++#~ msgid "MAC address value to use in RADIUS Called-Station-ID attribute" ++#~ msgstr "" ++#~ "Valor d'adreça MAC per utilitzar a l'atribiut RADIUS Called-Station-ID" ++ ++#~ msgid "Allow OpenID authentication" ++#~ msgstr "Permet autenticació OpenID" ++ ++#~ msgid "" ++#~ "Allows OpenID authentication by sending ChilliSpot-Config=allow-" ++#~ "openidauth in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Permet autenticació OpenID enviant ChilliSpot-Config=allow-openidauth als " ++#~ "Access-Requests de RADIUS" ++ ++#~ msgid "RADIUS accounting port" ++#~ msgstr "Port d'accounting RADIUS" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius accounting requests (default 1813)" ++#~ msgstr "" ++#~ "Port UDP a utilitzar per les peticions d'accounting RADIUS (per defecte " ++#~ "1813)" ++ ++#~ msgid "RADIUS authentication port" ++#~ msgstr "Port d'autenticació RADIUS" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius authentication requests (default " ++#~ "1812)" ++#~ msgstr "" ++#~ "Port UDP a utilitzar per les peticions d'autenticació RADIUS (per defecte " ++#~ "1812)" ++ ++#~ msgid "Option radiuscalled" ++#~ msgstr "Opció radiuscalled" ++ ++#~ msgid "RADIUS listen address" ++#~ msgstr "Adreça per rebre connexions RADIUS" ++ ++#~ msgid "Local interface IP address to use for the radius interface" ++#~ msgstr "Adreça IP d'interfície local per utilitzar per la interfície RADIUS" ++ ++#~ msgid "RADIUS location ID" ++#~ msgstr "ID de localització RADIUS" ++ ++#~ msgid "WISPr Location ID" ++#~ msgstr "ID de localització WISPr" ++ ++#~ msgid "RADIUS location name" ++#~ msgstr "Nom de localització RADIUS" ++ ++#~ msgid "WISPr Location Name" ++#~ msgstr "Nom de localització WISPr" ++ ++#~ msgid "NAS ID" ++#~ msgstr "NAS ID" ++ ++#~ msgid "Network access server identifier" ++#~ msgstr "Identificació de servidor d'accés de xarxa" ++ ++#~ msgid "Option radiusnasip" ++#~ msgstr "Opció radiusnasip" ++ ++#~ msgid "NAS port type" ++#~ msgstr "Tipus de port NAS" ++ ++#~ msgid "" ++#~ "Value of NAS-Port-Type attribute. Defaults to 19 (Wireless-IEEE-802.11)" ++#~ msgstr "" ++#~ "Valor de l'atribut NAS-Port-Type. Per defecte 19 (Wireless-IEEE-802.11)" ++ ++#~ msgid "Send RADIUS VSA" ++#~ msgstr "Envia RADIUS VSA" ++ ++#~ msgid "Send the ChilliSpot-OriginalURL RADIUS VSA in Access-Request" ++#~ msgstr "Envia el RADIUS VSA ChilliSpot-OriginalURl al Access-Request" ++ ++#~ msgid "RADIUS secret" ++#~ msgstr "Secret RADIUS" ++ ++#~ msgid "Radius shared secret for both servers" ++#~ msgstr "Secret compartit RADIUS pels dos servidors" ++ ++#~ msgid "RADIUS server 1" ++#~ msgstr "Servidor RADIUS 1" ++ ++#~ msgid "The IP address of radius server 1" ++#~ msgstr "L'adreça IP del servidor RADIUS 1" ++ ++#~ msgid "RADIUS server 2" ++#~ msgstr "Servidor RADIUS 2" ++ ++#~ msgid "The IP address of radius server 2" ++#~ msgstr "L'adreça IP del servidor RADIUS 2" ++ ++#~ msgid "Swap octets" ++#~ msgstr "Intercanvia octets" ++ ++#~ msgid "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++#~ msgstr "" ++#~ "Intercanvia el significat dels \"octets d'entrada\" i els \"octets de " ++#~ "sortida\" com es relacionen els atributs RADIUS" ++ ++#~ msgid "Allow WPA guests" ++#~ msgstr "Permet convidats WPA" ++ ++#~ msgid "" ++#~ "Allows WPA Guest authentication by sending ChilliSpot-Config=allow-wpa-" ++#~ "guests in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Permet l'autenticació de convidats WPA enviant un ChilliSpot-Config=allow-" ++#~ "wpa-guests als Access-Requests de RADIUS" ++ ++#~ msgid "Proxy client" ++#~ msgstr "Client proxy" ++ ++#~ msgid "" ++#~ "IP address from which radius requests are accepted. If omitted the server " ++#~ "will not accept radius requests" ++#~ msgstr "" ++#~ "Adreça IP des de la qual s'accepten les peticions RADIUS. Si s'omet, el " ++#~ "servidor no acceptarà peticions RADIUS" ++ ++#~ msgid "Proxy listen address" ++#~ msgstr "Adreça que rep connexions del proxy" ++ ++#~ msgid "Local interface IP address to use for accepting radius requests" ++#~ msgstr "" ++#~ "L'adreça IP de la interfície local a utilitzar per acceptar peticions " ++#~ "RADIUS" ++ ++#~ msgid "Proxy port" ++#~ msgstr "Port proxy" ++ ++#~ msgid "UDP Port to listen to for accepting radius requests" ++#~ msgstr "Port UDP a rebre connexions per acceptar peticions RADIUS" ++ ++#~ msgid "Proxy secret" ++#~ msgstr "Secret de proxy" ++ ++#~ msgid "Radius shared secret for clients" ++#~ msgstr "Secret compartit de RADIUS pels clients" ++ ++#~ msgid "UAM configuration" ++#~ msgstr "Configuració UAM" ++ ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Preferències de Mètode de Configuració Unificat" ++ ++#~ msgid "Use Chilli XML" ++#~ msgstr "Utilitza XML Chilli" ++ ++#~ msgid "Return the so-called Chilli XML along with WISPr XML" ++#~ msgstr "Retorna l'XML Chilli juntament amb l'XML WISPr" ++ ++#~ msgid "Default idle timeout" ++#~ msgstr "Temps d'espera d'inactivitat màxim per defecte" ++ ++#~ msgid "Default idle timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Temps d'espera d'inactivitat màxim per defecte excepte si s'estableix pel " ++#~ "RADIUS (per defecte 0)" ++ ++#~ msgid "Default interim interval" ++#~ msgstr "Interval provisional predeterminat" ++ ++#~ msgid "" ++#~ "Default interim-interval for RADIUS accounting unless otherwise set by " ++#~ "RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Interval provisional predeterminat per accounting RADIUS excepte si " ++#~ "s'estableix pel RADIUS (per defecte 0)" ++ ++#~ msgid "Default session timeout" ++#~ msgstr "Temps d'espera màxim de sessió per defecte" ++ ++#~ msgid "" ++#~ "Default session timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Temps d'espera màxim de sessió per defecte excepte si s'estableix pel " ++#~ "RADIUS (per defecte 0)" ++ ++#~ msgid "Inspect DNS traffic" ++#~ msgstr "Inspeccions tràfic DNS" ++ ++#~ msgid "" ++#~ "Inspect DNS packets and drop responses with any non- A, CNAME, SOA, or MX " ++#~ "records to prevent dns tunnels (experimental)" ++#~ msgstr "" ++#~ "Inspecciona paquets DNS i descarta ls respostes per qualsevol registre " ++#~ "que no sigui A, CNAME, SOA o MX per prevenir túnels DNS (experimental)" ++ ++#~ msgid "Local users file" ++#~ msgstr "Fitxers d'usuaris local" ++ ++#~ msgid "" ++#~ "A colon seperated file containing usernames and passwords of locally " ++#~ "authenticated users" ++#~ msgstr "" ++#~ "Un fitxer contenint usuaris i contrasenyes separats per punts d'usuaris " ++#~ "autenticats localment" ++ ++#~ msgid "Location name" ++#~ msgstr "Nom de localització" ++ ++#~ msgid "Human readable location name used in JSON interface" ++#~ msgstr "Nom de localització llegible utilitzat en l'interfície JSON" ++ ++#~ msgid "Do not redirect to UAM server" ++#~ msgstr "No readrecis al servidor UAM" ++ ++#~ msgid "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++#~ msgstr "" ++#~ "No retornis al servidor UAM amb quan s'iniciï la sessió amb èxit, " ++#~ "readreça només a la URL original" ++ ++#~ msgid "Do not do WISPr" ++#~ msgstr "No facis WISPr" ++ ++#~ msgid "Do not do any WISPr XML, assume the back-end is doing this instead" ++#~ msgstr "No facis cap XML WISPr, assumeix que el back-end ho està fent" ++ ++#~ msgid "Post auth proxy" ++#~ msgstr "Proxy post autenticació" ++ ++#~ msgid "" ++#~ "Used with postauthproxyport to define a post authentication HTTP proxy " ++#~ "server" ++#~ msgstr "" ++#~ "Utilitzat amb postauthproxyport per definir una autenticació HTTP " ++#~ "posterior de proxy server" ++ ++#~ msgid "Post auth proxy port" ++#~ msgstr "Port proxy post autenticació" ++ ++#~ msgid "" ++#~ "Used with postauthproxy to define a post authentication HTTP proxy server" ++#~ msgstr "" ++#~ "Utilitzat amb postauthproxy per definir un servidor proxy HTTP " ++#~ "d'autenticació posterior" ++ ++#~ msgid "Allowed resources" ++#~ msgstr "Recursos permesos" ++ ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "" ++#~ "Llista dels recursos que el client pot accedir sense autenticar-se primer" ++ ++#~ msgid "Allow any DNS server" ++#~ msgstr "Permet qualsevol servidor DNS" ++ ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "Permet qualsevol servidor DNS per clients no autenticats" ++ ++#~ msgid "Allow any IP address" ++#~ msgstr "Permet qualsevol adreça IP" ++ ++#~ msgid "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++#~ msgstr "" ++#~ "Permet que els clients utilitzin qualsevol configuració IP que vulguin " ++#~ "fent ARP spoofind (experimental)" ++ ++#~ msgid "Allowed domains" ++#~ msgstr "Dominis permesos" ++ ++#~ msgid "" ++#~ "Defines a list of domain names to automatically add to the walled garden" ++#~ msgstr "" ++#~ "Defineix una llista de noms de domini per afegir automàticament al jardí " ++#~ "tancat" ++ ++#~ msgid "UAM homepage" ++#~ msgstr "Pàgina d'inici UAM" ++ ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "URL de la pàgina d'inici per readreçar usuari no autenticats" ++ ++#~ msgid "UAM static content port" ++#~ msgstr "Port de contingut estàtic UAM" ++ ++#~ msgid "TCP port to bind to for only serving embedded content" ++#~ msgstr "Port TCP on escoltar per servir només contingut empotrat" ++ ++#~ msgid "UAM listening address" ++#~ msgstr "Adreça per on escoltar UAM" ++ ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "Adreça IP on escoltar pels l'autenticació dels clients" ++ ++#~ msgid "UAM logout IP" ++#~ msgstr "IP de final de sessió UAM" ++ ++#~ msgid "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++#~ msgstr "" ++#~ "Utilitza aquesta adreça IP per finalitzar la sessió d'un que hi accedeix " ++#~ "instantàniament (per defecte 1.1.1.1)" ++ ++#~ msgid "UAM listening port" ++#~ msgstr "Port on escoltar UAM" ++ ++#~ msgid "TCP port to bind to for authenticating clients (default 3990)" ++#~ msgstr "" ++#~ "Port TCP per on escoltar l'autenticació de clients (per defecte 3990)" ++ ++#~ msgid "UAM secret" ++#~ msgstr "Secret UAM" ++ ++#~ msgid "Shared secret between uamserver and chilli" ++#~ msgstr "Secret compartit entre el uamserver i el chilli" ++ ++#~ msgid "UAM server" ++#~ msgstr "Servidor UAM" ++ ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "URL del servidor URL a utilitzar per clients autenticats" ++ ++#~ msgid "UAM user interface" ++#~ msgstr "Interfície d'usuari UAM" ++ ++#~ msgid "" ++#~ "An init.d style program to handle local content on the uamuiport web " ++#~ "server" ++#~ msgstr "" ++#~ "Un programa de l'stil init.d per gestionar el contingut local al servidor " ++#~ "web uamuiport" ++ ++#~ msgid "Use status file" ++#~ msgstr "Utilitza fitxer d'estat" ++ ++#~ msgid "" ++#~ "Write the status of clients in a non-volatile state file (experimental)" ++#~ msgstr "" ++#~ "Escriu l'estat dels clients en un fitxer d'estat no volàtil (experimental)" ++ ++#~ msgid "WISPr login url" ++#~ msgstr "URL d'inici de sessió WISPr" ++ ++#~ msgid "Specific URL to be given in WISPr XML LoginURL" ++#~ msgstr "URL específica a donar a la URL d'inici de sessió de l'XML WISPr" ++ ++#~ msgid "CGI program" ++#~ msgstr "Programa CGI" ++ ++#~ msgid "" ++#~ "Executable to run as a CGI type program (like haserl) for URLs with " ++#~ "extention .chi" ++#~ msgstr "" ++#~ "Executable per executar com un programa de tipus CGI (com el haserl) per " ++#~ "URLs amb extensió .chi" ++ ++#~ msgid "Web content directory" ++#~ msgstr "Directori de contingut web" ++ ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "Directori on se situa el contingut web local empotrat" ++ ++#~ msgid "MAC configuration" ++#~ msgstr "Configuració MAC" ++ ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Configura l'autenticació MAC" ++ ++#~ msgid "Allowed MAC addresses" ++#~ msgstr "Adreces MAC permeses" ++ ++#~ msgid "List of MAC addresses for which MAC authentication will be performed" ++#~ msgstr "Llista d'adreces MAC per les que es realitzarà autenticació MAC" ++ ++#~ msgid "Authenticate locally allowed MACs" ++#~ msgstr "Autentica localment les MACs permeses" ++ ++#~ msgid "Authenticate allowed MAC addresses without the use of RADIUS" ++#~ msgstr "Autentica les adreces MAC permeses sense l'ús del RADIUS" ++ ++#~ msgid "Enable MAC authentification" ++#~ msgstr "Activa l'autenticació MAC" ++ ++#~ msgid "Try to authenticate all users based on their mac address alone" ++#~ msgstr "" ++#~ "Intenta autenticar tots els usuaris basats només en la seva adreça MAC" ++ ++#~ msgid "Password" ++#~ msgstr "Contrasenya" ++ ++#~ msgid "Password used when performing MAC authentication" ++#~ msgstr "Contrasenya utilitzada quan es realitza autenticació MAC" ++ ++#~ msgid "Suffix" ++#~ msgstr "Sufix" ++ ++#~ msgid "coovachilli_macauth_macsuffix_desc" ++#~ msgstr "" ++#~ "Sufix per afegir a l'adreça MAC per formar el nm d'usuari, que s'enviarà " ++#~ "al servidor RADIUS" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/cs/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/cs/coovachilli.po +new file mode 100644 +index 0000000..0dc5fc0 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/cs/coovachilli.po +@@ -0,0 +1,348 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-01-30 10:33+0200\n" ++"Last-Translator: Astran \n" ++"Language-Team: none\n" ++"Language: cs\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Nastavení sítě" ++ ++msgid "RADIUS configuration" ++msgstr "Nastavení RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "UAM a MAC ověřování" ++ ++#~ msgid "General configuration" ++#~ msgstr "Obecná konfigurace" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Obecné nastavení CoovaChilli" ++ ++#~ msgid "Command socket" ++#~ msgstr "Příkazový socket" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "UNIX socket, používaný pro komunikaci s chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Interval obnovení konfigurace" ++ ++#~ msgid "Pid file" ++#~ msgstr "PID soubor" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "Nastavení TUN/TAP" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Nastavení sítě/Tun" ++ ++#~ msgid "Network down script" ++#~ msgstr "Network down skript" ++ ++#~ msgid "Network up script" ++#~ msgstr "Network up skript" ++ ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "Skript, spuštěný po nahození síťového rozhraní TUN" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Primární DNS server" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Sekundární DNS server" ++ ++#~ msgid "Domain name" ++#~ msgstr "Doménové jméno" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Pool dynamických IP adres" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Urči rozsah, z něhož se budou přidělovat dynamické IP adresy" ++ ++#~ msgid "IP down script" ++#~ msgstr "IP down skript" ++ ++#~ msgid "IP up script" ++#~ msgstr "IP up skript" ++ ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "Síťová adresa uplink rozhraní (CIDR notace)" ++ ++#~ msgid "Static IP address pool" ++#~ msgstr "Pool statických IP adres" ++ ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Určuje rozsah, z něhož se budou přidělovat statické IP adresy" ++ ++#~ msgid "TX queue length" ++#~ msgstr "Délka odchozí fronty" ++ ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "Délka odchozí fronty na zařízení TUN/TAP" ++ ++#~ msgid "Use TAP device" ++#~ msgstr "Použít zařízení TAP" ++ ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Použít TAP rozhraní namísto TUN" ++ ++#~ msgid "DHCP configuration" ++#~ msgstr "Nastavení DHCP" ++ ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Nastavit možnosti DHCP pro příchozí klienty" ++ ++#~ msgid "DHCP end number" ++#~ msgstr "DHCP koncové číslo" ++ ++#~ msgid "Where to stop assigning IP addresses (default 254)" ++#~ msgstr "Kde přestat přidělovat IP adresy (standardně 254)" ++ ++#~ msgid "DHCP interface" ++#~ msgstr "DHCP rozhraní" ++ ++#~ msgid "Where to start assigning IP addresses (default 10)" ++#~ msgstr "Odkud začít přidělovat IP adresy" ++ ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Povolit IEEE 802.1x" ++ ++#~ msgid "Enable IEEE 802.1x authentication and listen for EAP requests" ++#~ msgstr "Povolit IEEE 802.1x autentizaci a naslouchat požadavkům EAP" ++ ++#~ msgid "Admin password" ++#~ msgstr "Administrátorské heslo" ++ ++#~ msgid "Admin user" ++#~ msgstr "Administrátorský uživatel" ++ ++#~ msgid "Do not check disconnection requests" ++#~ msgstr "Neověřovat požadavky na odpojení" ++ ++#~ msgid "Do not check the source IP address of radius disconnect requests" ++#~ msgstr "" ++#~ "Neověřovat zdrojovou IP adresu požadavku na odpojení protokolu RADIUS" ++ ++#~ msgid "NAS IP" ++#~ msgstr "NAS IP" ++ ++#~ msgid "NAS MAC" ++#~ msgstr "NAS MAC" ++ ++#~ msgid "Allow OpenID authentication" ++#~ msgstr "Povolit autentizaci pomocí OpenID" ++ ++#~ msgid "RADIUS server 1" ++#~ msgstr "RADIUS server 1" ++ ++#~ msgid "The IP address of radius server 1" ++#~ msgstr "IP adresa prvního radius serveru" ++ ++#~ msgid "RADIUS server 2" ++#~ msgstr "RADIUS server 2" ++ ++#~ msgid "The IP address of radius server 2" ++#~ msgstr "IP adresa druhého radius serveru" ++ ++#~ msgid "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++#~ msgstr "" ++#~ "Prohodit významy spojení \"vstupní oktety\" a \"výstupní oktety\", " ++#~ "vztahující se k atributům protokolu RADIUS" ++ ++#~ msgid "Allow WPA guests" ++#~ msgstr "Povolit WPA hosty" ++ ++#~ msgid "Proxy client" ++#~ msgstr "Proxy klient" ++ ++#~ msgid "" ++#~ "IP address from which radius requests are accepted. If omitted the server " ++#~ "will not accept radius requests" ++#~ msgstr "" ++#~ "IP adresa, ze které budou přijímány požadavky radius. Pokud necháte " ++#~ "prázdné, server nebude přijímat požadavky protokolu RADIUS." ++ ++#~ msgid "Proxy listen address" ++#~ msgstr "Naslouchající adresa Proxy" ++ ++#~ msgid "Local interface IP address to use for accepting radius requests" ++#~ msgstr "" ++#~ "IP adresa místního rozhraní, určená pro naslouchání požadavkům protokolu " ++#~ "RADIUS" ++ ++#~ msgid "Proxy port" ++#~ msgstr "Port Proxy" ++ ++#~ msgid "UDP Port to listen to for accepting radius requests" ++#~ msgstr "UDP port, určený pro naslouchání požadavkům protokolu RADIUS" ++ ++#~ msgid "UAM configuration" ++#~ msgstr "Konfigurace UAM" ++ ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Nastavení 'Unified Configuration Method'" ++ ++#~ msgid "Use Chilli XML" ++#~ msgstr "Použít Chilli XML" ++ ++#~ msgid "Default idle timeout" ++#~ msgstr "Výchozí časový limit nečinnosti" ++ ++#~ msgid "Default idle timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Výchozí časový limit nečinnosti, pokud nebyl nastaven pomocí RADIUS " ++#~ "(standardně 0)" ++ ++#~ msgid "Default session timeout" ++#~ msgstr "Výchozí časový limit sezení" ++ ++#~ msgid "" ++#~ "Default session timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Výchozí časový limit sezení, pokud není RADIUS nastaven jinak (standardně " ++#~ "0)" ++ ++#~ msgid "Inspect DNS traffic" ++#~ msgstr "Kontrolovat DNS provoz" ++ ++#~ msgid "Local users file" ++#~ msgstr "Soubor s místními uživateli" ++ ++#~ msgid "" ++#~ "A colon seperated file containing usernames and passwords of locally " ++#~ "authenticated users" ++#~ msgstr "" ++#~ "Soubor, obsahující uživatelská jména a hesla místně ověřovaných " ++#~ "uživatelů. Jednotlivé položky jsou odděleny dvojtečkou." ++ ++#~ msgid "Location name" ++#~ msgstr "Název umístění" ++ ++#~ msgid "Human readable location name used in JSON interface" ++#~ msgstr "Čitelný název umístění, používán v rozhraní JSON" ++ ++#~ msgid "Do not redirect to UAM server" ++#~ msgstr "Nepřesměrovávat na UAM server" ++ ++#~ msgid "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++#~ msgstr "" ++#~ "Při úspěšném přihlášení nevracet na UAM server, pouze přesměrovat na " ++#~ "původní URL" ++ ++#~ msgid "Do not do WISPr" ++#~ msgstr "Neprovádět WISPr" ++ ++#~ msgid "Allowed resources" ++#~ msgstr "Povolené zdroje" ++ ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "Seznam zdrojů, jež může klient využívat bez nutnosti autentizace" ++ ++#~ msgid "Allow any DNS server" ++#~ msgstr "Povolit libovolný DNS server" ++ ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "Povolí libovolný DNS server neověřeným klientům" ++ ++#~ msgid "Allow any IP address" ++#~ msgstr "Povolit libovolnou IP adresu" ++ ++#~ msgid "Allowed domains" ++#~ msgstr "Povolené domény" ++ ++#~ msgid "UAM homepage" ++#~ msgstr "Domovská stránka UAM" ++ ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "" ++#~ "URL domovské stránky, na kterou budou přesměrováni neověření uživatelé" ++ ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "IP adresa, na které naslouchat za účelem ověřování klientů" ++ ++#~ msgid "UAM logout IP" ++#~ msgstr "Odhlašovací IP UAM" ++ ++#~ msgid "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++#~ msgstr "" ++#~ "Adresa, sloužící k okamžitému odhlášení klienta, pokud na ní přistoupí " ++#~ "(standardně 1.1.1.1)" ++ ++#~ msgid "UAM listening port" ++#~ msgstr "Naslouchající port UAM" ++ ++#~ msgid "UAM server" ++#~ msgstr "UAM server" ++ ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "URL web serveru, sloužícího k ověřování klientů" ++ ++#~ msgid "UAM user interface" ++#~ msgstr "Uživatelské rozhraní UAM" ++ ++#~ msgid "Use status file" ++#~ msgstr "Použít stavový soubor" ++ ++#~ msgid "" ++#~ "Write the status of clients in a non-volatile state file (experimental)" ++#~ msgstr "" ++#~ "Zapisovat stavy klientů do stálého stavového souboru (experimentální)" ++ ++#~ msgid "WISPr login url" ++#~ msgstr "Přihlašovací URL WISPr" ++ ++#~ msgid "CGI program" ++#~ msgstr "CGI program" ++ ++#~ msgid "Web content directory" ++#~ msgstr "Adresář s webovým obsahem" ++ ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "Adresář, ve kterém je umístěn místní webový obsah." ++ ++#~ msgid "MAC configuration" ++#~ msgstr "Nastavení MAC" ++ ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Nastavit ověřování pomocí MAC" ++ ++#~ msgid "Allowed MAC addresses" ++#~ msgstr "Povolené MAC adresy" ++ ++#~ msgid "List of MAC addresses for which MAC authentication will be performed" ++#~ msgstr "Seznam MAC adres, pro které bude prováděno ověřování pomocí MAC" ++ ++#~ msgid "Authenticate locally allowed MACs" ++#~ msgstr "Ověřit lokálně povolené MAC" ++ ++#~ msgid "Authenticate allowed MAC addresses without the use of RADIUS" ++#~ msgstr "Ověří povolené MAC adresy bez použití protokolu RADIUS" ++ ++#~ msgid "Enable MAC authentification" ++#~ msgstr "Povolit ověřování pomocí MAC" ++ ++#~ msgid "Password" ++#~ msgstr "Heslo" ++ ++#~ msgid "Suffix" ++#~ msgstr "Přípona" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/de/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/de/coovachilli.po +new file mode 100644 +index 0000000..d8322db +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/de/coovachilli.po +@@ -0,0 +1,658 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-26 17:57+0200\n" ++"PO-Revision-Date: 2012-07-17 15:05+0200\n" ++"Last-Translator: Martin \n" ++"Language-Team: LANGUAGE \n" ++"Language: de\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Netzwerk-Konfiguration" ++ ++msgid "RADIUS configuration" ++msgstr "RADIUS Konfiguration" ++ ++msgid "UAM and MAC Authentication" ++msgstr "UAM- und MAC-Authentifizierung" ++ ++#~ msgid "General configuration" ++#~ msgstr "Allgemeine Einstellungen" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Allgemeine Einstellungen zu CoovaChilli" ++ ++#, fuzzy ++#~ msgid "Command socket" ++#~ msgstr "Eingabeschnittstelle" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "" ++#~ "UNIX socket der fuer die Kommunikation mit chilli_query benutzt wird" ++ ++#, fuzzy ++#~ msgid "Config refresh interval" ++#~ msgstr "Zeit zwischen neuladen der Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "Zeit zwischen neuladen der Konfiguration" ++ ++#~ msgid "Pid file" ++#~ msgstr "Pid-Datei" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "" ++#~ "Name der Datei, in der die Pid gespeichert wird" ++ ++#, fuzzy ++#~ msgid "State directory" ++#~ msgstr "Statisches Verzeichniss" ++ ++#~ msgid "Directory of non-volatile data" ++#~ msgstr "Verzeichniss für statische Daten" ++ ++#, fuzzy ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "TUN/TAP Konfiguration" ++ ++#, fuzzy ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Network down script" ++#~ msgstr "" ++#~ "Script, das nach einer Umwandlung von einer autorisierten zu einer " ++#~ "unautorisierten Sitzung ausgeführt wird" ++ ++#~ msgid "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++#~ msgstr "" ++#~ "Skript, das nach einer Umwandlung von einer autorisierten zu einer " ++#~ "unautorisierten Sitzung ausgeführt wird" ++ ++#~ msgid "Network up script" ++#~ msgstr "Netzwerk Up Skript" ++ ++#, fuzzy ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "Script, dass nach erfolgreicher tun - Verbindung ausgeführt wird" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Primärer DNS-Server" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Sekundärer DNS-Server" ++ ++#, fuzzy ++#~ msgid "Domain name" ++#~ msgstr "Domain Name" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "" ++#~ "Wird benutzt um Clients ueber den zu benutzenden Domain Namen fuer DNS " ++#~ "Anfragen zu informieren" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Dynamischer IP-Adressen Pool" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Legt einen Bereich von dynamischen IP-Adressen fest" ++ ++#~ msgid "IP down script" ++#~ msgstr "IP down Skript" ++ ++#, fuzzy ++#~ msgid "Script executed after the tun network interface has been taken down" ++#~ msgstr "" ++#~ "Script, das nach einer Umwandlung von einer autorisierten zu einer " ++#~ "unautorisierten Sitzung ausgeführt wird" ++ ++#, fuzzy ++#~ msgid "IP up script" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++#~ msgstr "Script, dass nach erfolgreicher tun - Verbindung ausgeführt wird" ++ ++#, fuzzy ++#~ msgid "Uplink subnet" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "" ++#~ "Zur Auflösung der Host-Namen benötigter DNS Server, die an den client " ++#~ "übertragen wird" ++ ++#, fuzzy ++#~ msgid "Static IP address pool" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Script, dass nach erfolgreicher tun - Verbindung ausgeführt wird" ++ ++#, fuzzy ++#~ msgid "TUN/TAP device" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "The specific device to use for the TUN/TAP interface" ++#~ msgstr "" ++#~ "Script, das nach einer Umwandlung von einer autorisierten zu einer " ++#~ "unautorisierten Sitzung ausgeführt wird" ++ ++#, fuzzy ++#~ msgid "TX queue length" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "" ++#~ "Script, das nach einer Umwandlung von einer autorisierten zu einer " ++#~ "unautorisierten Sitzung ausgeführt wird" ++ ++#, fuzzy ++#~ msgid "Use TAP device" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Script, dass nach erfolgreicher tun - Verbindung ausgeführt wird" ++ ++#, fuzzy ++#~ msgid "DHCP configuration" ++#~ msgstr "TUN/TAP Konfiguration" ++ ++#, fuzzy ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "DHCP end number" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Where to stop assigning IP addresses (default 254)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "DHCP interface" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Ethernet interface to listen to for the downlink interface" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Listen MAC address" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "MAC address to listen to. If not specified the MAC address of the " ++#~ "interface will be used" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "DHCP start number" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Where to start assigning IP addresses (default 10)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Enable IEEE 802.1x authentication and listen for EAP requests" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Leasetime" ++#~ msgstr "Vorhaltezeit" ++ ++#~ msgid "Use a DHCP lease of seconds (default 600)" ++#~ msgstr "Benutze eine DHCP-Vorhaltezeit in Sekunden (voreingestelllt 600)" ++ ++#~ msgid "Allow session update through RADIUS" ++#~ msgstr "Erlaube Sitzungsupdates durch RADIUS" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Allow updating of session parameters with RADIUS attributes sent in " ++#~ "Accounting-Response" ++#~ msgstr "" ++#~ "Erlaubt das Aktuallisieren der Sitzungsparameter mit RADIUS-attributen, " ++#~ "die im der Konten-Antwort enthalten sind" ++ ++#~ msgid "Admin password" ++#~ msgstr "Administratorkennwort" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Password to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Kennwort zur Administratoren-Authentifizierung um die chilli- " ++#~ "konfigurationen aufzunehmen und eine Systemsitzung fürs Gerät zu erstellen" ++ ++#, fuzzy ++#~ msgid "Admin user" ++#~ msgstr "Adminstratorenkennung" ++ ++#, fuzzy ++#~ msgid "" ++#~ "User-name to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "Benutzername des für Administration berechtigten Benutzers. " ++ ++#, fuzzy ++#~ msgid "Do not check disconnection requests" ++#~ msgstr "Ignoriere die Verbindungstrennungsanfragen" ++ ++#, fuzzy ++#~ msgid "Do not check the source IP address of radius disconnect requests" ++#~ msgstr "Prüft nicht die Quell-IP einer RADIUS Verbindungstrennungsanfrage." ++ ++#, fuzzy ++#~ msgid "RADIUS disconnect port" ++#~ msgstr "Port für die Verbindungstrennung" ++ ++#, fuzzy ++#~ msgid "UDP port to listen to for accepting radius disconnect requests" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "NAS IP" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Value to use in RADIUS NAS-IP-Address attribute" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "NAS MAC" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "MAC address value to use in RADIUS Called-Station-ID attribute" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Allow OpenID authentication" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Allows OpenID authentication by sending ChilliSpot-Config=allow-" ++#~ "openidauth in RADIUS Access-Requests" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS accounting port" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "The UDP port number to use for radius accounting requests (default 1813)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS authentication port" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "The UDP port number to use for radius authentication requests (default " ++#~ "1812)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Option radiuscalled" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS listen address" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Local interface IP address to use for the radius interface" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS location ID" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "WISPr Location ID" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS location name" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "WISPr Location Name" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "NAS ID" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Network access server identifier" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Option radiusnasip" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "NAS port type" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Value of NAS-Port-Type attribute. Defaults to 19 (Wireless-IEEE-802.11)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Send RADIUS VSA" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Send the ChilliSpot-OriginalURL RADIUS VSA in Access-Request" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS secret" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Radius shared secret for both servers" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS server 1" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "The IP address of radius server 1" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "RADIUS server 2" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "The IP address of radius server 2" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Swap octets" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Allow WPA guests" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Allows WPA Guest authentication by sending ChilliSpot-Config=allow-wpa-" ++#~ "guests in RADIUS Access-Requests" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "UAM configuration" ++#~ msgstr "TUN/TAP Konfiguration" ++ ++#, fuzzy ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Inspect DNS traffic" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Inspect DNS packets and drop responses with any non- A, CNAME, SOA, or MX " ++#~ "records to prevent dns tunnels (experimental)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Local users file" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "" ++#~ "A colon seperated file containing usernames and passwords of locally " ++#~ "authenticated users" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Human readable location name used in JSON interface" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Do not redirect to UAM server" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Do not do WISPr" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "Do not do any WISPr XML, assume the back-end is doing this instead" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Allowed resources" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Allow any DNS server" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "Allow any IP address" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Allowed domains" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Defines a list of domain names to automatically add to the walled garden" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "UAM homepage" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "UAM static content port" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "TCP port to bind to for only serving embedded content" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "UAM listening address" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "UAM logout IP" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "UAM listening port" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "TCP port to bind to for authenticating clients (default 3990)" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "UAM secret" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "Shared secret between uamserver and chilli" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "UAM server" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "UAM user interface" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "" ++#~ "An init.d style program to handle local content on the uamuiport web " ++#~ "server" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "WISPr login url" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Specific URL to be given in WISPr XML LoginURL" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "CGI program" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Executable to run as a CGI type program (like haserl) for URLs with " ++#~ "extention .chi" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Web content directory" ++#~ msgstr "Domain Name" ++ ++#, fuzzy ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "MAC configuration" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Allowed MAC addresses" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "List of MAC addresses for which MAC authentication will be performed" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Authenticate locally allowed MACs" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Authenticate allowed MAC addresses without the use of RADIUS" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Enable MAC authentification" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Try to authenticate all users based on their mac address alone" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Password" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Password used when performing MAC authentication" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "Suffix" ++#~ msgstr "Netzwerk/TUN Konfiguration" ++ ++#, fuzzy ++#~ msgid "coovachilli_macauth_macsuffix_desc" ++#~ msgstr "Netzwerk/TUN Konfiguration" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/el/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/el/coovachilli.po +new file mode 100644 +index 0000000..90d693d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/el/coovachilli.po +@@ -0,0 +1,50 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:40+0200\n" ++"PO-Revision-Date: 2012-03-19 15:27+0200\n" ++"Last-Translator: Vasilis \n" ++"Language-Team: LANGUAGE \n" ++"Language: el\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "" ++ ++#~ msgid "General configuration" ++#~ msgstr "Γενική παραμετροποίηση" ++ ++#~ msgid "DHCP configuration" ++#~ msgstr "Παραμετροποίηση DHCP" ++ ++#~ msgid "DHCP interface" ++#~ msgstr "Διεπαφή DHCP" ++ ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Ενεργοποίηση IEEE 802.1x" ++ ++#~ msgid "Admin password" ++#~ msgstr "Κωδικός πρόσβασης διαχειριστή" ++ ++#~ msgid "Location name" ++#~ msgstr "Όνομα τοποθεσίας" ++ ++#~ msgid "CGI program" ++#~ msgstr "Πρόγραμμα CGI" ++ ++#~ msgid "Password" ++#~ msgstr "Κωδικός πρόσβασης" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/en/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/en/coovachilli.po +new file mode 100644 +index 0000000..ebaa345 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/en/coovachilli.po +@@ -0,0 +1,639 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:36+0200\n" ++"PO-Revision-Date: 2012-03-18 05:30+0200\n" ++"Last-Translator: Anonymous Pootle User\n" ++"Language-Team: LANGUAGE \n" ++"Language: en\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "" ++ ++#, fuzzy ++#~ msgid "General configuration" ++#~ msgstr "General configuration" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "General CoovaChilli settings" ++ ++#~ msgid "Command socket" ++#~ msgstr "Command socket" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "UNIX socket used for communication with chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Config refresh interval" ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++ ++#~ msgid "Pid file" ++#~ msgstr "Pid file" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "Filename to put the process id" ++ ++#~ msgid "State directory" ++#~ msgstr "State directory" ++ ++#~ msgid "Directory of non-volatile data" ++#~ msgstr "Directory of non-volatile data" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "TUN/TAP configuration" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Network/Tun configuration" ++ ++#~ msgid "Network down script" ++#~ msgstr "Network down script" ++ ++#~ msgid "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++#~ msgstr "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++ ++#~ msgid "Network up script" ++#~ msgstr "Network up script" ++ ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "Script executed after the tun network interface has been brought up" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Primary DNS Server" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Secondary DNS Server" ++ ++#~ msgid "Domain name" ++#~ msgstr "Domain name" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Dynamic IP address pool" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Specifies a pool of dynamic IP addresses" ++ ++#~ msgid "IP down script" ++#~ msgstr "IP down script" ++ ++#~ msgid "Script executed after the tun network interface has been taken down" ++#~ msgstr "Script executed after the tun network interface has been taken down" ++ ++#~ msgid "IP up script" ++#~ msgstr "IP up script" ++ ++#~ msgid "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++#~ msgstr "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++ ++#~ msgid "Uplink subnet" ++#~ msgstr "Uplink subnet" ++ ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "Network address of the uplink interface (CIDR notation)" ++ ++#~ msgid "Static IP address pool" ++#~ msgstr "Static IP address pool" ++ ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Specifies a pool of static IP addresses" ++ ++#~ msgid "TUN/TAP device" ++#~ msgstr "TUN/TAP device" ++ ++#~ msgid "The specific device to use for the TUN/TAP interface" ++#~ msgstr "The specific device to use for the TUN/TAP interface" ++ ++#~ msgid "TX queue length" ++#~ msgstr "TX queue length" ++ ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "The TX queue length to set on the TUN/TAP interface" ++ ++#~ msgid "Use TAP device" ++#~ msgstr "Use TAP device" ++ ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Use the TAP interface instead of TUN" ++ ++#~ msgid "DHCP configuration" ++#~ msgstr "DHCP configuration" ++ ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Set DHCP options for connecting clients" ++ ++#~ msgid "DHCP end number" ++#~ msgstr "DHCP end number" ++ ++#~ msgid "Where to stop assigning IP addresses (default 254)" ++#~ msgstr "Where to stop assigning IP addresses (default 254)" ++ ++#~ msgid "DHCP interface" ++#~ msgstr "DHCP interface" ++ ++#~ msgid "Ethernet interface to listen to for the downlink interface" ++#~ msgstr "Ethernet interface to listen to for the downlink interface" ++ ++#~ msgid "Listen MAC address" ++#~ msgstr "Listen MAC address" ++ ++#~ msgid "" ++#~ "MAC address to listen to. If not specified the MAC address of the " ++#~ "interface will be used" ++#~ msgstr "" ++#~ "MAC address to listen to. If not specified the MAC address of the " ++#~ "interface will be used" ++ ++#~ msgid "DHCP start number" ++#~ msgstr "DHCP start number" ++ ++#~ msgid "Where to start assigning IP addresses (default 10)" ++#~ msgstr "Where to start assigning IP addresses (default 10)" ++ ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Enable IEEE 802.1x" ++ ++#~ msgid "Enable IEEE 802.1x authentication and listen for EAP requests" ++#~ msgstr "Enable IEEE 802.1x authentication and listen for EAP requests" ++ ++#~ msgid "Leasetime" ++#~ msgstr "Leasetime" ++ ++#~ msgid "Use a DHCP lease of seconds (default 600)" ++#~ msgstr "Use a DHCP lease of seconds (default 600)" ++ ++#~ msgid "Allow session update through RADIUS" ++#~ msgstr "Allow session update through RADIUS" ++ ++#~ msgid "" ++#~ "Allow updating of session parameters with RADIUS attributes sent in " ++#~ "Accounting-Response" ++#~ msgstr "" ++#~ "Allow updating of session parameters with RADIUS attributes sent in " ++#~ "Accounting-Response" ++ ++#~ msgid "Admin password" ++#~ msgstr "Admin password" ++ ++#~ msgid "" ++#~ "Password to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Password to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++ ++#~ msgid "Admin user" ++#~ msgstr "Admin user" ++ ++#~ msgid "" ++#~ "User-name to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "User-name to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++ ++#~ msgid "Do not check disconnection requests" ++#~ msgstr "Do not check disconnection requests" ++ ++#~ msgid "Do not check the source IP address of radius disconnect requests" ++#~ msgstr "Do not check the source IP address of radius disconnect requests" ++ ++#~ msgid "RADIUS disconnect port" ++#~ msgstr "RADIUS disconnect port" ++ ++#~ msgid "UDP port to listen to for accepting radius disconnect requests" ++#~ msgstr "UDP port to listen to for accepting radius disconnect requests" ++ ++#~ msgid "NAS IP" ++#~ msgstr "NAS IP" ++ ++#~ msgid "Value to use in RADIUS NAS-IP-Address attribute" ++#~ msgstr "Value to use in RADIUS NAS-IP-Address attribute" ++ ++#~ msgid "NAS MAC" ++#~ msgstr "NAS MAC" ++ ++#~ msgid "MAC address value to use in RADIUS Called-Station-ID attribute" ++#~ msgstr "MAC address value to use in RADIUS Called-Station-ID attribute" ++ ++#~ msgid "Allow OpenID authentication" ++#~ msgstr "Allow OpenID authentication" ++ ++#~ msgid "" ++#~ "Allows OpenID authentication by sending ChilliSpot-Config=allow-" ++#~ "openidauth in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Allows OpenID authentication by sending ChilliSpot-Config=allow-" ++#~ "openidauth in RADIUS Access-Requests" ++ ++#~ msgid "RADIUS accounting port" ++#~ msgstr "RADIUS accounting port" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius accounting requests (default 1813)" ++#~ msgstr "" ++#~ "The UDP port number to use for radius accounting requests (default 1813)" ++ ++#~ msgid "RADIUS authentication port" ++#~ msgstr "RADIUS authentication port" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius authentication requests (default " ++#~ "1812)" ++#~ msgstr "" ++#~ "The UDP port number to use for radius authentication requests (default " ++#~ "1812)" ++ ++#~ msgid "Option radiuscalled" ++#~ msgstr "Option radiuscalled" ++ ++#~ msgid "RADIUS listen address" ++#~ msgstr "RADIUS listen address" ++ ++#~ msgid "Local interface IP address to use for the radius interface" ++#~ msgstr "Local interface IP address to use for the radius interface" ++ ++#~ msgid "RADIUS location ID" ++#~ msgstr "RADIUS location ID" ++ ++#~ msgid "WISPr Location ID" ++#~ msgstr "WISPr Location ID" ++ ++#~ msgid "RADIUS location name" ++#~ msgstr "RADIUS location name" ++ ++#~ msgid "WISPr Location Name" ++#~ msgstr "WISPr Location Name" ++ ++#~ msgid "NAS ID" ++#~ msgstr "NAS ID" ++ ++#~ msgid "Network access server identifier" ++#~ msgstr "Network access server identifier" ++ ++#~ msgid "Option radiusnasip" ++#~ msgstr "Option radiusnasip" ++ ++#~ msgid "NAS port type" ++#~ msgstr "NAS port type" ++ ++#~ msgid "" ++#~ "Value of NAS-Port-Type attribute. Defaults to 19 (Wireless-IEEE-802.11)" ++#~ msgstr "" ++#~ "Value of NAS-Port-Type attribute. Defaults to 19 (Wireless-IEEE-802.11)" ++ ++#~ msgid "Send RADIUS VSA" ++#~ msgstr "Send RADIUS VSA" ++ ++#~ msgid "Send the ChilliSpot-OriginalURL RADIUS VSA in Access-Request" ++#~ msgstr "Send the ChilliSpot-OriginalURL RADIUS VSA in Access-Request" ++ ++#~ msgid "RADIUS secret" ++#~ msgstr "RADIUS secret" ++ ++#~ msgid "Radius shared secret for both servers" ++#~ msgstr "Radius shared secret for both servers" ++ ++#~ msgid "RADIUS server 1" ++#~ msgstr "RADIUS server 1" ++ ++#~ msgid "The IP address of radius server 1" ++#~ msgstr "The IP address of radius server 1" ++ ++#~ msgid "RADIUS server 2" ++#~ msgstr "RADIUS server 2" ++ ++#~ msgid "The IP address of radius server 2" ++#~ msgstr "The IP address of radius server 2" ++ ++#~ msgid "Swap octets" ++#~ msgstr "Swap octets" ++ ++#~ msgid "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++#~ msgstr "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++ ++#~ msgid "Allow WPA guests" ++#~ msgstr "Allow WPA guests" ++ ++#~ msgid "" ++#~ "Allows WPA Guest authentication by sending ChilliSpot-Config=allow-wpa-" ++#~ "guests in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Allows WPA Guest authentication by sending ChilliSpot-Config=allow-wpa-" ++#~ "guests in RADIUS Access-Requests" ++ ++#~ msgid "Proxy client" ++#~ msgstr "Proxy client" ++ ++#~ msgid "" ++#~ "IP address from which radius requests are accepted. If omitted the server " ++#~ "will not accept radius requests" ++#~ msgstr "" ++#~ "IP address from which radius requests are accepted. If omitted the server " ++#~ "will not accept radius requests" ++ ++#~ msgid "Proxy listen address" ++#~ msgstr "Proxy listen address" ++ ++#~ msgid "Local interface IP address to use for accepting radius requests" ++#~ msgstr "Local interface IP address to use for accepting radius requests" ++ ++#~ msgid "Proxy port" ++#~ msgstr "Proxy port" ++ ++#~ msgid "UDP Port to listen to for accepting radius requests" ++#~ msgstr "UDP Port to listen to for accepting radius requests" ++ ++#~ msgid "Proxy secret" ++#~ msgstr "Proxy secret" ++ ++#~ msgid "Radius shared secret for clients" ++#~ msgstr "Radius shared secret for clients" ++ ++#~ msgid "UAM configuration" ++#~ msgstr "UAM configuration" ++ ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Unified Configuration Method settings" ++ ++#~ msgid "Use Chilli XML" ++#~ msgstr "Use Chilli XML" ++ ++#~ msgid "Return the so-called Chilli XML along with WISPr XML" ++#~ msgstr "Return the so-called Chilli XML along with WISPr XML" ++ ++#~ msgid "Default idle timeout" ++#~ msgstr "Default idle timeout" ++ ++#~ msgid "Default idle timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "Default idle timeout unless otherwise set by RADIUS (defaults to 0)" ++ ++#~ msgid "Default interim interval" ++#~ msgstr "Default interim interval" ++ ++#~ msgid "" ++#~ "Default interim-interval for RADIUS accounting unless otherwise set by " ++#~ "RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Default interim-interval for RADIUS accounting unless otherwise set by " ++#~ "RADIUS (defaults to 0)" ++ ++#~ msgid "Default session timeout" ++#~ msgstr "Default session timeout" ++ ++#~ msgid "" ++#~ "Default session timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Default session timeout unless otherwise set by RADIUS (defaults to 0)" ++ ++#~ msgid "Inspect DNS traffic" ++#~ msgstr "Inspect DNS traffic" ++ ++#~ msgid "" ++#~ "Inspect DNS packets and drop responses with any non- A, CNAME, SOA, or MX " ++#~ "records to prevent dns tunnels (experimental)" ++#~ msgstr "" ++#~ "Inspect DNS packets and drop responses with any non- A, CNAME, SOA, or MX " ++#~ "records to prevent dns tunnels (experimental)" ++ ++#~ msgid "Local users file" ++#~ msgstr "Local users file" ++ ++#~ msgid "" ++#~ "A colon seperated file containing usernames and passwords of locally " ++#~ "authenticated users" ++#~ msgstr "" ++#~ "A colon seperated file containing usernames and passwords of locally " ++#~ "authenticated users" ++ ++#~ msgid "Location name" ++#~ msgstr "Location name" ++ ++#~ msgid "Human readable location name used in JSON interface" ++#~ msgstr "Human readable location name used in JSON interface" ++ ++#~ msgid "Do not redirect to UAM server" ++#~ msgstr "Do not redirect to UAM server" ++ ++#~ msgid "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++#~ msgstr "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++ ++#~ msgid "Do not do WISPr" ++#~ msgstr "Do not do WISPr" ++ ++#~ msgid "Do not do any WISPr XML, assume the back-end is doing this instead" ++#~ msgstr "Do not do any WISPr XML, assume the back-end is doing this instead" ++ ++#~ msgid "Post auth proxy" ++#~ msgstr "Post auth proxy" ++ ++#~ msgid "" ++#~ "Used with postauthproxyport to define a post authentication HTTP proxy " ++#~ "server" ++#~ msgstr "" ++#~ "Used with postauthproxyport to define a post authentication HTTP proxy " ++#~ "server" ++ ++#~ msgid "Post auth proxy port" ++#~ msgstr "Post auth proxy port" ++ ++#~ msgid "" ++#~ "Used with postauthproxy to define a post authentication HTTP proxy server" ++#~ msgstr "" ++#~ "Used with postauthproxy to define a post authentication HTTP proxy server" ++ ++#~ msgid "Allowed resources" ++#~ msgstr "Allowed resources" ++ ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "" ++#~ "List of resources the client can access without first authenticating" ++ ++#~ msgid "Allow any DNS server" ++#~ msgstr "Allow any DNS server" ++ ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "Allow any DNS server for unauthenticated clients" ++ ++#~ msgid "Allow any IP address" ++#~ msgstr "Allow any IP address" ++ ++#~ msgid "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++#~ msgstr "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++ ++#~ msgid "Allowed domains" ++#~ msgstr "Allowed domains" ++ ++#~ msgid "" ++#~ "Defines a list of domain names to automatically add to the walled garden" ++#~ msgstr "" ++#~ "Defines a list of domain names to automatically add to the walled garden" ++ ++#~ msgid "UAM homepage" ++#~ msgstr "UAM homepage" ++ ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "URL of homepage to redirect unauthenticated users to" ++ ++#~ msgid "UAM static content port" ++#~ msgstr "UAM static content port" ++ ++#~ msgid "TCP port to bind to for only serving embedded content" ++#~ msgstr "TCP port to bind to for only serving embedded content" ++ ++#~ msgid "UAM listening address" ++#~ msgstr "UAM listening address" ++ ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "IP address to listen to for authentication of clients" ++ ++#~ msgid "UAM logout IP" ++#~ msgstr "UAM logout IP" ++ ++#~ msgid "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++#~ msgstr "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++ ++#~ msgid "UAM listening port" ++#~ msgstr "UAM listening port" ++ ++#~ msgid "TCP port to bind to for authenticating clients (default 3990)" ++#~ msgstr "TCP port to bind to for authenticating clients (default 3990)" ++ ++#~ msgid "UAM secret" ++#~ msgstr "UAM secret" ++ ++#~ msgid "Shared secret between uamserver and chilli" ++#~ msgstr "Shared secret between uamserver and chilli" ++ ++#~ msgid "UAM server" ++#~ msgstr "UAM server" ++ ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "URL of web server to use for authenticating clients" ++ ++#~ msgid "UAM user interface" ++#~ msgstr "UAM user interface" ++ ++#~ msgid "" ++#~ "An init.d style program to handle local content on the uamuiport web " ++#~ "server" ++#~ msgstr "" ++#~ "An init.d style program to handle local content on the uamuiport web " ++#~ "server" ++ ++#~ msgid "Use status file" ++#~ msgstr "Use status file" ++ ++#~ msgid "" ++#~ "Write the status of clients in a non-volatile state file (experimental)" ++#~ msgstr "" ++#~ "Write the status of clients in a non-volatile state file (experimental)" ++ ++#~ msgid "WISPr login url" ++#~ msgstr "WISPr login url" ++ ++#~ msgid "Specific URL to be given in WISPr XML LoginURL" ++#~ msgstr "Specific URL to be given in WISPr XML LoginURL" ++ ++#~ msgid "CGI program" ++#~ msgstr "CGI program" ++ ++#~ msgid "" ++#~ "Executable to run as a CGI type program (like haserl) for URLs with " ++#~ "extention .chi" ++#~ msgstr "" ++#~ "Executable to run as a CGI type program (like haserl) for URLs with " ++#~ "extention .chi" ++ ++#~ msgid "Web content directory" ++#~ msgstr "Web content directory" ++ ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "Directory where embedded local web content is placed" ++ ++#~ msgid "MAC configuration" ++#~ msgstr "MAC configuration" ++ ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Configure MAC authentication" ++ ++#~ msgid "Allowed MAC addresses" ++#~ msgstr "Allowed MAC addresses" ++ ++#~ msgid "List of MAC addresses for which MAC authentication will be performed" ++#~ msgstr "" ++#~ "List of MAC addresses for which MAC authentication will be performed" ++ ++#~ msgid "Authenticate locally allowed MACs" ++#~ msgstr "Authenticate locally allowed MACs" ++ ++#~ msgid "Authenticate allowed MAC addresses without the use of RADIUS" ++#~ msgstr "Authenticate allowed MAC addresses without the use of RADIUS" ++ ++#~ msgid "Enable MAC authentification" ++#~ msgstr "Enable MAC authentification" ++ ++#~ msgid "Try to authenticate all users based on their mac address alone" ++#~ msgstr "Try to authenticate all users based on their mac address alone" ++ ++#~ msgid "Password" ++#~ msgstr "Password" ++ ++#~ msgid "Password used when performing MAC authentication" ++#~ msgstr "Password used when performing MAC authentication" ++ ++#~ msgid "Suffix" ++#~ msgstr "Suffix" ++ ++#~ msgid "coovachilli_macauth_macsuffix_desc" ++#~ msgstr "" ++#~ "Suffix to add to the MAC address in order to form the User-Name, which is " ++#~ "sent to the radius server" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/es/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/es/coovachilli.po +new file mode 100644 +index 0000000..886da59 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/es/coovachilli.po +@@ -0,0 +1,113 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:41+0200\n" ++"PO-Revision-Date: 2012-07-28 23:18+0200\n" ++"Last-Translator: Daniel \n" ++"Language-Team: LANGUAGE \n" ++"Language: es\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Configuración de Red" ++ ++msgid "RADIUS configuration" ++msgstr "Configuración RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Autenticación UAM y MAC" ++ ++#~ msgid "General configuration" ++#~ msgstr "Configuración General" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Configuración General de CoovaChilli" ++ ++#~ msgid "Command socket" ++#~ msgstr "Socket de Comando" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "SocketUNIX utilizado para comunicación con chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Configuración del intervalo de refresco " ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Vuelve a leer el fichero de configuracion y las consultas DNS cada " ++#~ "intervalo de segundos. Eso tiene el mismo efecto que enviar la señal HUP. " ++#~ "Si el intervalo es 0 (cero) se inhabilita la función." ++ ++#~ msgid "Pid file" ++#~ msgstr "Fichero Pid" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "Nombre de archivo donde poner el ID del proceso" ++ ++#~ msgid "State directory" ++#~ msgstr "Directorio de estado" ++ ++#~ msgid "Directory of non-volatile data" ++#~ msgstr "Directorio de datos no volátiles" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "Configuración TUN / TAP" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Configuración de Red / Tun" ++ ++#~ msgid "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++#~ msgstr "" ++#~ "Script ejecutado cuando el estado de una sesión es alterado de autorizado " ++#~ "a no autorizado" ++ ++#~ msgid "Network up script" ++#~ msgstr "Script de subida de red" ++ ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "" ++#~ "Script ejecutado después de que la interfaz de red tun haya sido " ++#~ "levantado." ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Servidor DNS primario" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Servidor DNS secundario" ++ ++#~ msgid "Domain name" ++#~ msgstr "Nombre de dominio" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "" ++#~ "Se utiliza para informar al cliente sobre el nombre de dominio a utilizar " ++#~ "para las consultas DNS" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Conjunto de direcciones IP Dinámicas" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Especifica un conjunto de direcciones IP Dinámicas" ++ ++#~ msgid "IP down script" ++#~ msgstr "Scripts de bajada IP" ++ ++#~ msgid "Script executed after the tun network interface has been taken down" ++#~ msgstr "Script ejecutado después de que la red de interfaz tun sea bajado" ++ ++#~ msgid "IP up script" ++#~ msgstr "Script de subida IP" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/fr/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/fr/coovachilli.po +new file mode 100644 +index 0000000..b95bb44 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/fr/coovachilli.po +@@ -0,0 +1,26 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:36+0200\n" ++"PO-Revision-Date: 2012-11-06 13:16+0200\n" ++"Last-Translator: hogsim \n" ++"Language-Team: LANGUAGE \n" ++"Language: fr\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Configuration Réseau" ++ ++msgid "RADIUS configuration" ++msgstr "Configuration RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Authentification UAM et MAC" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/he/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/he/coovachilli.po +new file mode 100644 +index 0000000..04efb54 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/he/coovachilli.po +@@ -0,0 +1,26 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-09-10 03:37+0200\n" ++"Last-Translator: Snoof \n" ++"Language-Team: none\n" ++"Language: he\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "" ++ ++msgid "Network Configuration" ++msgstr "תצורת רשת" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "אימות UAM ן- MAC" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/hu/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/hu/coovachilli.po +new file mode 100644 +index 0000000..5ac8278 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/hu/coovachilli.po +@@ -0,0 +1,26 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-07-05 16:44+0200\n" ++"Last-Translator: Gyula \n" ++"Language-Team: none\n" ++"Language: hu\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Hálózati konfiguráció" ++ ++msgid "RADIUS configuration" ++msgstr "RADIUS konfiguráció" ++ ++msgid "UAM and MAC Authentication" ++msgstr "UAM és MAC azonosítás" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/it/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/it/coovachilli.po +new file mode 100644 +index 0000000..dbf5b96 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/it/coovachilli.po +@@ -0,0 +1,75 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:40+0200\n" ++"PO-Revision-Date: 2013-02-03 13:43+0200\n" ++"Last-Translator: Francesco <3gasas@gmail.com>\n" ++"Language-Team: LANGUAGE \n" ++"Language: it\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Configurazione della Rete" ++ ++msgid "RADIUS configuration" ++msgstr "Configurazione RAGGIO" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Autenticazione UAM e MAC" ++ ++#~ msgid "General configuration" ++#~ msgstr "Configurazione generale" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Impostazioni generali di CoovaChilli" ++ ++#~ msgid "Command socket" ++#~ msgstr "Socket di comando" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "Socket UNIX usato per la comunicazione con chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Intervallo di aggiornamento configurazione" ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Rilegge il file di configurazione ed esegue una ricerca DNS ogni " ++#~ "intervallo in secondi. Questo ha lo stesso risultato dell'invio del " ++#~ "segnale HUP. Se l'intervallo è 0 (zero) questa funzionalità è " ++#~ "disabilitata." ++ ++#~ msgid "Pid file" ++#~ msgstr "File Pid" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "Configurazione TUN/TAP" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Configurazione Rete/TUN" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Server DNS Primario" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Server DNS Secondario" ++ ++#~ msgid "Domain name" ++#~ msgstr "Nome di dominio" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Specifica un pool di indirizzi IP dinamici" ++ ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "Indirizzo di rete dell'interfaccia di uplink (CIDR notazione)" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/ja/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/ja/coovachilli.po +new file mode 100644 +index 0000000..9415712 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/ja/coovachilli.po +@@ -0,0 +1,25 @@ ++#, fuzzy ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:36+0200\n" ++"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" ++"Last-Translator: FULL NAME \n" ++"Language-Team: LANGUAGE \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Translate Toolkit 1.1.1\n" ++ ++msgid "CoovaChilli" ++msgstr "" ++ ++msgid "Network Configuration" ++msgstr "" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/ms/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/ms/coovachilli.po +new file mode 100644 +index 0000000..d910ef2 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/ms/coovachilli.po +@@ -0,0 +1,22 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++ ++msgid "CoovaChilli" ++msgstr "" ++ ++msgid "Network Configuration" ++msgstr "" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/no/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/no/coovachilli.po +new file mode 100644 +index 0000000..f37afdd +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/no/coovachilli.po +@@ -0,0 +1,26 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2013-04-05 08:41+0200\n" ++"Last-Translator: protx \n" ++"Language-Team: none\n" ++"Language: no\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Nettverk Konfigurasjon" ++ ++msgid "RADIUS configuration" ++msgstr "RADIUS Konfigurasjon" ++ ++msgid "UAM and MAC Authentication" ++msgstr "UAM og MAC Autentisering" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/pl/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/pl/coovachilli.po +new file mode 100644 +index 0000000..7dc2ef8 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/pl/coovachilli.po +@@ -0,0 +1,27 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-09-25 06:22+0200\n" ++"Last-Translator: obsy \n" ++"Language-Team: none\n" ++"Language: pl\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " ++"|| n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Konfiguracja sieci" ++ ++msgid "RADIUS configuration" ++msgstr "Konfiguracja RADIUS`a" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Uwierzytelnianie UAM oraz MAC" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/pt-br/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/pt-br/coovachilli.po +new file mode 100644 +index 0000000..9c21981 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/pt-br/coovachilli.po +@@ -0,0 +1,657 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-06-10 03:41+0200\n" ++"PO-Revision-Date: 2011-10-18 20:37+0200\n" ++"Last-Translator: Luiz Angelo \n" ++"Language-Team: LANGUAGE \n" ++"Language: pt_BR\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Configuração de rede" ++ ++msgid "RADIUS configuration" ++msgstr "Configuração de RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Autenticação UAM e MAC" ++ ++#~ msgid "General configuration" ++#~ msgstr "Configuração Geral" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Definições gerais do CoovaChilli" ++ ++#~ msgid "Command socket" ++#~ msgstr "Soquete de comando" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "Soquete UNIX para comunicação com chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Intervalo de atualização da configuração" ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Reler o arquivo de configuração e faça a busca DNS a cada intervalo de " ++#~ "segundos. Isto tem o mesmo efeito que o envio do sinal HUP. Se o " ++#~ "intervalo for 0, (zero) esta funcionalidade será desativada." ++ ++#~ msgid "Pid file" ++#~ msgstr "Arquivo de PID" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "Nome do arquivo onde será armazenado o PID" ++ ++#~ msgid "State directory" ++#~ msgstr "Diretório de estado" ++ ++#~ msgid "Directory of non-volatile data" ++#~ msgstr "Diretório para dados não-voláteis" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "Configuração TUN/TAP" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Configuração de Rede/Tun" ++ ++#~ msgid "Network down script" ++#~ msgstr "Script de descida de rede" ++ ++#~ msgid "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++#~ msgstr "" ++#~ "Script executado após o estado de uma sessão ser alterado de autorizado " ++#~ "para não-autorizado" ++ ++#~ msgid "Network up script" ++#~ msgstr "Script de subida da rede" ++ ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "Script executado após a interface tun de rede ter sido levantada" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Servidor DNS primário" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Servidor DNS secundário" ++ ++#~ msgid "Domain name" ++#~ msgstr "Domínio" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o domínio a ser utilizado para " ++#~ "consultas DNS" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Conjunto de endereços IP dinâmicos" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Especifica um conjunto de endereços IP dinâmicos" ++ ++#~ msgid "IP down script" ++#~ msgstr "Script de descida da rede IP" ++ ++#~ msgid "Script executed after the tun network interface has been taken down" ++#~ msgstr "Script executado após a rede da interface tun seja baixada" ++ ++#~ msgid "IP up script" ++#~ msgstr "Script de subida da rede IP" ++ ++#~ msgid "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++#~ msgstr "Script executado após a rede da interface TUN/TAP seja levantadas" ++ ++#~ msgid "Uplink subnet" ++#~ msgstr "Subrede do enlace superior (uplink)" ++ ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "Endereço de rede da interface do enlace superior (notação CIDR)" ++ ++#~ msgid "Static IP address pool" ++#~ msgstr "Conjunto de endereços IP estáticos" ++ ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Especifica um conjunto de endereços IP estáticos" ++ ++#~ msgid "TUN/TAP device" ++#~ msgstr "Dispositivo TUN/TAP" ++ ++#~ msgid "The specific device to use for the TUN/TAP interface" ++#~ msgstr "O dispositivo especificado para ser usado pela interface TUN/TAP" ++ ++#~ msgid "TX queue length" ++#~ msgstr "Tamanho da fila de envio (TX)" ++ ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "O tamanho da fila de envio (TX) para ser usado na interface TUN/TAP" ++ ++#~ msgid "Use TAP device" ++#~ msgstr "Use dispositivo TAP" ++ ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Use o dispositivo TAP ao invés de TUN" ++ ++#~ msgid "DHCP configuration" ++#~ msgstr "Configuração do DHCP" ++ ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Ajusta as opções do DHCP para clientes a se conectarem" ++ ++#~ msgid "DHCP end number" ++#~ msgstr "Número final do DHCP" ++ ++#~ msgid "Where to stop assigning IP addresses (default 254)" ++#~ msgstr "Onde terminar a atribuição de endereços IP (padrão 254)" ++ ++#~ msgid "DHCP interface" ++#~ msgstr "Interface DHCP" ++ ++#~ msgid "Ethernet interface to listen to for the downlink interface" ++#~ msgstr "Interface Ethernet para escutar por conexões dos clientes" ++ ++#~ msgid "Listen MAC address" ++#~ msgstr "Endereço MAC de escuta" ++ ++#~ msgid "" ++#~ "MAC address to listen to. If not specified the MAC address of the " ++#~ "interface will be used" ++#~ msgstr "" ++#~ "Endereço MAC de escuta. Se não especificado, o endereço MAC da interface " ++#~ "será usado" ++ ++#~ msgid "DHCP start number" ++#~ msgstr "Número inicial do DHCP" ++ ++#~ msgid "Where to start assigning IP addresses (default 10)" ++#~ msgstr "A partir de onde iniciará a atribuição de endereços IP (padrão 10)" ++ ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Habilite IEEE 802.1x" ++ ++#~ msgid "Enable IEEE 802.1x authentication and listen for EAP requests" ++#~ msgstr "Habilite autenticação IEEE 802.1x e escute por requisições EAP" ++ ++#~ msgid "Leasetime" ++#~ msgstr "Tempo de atribuição" ++ ++#~ msgid "Use a DHCP lease of seconds (default 600)" ++#~ msgstr "Use o tempo de atribuição do DHCP, em segundos (padrão 600)" ++ ++#~ msgid "Allow session update through RADIUS" ++#~ msgstr "Permite a atualização da sessão através do RADIUS" ++ ++#~ msgid "" ++#~ "Allow updating of session parameters with RADIUS attributes sent in " ++#~ "Accounting-Response" ++#~ msgstr "" ++#~ "Permite a atualização dos parâmetros da sessão com atributos RADIUS " ++#~ "enviados na Contabilidade-Resposta" ++ ++#~ msgid "Admin password" ++#~ msgstr "Senha do Administrador" ++ ++#~ msgid "" ++#~ "Password to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Senha para a autenticação do usuário administrador para pegar as " ++#~ "configurações do chili e estabelecer uma sessão de dispositivo \"sistema\"" ++ ++#~ msgid "Admin user" ++#~ msgstr "Usuário administrador" ++ ++#~ msgid "" ++#~ "User-name to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Nome do usuário para a autenticação do usuário administrador para pegar " ++#~ "as configurações do chili e estabelecer uma sessão de dispositivo " ++#~ "\"sistema\"" ++ ++#~ msgid "Do not check disconnection requests" ++#~ msgstr "Não verifique as requisições de desconexão" ++ ++#~ msgid "Do not check the source IP address of radius disconnect requests" ++#~ msgstr "" ++#~ "Não verifique o endereço IP de origem das requisições de desconexão do " ++#~ "radius" ++ ++#~ msgid "RADIUS disconnect port" ++#~ msgstr "Porta de desconexão do RADIUS" ++ ++#~ msgid "UDP port to listen to for accepting radius disconnect requests" ++#~ msgstr "" ++#~ "Porta UDP de escuta para aceitar requisições de desconexão do radius" ++ ++#~ msgid "NAS IP" ++#~ msgstr "IP do NAS" ++ ++#~ msgid "Value to use in RADIUS NAS-IP-Address attribute" ++#~ msgstr "Valor para usar no atributo NAS-IP-Address do RADIUS" ++ ++#~ msgid "NAS MAC" ++#~ msgstr "MAC do NAS" ++ ++#~ msgid "MAC address value to use in RADIUS Called-Station-ID attribute" ++#~ msgstr "Endereço MAC para usar no atributo Called-Station-ID do RADIUS" ++ ++#~ msgid "Allow OpenID authentication" ++#~ msgstr "Permitir autenticação OpenID" ++ ++#~ msgid "" ++#~ "Allows OpenID authentication by sending ChilliSpot-Config=allow-" ++#~ "openidauth in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Permitir autenticação OpenID enviando ChilliSpot-Config=allow-openidauth " ++#~ "na Resquisição de Acesso do Radius" ++ ++#~ msgid "RADIUS accounting port" ++#~ msgstr "Porta de contabilidade do RADIUS" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius accounting requests (default 1813)" ++#~ msgstr "" ++#~ "O número da porta UDP para ser usada pela requisição de contabilização do " ++#~ "radius (padrão 1813)" ++ ++#~ msgid "RADIUS authentication port" ++#~ msgstr "Porta de autenticação do RADIUS" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius authentication requests (default " ++#~ "1812)" ++#~ msgstr "" ++#~ "O número da porta UDP para ser usada pela requisição de autenticação do " ++#~ "radius (padrão 1812)" ++ ++#~ msgid "Option radiuscalled" ++#~ msgstr "Opção radiuscalled" ++ ++#~ msgid "RADIUS listen address" ++#~ msgstr "Endereço de escuta do RADIUS" ++ ++#~ msgid "Local interface IP address to use for the radius interface" ++#~ msgstr "Endereço IP da interface local para a interface radius" ++ ++#~ msgid "RADIUS location ID" ++#~ msgstr "ID da localização do RADIUS" ++ ++#~ msgid "WISPr Location ID" ++#~ msgstr "ID da Localização WISPr" ++ ++#~ msgid "RADIUS location name" ++#~ msgstr "Nome da localização do RADIUS" ++ ++#~ msgid "WISPr Location Name" ++#~ msgstr "Nome da localização WISPr" ++ ++#~ msgid "NAS ID" ++#~ msgstr "ID do NAS" ++ ++#~ msgid "Network access server identifier" ++#~ msgstr "Identificador do servidor de acesso à rede" ++ ++#~ msgid "Option radiusnasip" ++#~ msgstr "Opção radiusnasip" ++ ++#~ msgid "NAS port type" ++#~ msgstr "Tipo de porta NAS" ++ ++#~ msgid "" ++#~ "Value of NAS-Port-Type attribute. Defaults to 19 (Wireless-IEEE-802.11)" ++#~ msgstr "" ++#~ "Valor do atributo do NAS-Port-Type. O padrão é 19 (IEEE-802.11-Sem fio)" ++ ++#~ msgid "Send RADIUS VSA" ++#~ msgstr "Enviar VSA do RADIUS" ++ ++#~ msgid "Send the ChilliSpot-OriginalURL RADIUS VSA in Access-Request" ++#~ msgstr "" ++#~ "Enviar o ChilliSpot-OriginalURL do VSA do RADIUS na Requisição de Acesso" ++ ++#~ msgid "RADIUS secret" ++#~ msgstr "Segredo do RADIUS" ++ ++#~ msgid "Radius shared secret for both servers" ++#~ msgstr "Segredo compartilhado entre ambos os servidores Radius" ++ ++#~ msgid "RADIUS server 1" ++#~ msgstr "Servidor 1 do RADIUS" ++ ++#~ msgid "The IP address of radius server 1" ++#~ msgstr "Endereço IP do servidor 1 do radius" ++ ++#~ msgid "RADIUS server 2" ++#~ msgstr "Servidor 2 do RADIUS" ++ ++#~ msgid "The IP address of radius server 2" ++#~ msgstr "Endereço IP do servidor 2 do radius" ++ ++#~ msgid "Swap octets" ++#~ msgstr "Troque octetos" ++ ++#~ msgid "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++#~ msgstr "" ++#~ "Troca o significado de \"octetos de entrada\" e \"octetos de saída\" como " ++#~ "está relatado nos atributos RADIUS" ++ ++#~ msgid "Allow WPA guests" ++#~ msgstr "Permite convidados WPA" ++ ++#~ msgid "" ++#~ "Allows WPA Guest authentication by sending ChilliSpot-Config=allow-wpa-" ++#~ "guests in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Permite a autenticação de convidados WPA enviando ChilliSpot-Config=allow-" ++#~ "wpa-guests na Requisição de Acesso do RADIUS" ++ ++#~ msgid "Proxy client" ++#~ msgstr "Cliente proxy" ++ ++#~ msgid "" ++#~ "IP address from which radius requests are accepted. If omitted the server " ++#~ "will not accept radius requests" ++#~ msgstr "" ++#~ "Endereço IP do qual as requisições radius serão aceitas. Se omitido, o " ++#~ "servidor não vai aceitar requisições radius" ++ ++#~ msgid "Proxy listen address" ++#~ msgstr "Endereço de escuta do proxy" ++ ++#~ msgid "Local interface IP address to use for accepting radius requests" ++#~ msgstr "" ++#~ "Endereço IP da interface local usado para aceitar as requisições radius" ++ ++#~ msgid "Proxy port" ++#~ msgstr "Porta do Proxy" ++ ++#~ msgid "UDP Port to listen to for accepting radius requests" ++#~ msgstr "Porta UDP para aceitar requisições radius" ++ ++#~ msgid "Proxy secret" ++#~ msgstr "Segredo do Proxy" ++ ++#~ msgid "Radius shared secret for clients" ++#~ msgstr "Segredo compartilhado do Radius para clientes" ++ ++#~ msgid "UAM configuration" ++#~ msgstr "Configuração UAM" ++ ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Configurações do Método de Configuração Unificado" ++ ++#~ msgid "Use Chilli XML" ++#~ msgstr "Use XML do Chilli" ++ ++#~ msgid "Return the so-called Chilli XML along with WISPr XML" ++#~ msgstr "Retorna o famoso XML do Chili juntamente com o XML do WISPr" ++ ++#~ msgid "Default idle timeout" ++#~ msgstr "Estouro de tempo de ociosidade padrão" ++ ++#~ msgid "Default idle timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Estouro de tempo de ociosidade padrão, a não ser que seja definido pelo " ++#~ "RADIUS (padrão é 0)" ++ ++#~ msgid "Default interim interval" ++#~ msgstr "Intervalo padrão como interino" ++ ++#~ msgid "" ++#~ "Default interim-interval for RADIUS accounting unless otherwise set by " ++#~ "RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Intervalo padrão como interino para a contabilidade do RADIUS, a não ser " ++#~ "que seja definido pelo RADIUS (padrão é 0)" ++ ++#~ msgid "Default session timeout" ++#~ msgstr "Estouro de tempo padrão da sessão" ++ ++#~ msgid "" ++#~ "Default session timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Estouro de tempo padrão da sessão, a não ser que seja definido pelo " ++#~ "RADIUS (padrão é 0)" ++ ++#~ msgid "Inspect DNS traffic" ++#~ msgstr "Inspeciona tráfego DNS" ++ ++#~ msgid "" ++#~ "Inspect DNS packets and drop responses with any non- A, CNAME, SOA, or MX " ++#~ "records to prevent dns tunnels (experimental)" ++#~ msgstr "" ++#~ "Inspeciona os pacotes DNS e descarta respostas para qualquer registro que " ++#~ "não seja A, CNAME, SOA ou MX. Isto evita túneis pelo DNS (experimental)" ++ ++#~ msgid "Local users file" ++#~ msgstr "Arquivo de usuários locais" ++ ++#~ msgid "" ++#~ "A colon seperated file containing usernames and passwords of locally " ++#~ "authenticated users" ++#~ msgstr "" ++#~ "Um arquivo separado por dois pontos (:) contendo o nome de usuário e " ++#~ "senhas para usuários autenticados localmente" ++ ++#~ msgid "Location name" ++#~ msgstr "Nome da localização" ++ ++#~ msgid "Human readable location name used in JSON interface" ++#~ msgstr "Nome da localização legível usado na interface JSON" ++ ++#~ msgid "Do not redirect to UAM server" ++#~ msgstr "Não redirecionar para servidor UAM" ++ ++#~ msgid "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++#~ msgstr "" ++#~ "Não redirecione para o servidor UAM quando o login for bem sucedido. " ++#~ "Somente redirecione para a URL original" ++ ++#~ msgid "Do not do WISPr" ++#~ msgstr "Não faça WISPr" ++ ++#~ msgid "Do not do any WISPr XML, assume the back-end is doing this instead" ++#~ msgstr "" ++#~ "Não faça qualquer XML do WISPr. Ao invés disto, assuma que o servidor " ++#~ "está fazendo isto" ++ ++#~ msgid "Post auth proxy" ++#~ msgstr "Proxy após a autenticação" ++ ++#~ msgid "" ++#~ "Used with postauthproxyport to define a post authentication HTTP proxy " ++#~ "server" ++#~ msgstr "" ++#~ "Usado em conjunto com postauthproxyport para definir um servidor PROXY " ++#~ "HTTP após a autenticação" ++ ++#~ msgid "Post auth proxy port" ++#~ msgstr "Porta do proxy após a autenticação" ++ ++#~ msgid "" ++#~ "Used with postauthproxy to define a post authentication HTTP proxy server" ++#~ msgstr "" ++#~ "Usado em conjunto com postauthproxyport para definir um servidor PROXY " ++#~ "HTTP após a autenticação" ++ ++#~ msgid "Allowed resources" ++#~ msgstr "Recursos permitidos" ++ ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "" ++#~ "Lista de recursos que o cliente pode acessar sem antes se autenticar" ++ ++#~ msgid "Allow any DNS server" ++#~ msgstr "Permitir qualquer Servidor DNS" ++ ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "Permitir qualquer servidor DNS para clientes não autenticados" ++ ++#~ msgid "Allow any IP address" ++#~ msgstr "Permitir qualquer endereço IP" ++ ++#~ msgid "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++#~ msgstr "" ++#~ "Permitir que clientes usem qualquer configuração de IP desejada usando a " ++#~ "técnica de falsificação de APR (experimental)" ++ ++#~ msgid "Allowed domains" ++#~ msgstr "Domínios permitidos" ++ ++#~ msgid "" ++#~ "Defines a list of domain names to automatically add to the walled garden" ++#~ msgstr "" ++#~ "Define uma lista de domínios automaticamente adicionados para acesso da " ++#~ "zona controlada" ++ ++#~ msgid "UAM homepage" ++#~ msgstr "Página do UAM" ++ ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "URL da página para onde redirecionar os usuários não autenticados" ++ ++#~ msgid "UAM static content port" ++#~ msgstr "Porta de conteúdo estático do UAM" ++ ++#~ msgid "TCP port to bind to for only serving embedded content" ++#~ msgstr "Porta TCP para somente servidor conteúdo embutido" ++ ++#~ msgid "UAM listening address" ++#~ msgstr "Endereço de escuta do UAM" ++ ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "Endereço IP para escutar pela autenticação dos clientes" ++ ++#~ msgid "UAM logout IP" ++#~ msgstr "IP de desautenticação do UAM" ++ ++#~ msgid "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++#~ msgstr "" ++#~ "Use este endereço IP para instantaneamente desautenticar um cliente que a " ++#~ "acessar (padrão é 1.1.1.1)" ++ ++#~ msgid "UAM listening port" ++#~ msgstr "Porta de escuta do UAM" ++ ++#~ msgid "TCP port to bind to for authenticating clients (default 3990)" ++#~ msgstr "Porta de escuta do UAM para autenticar clientes (padrão é 3990)" ++ ++#~ msgid "UAM secret" ++#~ msgstr "Segredo do UAM" ++ ++#~ msgid "Shared secret between uamserver and chilli" ++#~ msgstr "Segredo compatilhado entre o servidor UAM e o chilli" ++ ++#~ msgid "UAM server" ++#~ msgstr "Servidor UAM" ++ ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "URL do servidor web usado para autenticar os clientes" ++ ++#~ msgid "UAM user interface" ++#~ msgstr "Interface do usuário do UAM" ++ ++#~ msgid "" ++#~ "An init.d style program to handle local content on the uamuiport web " ++#~ "server" ++#~ msgstr "" ++#~ "Um programa estilo init.d para tratar o conteúdo local no servidor web " ++#~ "uamuiport" ++ ++#~ msgid "Use status file" ++#~ msgstr "Usar o arquivo de estado" ++ ++#~ msgid "" ++#~ "Write the status of clients in a non-volatile state file (experimental)" ++#~ msgstr "" ++#~ "Escreva o estado dos clientes em um arquivo de estado não volátil " ++#~ "(experimental)" ++ ++#~ msgid "WISPr login url" ++#~ msgstr "URL de login do WISPr" ++ ++#~ msgid "Specific URL to be given in WISPr XML LoginURL" ++#~ msgstr "Especifica a URL para ser dada no LoginURL do XML do WISPr" ++ ++#~ msgid "CGI program" ++#~ msgstr "Programa CGI" ++ ++#~ msgid "" ++#~ "Executable to run as a CGI type program (like haserl) for URLs with " ++#~ "extention .chi" ++#~ msgstr "" ++#~ "Executável para rodar como um programa do tipo CGI (como o haserl) para " ++#~ "URLs com a extensão .chi" ++ ++#~ msgid "Web content directory" ++#~ msgstr "Diretório de conteúdo Web" ++ ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "Diretório onde o conteúdo web local embutido fica localizado" ++ ++#~ msgid "MAC configuration" ++#~ msgstr "Configuração do MAC" ++ ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Configurar a autenticação MAC" ++ ++#~ msgid "Allowed MAC addresses" ++#~ msgstr "Endereços MAC permitidos" ++ ++#~ msgid "List of MAC addresses for which MAC authentication will be performed" ++#~ msgstr "" ++#~ "Lista dos endereços MAC permitidos para os quais a autenticação MAC será " ++#~ "realizada" ++ ++#~ msgid "Authenticate locally allowed MACs" ++#~ msgstr "Autenticar MACs autorizados localmente" ++ ++#~ msgid "Authenticate allowed MAC addresses without the use of RADIUS" ++#~ msgstr "Autenticar os endereços MAC autorizados sem usar o RADIUS" ++ ++#~ msgid "Enable MAC authentification" ++#~ msgstr "Habilita a autenticação MAC" ++ ++#~ msgid "Try to authenticate all users based on their mac address alone" ++#~ msgstr "" ++#~ "Tente autenticar todos os usuários baseados somente no seu endereço MAC" ++ ++#~ msgid "Password" ++#~ msgstr "Senha" ++ ++#~ msgid "Password used when performing MAC authentication" ++#~ msgstr "Senha usada para realizar a autenticação MAC" ++ ++#~ msgid "Suffix" ++#~ msgstr "Sufixo" ++ ++#~ msgid "" ++#~ "Suffix to add to the MAC address in order to form the User-Name, which is " ++#~ "sent to the radius server" ++#~ msgstr "" ++#~ "Sufixo para adicionar ao endereço MAC que forma o nome do usuário, o qual " ++#~ "é enviado ao servidor radius" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/pt/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/pt/coovachilli.po +new file mode 100644 +index 0000000..115ae03 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/pt/coovachilli.po +@@ -0,0 +1,372 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-26 19:03+0200\n" ++"PO-Revision-Date: 2013-05-01 00:43+0200\n" ++"Last-Translator: pedromrgoncalves \n" ++"Language-Team: LANGUAGE \n" ++"Language: pt\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Configuração da Rede" ++ ++msgid "RADIUS configuration" ++msgstr "Configuração RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Autenticação UAM e MAC" ++ ++#~ msgid "General configuration" ++#~ msgstr "Configuração Geral" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Definições gerais do CoovaChilli" ++ ++#~ msgid "Command socket" ++#~ msgstr "Socket de comando" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "Socket UNIX para comunicação com chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Intervalo de refrescamento da configuração" ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Reler o ficheiro de configuração e executar verificações DNS n segundos " ++#~ "de intervalo. Tem o mesmo efeito que o envio do sinal HUP. Se o intervalo " ++#~ "for 0 (zero) esta funcionalidade será desactivada." ++ ++#~ msgid "Pid file" ++#~ msgstr "Ficheiro PID" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "Nome do ficheiro onde será guardado o PID" ++ ++#~ msgid "State directory" ++#~ msgstr "Directorio de estado" ++ ++#~ msgid "Directory of non-volatile data" ++#~ msgstr "Directorio para dados não-volateis" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "Configuração tun/tap" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Configuração de rede/tun" ++ ++#~ msgid "Network down script" ++#~ msgstr "Script de rede/tun em baixo" ++ ++#~ msgid "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++#~ msgstr "" ++#~ "Script executado após o estado de uma sessão ser alterado de autorizado " ++#~ "para não-autorizado " ++ ++#~ msgid "Network up script" ++#~ msgstr "Script de rede/tun em cima" ++ ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "Script executado apos o interface tun de rede ter sido levantado" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Servidor primário de DNS" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Servidor secundário de DNS" ++ ++#~ msgid "Domain name" ++#~ msgstr "Domínio" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Servidor primário de DNS" ++ ++#, fuzzy ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o endereço de servidor DNS a usar " ++#~ "para a resolução de nomes" ++ ++#, fuzzy ++#~ msgid "IP down script" ++#~ msgstr "Script de rede/tun em baixo" ++ ++#, fuzzy ++#~ msgid "Script executed after the tun network interface has been taken down" ++#~ msgstr "" ++#~ "Script executado após o estado de uma sessão ser alterado de autorizado " ++#~ "para não-autorizado " ++ ++#, fuzzy ++#~ msgid "IP up script" ++#~ msgstr "Script de rede/tun em cima" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++#~ msgstr "Script executado apos o interface tun de rede ter sido levantado" ++ ++#, fuzzy ++#~ msgid "Uplink subnet" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o endereço de servidor DNS a usar " ++#~ "para a resolução de nomes" ++ ++#, fuzzy ++#~ msgid "Static IP address pool" ++#~ msgstr "Script de rede/tun em cima" ++ ++#, fuzzy ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Script executado apos o interface tun de rede ter sido levantado" ++ ++#, fuzzy ++#~ msgid "TUN/TAP device" ++#~ msgstr "Script de rede/tun em baixo" ++ ++#, fuzzy ++#~ msgid "The specific device to use for the TUN/TAP interface" ++#~ msgstr "" ++#~ "Script executado após o estado de uma sessão ser alterado de autorizado " ++#~ "para não-autorizado " ++ ++#, fuzzy ++#~ msgid "TX queue length" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "Use TAP device" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Script executado apos o interface tun de rede ter sido levantado" ++ ++#, fuzzy ++#~ msgid "DHCP configuration" ++#~ msgstr "Configuração tun/tap" ++ ++#, fuzzy ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "DHCP end number" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "DHCP interface" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Ethernet interface to listen to for the downlink interface" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Listen MAC address" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Leasetime" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Use a DHCP lease of seconds (default 600)" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Admin user" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "NAS IP" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Value to use in RADIUS NAS-IP-Address attribute" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "NAS MAC" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "MAC address value to use in RADIUS Called-Station-ID attribute" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Allow WPA guests" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "UAM configuration" ++#~ msgstr "Configuração tun/tap" ++ ++#, fuzzy ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "Allow any DNS server" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "Allow any IP address" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "Allowed domains" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Defines a list of domain names to automatically add to the walled garden" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM homepage" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM static content port" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "TCP port to bind to for only serving embedded content" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM listening address" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM logout IP" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM listening port" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "TCP port to bind to for authenticating clients (default 3990)" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM secret" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "Shared secret between uamserver and chilli" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM server" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "UAM user interface" ++#~ msgstr "Domínio" ++ ++#, fuzzy ++#~ msgid "" ++#~ "An init.d style program to handle local content on the uamuiport web " ++#~ "server" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Executable to run as a CGI type program (like haserl) for URLs with " ++#~ "extention .chi" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "" ++#~ "Usado para informar o cliente sobre o dominio a utilizar para pedidos DNS" ++ ++#, fuzzy ++#~ msgid "MAC configuration" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Configuração de rede/tun" ++ ++#, fuzzy ++#~ msgid "Try to authenticate all users based on their mac address alone" ++#~ msgstr "Configuração de rede/tun" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/ro/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/ro/coovachilli.po +new file mode 100644 +index 0000000..8f458bb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/ro/coovachilli.po +@@ -0,0 +1,27 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-06-28 19:15+0200\n" ++"Last-Translator: xxvirusxx \n" ++"Language-Team: none\n" ++"Language: ro\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " ++"20)) ? 1 : 2);;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Configurare reţea" ++ ++msgid "RADIUS configuration" ++msgstr "Configurare RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Autentificare UAM şi MAC" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/ru/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/ru/coovachilli.po +new file mode 100644 +index 0000000..379ff7e +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/ru/coovachilli.po +@@ -0,0 +1,560 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: LuCI: coovachilli\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-05-19 19:36+0200\n" ++"PO-Revision-Date: 2012-08-15 11:29+0300\n" ++"Last-Translator: Roman A. aka BasicXP \n" ++"Language-Team: Russian \n" ++"Language: ru\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++"X-Poedit-SourceCharset: UTF-8\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Конфигурация сети" ++ ++msgid "RADIUS configuration" ++msgstr "Конфигурация RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Аутентификация с помощью UAM и MAC" ++ ++#~ msgid "General configuration" ++#~ msgstr "Общие настройки" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Общие настройки CoovaChilli" ++ ++#~ msgid "Command socket" ++#~ msgstr "Сокет команд" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "UNIX сокет для связи с chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Интервал обновления конфигурации" ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Считывание файла конфигурации и запуск DNS поиска раз в указанный " ++#~ "интервал. Достигается тот же эффект что и при отсылке HUP сигнала. " ++#~ "Значение интервала выражено в секундах. В случае указания нулевого " ++#~ "значения интервала, данная функция становится неактивной." ++ ++#~ msgid "Pid file" ++#~ msgstr "Pid файл" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "Имя файла, который будет содержать идентификатор процесса (PID)" ++ ++#~ msgid "State directory" ++#~ msgstr "Директория состояния" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "TUN/TAP конфигурация" ++ ++#~ msgid "Network down script" ++#~ msgstr "Скрипт выключения сети" ++ ++#~ msgid "Network up script" ++#~ msgstr "Скрипт включения сети" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Первичный DNS сервер" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Вторичный DNS сервер" ++ ++#~ msgid "Domain name" ++#~ msgstr "Доменное имя" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "Используется, чтобы сообщить клиенту имя домена при DNS поисках" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Диапазон динамических IP адресов" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Определяет диапазон динамических IP адресов" ++ ++#~ msgid "IP down script" ++#~ msgstr "Скрипт сброса IP-адреса" ++ ++#~ msgid "IP up script" ++#~ msgstr "Скрипт установки IP-адреса" ++ ++#~ msgid "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++#~ msgstr "Скрипт, выполняемый после включения сетевого интерфейса TUN/TAP" ++ ++#~ msgid "Uplink subnet" ++#~ msgstr "Подсеть uplink'а" ++ ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "Сетевой адрес uplink-интерфейса (в нотации CIDR)" ++ ++#~ msgid "Static IP address pool" ++#~ msgstr "Диапазон статических IP адресов" ++ ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Определяет диапазон статических IP адресов" ++ ++#~ msgid "TUN/TAP device" ++#~ msgstr "TUN/TAP устройство" ++ ++#~ msgid "The specific device to use for the TUN/TAP interface" ++#~ msgstr "Устройство для TUN/TAP интерфейса" ++ ++#~ msgid "TX queue length" ++#~ msgstr "Длина очереди TX" ++ ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "Длина TX очереди TUN/TAP интерфейса" ++ ++#~ msgid "Use TAP device" ++#~ msgstr "Использовать устройство TAP" ++ ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Использовать интерфейс TAP вместо TUN" ++ ++#~ msgid "DHCP configuration" ++#~ msgstr "Настройки DHCP" ++ ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Установите параметры DHCP для подключения клиентов" ++ ++#~ msgid "DHCP end number" ++#~ msgstr "Конечное значение DHCP" ++ ++#~ msgid "DHCP interface" ++#~ msgstr "DHCP интерфейс" ++ ++#~ msgid "Ethernet interface to listen to for the downlink interface" ++#~ msgstr "Ethernet интерфейс для прослушивания downlink-интерфеса" ++ ++#~ msgid "Listen MAC address" ++#~ msgstr "Прослушиваемые MAC адреса" ++ ++#~ msgid "DHCP start number" ++#~ msgstr "Начальное значение DHCP" ++ ++#~ msgid "Where to start assigning IP addresses (default 10)" ++#~ msgstr "Начать присвоения IP-адресов с (по умолчанию 10)" ++ ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Включить IEEE 802.1x" ++ ++#~ msgid "Enable IEEE 802.1x authentication and listen for EAP requests" ++#~ msgstr "Включить IEEE 802.1x аутентификацию и обработку запросов EAP" ++ ++#~ msgid "Leasetime" ++#~ msgstr "Время аренды" ++ ++#~ msgid "Use a DHCP lease of seconds (default 600)" ++#~ msgstr "Использовать DHCP аренду заданное время (секунды, 600 по умолчанию)" ++ ++#~ msgid "Allow session update through RADIUS" ++#~ msgstr "Разрешить обновление сессии через RADIUS" ++ ++#~ msgid "" ++#~ "Allow updating of session parameters with RADIUS attributes sent in " ++#~ "Accounting-Response" ++#~ msgstr "" ++#~ "Разрешить обновление параметров сессии используя RADIUS атрибуты " ++#~ "посланные через Accounting-Response" ++ ++#~ msgid "Admin password" ++#~ msgstr "Пароль администратора" ++ ++#~ msgid "" ++#~ "Password to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Пароль администратора для аутентификации пользователя и применения " ++#~ "настроек chilli с созданием \"системной\" сессии устройства" ++ ++#~ msgid "Admin user" ++#~ msgstr "Администратор" ++ ++#~ msgid "" ++#~ "User-name to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Имя администратора для аутентификации пользователя и применения настроек " ++#~ "chilli с созданием \"системной\" сессии устройства" ++ ++#~ msgid "Do not check disconnection requests" ++#~ msgstr "Не проверять запросы на разъединение" ++ ++#~ msgid "Do not check the source IP address of radius disconnect requests" ++#~ msgstr "Не проверять IP-адрес запросов разъединения radius" ++ ++#~ msgid "RADIUS disconnect port" ++#~ msgstr "Порт разъединения RADIUS" ++ ++#~ msgid "UDP port to listen to for accepting radius disconnect requests" ++#~ msgstr "UDP порт для запросов разъединения RADIUS" ++ ++#~ msgid "NAS IP" ++#~ msgstr "IP-адрес NAS" ++ ++#~ msgid "Value to use in RADIUS NAS-IP-Address attribute" ++#~ msgstr "Значение RADIUS NAS-IP-Address атрибута" ++ ++#~ msgid "NAS MAC" ++#~ msgstr "MAC адрес NAS" ++ ++#~ msgid "MAC address value to use in RADIUS Called-Station-ID attribute" ++#~ msgstr "Значение MAC адреса RADIUS Called-Station-ID атрибута" ++ ++#~ msgid "Allow OpenID authentication" ++#~ msgstr "Разрешить OpenID аутентификацию" ++ ++#~ msgid "" ++#~ "Allows OpenID authentication by sending ChilliSpot-Config=allow-" ++#~ "openidauth in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Разрешает аутентификацию OpenID, посылая ChilliSpot-Config=allow-" ++#~ "openidauth в запросах доступа RADIUS." ++ ++#~ msgid "RADIUS accounting port" ++#~ msgstr "Порт RADIUS Accounting" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius accounting requests (default 1813)" ++#~ msgstr "Порт UDP для запросов RADIUS Accounting (1813 по умолчанию)" ++ ++#~ msgid "RADIUS authentication port" ++#~ msgstr "Порт аутентификации RADIUS" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius authentication requests (default " ++#~ "1812)" ++#~ msgstr "UDP порт для запросов аутентификации radius (1812 по умолчанию)" ++ ++#~ msgid "RADIUS listen address" ++#~ msgstr "Слушающий адрес RADIUS" ++ ++#~ msgid "Local interface IP address to use for the radius interface" ++#~ msgstr "IP адрес локального интерфейса для интерфейса radius" ++ ++#~ msgid "RADIUS location ID" ++#~ msgstr "Идентификатор расположения RADIUS" ++ ++#~ msgid "WISPr Location ID" ++#~ msgstr "Идентификатор расположения WISPr" ++ ++#~ msgid "RADIUS location name" ++#~ msgstr "Имя расположения RADIUS" ++ ++#~ msgid "WISPr Location Name" ++#~ msgstr "Имя расположения WISPr" ++ ++#~ msgid "NAS ID" ++#~ msgstr "Идентификатор NAS" ++ ++#~ msgid "Network access server identifier" ++#~ msgstr "Идентификатор сервера доступа к сети (NAS)" ++ ++#~ msgid "Option radiusnasip" ++#~ msgstr "Опция radiusnasip" ++ ++#~ msgid "NAS port type" ++#~ msgstr "Тип порта NAS" ++ ++#~ msgid "" ++#~ "Value of NAS-Port-Type attribute. Defaults to 19 (Wireless-IEEE-802.11)" ++#~ msgstr "Значение аттрибута NAS-Port-Type. По умолчанию 19 (IEEE-802.11)" ++ ++#~ msgid "Send RADIUS VSA" ++#~ msgstr "Отсылать RADIUS VSA" ++ ++#~ msgid "Send the ChilliSpot-OriginalURL RADIUS VSA in Access-Request" ++#~ msgstr "Отсылать ChilliSpot-OriginalURL RADIUS VSA в запросах доступа" ++ ++#~ msgid "RADIUS secret" ++#~ msgstr "Секрет RADIUS" ++ ++#~ msgid "Radius shared secret for both servers" ++#~ msgstr "Общий секрет RADIUS для обоих серверов" ++ ++#~ msgid "RADIUS server 1" ++#~ msgstr "RADIUS сервер 1" ++ ++#~ msgid "The IP address of radius server 1" ++#~ msgstr "IP адрес RADIUS сервера 1" ++ ++#~ msgid "RADIUS server 2" ++#~ msgstr "RADIUS сервер 2" ++ ++#~ msgid "The IP address of radius server 2" ++#~ msgstr "IP адрес RADIUS сервера 2" ++ ++#~ msgid "Swap octets" ++#~ msgstr "Переставлять октеты" ++ ++#~ msgid "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++#~ msgstr "Менять местами значения \"входной октет\" и \"выходной октет\"" ++ ++#~ msgid "Allow WPA guests" ++#~ msgstr "Разрешить гостевой WPA вход" ++ ++#~ msgid "" ++#~ "Allows WPA Guest authentication by sending ChilliSpot-Config=allow-wpa-" ++#~ "guests in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Разрешает гстевую WPA аутентификацию, отсылая ChilliSpot-Config=allow-wpa-" ++#~ "guests в запросах доступа RADIUS" ++ ++#~ msgid "Proxy client" ++#~ msgstr "Клиент прокси" ++ ++#~ msgid "" ++#~ "IP address from which radius requests are accepted. If omitted the server " ++#~ "will not accept radius requests" ++#~ msgstr "" ++#~ "IP адрес с которого запросы radius принимаются. Если не указан, то сервер " ++#~ "не будет принимать запросы radius" ++ ++#~ msgid "Local interface IP address to use for accepting radius requests" ++#~ msgstr "IP адрес локального интерфейса для приема запросов radius" ++ ++#~ msgid "Proxy port" ++#~ msgstr "Порт прокси" ++ ++#~ msgid "UDP Port to listen to for accepting radius requests" ++#~ msgstr "Порт UDP для запросов RADIUS" ++ ++#~ msgid "Proxy secret" ++#~ msgstr "Секрет прокси" ++ ++#~ msgid "Radius shared secret for clients" ++#~ msgstr "Общий RADIUS секрет для клиентов" ++ ++#~ msgid "UAM configuration" ++#~ msgstr "Конфигурация UAM" ++ ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Настройки UAM" ++ ++#~ msgid "Use Chilli XML" ++#~ msgstr "Использовать Chilli XML" ++ ++#~ msgid "Return the so-called Chilli XML along with WISPr XML" ++#~ msgstr "Возвращать так называемый Chilli XML вместе с WISPr XML" ++ ++#~ msgid "Default idle timeout" ++#~ msgstr "Таймаут ожидания по умолчанию" ++ ++#~ msgid "Default idle timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Таймаут ожидания по умолчанию если не установлен RADIUS'ом (0 по " ++#~ "умолчанию)" ++ ++#~ msgid "Default session timeout" ++#~ msgstr "Таймаут сессии (значение по умолчанию)" ++ ++#~ msgid "" ++#~ "Default session timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Таймаут сессии по умолчанию если не установлено RADIUS'ом (0 по умолчанию)" ++ ++#~ msgid "Inspect DNS traffic" ++#~ msgstr "Инспектировать траффик DNS" ++ ++#~ msgid "" ++#~ "Inspect DNS packets and drop responses with any non- A, CNAME, SOA, or MX " ++#~ "records to prevent dns tunnels (experimental)" ++#~ msgstr "" ++#~ "Проверять DNS пакеты и отбрасывать ответы без A, CNAME, SOA, или MX " ++#~ "записей для предотвращения DNS туннелей (экспериментальная ф-ция)." ++ ++#~ msgid "Local users file" ++#~ msgstr "Локальный файл пользователей" ++ ++#~ msgid "" ++#~ "A colon seperated file containing usernames and passwords of locally " ++#~ "authenticated users" ++#~ msgstr "" ++#~ "Файл, содержащий логины и пароли локально авторизованных пользователей " ++#~ "(записи разделены двоеточием)" ++ ++#~ msgid "Location name" ++#~ msgstr "Имя расположения" ++ ++#~ msgid "Human readable location name used in JSON interface" ++#~ msgstr "Имя расположения, используемой в интерфейсе JSON" ++ ++#~ msgid "Do not redirect to UAM server" ++#~ msgstr "Не перенаправлять на сервер UAM" ++ ++#~ msgid "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++#~ msgstr "" ++#~ "Не возвращаться на UAM сервер при удачном входе, перенаправить на " ++#~ "исходный URL" ++ ++#~ msgid "Do not do WISPr" ++#~ msgstr "Не выполнять WISPr" ++ ++#~ msgid "Do not do any WISPr XML, assume the back-end is doing this instead" ++#~ msgstr "Не выполнять WISPr XML, предполагая выполнение в бэкенд'е" ++ ++#~ msgid "Post auth proxy" ++#~ msgstr "Прокси пост-аутентификации" ++ ++#~ msgid "" ++#~ "Used with postauthproxyport to define a post authentication HTTP proxy " ++#~ "server" ++#~ msgstr "" ++#~ "Используется с портом прокси пост-аутентификации для определения HTTP " ++#~ "прокси-сервера аутентификации" ++ ++#~ msgid "Post auth proxy port" ++#~ msgstr "Порт прокси пост-аутентификации" ++ ++#~ msgid "" ++#~ "Used with postauthproxy to define a post authentication HTTP proxy server" ++#~ msgstr "" ++#~ "Ипользуется с прокси пост-аутентификации для определения HTTP прокси-" ++#~ "сервера пост-аутентификации" ++ ++#~ msgid "Allowed resources" ++#~ msgstr "Разрешенные ресурсы" ++ ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "" ++#~ "Список ресурсов к которым клиент может получить доступ без " ++#~ "предварительной аутентификации" ++ ++#~ msgid "Allow any DNS server" ++#~ msgstr "Разрешить любой DNS сервер" ++ ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "Разрешить любой DNS сервер для клиентов не прошедших аутентификацию" ++ ++#~ msgid "Allow any IP address" ++#~ msgstr "Разрешить любой IP-адрес" ++ ++#~ msgid "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++#~ msgstr "" ++#~ "Разрешить клиентам использовать любые настройки IP за счет \"спуфинга\" " ++#~ "ARP (экспериментальная ф-ция)" ++ ++#~ msgid "Allowed domains" ++#~ msgstr "Разрешенные домены" ++ ++#~ msgid "UAM homepage" ++#~ msgstr "Домашняя страница UAM" ++ ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "" ++#~ "URL домашней страницы для перенаправления пользователей не прошедших " ++#~ "аутентификацию" ++ ++#~ msgid "UAM static content port" ++#~ msgstr "Порт UAM статического контента" ++ ++#~ msgid "UAM listening address" ++#~ msgstr "Слашающий адрес UAM" ++ ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "IP адрес для приема аутентификации клиентов" ++ ++#~ msgid "UAM logout IP" ++#~ msgstr "IP-адрес выхода UAM" ++ ++#~ msgid "UAM listening port" ++#~ msgstr "Слушающий порт UAM" ++ ++#~ msgid "UAM secret" ++#~ msgstr "Секрет UAM" ++ ++#~ msgid "Shared secret between uamserver and chilli" ++#~ msgstr "Общий секрет для сервера UAM и Chilli" ++ ++#~ msgid "UAM server" ++#~ msgstr "Сервер UAM" ++ ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "URL или веб-сервер для аутентификации клиентов" ++ ++#~ msgid "UAM user interface" ++#~ msgstr "Интерфейс пользователя UAM" ++ ++#~ msgid "Use status file" ++#~ msgstr "Использовать статус-файл" ++ ++#~ msgid "WISPr login url" ++#~ msgstr "URL входа WISPr" ++ ++#~ msgid "Specific URL to be given in WISPr XML LoginURL" ++#~ msgstr "Особый URL в WISPr XML LoginURL" ++ ++#~ msgid "CGI program" ++#~ msgstr "Программа GCI" ++ ++#~ msgid "Web content directory" ++#~ msgstr "Директория Web-контента" ++ ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "Директория куда будет помещен встроенный Web-контент" ++ ++#~ msgid "MAC configuration" ++#~ msgstr "Настройка MAC" ++ ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Настройка аутентификации по MAC адресу" ++ ++#~ msgid "Allowed MAC addresses" ++#~ msgstr "Разрешенные MAC адреса" ++ ++#~ msgid "List of MAC addresses for which MAC authentication will be performed" ++#~ msgstr "Список MAC адресов для которых будет производиться аутентификация" ++ ++#~ msgid "Authenticate locally allowed MACs" ++#~ msgstr "Аутентифицировать локально разрешенные MAC адреса" ++ ++#~ msgid "Authenticate allowed MAC addresses without the use of RADIUS" ++#~ msgstr "Аутентифицировать разрешенные MAC адреса без использования RADIUS" ++ ++#~ msgid "Enable MAC authentification" ++#~ msgstr "Разрешить MAC аутентификацию" ++ ++#~ msgid "Try to authenticate all users based on their mac address alone" ++#~ msgstr "" ++#~ "Пробовать аутентификацию всех пользователей только на основе их MAC " ++#~ "адресов" ++ ++#~ msgid "Password" ++#~ msgstr "Пароль" ++ ++#~ msgid "Password used when performing MAC authentication" ++#~ msgstr "Пароль для MAC аутентификации" ++ ++#~ msgid "Suffix" ++#~ msgstr "Суффикс" ++ ++#~ msgid "" ++#~ "Suffix to add to the MAC address in order to form the User-Name, which is " ++#~ "sent to the radius server" ++#~ msgstr "" ++#~ "Суффикс, добавляемый в MAC адрес, для формирования имени пользователя, " ++#~ "которое посылается radius серверу" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/sk/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/sk/coovachilli.po +new file mode 100644 +index 0000000..bb5b1b9 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/sk/coovachilli.po +@@ -0,0 +1,21 @@ ++msgid "" ++msgstr "" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Last-Translator: Automatically generated\n" ++"Language-Team: none\n" ++"MIME-Version: 1.0\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" ++ ++msgid "CoovaChilli" ++msgstr "" ++ ++msgid "Network Configuration" ++msgstr "" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/sv/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/sv/coovachilli.po +new file mode 100644 +index 0000000..8695ce5 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/sv/coovachilli.po +@@ -0,0 +1,24 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-04-28 06:16+0200\n" ++"Last-Translator: Umeaboy \n" ++"Language-Team: none\n" ++"Language: sv\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChili" ++ ++msgid "Network Configuration" ++msgstr "Nätverkskonfiguration" ++ ++msgid "RADIUS configuration" ++msgstr "RADIUS-konfiguration" ++ ++msgid "UAM and MAC Authentication" ++msgstr "UAM och MAC-autensiering" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/templates/coovachilli.pot b/feeds/luci/applications/luci-app-coovachilli/po/templates/coovachilli.pot +new file mode 100644 +index 0000000..c1a2bed +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/templates/coovachilli.pot +@@ -0,0 +1,14 @@ ++msgid "" ++msgstr "Content-Type: text/plain; charset=UTF-8" ++ ++msgid "CoovaChilli" ++msgstr "" ++ ++msgid "Network Configuration" ++msgstr "" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/tr/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/tr/coovachilli.po +new file mode 100644 +index 0000000..b70a840 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/tr/coovachilli.po +@@ -0,0 +1,26 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-10-11 23:09+0200\n" ++"Last-Translator: vincenzo \n" ++"Language-Team: none\n" ++"Language: tr\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Network Yapılandırması" ++ ++msgid "RADIUS configuration" ++msgstr "Radius Yapılandırması" ++ ++msgid "UAM and MAC Authentication" ++msgstr "UAM ve MAC Kimlik Doğrulaması" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/uk/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/uk/coovachilli.po +new file mode 100644 +index 0000000..07ffc55 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/uk/coovachilli.po +@@ -0,0 +1,27 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-12-29 13:00+0200\n" ++"Last-Translator: Yurii \n" ++"Language-Team: none\n" ++"Language: uk\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "Конфігурація мережі" ++ ++msgid "RADIUS configuration" ++msgstr "Конфігурація RADIUS" ++ ++msgid "UAM and MAC Authentication" ++msgstr "Автентифікація через UAM і MAC" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/vi/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/vi/coovachilli.po +new file mode 100644 +index 0000000..66abf0d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/vi/coovachilli.po +@@ -0,0 +1,607 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-08-16 06:59+0200\n" ++"PO-Revision-Date: 2009-08-16 07:05+0200\n" ++"Last-Translator: Hong Phuc Dang \n" ++"Language-Team: LANGUAGE \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Pootle 1.1.0\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli" ++ ++msgid "Network Configuration" ++msgstr "" ++ ++msgid "RADIUS configuration" ++msgstr "" ++ ++msgid "UAM and MAC Authentication" ++msgstr "" ++ ++#~ msgid "General configuration" ++#~ msgstr "Cấu hình tổng quát" ++ ++#~ msgid "General CoovaChilli settings" ++#~ msgstr "Các cài đặt CoovaChilli tổng quát" ++ ++#~ msgid "Command socket" ++#~ msgstr "Command socket" ++ ++#~ msgid "UNIX socket used for communication with chilli_query" ++#~ msgstr "UNIX socket dùng để giao tiếp với chilli_query" ++ ++#~ msgid "Config refresh interval" ++#~ msgstr "Config refresh interval" ++ ++#~ msgid "" ++#~ "Re-read configuration file and do DNS lookups every interval seconds. " ++#~ "This has the same effect as sending the HUP signal. If interval is 0 " ++#~ "(zero) this feature is disabled. " ++#~ msgstr "" ++#~ "Đọc lại tập tin cấu hình và tra cưứ DNS mỗi giây. Cái này có ảnh hưởng " ++#~ "giống như đang gửi một tín hiệu HUP. Nếu interval là 0, tính năng này sẽ " ++#~ "bị vô hiệu hóa. " ++ ++#~ msgid "Pid file" ++#~ msgstr "Tập tin Pid" ++ ++#~ msgid "Filename to put the process id" ++#~ msgstr "Tên tập tin để đặt làm ID xử lý" ++ ++#~ msgid "State directory" ++#~ msgstr "Dạnh bạ vùng" ++ ++#~ msgid "Directory of non-volatile data" ++#~ msgstr "Thư mục của những dữ liệu cố định" ++ ++#~ msgid "TUN/TAP configuration" ++#~ msgstr "Cấu hình TUN/TAP" ++ ++#~ msgid "Network/Tun configuration" ++#~ msgstr "Mạng lưới/ Cấu hình TUN" ++ ++#~ msgid "Network down script" ++#~ msgstr "Network down script" ++ ++#~ msgid "" ++#~ "Script executed after a session has moved from authorized state to " ++#~ "unauthorized" ++#~ msgstr "" ++#~ "Script đã thực hiện sau khi một section đã di chuyển từ nơi có thẩm quyền " ++#~ "đến nơi không" ++ ++#~ msgid "Network up script" ++#~ msgstr "Network up script" ++ ++#~ msgid "Script executed after the tun network interface has been brought up" ++#~ msgstr "Script thi hành sau khi giao diện mạng tun được đưa lên" ++ ++#~ msgid "Primary DNS Server" ++#~ msgstr "Primary DNS Server" ++ ++#~ msgid "Secondary DNS Server" ++#~ msgstr "Secondary DNS Server" ++ ++#~ msgid "Domain name" ++#~ msgstr "Tên miền" ++ ++#~ msgid "" ++#~ "Is used to inform the client about the domain name to use for DNS lookups" ++#~ msgstr "" ++#~ "Được sử dụng để thông báo cho khách hàng về tên miền để dùng cho các tra " ++#~ "cứu DNS" ++ ++#~ msgid "Dynamic IP address pool" ++#~ msgstr "Dynamic IP address pool" ++ ++#~ msgid "Specifies a pool of dynamic IP addresses" ++#~ msgstr "Chỉ định một pool of dynamic IP addresses" ++ ++#~ msgid "IP down script" ++#~ msgstr "IP down script" ++ ++#~ msgid "Script executed after the tun network interface has been taken down" ++#~ msgstr "Script thực hiện sau khi giao diện mạng tun bị lấy xuống" ++ ++#~ msgid "IP up script" ++#~ msgstr "IP up script" ++ ++#~ msgid "" ++#~ "Script executed after the TUN/TAP network interface has been brought up" ++#~ msgstr "Script thực hiện sau khi giao diện mạng TUN/TAP đã được đưa lên" ++ ++#~ msgid "Uplink subnet" ++#~ msgstr "Uplink subnet" ++ ++#~ msgid "Network address of the uplink interface (CIDR notation)" ++#~ msgstr "Địa chỉ mạng của giao diện uplink (CIDR chú thích)" ++ ++#~ msgid "Static IP address pool" ++#~ msgstr "Static IP address pool" ++ ++#~ msgid "Specifies a pool of static IP addresses" ++#~ msgstr "Chỉ định một pool of static IP addresses" ++ ++#~ msgid "TUN/TAP device" ++#~ msgstr "TUN/TAP device" ++ ++#~ msgid "The specific device to use for the TUN/TAP interface" ++#~ msgstr "Thiết bị cụ thể để dùng cho giao diện TUN/TAP" ++ ++#~ msgid "TX queue length" ++#~ msgstr "Độ dài của TX queue" ++ ++#~ msgid "The TX queue length to set on the TUN/TAP interface" ++#~ msgstr "Độ dài TX queue để đặt trên giao diện TUN/TAP " ++ ++#~ msgid "Use TAP device" ++#~ msgstr "Dùng dụng cụ TAP" ++ ++#~ msgid "Use the TAP interface instead of TUN" ++#~ msgstr "Dùng giao diện TAP thay cho TUN" ++ ++#~ msgid "DHCP configuration" ++#~ msgstr "Cấu hình DHCP" ++ ++#~ msgid "Set DHCP options for connecting clients" ++#~ msgstr "Đặt lựa chọn DHCP cho đối tượng kết nối" ++ ++#~ msgid "DHCP end number" ++#~ msgstr "Số cuối DHCP" ++ ++#~ msgid "Where to stop assigning IP addresses (default 254)" ++#~ msgstr "Chỗ để stop những gán IP (mặc định 254)" ++ ++#~ msgid "DHCP interface" ++#~ msgstr "Giao diện DHCP" ++ ++#~ msgid "Ethernet interface to listen to for the downlink interface" ++#~ msgstr "Giao diện Ethernet để listen cho những giao diện downlink " ++ ++#~ msgid "Listen MAC address" ++#~ msgstr "Nghe địa chỉ MAC" ++ ++#~ msgid "" ++#~ "MAC address to listen to. If not specified the MAC address of the " ++#~ "interface will be used" ++#~ msgstr "" ++#~ "Địa chỉ MAC để nghe. Nếu địa chỉ MAC chỉ định của giao diện sẽ được sử " ++#~ "dụng " ++ ++#~ msgid "DHCP start number" ++#~ msgstr "Số DHCP bắt đầu " ++ ++#~ msgid "Where to start assigning IP addresses (default 10)" ++#~ msgstr "Chỗ để bắt đầu gán địa chỉ IP (mặc định 10)" ++ ++#~ msgid "Enable IEEE 802.1x" ++#~ msgstr "Kích hoạt IEEE 802.1x" ++ ++#~ msgid "Enable IEEE 802.1x authentication and listen for EAP requests" ++#~ msgstr "Kích hoạt quá trình xác thực IEEE 802.1x và lắng nghe yêu cầu EAP" ++ ++#~ msgid "Leasetime" ++#~ msgstr "Leasetime" ++ ++#~ msgid "Use a DHCP lease of seconds (default 600)" ++#~ msgstr "Dùng một DHCP lease ở giây (600)" ++ ++#~ msgid "Allow session update through RADIUS" ++#~ msgstr "Cho phép phiên cập nhật thông qua RADIUS" ++ ++#~ msgid "" ++#~ "Allow updating of session parameters with RADIUS attributes sent in " ++#~ "Accounting-Response" ++#~ msgstr "" ++#~ "Cho phép phiên cập nhật tham số phiên với RADIUS được gửi trong " ++#~ "Accounting-Response" ++ ++#~ msgid "Admin password" ++#~ msgstr "Mật mã quản trị " ++ ++#~ msgid "" ++#~ "Password to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "Mật mã dùng để xác thực chế độ quản trị để pick up cấu hình chilli và " ++#~ "thành lập một công cụ &quot;system&quot; session" ++ ++#~ msgid "Admin user" ++#~ msgstr "Người quản trị " ++ ++#~ msgid "" ++#~ "User-name to use for Administrative-User authentication in order to pick " ++#~ "up chilli configurations and establish a device \"system\" session" ++#~ msgstr "" ++#~ "User name dùng để xác thực chế độ quản trị để pick up cấu hình chilli và " ++#~ "thành lập một công cụ &quot;system&quot; session" ++ ++#~ msgid "Do not check disconnection requests" ++#~ msgstr "Không kiểm tra yêu cầu ngừng kết nối" ++ ++#~ msgid "Do not check the source IP address of radius disconnect requests" ++#~ msgstr "" ++#~ "Không tên kiểm tra nguồn địa chỉ IP trong bán kính yêu cầu ngừng kết nối" ++ ++#~ msgid "RADIUS disconnect port" ++#~ msgstr "Cửa ngừng kết nối RADIUS" ++ ++#~ msgid "UDP port to listen to for accepting radius disconnect requests" ++#~ msgstr "Cửa UDP để nghe khi chấp nhận một yêu cầu ngừng kết nối" ++ ++#~ msgid "NAS IP" ++#~ msgstr "NAS IP " ++ ++#~ msgid "Value to use in RADIUS NAS-IP-Address attribute" ++#~ msgstr "Giá trị để dùng trong RADIUS NAS-IP-Address attribute" ++ ++#~ msgid "NAS MAC" ++#~ msgstr "NAS MAC" ++ ++#~ msgid "MAC address value to use in RADIUS Called-Station-ID attribute" ++#~ msgstr "" ++#~ "Giá trị địa chỉ MAC để dùng trong RADIUS Called-Station-ID attribute" ++ ++#~ msgid "Allow OpenID authentication" ++#~ msgstr "Cho phép xác thực OpenID " ++ ++#~ msgid "" ++#~ "Allows OpenID authentication by sending ChilliSpot-Config=allow-" ++#~ "openidauth in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Cho phép xác thực OpenID bằng cách gửi ChilliSpot-Config=allow-openidauth " ++#~ "in RADIUS Access-Requests" ++ ++#~ msgid "RADIUS accounting port" ++#~ msgstr "Cổng RADIUS accounting" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius accounting requests (default 1813)" ++#~ msgstr "Số của cổng UDP dùng cho yêu cầu radius accounting (mặcđịnh 1813)" ++ ++#~ msgid "RADIUS authentication port" ++#~ msgstr "Cổng xác thực RADIUS" ++ ++#~ msgid "" ++#~ "The UDP port number to use for radius authentication requests (default " ++#~ "1812)" ++#~ msgstr "Số của cổng UDP để yêu cầu xác thực radius (default 1812)" ++ ++#~ msgid "Option radiuscalled" ++#~ msgstr "Tùy chọn radiuscalled" ++ ++#~ msgid "RADIUS listen address" ++#~ msgstr "Địa chỉ nghe RADIUS" ++ ++#~ msgid "Local interface IP address to use for the radius interface" ++#~ msgstr "Địa chỉ IP giao diện địa phương để dùng cho giao diện radius" ++ ++#~ msgid "RADIUS location ID" ++#~ msgstr "RADIUS vị tri ID" ++ ++#~ msgid "WISPr Location ID" ++#~ msgstr "WISPr vị trí ID" ++ ++#~ msgid "RADIUS location name" ++#~ msgstr "Tên vị trí RADIUS" ++ ++#~ msgid "WISPr Location Name" ++#~ msgstr "Tên vị trí WISPr" ++ ++#~ msgid "NAS ID" ++#~ msgstr "NAS ID" ++ ++#~ msgid "Network access server identifier" ++#~ msgstr "Network truy cập server identifier" ++ ++#~ msgid "Option radiusnasip" ++#~ msgstr "Lựa chọn radiusnasip" ++ ++#~ msgid "NAS port type" ++#~ msgstr "Loại cổng NAS" ++ ++#~ msgid "" ++#~ "Value of NAS-Port-Type attribute. Defaults to 19 (Wireless-IEEE-802.11)" ++#~ msgstr "" ++#~ "Giá trị của NAS-Port-Type attribute. Mặc định tới 19 (Wireless-" ++#~ "IEEE-802.11)" ++ ++#~ msgid "Send RADIUS VSA" ++#~ msgstr "Gửi RADIUS VSA" ++ ++#~ msgid "Send the ChilliSpot-OriginalURL RADIUS VSA in Access-Request" ++#~ msgstr "Gửi ChilliSpot-OriginalURL RADIUS VSA trong yêu cầu truy cập" ++ ++#~ msgid "RADIUS secret" ++#~ msgstr "RADIUS bí mật" ++ ++#~ msgid "Radius shared secret for both servers" ++#~ msgstr "Radius chia sẻ bí mật cho cả 2 servers" ++ ++#~ msgid "RADIUS server 1" ++#~ msgstr "RADIUS server 1" ++ ++#~ msgid "The IP address of radius server 1" ++#~ msgstr "Địa chỉ IP của radius server 1" ++ ++#~ msgid "RADIUS server 2" ++#~ msgstr "RADIUS server 2" ++ ++#~ msgid "The IP address of radius server 2" ++#~ msgstr "Địa chỉ IP của radius server 2" ++ ++#~ msgid "Swap octets" ++#~ msgstr "Swap octets" ++ ++#~ msgid "" ++#~ "Swap the meaning of \"input octets\" and \"output octets\" as it related " ++#~ "to RADIUS attribtues" ++#~ msgstr "" ++#~ "Hoán ý nghĩa của &quot;input octets&quot; và &quot;output " ++#~ "octets&quot; khi nó liên quan tới RADIUS attribtues" ++ ++#~ msgid "Allow WPA guests" ++#~ msgstr "Cho phép WPA guests" ++ ++#~ msgid "" ++#~ "Allows WPA Guest authentication by sending ChilliSpot-Config=allow-wpa-" ++#~ "guests in RADIUS Access-Requests" ++#~ msgstr "" ++#~ "Cho phép xác thực WPA Guest bằng cách gửi ChilliSpot-Config=allow-wpa-" ++#~ "guests trong RADIUS yêu cầu truy cập" ++ ++#~ msgid "Proxy client" ++#~ msgstr "Proxy client" ++ ++#~ msgid "" ++#~ "IP address from which radius requests are accepted. If omitted the server " ++#~ "will not accept radius requests" ++#~ msgstr "" ++#~ "Địa chỉ IP mà yêu cầu radius được chấp nhận. Nếu bỏ qua server sẽ không " ++#~ "chấp nhận yêu cầu radius." ++ ++#~ msgid "Proxy listen address" ++#~ msgstr "Proxy listen address" ++ ++#~ msgid "Local interface IP address to use for accepting radius requests" ++#~ msgstr "Địa chỉ giao diện IP địa phương dùng để chấp nhận yêu cầu radius" ++ ++#~ msgid "Proxy port" ++#~ msgstr "Proxy port" ++ ++#~ msgid "UDP Port to listen to for accepting radius requests" ++#~ msgstr "Cổng UDP để listen để chấp nhận yêu cầu radius" ++ ++#~ msgid "Proxy secret" ++#~ msgstr "Proxy bí mật" ++ ++#~ msgid "Radius shared secret for clients" ++#~ msgstr "Radius chia sẻ bí mật cho các client" ++ ++#~ msgid "UAM configuration" ++#~ msgstr "Cấu hình UAM" ++ ++#~ msgid "Unified Configuration Method settings" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#~ msgid "Use Chilli XML" ++#~ msgstr "Dùng Chilli XML" ++ ++#~ msgid "Return the so-called Chilli XML along with WISPr XML" ++#~ msgstr "Trở về cái gọi là Chilli XML cùng với WISPr XML" ++ ++#~ msgid "Default idle timeout" ++#~ msgstr "Mặc định idle timeout" ++ ++#~ msgid "Default idle timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "Mặc định idle timeout trừ khi đặt bởi RADIUS (mặc định tới 0)" ++ ++#~ msgid "Default interim interval" ++#~ msgstr "Mặc định interim interval" ++ ++#~ msgid "" ++#~ "Default interim-interval for RADIUS accounting unless otherwise set by " ++#~ "RADIUS (defaults to 0)" ++#~ msgstr "" ++#~ "Mặc định interim-interval cho RADIUS accounting trừ khi đặt bởi RADIUS " ++#~ "(defaults tới 0)" ++ ++#~ msgid "Default session timeout" ++#~ msgstr "Mặc định session timeout" ++ ++#~ msgid "" ++#~ "Default session timeout unless otherwise set by RADIUS (defaults to 0)" ++#~ msgstr "Mặc định session timeout trừ khi đặt bởi RADIUS (mặc định tới 0)" ++ ++#~ msgid "Inspect DNS traffic" ++#~ msgstr "Kiểm tra lưu thông DNS" ++ ++#, fuzzy ++#~ msgid "Do not redirect to UAM server" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Do not return to UAM server on login success, just redirect to original " ++#~ "URL" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Do not do WISPr" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Do not do any WISPr XML, assume the back-end is doing this instead" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "List of resources the client can access without first authenticating" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Allow any DNS server" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Allow any DNS server for unauthenticated clients" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Allow any IP address" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Allow clients to use any IP settings they wish by spoofing ARP " ++#~ "(experimental)" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Allowed domains" ++#~ msgstr "Tên miền" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Defines a list of domain names to automatically add to the walled garden" ++#~ msgstr "" ++#~ "Được sử dụng để thông báo cho khách hàng về tên miền để dùng cho các tra " ++#~ "cứu DNS" ++ ++#, fuzzy ++#~ msgid "UAM homepage" ++#~ msgstr "Tên miền" ++ ++#, fuzzy ++#~ msgid "URL of homepage to redirect unauthenticated users to" ++#~ msgstr "" ++#~ "Được sử dụng để thông báo cho khách hàng về tên miền để dùng cho các tra " ++#~ "cứu DNS" ++ ++#, fuzzy ++#~ msgid "UAM static content port" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "TCP port to bind to for only serving embedded content" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "UAM listening address" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "IP address to listen to for authentication of clients" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "UAM logout IP" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Use this IP address to instantly logout a client accessing it (defaults " ++#~ "to 1.1.1.1)" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "UAM listening port" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "TCP port to bind to for authenticating clients (default 3990)" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "UAM secret" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Shared secret between uamserver and chilli" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "UAM server" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "URL of web server to use for authenticating clients" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "UAM user interface" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "" ++#~ "An init.d style program to handle local content on the uamuiport web " ++#~ "server" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "CGI program" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "" ++#~ "Executable to run as a CGI type program (like haserl) for URLs with " ++#~ "extention .chi" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Web content directory" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "Directory where embedded local web content is placed" ++#~ msgstr "Thống nhất cấu hình phương pháp cài đặt" ++ ++#, fuzzy ++#~ msgid "MAC configuration" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Configure MAC authentication" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Allowed MAC addresses" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "List of MAC addresses for which MAC authentication will be performed" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Authenticate allowed MAC addresses without the use of RADIUS" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Enable MAC authentification" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Try to authenticate all users based on their mac address alone" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Password" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Password used when performing MAC authentication" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "Suffix" ++#~ msgstr "Cấu hình RADIUS" ++ ++#, fuzzy ++#~ msgid "coovachilli_macauth_macsuffix_desc" ++#~ msgstr "Cấu hình RADIUS" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/zh-cn/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/zh-cn/coovachilli.po +new file mode 100644 +index 0000000..7ab0032 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/zh-cn/coovachilli.po +@@ -0,0 +1,26 @@ ++# coovachilli.pot ++# generated from ./applications/luci-coovachilli/luasrc/i18n/coovachilli.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2012-09-05 14:32+0200\n" ++"Last-Translator: nKsyn \n" ++"Language-Team: none\n" ++"Language: zh_CN\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli 网页认证" ++ ++msgid "Network Configuration" ++msgstr "网络配置" ++ ++msgid "RADIUS configuration" ++msgstr "RADIUS配置" ++ ++msgid "UAM and MAC Authentication" ++msgstr "UAM和MAC认证" +diff --git a/feeds/luci/applications/luci-app-coovachilli/po/zh-tw/coovachilli.po b/feeds/luci/applications/luci-app-coovachilli/po/zh-tw/coovachilli.po +new file mode 100644 +index 0000000..aad8a4d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/po/zh-tw/coovachilli.po +@@ -0,0 +1,24 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"PO-Revision-Date: 2014-05-18 19:49+0200\n" ++"Last-Translator: omnistack \n" ++"Language-Team: none\n" ++"Language: zh_TW\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=1; plural=0;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "CoovaChilli" ++msgstr "CoovaChilli服務" ++ ++msgid "Network Configuration" ++msgstr "網路設定" ++ ++msgid "RADIUS configuration" ++msgstr "RADIUS設定" ++ ++msgid "UAM and MAC Authentication" ++msgstr "微軟UAM模組和MAC位指驗證" +diff --git a/feeds/luci/applications/luci-app-coovachilli/root/etc/config/coovachilli b/feeds/luci/applications/luci-app-coovachilli/root/etc/config/coovachilli +new file mode 100644 +index 0000000..0b6be2c +--- /dev/null ++++ b/feeds/luci/applications/luci-app-coovachilli/root/etc/config/coovachilli +@@ -0,0 +1,243 @@ ++############################################################################## ++# ++# Sample CoovaChilli configuration file ++# ++############################################################################## ++ ++# General settings ++config general ++ ++ # Enable this flag to include debug information. ++ option debug 0 ++ ++ # Re-read configuration file at this interval. Will also cause new domain ++ # name lookups to be performed. Value is given in seconds. ++ option interval 3600 ++ ++ # File to store information about the process id of the program. ++ # The program must have write access to this file/directory. ++ option pidfile /var/run/chilli.pid ++ ++ # Directory to use for nonvolatile storage. ++ # The program must have write access to this directory. ++ # This tag is currently ignored ++ #option statedir ./ ++ ++ ++# TUN parameters ++config tun ++ ++ # IP network address of external packet data network ++ # Used to allocate dynamic IP addresses and set up routing. ++ # Normally you do not need to uncomment this tag. ++ option net 192.168.182.0/24 ++ ++ # Dynamic IP address pool ++ # Used to allocate dynamic IP addresses to clients. ++ # If not set it defaults to the net tag. ++ # Do not uncomment this tag unless you are an experienced user! ++ #option dynip 192.168.182.0/24 ++ ++ # Static IP address pool ++ # Used to allocate static IP addresses to clients. ++ # Do not uncomment this tag unless you are an experienced user! ++ #option statip 192.168.182.0/24 ++ ++ # Primary DNS server. ++ # Will be suggested to the client. ++ # If omitted the system default will be used. ++ # Normally you do not need to uncomment this tag. ++ #option dns1 172.16.0.5 ++ ++ # Secondary DNS server. ++ # Will be suggested to the client. ++ # If omitted the system default will be used. ++ # Normally you do not need to uncomment this tag. ++ #option dns2 172.16.0.6 ++ ++ # Domain name ++ # Will be suggested to the client. ++ # Normally you do not need to uncomment this tag. ++ option domain key.chillispot.org ++ ++ # Script executed after network interface has been brought up. ++ # Executed with the following parameters: ++ # Normally you do not need to uncomment this tag. ++ #option ipup /etc/chilli.ipup ++ ++ # Script executed after network interface has been taken down. ++ # Executed with the following parameters: ++ # Normally you do not need to uncomment this tag. ++ #option ipdown /etc/chilli.ipdown ++ ++ # Script executed after a user has been authenticated. ++ # Executed with the following parameters: ++ # ++ # Normally you do not need to uncomment this tag. ++ #option conup /etc/chilli.conup ++ ++ # Script executed after a user has disconnected. ++ # Executed with the following parameters: ++ # ++ # Normally you do not need to uncomment this tag. ++ #option condown /etc/chilli.condown ++ ++ ++# DHCP Parameters ++config dhcp ++ ++ # Ethernet interface to listen to. ++ # This is the network interface which is connected to the access points. ++ # In a typical configuration this tag should be set to eth1. ++ option dhcpif eth1 ++ ++ # Use specified MAC address. ++ # An address in the range 00:00:5E:00:02:00 - 00:00:5E:FF:FF:FF falls ++ # within the IANA range of addresses and is not allocated for other ++ # purposes. ++ # Normally you do not need to uncomment this tag. ++ #option dhcpmac 00:00:5E:00:02:00 ++ ++ # Time before DHCP lease expires ++ # Normally you do not need to uncomment this tag. ++ #option lease 600 ++ ++ ++# Radius parameters ++config radius ++ ++ # IP address to listen to ++ # Normally you do not need to uncomment this tag. ++ #option radiuslisten 127.0.0.1 ++ ++ # IP address of radius server 1 ++ # For most installations you need to modify this tag. ++ option radiusserver1 rad01.chillispot.org ++ ++ # IP address of radius server 2 ++ # If you have only one radius server you should set radiusserver2 to the ++ # same value as radiusserver1. ++ # For most installations you need to modify this tag. ++ option radiusserver2 rad02.chillispot.org ++ ++ # Radius authentication port ++ # The UDP port number to use for radius authentication requests. ++ # The same port number is used for both radiusserver1 and radiusserver2. ++ # Normally you do not need to uncomment this tag. ++ #option radiusauthport 1812 ++ ++ # Radius accounting port ++ # The UDP port number to use for radius accounting requests. ++ # The same port number is used for both radiusserver1 and radiusserver2. ++ # Normally you do not need to uncomment this tag. ++ #option radiusacctport 1813 ++ ++ # Radius shared secret for both servers ++ # For all installations you should modify this tag. ++ #option radiussecret testing123 ++ ++ # Radius NAS-Identifier ++ # Normally you do not need to uncomment this tag. ++ #option radiusnasid nas01 ++ ++ # Radius NAS-IP-Address ++ # Normally you do not need to uncomment this tag. ++ #option radiusnasip 127.0.0.1 ++ ++ # Radius Called-Station-ID ++ # Normally you do not need to uncomment this tag. ++ #option radiuscalled 00133300 ++ ++ # WISPr Location ID. Should be in the format: isocc=, ++ # cc=,ac=,network= ++ # Normally you do not need to uncomment this tag. ++ #option radiuslocationid isocc=us,cc=1,ac=408,network=ACMEWISP_NewarkAirport ++ ++ # WISPr Location Name. Should be in the format: ++ # , ++ # Normally you do not need to uncomment this tag. ++ #option radiuslocationname ACMEWISP,Gate_14_Terminal_C_of_Newark_Airport ++ ++ ++# Radius proxy parameters ++config proxy ++ ++ # IP address to listen to ++ # Normally you do not need to uncomment this tag. ++ #option proxylisten 10.0.0.1 ++ ++ # UDP port to listen to. ++ # If not specified a port will be selected by the system ++ # Normally you do not need to uncomment this tag. ++ #option proxyport 1645 ++ ++ # Client(s) from which we accept radius requests ++ # Normally you do not need to uncomment this tag. ++ #option proxyclient 10.0.0.1/24 ++ ++ # Radius proxy shared secret for all clients ++ # If not specified defaults to radiussecret ++ # Normally you do not need to uncomment this tag. ++ #option proxysecret testing123 ++ ++ ++# Universal access method (UAM) parameters ++config uam ++ ++ # URL of web server handling authentication. ++ option uamserver https://radius.chillispot.org/hotspotlogin ++ ++ # URL of welcome homepage. ++ # Unauthenticated users will be redirected to this URL. If not specified ++ # users will be redirected to the uamserver instead. ++ # Normally you do not need to uncomment this tag. ++ #option uamhomepage http://192.168.182.1/welcome.html ++ ++ # Shared between chilli and authentication web server ++ #option uamsecret ht2eb8ej6s4et3rg1ulp ++ ++ # IP address to listen to for authentication requests ++ # Do not uncomment this tag unless you are an experienced user! ++ #option uamlisten 192.168.182.1 ++ ++ # TCP port to listen to for authentication requests ++ # Do not uncomment this tag unless you are an experienced user! ++ #option uamport 3990 ++ ++ # Comma separated list of domain names, IP addresses or network segments ++ # the client can access without first authenticating. ++ # It is possible to specify this tag multiple times. ++ # Normally you do not need to uncomment this tag. ++ #list uamallowed www.chillispot.org ++ #list uamallowed 10.11.12.0/24 ++ ++ # If this flag is given unauthenticated users are allowed to use ++ # any DNS server. ++ # Normally you do not need to uncomment this tag. ++ #uamanydns ++ ++ ++# MAC authentication ++config macauth ++ ++ # If this flag is given users will be authenticated only on their MAC ++ # address. ++ # Normally you do not need to enable this flag. ++ option macauth 0 ++ ++ # List of MAC addresses. ++ # The MAC addresses specified in this list will be authenticated only on ++ # their MAC address. ++ # This tag is ignored if the macauth tag is given. ++ # It is possible to specify this tag multiple times. ++ # Normally you do not need to uncomment this tag. ++ #list macallowed 00-0A-5E-AC-BE-51 ++ #list macallowed 00-30-1B-3C-32-E9 ++ ++ # Password to use for MAC authentication. ++ # Normally you do not need to uncomment this tag. ++ #option macpasswd password ++ ++ # Suffix to add to MAC address in order to form the username. ++ # Normally you do not need to uncomment this tag. ++ #option macsuffix suffix +diff --git a/feeds/luci/applications/luci-app-ddns/Makefile b/feeds/luci/applications/luci-app-ddns/Makefile +new file mode 100644 +index 0000000..0e1e5df +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/Makefile +@@ -0,0 +1,38 @@ ++# ++# Copyright (C) 2008-2015 The LuCI Team ++# ++# This is free software, licensed under the Apache License, Version 2.0 . ++# ++ ++include $(TOPDIR)/rules.mk ++ ++PKG_NAME:=luci-app-ddns ++ ++# Version == major.minor.patch ++# increase on new functionality (minor) or patches (patch) ++PKG_VERSION:=2.2.4 ++ ++# Release == build ++# increase on changes of translation files ++PKG_RELEASE:=1 ++ ++PKG_LICENSE:=Apache-2.0 ++PKG_MAINTAINER:=Christian Schoenebeck ++ ++# LuCI specific settings ++LUCI_TITLE:=LuCI Support for Dynamic DNS Client (ddns-scripts) ++LUCI_DEPENDS:=+luci-mod-admin-full +ddns-scripts ++LUCI_PKGARCH:=all ++ ++define Package/$(PKG_NAME)/config ++# shown in make menuconfig ++help ++ $(LUCI_TITLE) ++ . ++ Version: $(PKG_VERSION)-$(PKG_RELEASE) ++ $(PKG_MAINTAINER) ++endef ++ ++include $(TOPDIR)/feeds/luci/luci.mk ++ ++# call BuildPackage - OpenWrt buildroot signature +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/controller/ddns.lua b/feeds/luci/applications/luci-app-ddns/luasrc/controller/ddns.lua +new file mode 100644 +index 0000000..4fbd3c3 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/controller/ddns.lua +@@ -0,0 +1,237 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Copyright 2013 Manuel Munz ++-- Copyright 2014 Christian Schoenebeck ++-- Licensed to the public under the Apache License 2.0. ++ ++module("luci.controller.ddns", package.seeall) ++ ++local NX = require "nixio" ++local NXFS = require "nixio.fs" ++local DISP = require "luci.dispatcher" ++local HTTP = require "luci.http" ++local UCI = require "luci.model.uci" ++local SYS = require "luci.sys" ++local DDNS = require "luci.tools.ddns" -- ddns multiused functions ++local UTIL = require "luci.util" ++ ++DDNS_MIN = "2.4.2-1" -- minimum version of service required ++ ++function index() ++ local nxfs = require "nixio.fs" -- global definitions not available ++ local sys = require "luci.sys" -- in function index() ++ local ddns = require "luci.tools.ddns" -- ddns multiused functions ++ local verinst = ddns.ipkg_ver_installed("ddns-scripts") ++ local verok = ddns.ipkg_ver_compare(verinst, ">=", "2.0.0-0") ++ -- do NOT start it not ddns-scripts version 2.x ++ if not verok then ++ return ++ end ++ -- no config create an empty one ++ if not nxfs.access("/etc/config/ddns") then ++ nxfs.writefile("/etc/config/ddns", "") ++ end ++ ++ entry( {"admin", "services", "ddns"}, cbi("ddns/overview"), _("Dynamic DNS"), 59) ++ entry( {"admin", "services", "ddns", "detail"}, cbi("ddns/detail"), nil ).leaf = true ++ entry( {"admin", "services", "ddns", "hints"}, cbi("ddns/hints", ++ {hideapplybtn=true, hidesavebtn=true, hideresetbtn=true}), nil ).leaf = true ++ entry( {"admin", "services", "ddns", "global"}, cbi("ddns/global"), nil ).leaf = true ++ entry( {"admin", "services", "ddns", "logview"}, call("logread") ).leaf = true ++ entry( {"admin", "services", "ddns", "startstop"}, post("startstop") ).leaf = true ++ entry( {"admin", "services", "ddns", "status"}, call("status") ).leaf = true ++end ++ ++-- function to read all sections status and return data array ++local function _get_status() ++ local uci = UCI.cursor() ++ local service = SYS.init.enabled("ddns") and 1 or 0 ++ local url_start = DISP.build_url("admin", "system", "startup") ++ local data = {} -- Array to transfer data to javascript ++ ++ data[#data+1] = { ++ enabled = service, -- service enabled ++ url_up = url_start, -- link to enable DDS (System-Startup) ++ } ++ ++ uci:foreach("ddns", "service", function (s) ++ ++ -- Get section we are looking at ++ -- and enabled state ++ local section = s[".name"] ++ local enabled = tonumber(s["enabled"]) or 0 ++ local datelast = "_empty_" -- formatted date of last update ++ local datenext = "_empty_" -- formatted date of next update ++ ++ -- get force seconds ++ local force_seconds = DDNS.calc_seconds( ++ tonumber(s["force_interval"]) or 72 , ++ s["force_unit"] or "hours" ) ++ -- get/validate pid and last update ++ local pid = DDNS.get_pid(section) ++ local uptime = SYS.uptime() ++ local lasttime = DDNS.get_lastupd(section) ++ if lasttime > uptime then -- /var might not be linked to /tmp ++ lasttime = 0 -- and/or not cleared on reboot ++ end ++ ++ -- no last update happen ++ if lasttime == 0 then ++ datelast = "_never_" ++ ++ -- we read last update ++ else ++ -- calc last update ++ -- sys.epoch - sys uptime + lastupdate(uptime) ++ local epoch = os.time() - uptime + lasttime ++ -- use linux date to convert epoch ++ datelast = DDNS.epoch2date(epoch) ++ -- calc and fill next update ++ datenext = DDNS.epoch2date(epoch + force_seconds) ++ end ++ ++ -- process running but update needs to happen ++ -- problems if force_seconds > uptime ++ force_seconds = (force_seconds > uptime) and uptime or force_seconds ++ if pid > 0 and ( lasttime + force_seconds - uptime ) <= 0 then ++ datenext = "_verify_" ++ ++ -- run once ++ elseif force_seconds == 0 then ++ datenext = "_runonce_" ++ ++ -- no process running and NOT enabled ++ elseif pid == 0 and enabled == 0 then ++ datenext = "_disabled_" ++ ++ -- no process running and enabled ++ elseif pid == 0 and enabled ~= 0 then ++ datenext = "_stopped_" ++ end ++ ++ -- get/set monitored interface and IP version ++ local iface = s["interface"] or "_nonet_" ++ local use_ipv6 = tonumber(s["use_ipv6"]) or 0 ++ if iface ~= "_nonet_" then ++ local ipv = (use_ipv6 == 1) and "IPv6" or "IPv4" ++ iface = ipv .. " / " .. iface ++ end ++ ++ -- try to get registered IP ++ local domain = s["domain"] or "_nodomain_" ++ local dnsserver = s["dns_server"] or "" ++ local force_ipversion = tonumber(s["force_ipversion"] or 0) ++ local force_dnstcp = tonumber(s["force_dnstcp"] or 0) ++ local command = [[/usr/lib/ddns/dynamic_dns_lucihelper.sh]] ++ command = command .. [[ get_registered_ip ]] .. domain .. [[ ]] .. use_ipv6 .. ++ [[ ]] .. force_ipversion .. [[ ]] .. force_dnstcp .. [[ ]] .. dnsserver ++ local reg_ip = SYS.exec(command) ++ if reg_ip == "" then ++ reg_ip = "_nodata_" ++ end ++ ++ -- fill transfer array ++ data[#data+1] = { ++ section = section, ++ enabled = enabled, ++ iface = iface, ++ domain = domain, ++ reg_ip = reg_ip, ++ pid = pid, ++ datelast = datelast, ++ datenext = datenext ++ } ++ end) ++ ++ uci:unload("ddns") ++ return data ++end ++ ++-- called by XHR.get from detail_logview.htm ++function logread(section) ++ -- read application settings ++ local uci = UCI.cursor() ++ local log_dir = uci:get("ddns", "global", "log_dir") or "/var/log/ddns" ++ local lfile = log_dir .. "/" .. section .. ".log" ++ local ldata = NXFS.readfile(lfile) ++ ++ if not ldata or #ldata == 0 then ++ ldata="_nodata_" ++ end ++ uci:unload("ddns") ++ HTTP.write(ldata) ++end ++ ++-- called by XHR.get from overview_status.htm ++function startstop(section, enabled) ++ local uci = UCI.cursor() ++ local pid = DDNS.get_pid(section) ++ local data = {} -- Array to transfer data to javascript ++ ++ -- if process running we want to stop and return ++ if pid > 0 then ++ local tmp = NX.kill(pid, 15) -- terminate ++ NX.nanosleep(2) -- 2 second "show time" ++ -- status changed so return full status ++ data = _get_status() ++ HTTP.prepare_content("application/json") ++ HTTP.write_json(data) ++ return ++ end ++ ++ -- read uncommitted changes ++ -- we don't save and commit data from other section or other options ++ -- only enabled will be done ++ local exec = true ++ local changed = uci:changes("ddns") ++ for k_config, v_section in pairs(changed) do ++ -- security check because uci.changes only gets our config ++ if k_config ~= "ddns" then ++ exec = false ++ break ++ end ++ for k_section, v_option in pairs(v_section) do ++ -- check if only section of button was changed ++ if k_section ~= section then ++ exec = false ++ break ++ end ++ for k_option, v_value in pairs(v_option) do ++ -- check if only enabled was changed ++ if k_option ~= "enabled" then ++ exec = false ++ break ++ end ++ end ++ end ++ end ++ ++ -- we can not execute because other ++ -- uncommitted changes pending, so exit here ++ if not exec then ++ HTTP.write("_uncommitted_") ++ return ++ end ++ ++ -- save enable state ++ uci:set("ddns", section, "enabled", ( (enabled == "true") and "1" or "0") ) ++ uci:save("ddns") ++ uci:commit("ddns") ++ uci:unload("ddns") ++ ++ -- start dynamic_dns_updater.sh script ++ os.execute ([[/usr/lib/ddns/dynamic_dns_updater.sh %s 0 > /dev/null 2>&1 &]] % section) ++ NX.nanosleep(3) -- 3 seconds "show time" ++ ++ -- status changed so return full status ++ data = _get_status() ++ HTTP.prepare_content("application/json") ++ HTTP.write_json(data) ++end ++ ++-- called by XHR.poll from overview_status.htm ++function status() ++ local data = _get_status() ++ HTTP.prepare_content("application/json") ++ HTTP.write_json(data) ++end +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua +new file mode 100644 +index 0000000..e655ce5 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua +@@ -0,0 +1,1239 @@ ++-- Copyright 2008 Steven Barth ++-- Copyright 2008 Jo-Philipp Wich ++-- Copyright 2013 Manuel Munz ++-- Copyright 2014-2015 Christian Schoenebeck ++-- Licensed to the public under the Apache License 2.0. ++ ++local NX = require "nixio" ++local NXFS = require "nixio.fs" ++local SYS = require "luci.sys" ++local UTIL = require "luci.util" ++local DISP = require "luci.dispatcher" ++local WADM = require "luci.tools.webadmin" ++local DTYP = require "luci.cbi.datatypes" ++local DDNS = require "luci.tools.ddns" -- ddns multiused functions ++ ++-- takeover arguments -- ####################################################### ++local section = arg[1] ++ ++-- check supported options -- ################################################## ++-- saved to local vars here because doing multiple os calls slow down the system ++local has_ipv6 = DDNS.check_ipv6() -- IPv6 support ++local has_ssl = DDNS.check_ssl() -- HTTPS support ++local has_proxy = DDNS.check_proxy() -- Proxy support ++local has_dnstcp = DDNS.check_bind_host() -- DNS TCP support ++local has_force = has_ssl and has_dnstcp -- Force IP Protocoll ++ ++-- html constants -- ########################################################### ++local font_red = "" ++local font_off = "" ++local bold_on = "" ++local bold_off = "" ++ ++-- error text constants -- ##################################################### ++err_ipv6_plain = translate("IPv6 not supported") .. " - " .. ++ translate("please select 'IPv4' address version") ++err_ipv6_basic = bold_on .. ++ font_red .. ++ translate("IPv6 not supported") .. ++ font_off .. ++ "
" .. translate("please select 'IPv4' address version") .. ++ bold_off ++err_ipv6_other = bold_on .. ++ font_red .. ++ translate("IPv6 not supported") .. ++ font_off .. ++ "
" .. translate("please select 'IPv4' address version in") .. " " .. ++ [[]] .. ++ translate("Basic Settings") .. ++ [[]] .. ++ bold_off ++ ++function err_tab_basic(self) ++ return translate("Basic Settings") .. " - " .. self.title .. ": " ++end ++function err_tab_adv(self) ++ return translate("Advanced Settings") .. " - " .. self.title .. ": " ++end ++function err_tab_timer(self) ++ return translate("Timer Settings") .. " - " .. self.title .. ": " ++end ++ ++-- function to verify settings around ip_source ++-- will use dynamic_dns_lucihelper to check if ++-- local IP can be read ++local function _verify_ip_source() ++ -- section is globally defined here be calling agrument (see above) ++ local _network = "-" ++ local _url = "-" ++ local _interface = "-" ++ local _script = "-" ++ local _proxy = "" ++ ++ local _ipv6 = usev6:formvalue(section) ++ local _source = (_ipv6 == "1") ++ and src6:formvalue(section) ++ or src4:formvalue(section) ++ if _source == "network" then ++ _network = (_ipv6 == "1") ++ and ipn6:formvalue(section) ++ or ipn4:formvalue(section) ++ elseif _source == "web" then ++ _url = (_ipv6 == "1") ++ and iurl6:formvalue(section) ++ or iurl4:formvalue(section) ++ -- proxy only needed for checking url ++ _proxy = (pxy) and pxy:formvalue(section) or "" ++ elseif _source == "interface" then ++ _interface = ipi:formvalue(section) ++ elseif _source == "script" then ++ _script = ips:formvalue(section) ++ end ++ ++ local command = [[/usr/lib/ddns/dynamic_dns_lucihelper.sh get_local_ip ]] .. ++ _ipv6 .. [[ ]] .. _source .. [[ ]] .. _network .. [[ ]] .. ++ _url .. [[ ]] .. _interface .. [[ ']] .. _script.. [[' ]] .. _proxy ++ local ret = SYS.call(command) ++ ++ if ret == 0 then ++ return true -- valid ++ else ++ return nil -- invalid ++ end ++end ++ ++-- cbi-map definition -- ####################################################### ++m = Map("ddns") ++ ++m.title = [[]] .. ++ translate("Dynamic DNS") .. [[]] ++ ++m.description = translate("Dynamic DNS allows that your router can be reached with " .. ++ "a fixed hostname while having a dynamically changing " .. ++ "IP address.") ++ ++m.redirect = DISP.build_url("admin", "services", "ddns") ++ ++m.on_after_commit = function(self) ++ if self.changed then -- changes ? ++ local pid = DDNS.get_pid(section) ++ if pid > 0 then -- running ? ++ local tmp = NX.kill(pid, 1) -- send SIGHUP ++ end ++ end ++end ++ ++-- read application settings -- ################################################ ++-- date format; if not set use ISO format ++date_format = m.uci:get(m.config, "global", "date_format") or "%F %R" ++-- log directory ++log_dir = m.uci:get(m.config, "global", "log_dir") or "/var/log/ddns" ++ ++-- cbi-section definition -- ################################################### ++ns = m:section( NamedSection, section, "service", ++ translate("Details for") .. ([[: %s]] % section), ++ translate("Configure here the details for selected Dynamic DNS service.") ++ .. [[
]] ++ .. translate("For detailed information about parameter settings look here.") ++ .. [[]] ) ++ns.instance = section -- arg [1] ++ns:tab("basic", translate("Basic Settings"), nil ) ++ns:tab("advanced", translate("Advanced Settings"), nil ) ++ns:tab("timer", translate("Timer Settings"), nil ) ++ns:tab("logview", translate("Log File Viewer"), nil ) ++ ++-- TAB: Basic ##################################################################################### ++-- enabled -- ################################################################# ++en = ns:taboption("basic", Flag, "enabled", ++ translate("Enabled"), ++ translate("If this service section is disabled it could not be started." .. "
" .. ++ "Neither from LuCI interface nor from console") ) ++en.orientation = "horizontal" ++function en.parse(self, section) ++ DDNS.flag_parse(self, section) ++end ++ ++-- use_ipv6 (NEW) -- ########################################################## ++usev6 = ns:taboption("basic", ListValue, "use_ipv6", ++ translate("IP address version"), ++ translate("Defines which IP address 'IPv4/IPv6' is send to the DDNS provider") ) ++usev6.widget = "radio" ++usev6.default = "0" ++usev6:value("0", translate("IPv4-Address") ) ++function usev6.cfgvalue(self, section) ++ local value = AbstractValue.cfgvalue(self, section) ++ if has_ipv6 or (value == "1" and not has_ipv6) then ++ self:value("1", translate("IPv6-Address") ) ++ end ++ if value == "1" and not has_ipv6 then ++ self.description = err_ipv6_basic ++ end ++ return value ++end ++function usev6.validate(self, value) ++ if (value == "1" and has_ipv6) or value == "0" then ++ return value ++ end ++ return nil, err_tab_basic(self) .. err_ipv6_plain ++end ++function usev6.write(self, section, value) ++ if value == "0" then -- force rmempty ++ return self.map:del(section, self.option) ++ else ++ return self.map:set(section, self.option, value) ++ end ++end ++ ++-- IPv4 - service_name -- ###################################################### ++svc4 = ns:taboption("basic", ListValue, "ipv4_service_name", ++ translate("DDNS Service provider") .. " [IPv4]" ) ++svc4.default = "-" ++svc4:depends("use_ipv6", "0") -- only show on IPv4 ++ ++local services4 = { } ++local fd4 = io.open("/usr/lib/ddns/services", "r") ++ ++if fd4 then ++ local ln ++ repeat ++ ln = fd4:read("*l") ++ local s = ln and ln:match('^%s*"([^"]+)"') ++ if s then services4[#services4+1] = s end ++ until not ln ++ fd4:close() ++end ++ ++for _, v in UTIL.vspairs(services4) do svc4:value(v) end ++svc4:value("-", translate("-- custom --") ) ++ ++function svc4.cfgvalue(self, section) ++ local v = DDNS.read_value(self, section, "service_name") ++ if not v or #v == 0 then ++ return "-" ++ else ++ return v ++ end ++end ++function svc4.validate(self, value) ++ if usev6:formvalue(section) == "0" then -- do only on IPv4 ++ return value ++ else ++ return "" -- supress validate error ++ end ++end ++function svc4.write(self, section, value) ++ if usev6:formvalue(section) == "0" then -- do only IPv4 here ++ self.map:del(section, self.option) -- to be shure ++ if value ~= "-" then -- and write "service_name ++ self.map:del(section, "update_url") -- delete update_url ++ return self.map:set(section, "service_name", value) ++ else ++ return self.map:del(section, "service_name") ++ end ++ end ++end ++ ++-- IPv6 - service_name -- ###################################################### ++svc6 = ns:taboption("basic", ListValue, "ipv6_service_name", ++ translate("DDNS Service provider") .. " [IPv6]" ) ++svc6.default = "-" ++svc6:depends("use_ipv6", "1") -- only show on IPv6 ++if not has_ipv6 then ++ svc6.description = err_ipv6_basic ++end ++ ++local services6 = { } ++local fd6 = io.open("/usr/lib/ddns/services_ipv6", "r") ++ ++if fd6 then ++ local ln ++ repeat ++ ln = fd6:read("*l") ++ local s = ln and ln:match('^%s*"([^"]+)"') ++ if s then services6[#services6+1] = s end ++ until not ln ++ fd6:close() ++end ++ ++for _, v in UTIL.vspairs(services6) do svc6:value(v) end ++svc6:value("-", translate("-- custom --") ) ++ ++function svc6.cfgvalue(self, section) ++ local v = DDNS.read_value(self, section, "service_name") ++ if not v or #v == 0 then ++ return "-" ++ else ++ return v ++ end ++end ++function svc6.validate(self, value) ++ if usev6:formvalue(section) == "1" then -- do only on IPv6 ++ if has_ipv6 then return value end ++ return nil, err_tab_basic(self) .. err_ipv6_plain ++ else ++ return "" -- supress validate error ++ end ++end ++function svc6.write(self, section, value) ++ if usev6:formvalue(section) == "1" then -- do only when IPv6 ++ self.map:del(section, self.option) -- delete "ipv6_service_name" helper ++ if value ~= "-" then -- and write "service_name ++ self.map:del(section, "update_url") -- delete update_url ++ return self.map:set(section, "service_name", value) ++ else ++ return self.map:del(section, "service_name") ++ end ++ end ++end ++ ++-- IPv4/IPv6 - update_url -- ################################################### ++uurl = ns:taboption("basic", Value, "update_url", ++ translate("Custom update-URL"), ++ translate("Update URL to be used for updating your DDNS Provider." .. "
" .. ++ "Follow instructions you will find on their WEB page.") ) ++uurl:depends("ipv4_service_name", "-") ++uurl:depends("ipv6_service_name", "-") ++function uurl.validate(self, value) ++ local script = ush:formvalue(section) ++ ++ if (usev6:formvalue(section) == "0" and svc4:formvalue(section) ~= "-") or ++ (usev6:formvalue(section) == "1" and svc6:formvalue(section) ~= "-") then ++ return "" -- suppress validate error ++ elseif not value then ++ if not script or not (#script > 0) then ++ return nil, err_tab_basic(self) .. translate("missing / required") ++ else ++ return "" -- suppress validate error / update_script is given ++ end ++ elseif (#script > 0) then ++ return nil, err_tab_basic(self) .. translate("either url or script could be set") ++ end ++ ++ local url = DDNS.parse_url(value) ++ if not url.scheme == "http" then ++ return nil, err_tab_basic(self) .. translate("must start with 'http://'") ++ elseif not url.query then ++ return nil, err_tab_basic(self) .. " " .. translate("missing / required") ++ elseif not url.host then ++ return nil, err_tab_basic(self) .. " " .. translate("missing / required") ++ elseif SYS.call([[nslookup ]] .. url.host .. [[ >/dev/null 2>&1]]) ~= 0 then ++ return nil, err_tab_basic(self) .. translate("can not resolve host: ") .. url.host ++ end ++ ++ return value ++end ++ ++-- IPv4/IPv6 - update_script -- ################################################ ++ush = ns:taboption("basic", Value, "update_script", ++ translate("Custom update-script"), ++ translate("Custom update script to be used for updating your DDNS Provider.") ) ++ush:depends("ipv4_service_name", "-") ++ush:depends("ipv6_service_name", "-") ++function ush.validate(self, value) ++ local url = uurl:formvalue(section) ++ ++ if (usev6:formvalue(section) == "0" and svc4:formvalue(section) ~= "-") or ++ (usev6:formvalue(section) == "1" and svc6:formvalue(section) ~= "-") then ++ return "" -- suppress validate error ++ elseif not value then ++ if not url or not (#url > 0) then ++ return nil, err_tab_basic(self) .. translate("missing / required") ++ else ++ return "" -- suppress validate error / update_url is given ++ end ++ elseif (#url > 0) then ++ return nil, err_tab_basic(self) .. translate("either url or script could be set") ++ elseif not NXFS.access(value) then ++ return nil, err_tab_basic(self) .. translate("File not found") ++ end ++ return value ++end ++ ++-- IPv4/IPv6 - domain -- ####################################################### ++dom = ns:taboption("basic", Value, "domain", ++ translate("Hostname/Domain"), ++ translate("Replaces [DOMAIN] in Update-URL") ) ++dom.rmempty = false ++dom.placeholder = "mypersonaldomain.dyndns.org" ++function dom.validate(self, value) ++ if not value ++ or not (#value > 0) ++ or not DTYP.hostname(value) then ++ return nil, err_tab_basic(self) .. translate("invalid - Sample") .. ": 'mypersonaldomain.dyndns.org'" ++ else ++ return value ++ end ++end ++ ++-- IPv4/IPv6 - username -- ##################################################### ++user = ns:taboption("basic", Value, "username", ++ translate("Username"), ++ translate("Replaces [USERNAME] in Update-URL") ) ++user.rmempty = false ++function user.validate(self, value) ++ if not value then ++ return nil, err_tab_basic(self) .. translate("missing / required") ++ end ++ return value ++end ++ ++-- IPv4/IPv6 - password -- ##################################################### ++pw = ns:taboption("basic", Value, "password", ++ translate("Password"), ++ translate("Replaces [PASSWORD] in Update-URL") ) ++pw.rmempty = false ++pw.password = true ++function pw.validate(self, value) ++ if not value then ++ return nil, err_tab_basic(self) .. translate("missing / required") ++ end ++ return value ++end ++ ++-- IPv4/IPv6 - use_https (NEW) -- ############################################## ++if has_ssl or ( ( m:get(section, "use_https") or "0" ) == "1" ) then ++ https = ns:taboption("basic", Flag, "use_https", ++ translate("Use HTTP Secure") ) ++ https.orientation = "horizontal" ++ https.rmempty = false -- force validate function ++ function https.cfgvalue(self, section) ++ local value = AbstractValue.cfgvalue(self, section) ++ if not has_ssl and value == "1" then ++ self.description = bold_on .. font_red .. ++ translate("HTTPS not supported") .. font_off .. "
" .. ++ translate("please disable") .. " !" .. bold_off ++ else ++ self.description = translate("Enable secure communication with DDNS provider") ++ end ++ return value ++ end ++ function https.parse(self, section) ++ DDNS.flag_parse(self, section) ++ end ++ function https.validate(self, value) ++ if (value == "1" and has_ssl ) or value == "0" then return value end ++ return nil, err_tab_basic(self) .. translate("HTTPS not supported") .. " !" ++ end ++ function https.write(self, section, value) ++ if value == "1" then ++ return self.map:set(section, self.option, value) ++ else ++ self.map:del(section, "cacert") ++ return self.map:del(section, self.option) ++ end ++ end ++end ++ ++-- IPv4/IPv6 - cacert (NEW) -- ################################################# ++if has_ssl then ++ cert = ns:taboption("basic", Value, "cacert", ++ translate("Path to CA-Certificate"), ++ translate("directory or path/file") .. "
" .. ++ translate("or") .. bold_on .. " IGNORE " .. bold_off .. ++ translate("to run HTTPS without verification of server certificates (insecure)") ) ++ cert:depends("use_https", "1") ++ cert.rmempty = false -- force validate function ++ cert.default = "/etc/ssl/certs" ++ function cert.validate(self, value) ++ if https:formvalue(section) == "0" then ++ return "" -- supress validate error if NOT https ++ end ++ if value then -- otherwise errors in datatype check ++ if DTYP.directory(value) ++ or DTYP.file(value) ++ or value == "IGNORE" then ++ return value ++ end ++ end ++ return nil, err_tab_basic(self) .. ++ translate("file or directory not found or not 'IGNORE'") .. " !" ++ end ++end ++ ++-- TAB: Advanced ################################################################################## ++-- IPv4 - ip_source -- ######################################################### ++src4 = ns:taboption("advanced", ListValue, "ipv4_source", ++ translate("IP address source") .. " [IPv4]", ++ translate("Defines the source to read systems IPv4-Address from, that will be send to the DDNS provider") ) ++src4:depends("use_ipv6", "0") -- IPv4 selected ++src4.default = "network" ++src4:value("network", translate("Network")) ++src4:value("web", translate("URL")) ++src4:value("interface", translate("Interface")) ++src4:value("script", translate("Script")) ++function src4.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "ip_source") ++end ++function src4.validate(self, value) ++ if usev6:formvalue(section) == "1" then ++ return "" -- ignore on IPv6 selected ++ elseif not _verify_ip_source() then ++ return nil, err_tab_adv(self) .. ++ translate("can not detect local IP. Please select a different Source combination") ++ else ++ return value ++ end ++end ++function src4.write(self, section, value) ++ if usev6:formvalue(section) == "1" then ++ return true -- ignore on IPv6 selected ++ elseif value == "network" then ++ self.map:del(section, "ip_url") -- delete not need parameters ++ self.map:del(section, "ip_interface") ++ self.map:del(section, "ip_script") ++ elseif value == "web" then ++ self.map:del(section, "ip_network") -- delete not need parameters ++ self.map:del(section, "ip_interface") ++ self.map:del(section, "ip_script") ++ elseif value == "interface" then ++ self.map:del(section, "ip_network") -- delete not need parameters ++ self.map:del(section, "ip_url") ++ self.map:del(section, "ip_script") ++ elseif value == "script" then ++ self.map:del(section, "ip_network") ++ self.map:del(section, "ip_url") -- delete not need parameters ++ self.map:del(section, "ip_interface") ++ end ++ self.map:del(section, self.option) -- delete "ipv4_source" helper ++ return self.map:set(section, "ip_source", value) -- and write "ip_source ++end ++ ++-- IPv6 - ip_source -- ######################################################### ++src6 = ns:taboption("advanced", ListValue, "ipv6_source", ++ translate("IP address source") .. " [IPv6]", ++ translate("Defines the source to read systems IPv6-Address from, that will be send to the DDNS provider") ) ++src6:depends("use_ipv6", 1) -- IPv6 selected ++src6.default = "network" ++src6:value("network", translate("Network")) ++src6:value("web", translate("URL")) ++src6:value("interface", translate("Interface")) ++src6:value("script", translate("Script")) ++if not has_ipv6 then ++ src6.description = err_ipv6_other ++end ++function src6.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "ip_source") ++end ++function src6.validate(self, value) ++ if usev6:formvalue(section) == "0" then ++ return "" -- ignore on IPv4 selected ++ elseif not has_ipv6 then ++ return nil, err_tab_adv(self) .. err_ipv6_plain ++ elseif not _verify_ip_source() then ++ return nil, err_tab_adv(self) .. ++ translate("can not detect local IP. Please select a different Source combination") ++ else ++ return value ++ end ++end ++function src6.write(self, section, value) ++ if usev6:formvalue(section) == "0" then ++ return true -- ignore on IPv4 selected ++ elseif value == "network" then ++ self.map:del(section, "ip_url") -- delete not need parameters ++ self.map:del(section, "ip_interface") ++ self.map:del(section, "ip_script") ++ elseif value == "web" then ++ self.map:del(section, "ip_network") -- delete not need parameters ++ self.map:del(section, "ip_interface") ++ self.map:del(section, "ip_script") ++ elseif value == "interface" then ++ self.map:del(section, "ip_network") -- delete not need parameters ++ self.map:del(section, "ip_url") ++ self.map:del(section, "ip_script") ++ elseif value == "script" then ++ self.map:del(section, "ip_network") ++ self.map:del(section, "ip_url") -- delete not need parameters ++ self.map:del(section, "ip_interface") ++ end ++ self.map:del(section, self.option) -- delete "ipv4_source" helper ++ return self.map:set(section, "ip_source", value) -- and write "ip_source ++end ++ ++-- IPv4 - ip_network (default "wan") -- ######################################## ++ipn4 = ns:taboption("advanced", ListValue, "ipv4_network", ++ translate("Network") .. " [IPv4]", ++ translate("Defines the network to read systems IPv4-Address from") ) ++ipn4:depends("ipv4_source", "network") ++ipn4.default = "wan" ++WADM.cbi_add_networks(ipn4) ++function ipn4.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "ip_network") ++end ++function ipn4.validate(self, value) ++ if usev6:formvalue(section) == "1" ++ or src4:formvalue(section) ~= "network" then ++ -- ignore if IPv6 selected OR ++ -- ignore everything except "network" ++ return "" ++ else ++ return value ++ end ++end ++function ipn4.write(self, section, value) ++ if usev6:formvalue(section) == "1" ++ or src4:formvalue(section) ~= "network" then ++ -- ignore if IPv6 selected OR ++ -- ignore everything except "network" ++ return true ++ else ++ -- set also as "interface" for monitoring events changes/hot-plug ++ self.map:set(section, "interface", value) ++ self.map:del(section, self.option) -- delete "ipv4_network" helper ++ return self.map:set(section, "ip_network", value) -- and write "ip_network" ++ end ++end ++ ++-- IPv6 - ip_network (default "wan6") -- ####################################### ++ipn6 = ns:taboption("advanced", ListValue, "ipv6_network", ++ translate("Network") .. " [IPv6]" ) ++ipn6:depends("ipv6_source", "network") ++ipn6.default = "wan6" ++WADM.cbi_add_networks(ipn6) ++if has_ipv6 then ++ ipn6.description = translate("Defines the network to read systems IPv6-Address from") ++else ++ ipn6.description = err_ipv6_other ++end ++function ipn6.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "ip_network") ++end ++function ipn6.validate(self, value) ++ if usev6:formvalue(section) == "0" ++ or src6:formvalue(section) ~= "network" then ++ -- ignore if IPv4 selected OR ++ -- ignore everything except "network" ++ return "" ++ elseif has_ipv6 then ++ return value ++ else ++ return nil, err_tab_adv(self) .. err_ipv6_plain ++ end ++end ++function ipn6.write(self, section, value) ++ if usev6:formvalue(section) == "0" ++ or src6:formvalue(section) ~= "network" then ++ -- ignore if IPv4 selected OR ++ -- ignore everything except "network" ++ return true ++ else ++ -- set also as "interface" for monitoring events changes/hotplug ++ self.map:set(section, "interface", value) ++ self.map:del(section, self.option) -- delete "ipv6_network" helper ++ return self.map:set(section, "ip_network", value) -- and write "ip_network" ++ end ++end ++ ++-- IPv4 - ip_url (default "checkip.dyndns.com") -- ############################# ++iurl4 = ns:taboption("advanced", Value, "ipv4_url", ++ translate("URL to detect") .. " [IPv4]", ++ translate("Defines the Web page to read systems IPv4-Address from") ) ++iurl4:depends("ipv4_source", "web") ++iurl4.default = "http://checkip.dyndns.com" ++function iurl4.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "ip_url") ++end ++function iurl4.validate(self, value) ++ if usev6:formvalue(section) == "1" ++ or src4:formvalue(section) ~= "web" then ++ -- ignore if IPv6 selected OR ++ -- ignore everything except "web" ++ return "" ++ elseif not value or #value == 0 then ++ return nil, err_tab_adv(self) .. translate("missing / required") ++ end ++ ++ local url = DDNS.parse_url(value) ++ if not (url.scheme == "http" or url.scheme == "https") then ++ return nil, err_tab_adv(self) .. translate("must start with 'http://'") ++ elseif not url.host then ++ return nil, err_tab_adv(self) .. " " .. translate("missing / required") ++ elseif SYS.call([[nslookup ]] .. url.host .. [[>/dev/null 2>&1]]) ~= 0 then ++ return nil, err_tab_adv(self) .. translate("can not resolve host: ") .. url.host ++ else ++ return value ++ end ++end ++function iurl4.write(self, section, value) ++ if usev6:formvalue(section) == "1" ++ or src4:formvalue(section) ~= "web" then ++ -- ignore if IPv6 selected OR ++ -- ignore everything except "web" ++ return true ++ else ++ self.map:del(section, self.option) -- delete "ipv4_url" helper ++ return self.map:set(section, "ip_url", value) -- and write "ip_url" ++ end ++end ++ ++-- IPv6 - ip_url (default "checkipv6.dyndns.com") -- ########################### ++iurl6 = ns:taboption("advanced", Value, "ipv6_url", ++ translate("URL to detect") .. " [IPv6]" ) ++iurl6:depends("ipv6_source", "web") ++iurl6.default = "http://checkipv6.dyndns.com" ++if has_ipv6 then ++ iurl6.description = translate("Defines the Web page to read systems IPv6-Address from") ++else ++ iurl6.description = err_ipv6_other ++end ++function iurl6.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "ip_url") ++end ++function iurl6.validate(self, value) ++ if usev6:formvalue(section) == "0" ++ or src6:formvalue(section) ~= "web" then ++ -- ignore if IPv4 selected OR ++ -- ignore everything except "web" ++ return "" ++ elseif not has_ipv6 then ++ return nil, err_tab_adv(self) .. err_ipv6_plain ++ elseif not value or #value == 0 then ++ return nil, err_tab_adv(self) .. translate("missing / required") ++ end ++ ++ local url = DDNS.parse_url(value) ++ if not (url.scheme == "http" or url.scheme == "https") then ++ return nil, err_tab_adv(self) .. translate("must start with 'http://'") ++ elseif not url.host then ++ return nil, err_tab_adv(self) .. " " .. translate("missing / required") ++ elseif SYS.call([[nslookup ]] .. url.host .. [[>/dev/null 2>&1]]) ~= 0 then ++ return nil, err_tab_adv(self) .. translate("can not resolve host: ") .. url.host ++ else ++ return value ++ end ++end ++function iurl6.write(self, section, value) ++ if usev6:formvalue(section) == "0" ++ or src6:formvalue(section) ~= "web" then ++ -- ignore if IPv4 selected OR ++ -- ignore everything except "web" ++ return true ++ else ++ self.map:del(section, self.option) -- delete "ipv6_url" helper ++ return self.map:set(section, "ip_url", value) -- and write "ip_url" ++ end ++end ++ ++-- IPv4 + IPv6 - ip_interface -- ############################################### ++ipi = ns:taboption("advanced", ListValue, "ip_interface", ++ translate("Interface"), ++ translate("Defines the interface to read systems IP-Address from") ) ++ipi:depends("ipv4_source", "interface") -- IPv4 ++ipi:depends("ipv6_source", "interface") -- or IPv6 ++for _, v in pairs(SYS.net.devices()) do ++ -- show only interface set to a network ++ -- and ignore loopback ++ net = WADM.iface_get_network(v) ++ if net and net ~= "loopback" then ++ ipi:value(v) ++ end ++end ++function ipi.validate(self, value) ++ if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "interface") ++ or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "interface") then ++ return "" ++ else ++ return value ++ end ++end ++function ipi.write(self, section, value) ++ if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "interface") ++ or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "interface") then ++ return true ++ else ++ -- get network from device to ++ -- set also as "interface" for monitoring events changes/hotplug ++ local net = WADM.iface_get_network(value) ++ self.map:set(section, "interface", net) ++ return self.map:set(section, self.option, value) ++ end ++end ++ ++-- IPv4 + IPv6 - ip_script (NEW) -- ############################################ ++ips = ns:taboption("advanced", Value, "ip_script", ++ translate("Script"), ++ translate("User defined script to read systems IP-Address") ) ++ips:depends("ipv4_source", "script") -- IPv4 ++ips:depends("ipv6_source", "script") -- or IPv6 ++ips.rmempty = false ++ips.placeholder = "/path/to/script.sh" ++function ips.validate(self, value) ++ local split ++ if value then split = UTIL.split(value, " ") end ++ ++ if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "script") ++ or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "script") then ++ return "" ++ elseif not value or not (#value > 0) or not NXFS.access(split[1], "x") then ++ return nil, err_tab_adv(self) .. ++ translate("not found or not executable - Sample: '/path/to/script.sh'") ++ else ++ return value ++ end ++end ++function ips.write(self, section, value) ++ if (usev6:formvalue(section) == "0" and src4:formvalue(section) ~= "script") ++ or (usev6:formvalue(section) == "1" and src6:formvalue(section) ~= "script") then ++ return true ++ else ++ return self.map:set(section, self.option, value) ++ end ++end ++ ++-- IPv4 - interface - default "wan" -- ######################################### ++-- event network to monitor changes/hotplug/dynamic_dns_updater.sh ++-- only needs to be set if "ip_source"="web" or "script" ++-- if "ip_source"="network" or "interface" we use their network ++eif4 = ns:taboption("advanced", ListValue, "ipv4_interface", ++ translate("Event Network") .. " [IPv4]", ++ translate("Network on which the ddns-updater scripts will be started") ) ++eif4:depends("ipv4_source", "web") ++eif4:depends("ipv4_source", "script") ++eif4.default = "wan" ++WADM.cbi_add_networks(eif4) ++function eif4.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "interface") ++end ++function eif4.validate(self, value) ++ if usev6:formvalue(section) == "1" ++ or src4:formvalue(section) == "network" ++ or src4:formvalue(section) == "interface" then ++ return "" -- ignore IPv6, network, interface ++ else ++ return value ++ end ++end ++function eif4.write(self, section, value) ++ if usev6:formvalue(section) == "1" ++ or src4:formvalue(section) == "network" ++ or src4:formvalue(section) == "interface" then ++ return true -- ignore IPv6, network, interface ++ else ++ self.map:del(section, self.option) -- delete "ipv4_interface" helper ++ return self.map:set(section, "interface", value) -- and write "interface" ++ end ++end ++ ++-- IPv6 - interface (NEW) - default "wan6" -- ################################## ++-- event network to monitor changes/hotplug (NEW) ++-- only needs to be set if "ip_source"="web" or "script" ++-- if "ip_source"="network" or "interface" we use their network ++eif6 = ns:taboption("advanced", ListValue, "ipv6_interface", ++ translate("Event Network") .. " [IPv6]" ) ++eif6:depends("ipv6_source", "web") ++eif6:depends("ipv6_source", "script") ++eif6.default = "wan6" ++WADM.cbi_add_networks(eif6) ++if not has_ipv6 then ++ eif6.description = err_ipv6_other ++else ++ eif6.description = translate("Network on which the ddns-updater scripts will be started") ++end ++function eif6.cfgvalue(self, section) ++ return DDNS.read_value(self, section, "interface") ++end ++function eif6.validate(self, value) ++ if usev6:formvalue(section) == "0" ++ or src4:formvalue(section) == "network" ++ or src4:formvalue(section) == "interface" then ++ return "" -- ignore IPv4, network, interface ++ elseif not has_ipv6 then ++ return nil, err_tab_adv(self) .. err_ipv6_plain ++ else ++ return value ++ end ++end ++function eif6.write(self, section, value) ++ if usev6:formvalue(section) == "0" ++ or src4:formvalue(section) == "network" ++ or src4:formvalue(section) == "interface" then ++ return true -- ignore IPv4, network, interface ++ else ++ self.map:del(section, self.option) -- delete "ipv6_interface" helper ++ return self.map:set(section, "interface", value) -- and write "interface" ++ end ++end ++ ++-- IPv4/IPv6 - bind_network -- ################################################# ++if has_ssl or ( ( m:get(section, "bind_network") or "" ) ~= "" ) then ++ bnet = ns:taboption("advanced", ListValue, "bind_network", ++ translate("Bind Network") ) ++ bnet:depends("ipv4_source", "web") ++ bnet:depends("ipv6_source", "web") ++ bnet.rmempty = true ++ bnet.default = "" ++ bnet:value("", translate("-- default --")) ++ WADM.cbi_add_networks(bnet) ++ function bnet.cfgvalue(self, section) ++ local value = AbstractValue.cfgvalue(self, section) ++ if not has_ssl and value ~= "" then ++ self.description = bold_on .. font_red .. ++ translate("Binding to a specific network not supported") .. font_off .. "
" .. ++ translate("please set to 'default'") .. " !" .. bold_off ++ else ++ self.description = translate("OPTIONAL: Network to use for communication") .. ++ "
" .. translate("Casual users should not change this setting") ++ end ++ return value ++ end ++ function bnet.validate(self, value) ++ if (value ~= "" and has_ssl ) or value == "" then return value end ++ return nil, err_tab_adv(self) .. translate("Binding to a specific network not supported") .. " !" ++ end ++end ++ ++-- IPv4 + IPv6 - force_ipversion (NEW) -- ###################################### ++-- optional to force wget/curl and host to use only selected IP version ++-- command parameter "-4" or "-6" ++if has_force or ( ( m:get(section, "force_ipversion") or "0" ) ~= "0" ) then ++ fipv = ns:taboption("advanced", Flag, "force_ipversion", ++ translate("Force IP Version") ) ++ fipv.orientation = "horizontal" ++ function fipv.cfgvalue(self, section) ++ local value = AbstractValue.cfgvalue(self, section) ++ if not has_force and value ~= "0" then ++ self.description = bold_on .. font_red .. ++ translate("Force IP Version not supported") .. font_off .. "
" .. ++ translate("please disable") .. " !" .. bold_off ++ else ++ self.description = translate("OPTIONAL: Force the usage of pure IPv4/IPv6 only communication.") ++ end ++ return value ++ end ++ function fipv.validate(self, value) ++ if (value == "1" and has_force) or value == "0" then return value end ++ return nil, err_tab_adv(self) .. translate("Force IP Version not supported") ++ end ++ function fipv.parse(self, section) ++ DDNS.flag_parse(self, section) ++ end ++ function fipv.write(self, section, value) ++ if value == "1" then ++ return self.map:set(section, self.option, value) ++ else ++ return self.map:del(section, self.option) ++ end ++ end ++end ++ ++-- IPv4 + IPv6 - dns_server (NEW) -- ########################################### ++-- optional DNS Server to use resolving my IP if "ip_source"="web" ++dns = ns:taboption("advanced", Value, "dns_server", ++ translate("DNS-Server"), ++ translate("OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'.") .. "
" .. ++ translate("Format: IP or FQDN")) ++dns.placeholder = "mydns.lan" ++function dns.validate(self, value) ++ -- if .datatype is set, then it is checked before calling this function ++ if not value then ++ return "" -- ignore on empty ++ elseif not DTYP.host(value) then ++ return nil, err_tab_adv(self) .. translate("use hostname, FQDN, IPv4- or IPv6-Address") ++ else ++ local ipv6 = usev6:formvalue(section) ++ local force = (fipv) and fipv:formvalue(section) or "0" ++ local command = [[/usr/lib/ddns/dynamic_dns_lucihelper.sh verify_dns ]] .. ++ value .. [[ ]] .. ipv6 .. [[ ]] .. force ++ local ret = SYS.call(command) ++ if ret == 0 then return value -- everything OK ++ elseif ret == 2 then return nil, err_tab_adv(self) .. translate("nslookup can not resolve host") ++ elseif ret == 3 then return nil, err_tab_adv(self) .. translate("nc (netcat) can not connect") ++ elseif ret == 4 then return nil, err_tab_adv(self) .. translate("Forced IP Version don't matched") ++ else return nil, err_tab_adv(self) .. translate("unspecific error") ++ end ++ end ++end ++ ++-- IPv4 + IPv6 - force_dnstcp (NEW) -- ######################################### ++if has_dnstcp or ( ( m:get(section, "force_dnstcp") or "0" ) ~= "0" ) then ++ tcp = ns:taboption("advanced", Flag, "force_dnstcp", ++ translate("Force TCP on DNS") ) ++ tcp.orientation = "horizontal" ++ function tcp.cfgvalue(self, section) ++ local value = AbstractValue.cfgvalue(self, section) ++ if not has_dnstcp and value ~= "0" then ++ self.description = bold_on .. font_red .. ++ translate("DNS requests via TCP not supported") .. font_off .. "
" .. ++ translate("please disable") .. " !" .. bold_off ++ else ++ self.description = translate("OPTIONAL: Force the use of TCP instead of default UDP on DNS requests.") ++ end ++ return value ++ end ++ function tcp.validate(self, value) ++ if (value == "1" and has_dnstcp ) or value == "0" then ++ return value ++ end ++ return nil, err_tab_adv(self) .. translate("DNS requests via TCP not supported") ++ end ++ function tcp.parse(self, section) ++ DDNS.flag_parse(self, section) ++ end ++end ++ ++-- IPv4 + IPv6 - proxy (NEW) -- ################################################ ++-- optional Proxy to use for http/https requests [user:password@]proxyhost[:port] ++if has_proxy or ( ( m:get(section, "proxy") or "" ) ~= "" ) then ++ pxy = ns:taboption("advanced", Value, "proxy", ++ translate("PROXY-Server") ) ++ pxy.placeholder="user:password@myproxy.lan:8080" ++ function pxy.cfgvalue(self, section) ++ local value = AbstractValue.cfgvalue(self, section) ++ if not has_proxy and value ~= "" then ++ self.description = bold_on .. font_red .. ++ translate("PROXY-Server not supported") .. font_off .. "
" .. ++ translate("please remove entry") .. "!" .. bold_off ++ else ++ self.description = translate("OPTIONAL: Proxy-Server for detection and updates.") .. "
" .. ++ translate("Format") .. ": " .. bold_on .. "[user:password@]proxyhost:port" .. bold_off .. "
" .. ++ translate("IPv6 address must be given in square brackets") .. ": " .. ++ bold_on .. " [2001:db8::1]:8080" .. bold_off ++ end ++ return value ++ end ++ function pxy.validate(self, value) ++ -- if .datatype is set, then it is checked before calling this function ++ if not value then ++ return "" -- ignore on empty ++ elseif has_proxy then ++ local ipv6 = usev6:formvalue(section) or "0" ++ local force = (fipv) and fipv:formvalue(section) or "0" ++ local command = [[/usr/lib/ddns/dynamic_dns_lucihelper.sh verify_proxy ]] .. ++ value .. [[ ]] .. ipv6 .. [[ ]] .. force ++ local ret = SYS.call(command) ++ if ret == 0 then return value ++ elseif ret == 2 then return nil, err_tab_adv(self) .. translate("nslookup can not resolve host") ++ elseif ret == 3 then return nil, err_tab_adv(self) .. translate("nc (netcat) can not connect") ++ elseif ret == 4 then return nil, err_tab_adv(self) .. translate("Forced IP Version don't matched") ++ elseif ret == 5 then return nil, err_tab_adv(self) .. translate("proxy port missing") ++ else return nil, err_tab_adv(self) .. translate("unspecific error") ++ end ++ else ++ return nil, err_tab_adv(self) .. translate("PROXY-Server not supported") ++ end ++ end ++end ++ ++-- use_syslog -- ############################################################### ++slog = ns:taboption("advanced", ListValue, "use_syslog", ++ translate("Log to syslog"), ++ translate("Writes log messages to syslog. Critical Errors will always be written to syslog.") ) ++slog.default = "2" ++slog:value("0", translate("No logging")) ++slog:value("1", translate("Info")) ++slog:value("2", translate("Notice")) ++slog:value("3", translate("Warning")) ++slog:value("4", translate("Error")) ++ ++-- use_logfile (NEW) -- ######################################################## ++logf = ns:taboption("advanced", Flag, "use_logfile", ++ translate("Log to file"), ++ translate("Writes detailed messages to log file. File will be truncated automatically.") .. "
" .. ++ translate("File") .. [[: "]] .. log_dir .. [[/]] .. section .. [[.log"]] ) ++logf.orientation = "horizontal" ++logf.rmempty = false -- we want to save in /etc/config/ddns file on "0" because ++logf.default = "1" -- if not defined write to log by default ++function logf.parse(self, section) ++ DDNS.flag_parse(self, section) ++end ++ ++-- TAB: Timer ##################################################################################### ++-- check_interval -- ########################################################### ++ci = ns:taboption("timer", Value, "check_interval", ++ translate("Check Interval") ) ++ci.template = "ddns/detail_value" ++ci.default = 10 ++ci.rmempty = false -- validate ourselves for translatable error messages ++function ci.validate(self, value) ++ if not DTYP.uinteger(value) ++ or tonumber(value) < 1 then ++ return nil, err_tab_timer(self) .. translate("minimum value 5 minutes == 300 seconds") ++ end ++ ++ local secs = DDNS.calc_seconds(value, cu:formvalue(section)) ++ if secs >= 300 then ++ return value ++ else ++ return nil, err_tab_timer(self) .. translate("minimum value 5 minutes == 300 seconds") ++ end ++end ++function ci.write(self, section, value) ++ -- simulate rmempty=true remove default ++ local secs = DDNS.calc_seconds(value, cu:formvalue(section)) ++ if secs ~= 600 then --default 10 minutes ++ return self.map:set(section, self.option, value) ++ else ++ self.map:del(section, "check_unit") ++ return self.map:del(section, self.option) ++ end ++end ++ ++-- check_unit -- ############################################################### ++cu = ns:taboption("timer", ListValue, "check_unit", "not displayed, but needed otherwise error", ++ translate("Interval to check for changed IP" .. "
" .. ++ "Values below 5 minutes == 300 seconds are not supported") ) ++cu.template = "ddns/detail_lvalue" ++cu.default = "minutes" ++cu.rmempty = false -- want to control write process ++cu:value("seconds", translate("seconds")) ++cu:value("minutes", translate("minutes")) ++cu:value("hours", translate("hours")) ++--cu:value("days", translate("days")) ++function cu.write(self, section, value) ++ -- simulate rmempty=true remove default ++ local secs = DDNS.calc_seconds(ci:formvalue(section), value) ++ if secs ~= 600 then --default 10 minutes ++ return self.map:set(section, self.option, value) ++ else ++ return true ++ end ++end ++ ++-- force_interval (modified) -- ################################################ ++fi = ns:taboption("timer", Value, "force_interval", ++ translate("Force Interval") ) ++fi.template = "ddns/detail_value" ++fi.default = 72 -- see dynamic_dns_updater.sh script ++fi.rmempty = false -- validate ourselves for translatable error messages ++function fi.validate(self, value) ++ if not DTYP.uinteger(value) ++ or tonumber(value) < 0 then ++ return nil, err_tab_timer(self) .. translate("minimum value '0'") ++ end ++ ++ local force_s = DDNS.calc_seconds(value, fu:formvalue(section)) ++ if force_s == 0 then ++ return value ++ end ++ ++ local ci_value = ci:formvalue(section) ++ if not DTYP.uinteger(ci_value) then ++ return "" -- ignore because error in check_interval above ++ end ++ ++ local check_s = DDNS.calc_seconds(ci_value, cu:formvalue(section)) ++ if force_s >= check_s then ++ return value ++ end ++ ++ return nil, err_tab_timer(self) .. translate("must be greater or equal 'Check Interval'") ++end ++function fi.write(self, section, value) ++ -- simulate rmempty=true remove default ++ local secs = DDNS.calc_seconds(value, fu:formvalue(section)) ++ if secs ~= 259200 then --default 72 hours == 3 days ++ return self.map:set(section, self.option, value) ++ else ++ self.map:del(section, "force_unit") ++ return self.map:del(section, self.option) ++ end ++end ++ ++-- force_unit -- ############################################################### ++fu = ns:taboption("timer", ListValue, "force_unit", "not displayed, but needed otherwise error", ++ translate("Interval to force updates send to DDNS Provider" .. "
" .. ++ "Setting this parameter to 0 will force the script to only run once" .. "
" .. ++ "Values lower 'Check Interval' except '0' are not supported") ) ++fu.template = "ddns/detail_lvalue" ++fu.default = "hours" ++fu.rmempty = false -- want to control write process ++--fu:value("seconds", translate("seconds")) ++fu:value("minutes", translate("minutes")) ++fu:value("hours", translate("hours")) ++fu:value("days", translate("days")) ++function fu.write(self, section, value) ++ -- simulate rmempty=true remove default ++ local secs = DDNS.calc_seconds(fi:formvalue(section), value) ++ if secs ~= 259200 and secs ~= 0 then --default 72 hours == 3 days ++ return self.map:set(section, self.option, value) ++ else ++ return true ++ end ++end ++ ++-- retry_count (NEW) -- ######################################################## ++rc = ns:taboption("timer", Value, "retry_count") ++rc.title = translate("Error Retry Counter") ++rc.description = translate("On Error the script will stop execution after given number of retrys") ++ .. "
" ++ .. translate("The default setting of '0' will retry infinite.") ++rc.default = 0 ++rc.rmempty = false -- validate ourselves for translatable error messages ++function rc.validate(self, value) ++ if not DTYP.uinteger(value) then ++ return nil, err_tab_timer(self) .. translate("minimum value '0'") ++ else ++ return value ++ end ++end ++function rc.write(self, section, value) ++ -- simulate rmempty=true remove default ++ if tonumber(value) ~= self.default then ++ return self.map:set(section, self.option, value) ++ else ++ return self.map:del(section, self.option) ++ end ++end ++ ++-- retry_interval -- ########################################################### ++ri = ns:taboption("timer", Value, "retry_interval", ++ translate("Error Retry Interval") ) ++ri.template = "ddns/detail_value" ++ri.default = 60 ++ri.rmempty = false -- validate ourselves for translatable error messages ++function ri.validate(self, value) ++ if not DTYP.uinteger(value) ++ or tonumber(value) < 1 then ++ return nil, err_tab_timer(self) .. translate("minimum value '1'") ++ else ++ return value ++ end ++end ++function ri.write(self, section, value) ++ -- simulate rmempty=true remove default ++ local secs = DDNS.calc_seconds(value, ru:formvalue(section)) ++ if secs ~= 60 then --default 60seconds ++ return self.map:set(section, self.option, value) ++ else ++ self.map:del(section, "retry_unit") ++ return self.map:del(section, self.option) ++ end ++end ++ ++-- retry_unit -- ############################################################### ++ru = ns:taboption("timer", ListValue, "retry_unit", "not displayed, but needed otherwise error", ++ translate("On Error the script will retry the failed action after given time") ) ++ru.template = "ddns/detail_lvalue" ++ru.default = "seconds" ++ru.rmempty = false -- want to control write process ++ru:value("seconds", translate("seconds")) ++ru:value("minutes", translate("minutes")) ++--ru:value("hours", translate("hours")) ++--ru:value("days", translate("days")) ++function ru.write(self, section, value) ++ -- simulate rmempty=true remove default ++ local secs = DDNS.calc_seconds(ri:formvalue(section), value) ++ if secs ~= 60 then --default 60seconds ++ return self.map:set(section, self.option, value) ++ else ++ return true -- will be deleted by retry_interval ++ end ++end ++ ++-- TAB: LogView (NEW) ############################################################################# ++lv = ns:taboption("logview", DummyValue, "_logview") ++lv.template = "ddns/detail_logview" ++lv.inputtitle = translate("Read / Reread log file") ++lv.rows = 50 ++function lv.cfgvalue(self, section) ++ local lfile=log_dir .. "/" .. section .. ".log" ++ if NXFS.access(lfile) then ++ return lfile .. "\n" .. translate("Please press [Read] button") ++ end ++ return lfile .. "\n" .. translate("File not found or empty") ++end ++ ++return m +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua +new file mode 100644 +index 0000000..25d09b7 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/global.lua +@@ -0,0 +1,155 @@ ++-- Copyright 2014 Christian Schoenebeck ++-- Licensed to the public under the Apache License 2.0. ++ ++local NX = require "nixio" ++local NXFS = require "nixio.fs" ++local DISP = require "luci.dispatcher" ++local SYS = require "luci.sys" ++local DDNS = require "luci.tools.ddns" -- ddns multiused functions ++ ++-- cbi-map definition -- ####################################################### ++local m = Map("ddns") ++ ++m.title = [[]] ++ .. translate("Dynamic DNS") .. [[]] ++ ++m.description = translate("Dynamic DNS allows that your router can be reached with " .. ++ "a fixed hostname while having a dynamically changing IP address.") ++ ++m.redirect = DISP.build_url("admin", "services", "ddns") ++ ++function m.commit_handler(self) ++ if self.changed then -- changes ? ++ os.execute("/etc/init.d/ddns reload &") -- reload configuration ++ end ++end ++ ++-- cbi-section definition -- ################################################### ++local ns = m:section( NamedSection, "global", "ddns", ++ translate("Global Settings"), ++ translate("Configure here the details for all Dynamic DNS services including this LuCI application.") ++ .. [[
]] ++ .. translate("It is NOT recommended for casual users to change settings on this page.") ++ .. [[
]] ++ .. [[]] ++ .. translate("For detailed information about parameter settings look here.") ++ .. [[]] ++ ) ++ ++-- section might not exist ++function ns.cfgvalue(self, section) ++ if not self.map:get(section) then ++ self.map:set(section, nil, self.sectiontype) ++ end ++ return self.map:get(section) ++end ++ ++-- allow_local_ip -- ########################################################## ++local ali = ns:option(Flag, "allow_local_ip") ++ali.title = translate("Allow non-public IP's") ++ali.description = translate("Non-public and by default blocked IP's") .. ":" ++ .. [[
IPv4: ]] ++ .. "0/8, 10/8, 100.64/10, 127/8, 169.254/16, 172.16/12, 192.168/16" ++ .. [[
IPv6: ]] ++ .. "::/32, f000::/4" ++ali.reempty = true ++ali.default = "0" ++function ali.parse(self, section) ++ DDNS.flag_parse(self, section) ++end ++function ali.validate(self, value) ++ if value == self.default then ++ return "" -- default = empty ++ end ++ return value ++end ++ ++-- date_format -- ############################################################# ++local df = ns:option(Value, "date_format") ++df.title = translate("Date format") ++df.description = [[]] ++ .. translate("For supported codes look here") ++ .. [[]] ++df.template = "ddns/global_value" ++df.rmempty = true ++df.default = "%F %R" ++df.date_string = "" ++function df.cfgvalue(self, section) ++ local value = AbstractValue.cfgvalue(self, section) or self.default ++ local epoch = os.time() ++ self.date_string = DDNS.epoch2date(epoch, value) ++ return value ++end ++function df.validate(self, value) ++ if value == self.default then ++ return "" -- default = empty ++ end ++ return value ++end ++ ++-- run_dir -- ################################################################# ++local rd = ns:option(Value, "run_dir") ++rd.title = translate("Status directory") ++rd.description = translate("Directory contains PID and other status information for each running section") ++rd.rmempty = true ++rd.default = "/var/run/ddns" ++function rd.validate(self, value) ++ if value == self.default then ++ return "" -- default = empty ++ end ++ return value ++end ++ ++-- log_dir -- ################################################################# ++local ld = ns:option(Value, "log_dir") ++ld.title = translate("Log directory") ++ld.description = translate("Directory contains Log files for each running section") ++ld.rmempty = true ++ld.default = "/var/log/ddns" ++function ld.validate(self, value) ++ if value == self.default then ++ return "" -- default = empty ++ end ++ return value ++end ++ ++-- log_lines -- ############################################################### ++local ll = ns:option(Value, "log_lines") ++ll.title = translate("Log length") ++ll.description = translate("Number of last lines stored in log files") ++ll.rmempty = true ++ll.default = "250" ++function ll.validate(self, value) ++ local n = tonumber(value) ++ if not n or math.floor(n) ~= n or n < 1 then ++ return nil, self.title .. ": " .. translate("minimum value '1'") ++ end ++ if value == self.default then ++ return "" -- default = empty ++ end ++ return value ++end ++ ++-- use_curl -- ################################################################ ++if (SYS.call([[ grep -i "\+ssl" /usr/bin/wget >/dev/null 2>&1 ]]) == 0) ++and NXFS.access("/usr/bin/curl") then ++ local pc = ns:option(Flag, "use_curl") ++ pc.title = translate("Use cURL") ++ pc.description = translate("If both cURL and GNU Wget are installed, Wget is used by default.") ++ .. [[
]] ++ .. translate("To use cURL activate this option.") ++ pc.orientation = "horizontal" ++ pc.rmempty = true ++ pc.default = "0" ++ function pc.parse(self, section) ++ DDNS.flag_parse(self, section) ++ end ++ function pc.validate(self, value) ++ if value == self.default then ++ return "" -- default = empty ++ end ++ return value ++ end ++end ++ ++return m +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua +new file mode 100644 +index 0000000..2a65fd0 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/hints.lua +@@ -0,0 +1,152 @@ ++-- Copyright 2014 Christian Schoenebeck ++-- Licensed to the public under the Apache License 2.0. ++ ++local CTRL = require "luci.controller.ddns" -- this application's controller ++local DISP = require "luci.dispatcher" ++local SYS = require "luci.sys" ++local DDNS = require "luci.tools.ddns" -- ddns multiused functions ++ ++-- check supported options -- ################################################## ++-- saved to local vars here because doing multiple os calls slow down the system ++has_ssl = DDNS.check_ssl() -- HTTPS support and --bind-network / --interface ++has_proxy = DDNS.check_proxy() -- Proxy support ++has_dnstcp = DDNS.check_bind_host() -- DNS TCP support ++-- correct ddns-scripts version ++need_update = DDNS.ipkg_ver_compare(DDNS.ipkg_ver_installed("ddns-scripts"), "<<", CTRL.DDNS_MIN) ++ ++-- html constants ++font_red = [[]] ++font_off = [[]] ++bold_on = [[]] ++bold_off = [[]] ++ ++-- cbi-map definition -- ####################################################### ++m = Map("ddns") ++ ++m.title = [[]] .. ++ translate("Dynamic DNS") .. [[]] ++ ++m.description = translate("Dynamic DNS allows that your router can be reached with " .. ++ "a fixed hostname while having a dynamically changing " .. ++ "IP address.") ++ ++m.redirect = DISP.build_url("admin", "services", "ddns") ++ ++-- SimpleSection definition -- ################################################# ++-- show Hints to optimize installation and script usage ++s = m:section( SimpleSection, ++ translate("Hints"), ++ translate("Below a list of configuration tips for your system to run Dynamic DNS updates without limitations") ) ++ ++-- ddns_scripts needs to be updated for full functionality ++if need_update then ++ local dv = s:option(DummyValue, "_update_needed") ++ dv.titleref = DISP.build_url("admin", "system", "packages") ++ dv.rawhtml = true ++ dv.title = font_red .. bold_on .. ++ translate("Software update required") .. bold_off .. font_off ++ dv.value = translate("The currently installed 'ddns-scripts' package did not support all available settings.") .. ++ "
" .. ++ translate("Please update to the current version!") ++end ++ ++-- DDNS Service disabled ++if not SYS.init.enabled("ddns") then ++ local dv = s:option(DummyValue, "_not_enabled") ++ dv.titleref = DISP.build_url("admin", "system", "startup") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("DDNS Autostart disabled") .. bold_off ++ dv.value = translate("Currently DDNS updates are not started at boot or on interface events." .. "
" .. ++ "This is the default if you run DDNS scripts by yourself (i.e. via cron with force_interval set to '0')" ) ++end ++ ++-- No IPv6 support ++if not DDNS.check_ipv6() then ++ local dv = s:option(DummyValue, "_no_ipv6") ++ dv.titleref = 'http://www.openwrt.org" target="_blank' ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("IPv6 not supported") .. bold_off ++ dv.value = translate("IPv6 is currently not (fully) supported by this system" .. "
" .. ++ "Please follow the instructions on OpenWrt's homepage to enable IPv6 support" .. "
" .. ++ "or update your system to the latest OpenWrt Release") ++end ++ ++-- No HTTPS support ++if not has_ssl then ++ local dv = s:option(DummyValue, "_no_https") ++ dv.titleref = DISP.build_url("admin", "system", "packages") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("HTTPS not supported") .. bold_off ++ dv.value = translate("Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS protocol.") .. ++ "
- " .. ++ translate("You should install GNU Wget with SSL (prefered) or cURL package.") .. ++ "
- " .. ++ translate("In some versions cURL/libcurl in OpenWrt is compiled without proxy support.") ++end ++ ++-- No bind_network ++if not has_ssl then ++ local dv = s:option(DummyValue, "_no_bind_network") ++ dv.titleref = DISP.build_url("admin", "system", "packages") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("Binding to a specific network not supported") .. bold_off ++ dv.value = translate("Neither GNU Wget with SSL nor cURL installed to select a network to use for communication.") .. ++ "
- " .. ++ translate("You should install GNU Wget with SSL or cURL package.") .. ++ "
- " .. ++ translate("GNU Wget will use the IP of given network, cURL will use the physical interface.") .. ++ "
- " .. ++ translate("In some versions cURL/libcurl in OpenWrt is compiled without proxy support.") ++end ++ ++-- cURL without proxy support ++if has_ssl and not has_proxy then ++ local dv = s:option(DummyValue, "_no_proxy") ++ dv.titleref = DISP.build_url("admin", "system", "packages") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("cURL without Proxy Support") .. bold_off ++ dv.value = translate("cURL is installed, but libcurl was compiled without proxy support.") .. ++ "
- " .. ++ translate("You should install GNU Wget with SSL or replace libcurl.") .. ++ "
- " .. ++ translate("In some versions cURL/libcurl in OpenWrt is compiled without proxy support.") ++end ++ ++-- "Force IP Version not supported" ++if not (has_ssl and has_dnstcp) then ++ local dv = s:option(DummyValue, "_no_force_ip") ++ dv.titleref = DISP.build_url("admin", "system", "packages") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("Force IP Version not supported") .. bold_off ++ local value = translate("BusyBox's nslookup and Wget do not support to specify " .. ++ "the IP version to use for communication with DDNS Provider.") ++ if not has_ssl then ++ value = value .. "
- " .. ++ translate("You should install GNU Wget with SSL (prefered) or cURL package.") ++ end ++ if not has_dnstcp then ++ value = value .. "
- " .. ++ translate("You should install BIND host package for DNS requests.") ++ end ++ dv.value = value ++end ++ ++-- "DNS requests via TCP not supported" ++if not has_dnstcp then ++ local dv = s:option(DummyValue, "_no_dnstcp") ++ dv.titleref = DISP.build_url("admin", "system", "packages") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("DNS requests via TCP not supported") .. bold_off ++ dv.value = translate("BusyBox's nslookup does not support to specify to use TCP instead of default UDP when requesting DNS server") .. ++ "
- " .. ++ translate("You should install BIND host package for DNS requests.") ++end ++ ++return m +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua +new file mode 100644 +index 0000000..5b5925b +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/model/cbi/ddns/overview.lua +@@ -0,0 +1,256 @@ ++-- Copyright 2014 Christian Schoenebeck ++-- Licensed to the public under the Apache License 2.0. ++ ++local NXFS = require "nixio.fs" ++local CTRL = require "luci.controller.ddns" -- this application's controller ++local DISP = require "luci.dispatcher" ++local HTTP = require "luci.http" ++local SYS = require "luci.sys" ++local DDNS = require "luci.tools.ddns" -- ddns multiused functions ++ ++-- show hints ? ++show_hints = not (DDNS.check_ipv6() -- IPv6 support ++ and DDNS.check_ssl() -- HTTPS support ++ and DDNS.check_proxy() -- Proxy support ++ and DDNS.check_bind_host() -- DNS TCP support ++ ) ++-- correct ddns-scripts version ++need_update = DDNS.ipkg_ver_compare(DDNS.ipkg_ver_installed("ddns-scripts"), "<<", CTRL.DDNS_MIN) ++ ++-- html constants ++font_red = [[]] ++font_off = [[]] ++bold_on = [[]] ++bold_off = [[]] ++ ++-- cbi-map definition -- ####################################################### ++m = Map("ddns") ++ ++m.title = [[]] ++ .. translate("Dynamic DNS") .. [[]] ++ ++m.description = translate("Dynamic DNS allows that your router can be reached with " .. ++ "a fixed hostname while having a dynamically changing " .. ++ "IP address.") ++ ++m.on_after_commit = function(self) ++ if self.changed then -- changes ? ++ if SYS.init.enabled("ddns") then -- ddns service enabled, restart all ++ os.execute("/etc/init.d/ddns restart") ++ else -- ddns service disabled, send SIGHUP to running ++ os.execute("killall -1 dynamic_dns_updater.sh") ++ end ++ end ++end ++ ++-- SimpleSection definiton -- ################################################## ++-- with all the JavaScripts we need for "a good Show" ++a = m:section( SimpleSection ) ++a.template = "ddns/overview_status" ++ ++-- SimpleSection definition -- ################################################# ++-- show Hints to optimize installation and script usage ++-- only show if service not enabled ++-- or no IPv6 support ++-- or not GNU Wget and not cURL (for https support) ++-- or not GNU Wget but cURL without proxy support ++-- or not BIND's host ++-- or ddns-scripts package need update ++if show_hints or need_update or not SYS.init.enabled("ddns") then ++ s = m:section( SimpleSection, translate("Hints") ) ++ ++ -- ddns_scripts needs to be updated for full functionality ++ if need_update then ++ local dv = s:option(DummyValue, "_update_needed") ++ dv.titleref = DISP.build_url("admin", "system", "packages") ++ dv.rawhtml = true ++ dv.title = font_red .. bold_on .. ++ translate("Software update required") .. bold_off .. font_off ++ dv.value = translate("The currently installed 'ddns-scripts' package did not support all available settings.") .. ++ "
" .. ++ translate("Please update to the current version!") ++ end ++ ++ -- DDNS Service disabled ++ if not SYS.init.enabled("ddns") then ++ local dv = s:option(DummyValue, "_not_enabled") ++ dv.titleref = DISP.build_url("admin", "system", "startup") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("DDNS Autostart disabled") .. bold_off ++ dv.value = translate("Currently DDNS updates are not started at boot or on interface events." .. "
" .. ++ "You can start/stop each configuration here. It will run until next reboot.") ++ end ++ ++ -- Show more hints on a separate page ++ if show_hints then ++ local dv = s:option(DummyValue, "_separate") ++ dv.titleref = DISP.build_url("admin", "services", "ddns", "hints") ++ dv.rawhtml = true ++ dv.title = bold_on .. ++ translate("Show more") .. bold_off ++ dv.value = translate("Follow this link" .. "
" .. ++ "You will find more hints to optimize your system to run DDNS scripts with all options") ++ end ++end ++ ++-- TableSection definition -- ################################################## ++ts = m:section( TypedSection, "service", ++ translate("Overview"), ++ translate("Below is a list of configured DDNS configurations and their current state.") ++ .. "
" ++ .. translate("If you want to send updates for IPv4 and IPv6 you need to define two separate Configurations " ++ .. "i.e. 'myddns_ipv4' and 'myddns_ipv6'") ++ .. "
" ++ .. [[]] ++ .. translate("To change global settings click here") .. [[]] ) ++ts.sectionhead = translate("Configuration") ++ts.template = "cbi/tblsection" ++ts.addremove = true ++ts.extedit = DISP.build_url("admin", "services", "ddns", "detail", "%s") ++function ts.create(self, name) ++ AbstractSection.create(self, name) ++ HTTP.redirect( self.extedit:format(name) ) ++end ++ ++-- Domain and registered IP -- ################################################# ++dom = ts:option(DummyValue, "_domainIP", ++ translate("Hostname/Domain") .. "
" .. translate("Registered IP") ) ++dom.template = "ddns/overview_doubleline" ++function dom.set_one(self, section) ++ local domain = self.map:get(section, "domain") or "" ++ if domain ~= "" then ++ return domain ++ else ++ return [[]] .. translate("config error") .. [[]] ++ end ++end ++function dom.set_two(self, section) ++ local domain = self.map:get(section, "domain") or "" ++ if domain == "" then return "" end ++ local dnsserver = self.map:get(section, "dnsserver") or "" ++ local use_ipv6 = tonumber(self.map:get(section, "use_ipv6") or 0) ++ local force_ipversion = tonumber(self.map:get(section, "force_ipversion") or 0) ++ local force_dnstcp = tonumber(self.map:get(section, "force_dnstcp") or 0) ++ local command = [[/usr/lib/ddns/dynamic_dns_lucihelper.sh]] ++ if not NXFS.access(command, "rwx", "rx", "rx") then ++ NXFS.chmod(command, 755) ++ end ++ command = command .. [[ get_registered_ip ]] .. domain .. [[ ]] .. use_ipv6 .. ++ [[ ]] .. force_ipversion .. [[ ]] .. force_dnstcp .. [[ ]] .. dnsserver ++ local ip = SYS.exec(command) ++ if ip == "" then ip = translate("no data") end ++ return ip ++end ++ ++-- enabled ++ena = ts:option( Flag, "enabled", ++ translate("Enabled")) ++ena.template = "ddns/overview_enabled" ++ena.rmempty = false ++function ena.parse(self, section) ++ DDNS.flag_parse(self, section) ++end ++ ++-- show PID and next update ++upd = ts:option( DummyValue, "_update", ++ translate("Last Update") .. "
" .. translate("Next Update")) ++upd.template = "ddns/overview_doubleline" ++function upd.set_one(self, section) -- fill Last Update ++ -- get/validate last update ++ local uptime = SYS.uptime() ++ local lasttime = DDNS.get_lastupd(section) ++ if lasttime > uptime then -- /var might not be linked to /tmp and cleared on reboot ++ lasttime = 0 ++ end ++ ++ -- no last update happen ++ if lasttime == 0 then ++ return translate("never") ++ ++ -- we read last update ++ else ++ -- calc last update ++ -- os.epoch - sys.uptime + lastupdate(uptime) ++ local epoch = os.time() - uptime + lasttime ++ -- use linux date to convert epoch ++ return DDNS.epoch2date(epoch) ++ end ++end ++function upd.set_two(self, section) -- fill Next Update ++ -- get enabled state ++ local enabled = tonumber(self.map:get(section, "enabled") or 0) ++ local datenext = translate("unknown error") -- formatted date of next update ++ ++ -- get force seconds ++ local force_interval = tonumber(self.map:get(section, "force_interval") or 72) ++ local force_unit = self.map:get(section, "force_unit") or "hours" ++ local force_seconds = DDNS.calc_seconds(force_interval, force_unit) ++ ++ -- get last update and get/validate PID ++ local uptime = SYS.uptime() ++ local lasttime = DDNS.get_lastupd(section) ++ if lasttime > uptime then -- /var might not be linked to /tmp and cleared on reboot ++ lasttime = 0 ++ end ++ local pid = DDNS.get_pid(section) ++ ++ -- calc next update ++ if lasttime > 0 then ++ local epoch = os.time() - uptime + lasttime + force_seconds ++ -- use linux date to convert epoch ++ datelast = DDNS.epoch2date(epoch) ++ end ++ ++ -- process running but update needs to happen ++ if pid > 0 and ( lasttime + force_seconds - uptime ) < 0 then ++ datenext = translate("Verify") ++ ++ -- run once ++ elseif force_seconds == 0 then ++ datenext = translate("Run once") ++ ++ -- no process running and NOT enabled ++ elseif pid == 0 and enabled == 0 then ++ datenext = translate("Disabled") ++ ++ -- no process running and NOT ++ elseif pid == 0 and enabled ~= 0 then ++ datenext = translate("Stopped") ++ end ++ ++ return datenext ++end ++ ++-- start/stop button ++btn = ts:option( Button, "_startstop", ++ translate("Process ID") .. "
" .. translate("Start / Stop") ) ++btn.template = "ddns/overview_startstop" ++function btn.cfgvalue(self, section) ++ local pid = DDNS.get_pid(section) ++ if pid > 0 then ++ btn.inputtitle = "PID: " .. pid ++ btn.inputstyle = "reset" ++ btn.disabled = false ++ elseif (self.map:get(section, "enabled") or "0") ~= "0" then ++ btn.inputtitle = translate("Start") ++ btn.inputstyle = "apply" ++ btn.disabled = false ++ else ++ btn.inputtitle = "----------" ++ btn.inputstyle = "button" ++ btn.disabled = true ++ end ++ return true ++end ++ ++return m +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/tools/ddns.lua b/feeds/luci/applications/luci-app-ddns/luasrc/tools/ddns.lua +new file mode 100644 +index 0000000..4466063 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/tools/ddns.lua +@@ -0,0 +1,303 @@ ++-- Copyright 2014 Christian Schoenebeck ++-- Licensed to the public under the Apache License 2.0. ++ ++module("luci.tools.ddns", package.seeall) ++ ++local NX = require "nixio" ++local NXFS = require "nixio.fs" ++local OPKG = require "luci.model.ipkg" ++local UCI = require "luci.model.uci" ++local SYS = require "luci.sys" ++local UTIL = require "luci.util" ++ ++-- function to calculate seconds from given interval and unit ++function calc_seconds(interval, unit) ++ if not tonumber(interval) then ++ return nil ++ elseif unit == "days" then ++ return (tonumber(interval) * 86400) -- 60 sec * 60 min * 24 h ++ elseif unit == "hours" then ++ return (tonumber(interval) * 3600) -- 60 sec * 60 min ++ elseif unit == "minutes" then ++ return (tonumber(interval) * 60) -- 60 sec ++ elseif unit == "seconds" then ++ return tonumber(interval) ++ else ++ return nil ++ end ++end ++ ++-- check if IPv6 supported by OpenWrt ++function check_ipv6() ++ return NXFS.access("/proc/net/ipv6_route") ++ and NXFS.access("/usr/sbin/ip6tables") ++end ++ ++-- check if Wget with SSL support or cURL installed ++function check_ssl() ++ if (SYS.call([[ grep -i "\+ssl" /usr/bin/wget >/dev/null 2>&1 ]]) == 0) then ++ return true ++ else ++ return NXFS.access("/usr/bin/curl") ++ end ++end ++ ++-- check if Wget with SSL or cURL with proxy support installed ++function check_proxy() ++ -- we prefere GNU Wget for communication ++ if (SYS.call([[ grep -i "\+ssl" /usr/bin/wget >/dev/null 2>&1 ]]) == 0) then ++ return true ++ ++ -- if not installed cURL must support proxy ++ elseif NXFS.access("/usr/bin/curl") then ++ return (SYS.call([[ grep -i all_proxy /usr/lib/libcurl.so* >/dev/null 2>&1 ]]) == 0) ++ ++ -- only BusyBox Wget is installed ++ else ++ return NXFS.access("/usr/bin/wget") ++ end ++end ++ ++-- check if BIND host installed ++function check_bind_host() ++ return NXFS.access("/usr/bin/host") ++end ++ ++-- convert epoch date to given format ++function epoch2date(epoch, format) ++ if not format or #format < 2 then ++ local uci = UCI.cursor() ++ format = uci:get("ddns", "global", "date_format") or "%F %R" ++ uci:unload("ddns") ++ end ++ format = format:gsub("%%n", "
") -- replace newline ++ format = format:gsub("%%t", " ") -- replace tab ++ return os.date(format, epoch) ++end ++ ++-- read lastupdate from [section].update file ++function get_lastupd(section) ++ local uci = UCI.cursor() ++ local run_dir = uci:get("ddns", "global", "run_dir") or "/var/run/ddns" ++ local etime = tonumber(NXFS.readfile("%s/%s.update" % { run_dir, section } ) or 0 ) ++ uci:unload("ddns") ++ return etime ++end ++ ++-- read PID from run file and verify if still running ++function get_pid(section) ++ local uci = UCI.cursor() ++ local run_dir = uci:get("ddns", "global", "run_dir") or "/var/run/ddns" ++ local pid = tonumber(NXFS.readfile("%s/%s.pid" % { run_dir, section } ) or 0 ) ++ if pid > 0 and not NX.kill(pid, 0) then ++ pid = 0 ++ end ++ uci:unload("ddns") ++ return pid ++end ++ ++-- compare versions using "<=" "<" ">" ">=" "=" "<<" ">>" ++function ipkg_ver_compare(ver1, comp, ver2) ++ if not ver1 or not ver2 ++ or not comp or not (#comp > 0) then return nil end ++ -- correct compare string ++ if comp == "<>" or comp == "><" or comp == "!=" or comp == "~=" then comp = "~=" ++ elseif comp == "<=" or comp == "<" or comp == "=<" then comp = "<=" ++ elseif comp == ">=" or comp == ">" or comp == "=>" then comp = ">=" ++ elseif comp == "=" or comp == "==" then comp = "==" ++ elseif comp == "<<" then comp = "<" ++ elseif comp == ">>" then comp = ">" ++ else return nil end ++ ++ local av1 = UTIL.split(ver1, "[%.%-]", nil, true) ++ local av2 = UTIL.split(ver2, "[%.%-]", nil, true) ++ ++ for i = 1, math.max(table.getn(av1),table.getn(av2)), 1 do ++ local s1 = av1[i] or "" ++ local s2 = av2[i] or "" ++ ++ -- first "not equal" found return true ++ if comp == "~=" and (s1 ~= s2) then return true end ++ -- first "lower" found return true ++ if (comp == "<" or comp == "<=") and (s1 < s2) then return true end ++ -- first "greater" found return true ++ if (comp == ">" or comp == ">=") and (s1 > s2) then return true end ++ -- not equal then return false ++ if (s1 ~= s2) then return false end ++ end ++ ++ -- all equal and not compare greater or lower then true ++ return not (comp == "<" or comp == ">") ++end ++ ++-- read version information for given package if installed ++function ipkg_ver_installed(pkg) ++ local version = nil ++ local control = io.open("/usr/lib/opkg/info/%s.control" % pkg, "r") ++ if control then ++ local ln ++ repeat ++ ln = control:read("*l") ++ if ln and ln:match("^Version: ") then ++ version = ln:gsub("^Version: ", "") ++ break ++ end ++ until not ln ++ control:close() ++ end ++ return version ++end ++ ++-- replacement of build-in read of UCI option ++-- modified AbstractValue.cfgvalue(self, section) from cbi.lua ++-- needed to read from other option then current value definition ++function read_value(self, section, option) ++ local value ++ if self.tag_error[section] then ++ value = self:formvalue(section) ++ else ++ value = self.map:get(section, option) ++ end ++ ++ if not value then ++ return nil ++ elseif not self.cast or self.cast == type(value) then ++ return value ++ elseif self.cast == "string" then ++ if type(value) == "table" then ++ return value[1] ++ end ++ elseif self.cast == "table" then ++ return { value } ++ end ++end ++ ++-- replacement of build-in Flag.parse of cbi.lua ++-- modified to mark section as changed if value changes ++-- current parse did not do this, but it is done AbstaractValue.parse() ++function flag_parse(self, section) ++ local fexists = self.map:formvalue( ++ luci.cbi.FEXIST_PREFIX .. self.config .. "." .. section .. "." .. self.option) ++ ++ if fexists then ++ local fvalue = self:formvalue(section) and self.enabled or self.disabled ++ local cvalue = self:cfgvalue(section) ++ if fvalue ~= self.default or (not self.optional and not self.rmempty) then ++ self:write(section, fvalue) ++ else ++ self:remove(section) ++ end ++ if (fvalue ~= cvalue) then self.section.changed = true end ++ else ++ self:remove(section) ++ self.section.changed = true ++ end ++end ++ ++----------------------------------------------------------------------------- ++-- copied from https://svn.nmap.org/nmap/nselib/url.lua ++-- @author Diego Nehab ++-- @author Eddie Bell ++--[[ ++ URI parsing, composition and relative URL resolution ++ LuaSocket toolkit. ++ Author: Diego Nehab ++ RCS ID: $Id: url.lua,v 1.37 2005/11/22 08:33:29 diego Exp $ ++ parse_query and build_query added For nmap (Eddie Bell ) ++]]-- ++--- ++-- Parses a URL and returns a table with all its parts according to RFC 2396. ++-- ++-- The following grammar describes the names given to the URL parts. ++-- ++-- ::= :///;?# ++-- ::= @: ++-- ::= [:] ++-- :: = {/} ++-- ++-- ++-- The leading / in / is considered part of ++-- . ++-- @param url URL of request. ++-- @param default Table with default values for each field. ++-- @return A table with the following fields, where RFC naming conventions have ++-- been preserved: ++-- scheme, authority, userinfo, ++-- user, password, host, ++-- port, path, params, ++-- query, and fragment. ++----------------------------------------------------------------------------- ++function parse_url(url) --, default) ++ -- initialize default parameters ++ local parsed = {} ++-- for i,v in base.pairs(default or parsed) do ++-- parsed[i] = v ++-- end ++ ++ -- remove whitespace ++-- url = string.gsub(url, "%s", "") ++ -- get fragment ++ url = string.gsub(url, "#(.*)$", ++ function(f) ++ parsed.fragment = f ++ return "" ++ end) ++ -- get scheme. Lower-case according to RFC 3986 section 3.1. ++ url = string.gsub(url, "^([%w][%w%+%-%.]*)%:", ++ function(s) ++ parsed.scheme = string.lower(s); ++ return "" ++ end) ++ -- get authority ++ url = string.gsub(url, "^//([^/]*)", ++ function(n) ++ parsed.authority = n ++ return "" ++ end) ++ -- get query stringing ++ url = string.gsub(url, "%?(.*)", ++ function(q) ++ parsed.query = q ++ return "" ++ end) ++ -- get params ++ url = string.gsub(url, "%;(.*)", ++ function(p) ++ parsed.params = p ++ return "" ++ end) ++ -- path is whatever was left ++ parsed.path = url ++ ++ local authority = parsed.authority ++ if not authority then ++ return parsed ++ end ++ authority = string.gsub(authority,"^([^@]*)@", ++ function(u) ++ parsed.userinfo = u; ++ return "" ++ end) ++ authority = string.gsub(authority, ":([0-9]*)$", ++ function(p) ++ if p ~= "" then ++ parsed.port = p ++ end; ++ return "" ++ end) ++ if authority ~= "" then ++ parsed.host = authority ++ end ++ ++ local userinfo = parsed.userinfo ++ if not userinfo then ++ return parsed ++ end ++ userinfo = string.gsub(userinfo, ":([^:]*)$", ++ function(p) ++ parsed.password = p; ++ return "" ++ end) ++ parsed.user = userinfo ++ return parsed ++end +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/admin_status/index/ddns.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/admin_status/index/ddns.htm +new file mode 100644 +index 0000000..9791065 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/admin_status/index/ddns.htm +@@ -0,0 +1 @@ ++<%+ddns/system_status%> +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm +new file mode 100644 +index 0000000..4dcb7bb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_logview.htm +@@ -0,0 +1,56 @@ ++ ++ ++ ++ ++<%+cbi/valueheader%> ++ ++
++ ++<% ++-- one button on top, one at the buttom ++%> ++ /> ++ ++

++ ++<% ++-- set a readable style taken from openwrt theme for textarea#syslog ++-- in openwrt theme there are problems with a width of 100 so we check for theme and set to lower value ++%> ++ ++

++ ++<% ++-- one button on top, one at the buttom ++%> ++ /> ++ ++<%+cbi/valuefooter%> ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm +new file mode 100644 +index 0000000..0bcfd44 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm +@@ -0,0 +1,22 @@ ++ ++ ++ ++  ++<% if self.widget == "select" then %> ++ ++<% elseif self.widget == "radio" then ++ local c = 0 ++ for i, key in pairs(self.keylist) do ++ c = c + 1 ++%> ++ /> ++ ><%=self.vallist[i]%> ++<% if c == self.size then c = 0 %><% if self.orientation == "horizontal" then %> <% else %>
<% end %> ++<% end end %> ++<% end %> ++<%+cbi/valuefooter%> ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_value.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_value.htm +new file mode 100644 +index 0000000..cbe76ab +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/detail_value.htm +@@ -0,0 +1,9 @@ ++ ++ ++<%+cbi/valueheader%> ++ /> ++ ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/global_value.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/global_value.htm +new file mode 100644 +index 0000000..159cb60 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/global_value.htm +@@ -0,0 +1,34 @@ ++ ++ ++<%+cbi/valueheader%> ++ ++ ++ ++/> ++
++
++ <%:help%><%=self.description%> ++
++ <%:Current setting%>: <%=self.date_string%> ++
++ ++ ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_doubleline.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_doubleline.htm +new file mode 100644 +index 0000000..1d1b4be +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_doubleline.htm +@@ -0,0 +1,10 @@ ++ ++ ++<%+cbi/valueheader%> ++ ++<%=self:set_one(section)%> ++
++<%=self:set_two(section)%> ++ ++<%+cbi/valuefooter%> ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm +new file mode 100644 +index 0000000..64b3dae +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm +@@ -0,0 +1,15 @@ ++ ++ ++<%+cbi/valueheader%> ++ ++ /> ++ ++ /> ++ ++<%+cbi/valuefooter%> ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_startstop.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_startstop.htm +new file mode 100644 +index 0000000..327028c +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_startstop.htm +@@ -0,0 +1,17 @@ ++ ++ ++<%+cbi/valueheader%> ++ ++<% if self:cfgvalue(section) ~= false then ++-- We need to garantie that function cfgvalue run first to set missing parameters ++%> ++ ++ ++ " style="font-size: 100%;" type="button" onclick="onclick_startstop(this.id)" ++ <%= ++ attr("name", section) .. attr("id", cbid) .. attr("value", self.inputtitle) .. ifattr(self.disabled, "disabled") ++ %> /> ++<% end %> ++ ++<%+cbi/valuefooter%> ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm +new file mode 100644 +index 0000000..b6d4ebb +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/overview_status.htm +@@ -0,0 +1,180 @@ ++ ++ ++ ++ ++ ++ +diff --git a/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm +new file mode 100644 +index 0000000..06dca48 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/luasrc/view/ddns/system_status.htm +@@ -0,0 +1,144 @@ ++ ++ ++ ++ ++
++ <%:Dynamic DNS%> ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++
<%:Configuration%><%:Next Update%><%:Hostname/Domain%><%:Registered IP%><%:Network%>

<%:Collecting data...%>
++
++ +diff --git a/feeds/luci/applications/luci-app-ddns/po/ca/ddns.po b/feeds/luci/applications/luci-app-ddns/po/ca/ddns.po +new file mode 100644 +index 0000000..c57b689 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/po/ca/ddns.po +@@ -0,0 +1,706 @@ ++# ddns.pot ++# generated from ./applications/luci-ddns/luasrc/i18n/ddns.en.lua ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2010-04-02 13:44+0100\n" ++"PO-Revision-Date: 2014-07-03 20:30+0200\n" ++"Last-Translator: Alex \n" ++"Language-Team: LANGUAGE \n" ++"Language: ca\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "&" ++msgstr "" ++ ++msgid "-- custom --" ++msgstr "" ++ ++msgid "-- default --" ++msgstr "" ++ ++msgid "Advanced Settings" ++msgstr "" ++ ++msgid "Allow non-public IP's" ++msgstr "" ++ ++msgid "Applying changes" ++msgstr "" ++ ++msgid "Basic Settings" ++msgstr "" ++ ++msgid "" ++"Below a list of configuration tips for your system to run Dynamic DNS " ++"updates without limitations" ++msgstr "" ++ ++msgid "" ++"Below is a list of configured DDNS configurations and their current state." ++msgstr "" ++ ++msgid "Bind Network" ++msgstr "" ++ ++msgid "Binding to a specific network not supported" ++msgstr "" ++ ++msgid "" ++"BusyBox's nslookup and Wget do not support to specify the IP version to use " ++"for communication with DDNS Provider." ++msgstr "" ++ ++msgid "" ++"BusyBox's nslookup does not support to specify to use TCP instead of default " ++"UDP when requesting DNS server" ++msgstr "" ++ ++msgid "Casual users should not change this setting" ++msgstr "" ++ ++msgid "Check Interval" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Config error" ++msgstr "" ++ ++msgid "Configuration" ++msgstr "" ++ ++msgid "" ++"Configure here the details for all Dynamic DNS services including this LuCI " ++"application." ++msgstr "" ++ ++msgid "Configure here the details for selected Dynamic DNS service." ++msgstr "" ++ ++msgid "Current setting" ++msgstr "" ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
This is the default if you run DDNS scripts by yourself (i.e. via cron with " ++"force_interval set to '0')" ++msgstr "" ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
You can start/stop each configuration here. It will run until next reboot." ++msgstr "" ++ ++msgid "Custom update script to be used for updating your DDNS Provider." ++msgstr "" ++ ++#, fuzzy ++msgid "Custom update-URL" ++msgstr "URL d'actualització personalitzada" ++ ++msgid "Custom update-script" ++msgstr "" ++ ++msgid "DDNS Autostart disabled" ++msgstr "" ++ ++msgid "DDNS Service provider" ++msgstr "" ++ ++msgid "DNS requests via TCP not supported" ++msgstr "" ++ ++msgid "DNS-Server" ++msgstr "" ++ ++msgid "Date format" ++msgstr "" ++ ++msgid "Defines the Web page to read systems IPv4-Address from" ++msgstr "" ++ ++msgid "Defines the Web page to read systems IPv6-Address from" ++msgstr "" ++ ++msgid "Defines the interface to read systems IP-Address from" ++msgstr "" ++ ++msgid "Defines the network to read systems IPv4-Address from" ++msgstr "" ++ ++msgid "Defines the network to read systems IPv6-Address from" ++msgstr "" ++ ++msgid "" ++"Defines the source to read systems IPv4-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++ ++msgid "" ++"Defines the source to read systems IPv6-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++ ++msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" ++msgstr "" ++ ++msgid "Details for" ++msgstr "" ++ ++msgid "Directory contains Log files for each running section" ++msgstr "" ++ ++msgid "" ++"Directory contains PID and other status information for each running section" ++msgstr "" ++ ++msgid "Disabled" ++msgstr "" ++ ++msgid "Dynamic DNS" ++msgstr "DNS dinàmic" ++ ++#, fuzzy ++msgid "" ++"Dynamic DNS allows that your router can be reached with a fixed hostname " ++"while having a dynamically changing IP address." ++msgstr "" ++"El DNS dinàmic permet que el teu router sigui localitzable amb un nom de " ++"màquin fix mentre té una adreça IP dinàmica." ++ ++msgid "Enable secure communication with DDNS provider" ++msgstr "" ++ ++msgid "Enabled" ++msgstr "" ++ ++msgid "Error" ++msgstr "" ++ ++msgid "Error Retry Counter" ++msgstr "" ++ ++msgid "Error Retry Interval" ++msgstr "" ++ ++msgid "Event Network" ++msgstr "" ++ ++msgid "File" ++msgstr "" ++ ++msgid "File not found" ++msgstr "" ++ ++msgid "File not found or empty" ++msgstr "" ++ ++msgid "" ++"Follow this link
You will find more hints to optimize your system to " ++"run DDNS scripts with all options" ++msgstr "" ++ ++msgid "For detailed information about parameter settings look here." ++msgstr "" ++ ++msgid "For supported codes look here" ++msgstr "" ++ ++msgid "Force IP Version" ++msgstr "" ++ ++msgid "Force IP Version not supported" ++msgstr "" ++ ++msgid "Force Interval" ++msgstr "" ++ ++msgid "Force TCP on DNS" ++msgstr "" ++ ++msgid "Forced IP Version don't matched" ++msgstr "" ++ ++msgid "Format" ++msgstr "" ++ ++msgid "Format: IP or FQDN" ++msgstr "" ++ ++msgid "" ++"GNU Wget will use the IP of given network, cURL will use the physical " ++"interface." ++msgstr "" ++ ++msgid "Global Settings" ++msgstr "" ++ ++msgid "HTTPS not supported" ++msgstr "" ++ ++msgid "Hints" ++msgstr "" ++ ++msgid "Hostname/Domain" ++msgstr "" ++ ++msgid "IP address source" ++msgstr "" ++ ++msgid "IP address version" ++msgstr "" ++ ++msgid "IPv4-Address" ++msgstr "" ++ ++msgid "IPv6 address must be given in square brackets" ++msgstr "" ++ ++msgid "" ++"IPv6 is currently not (fully) supported by this system
Please follow " ++"the instructions on OpenWrt's homepage to enable IPv6 support
or update " ++"your system to the latest OpenWrt Release" ++msgstr "" ++ ++msgid "IPv6 not supported" ++msgstr "" ++ ++msgid "IPv6-Address" ++msgstr "" ++ ++msgid "If both cURL and GNU Wget are installed, Wget is used by default." ++msgstr "" ++ ++msgid "" ++"If this service section is disabled it could not be started.
Neither " ++"from LuCI interface nor from console" ++msgstr "" ++ ++msgid "" ++"If you want to send updates for IPv4 and IPv6 you need to define two " ++"separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" ++msgstr "" ++ ++msgid "" ++"In some versions cURL/libcurl in OpenWrt is compiled without proxy support." ++msgstr "" ++ ++msgid "Info" ++msgstr "" ++ ++msgid "Interface" ++msgstr "Interfície" ++ ++msgid "" ++"Interval to check for changed IP
Values below 5 minutes == 300 seconds " ++"are not supported" ++msgstr "" ++ ++msgid "" ++"Interval to force updates send to DDNS Provider
Setting this parameter " ++"to 0 will force the script to only run once
Values lower 'Check " ++"Interval' except '0' are not supported" ++msgstr "" ++ ++msgid "It is NOT recommended for casual users to change settings on this page." ++msgstr "" ++ ++msgid "Last Update" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Log File Viewer" ++msgstr "" ++ ++msgid "Log directory" ++msgstr "" ++ ++msgid "Log length" ++msgstr "" ++ ++msgid "Log to file" ++msgstr "" ++ ++msgid "Log to syslog" ++msgstr "" ++ ++msgid "" ++"Neither GNU Wget with SSL nor cURL installed to select a network to use for " ++"communication." ++msgstr "" ++ ++msgid "" ++"Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS " ++"protocol." ++msgstr "" ++ ++msgid "Network" ++msgstr "Xarxa" ++ ++msgid "Network on which the ddns-updater scripts will be started" ++msgstr "" ++ ++msgid "Never" ++msgstr "" ++ ++msgid "Next Update" ++msgstr "" ++ ++msgid "No data" ++msgstr "" ++ ++msgid "No logging" ++msgstr "" ++ ++msgid "Non-public and by default blocked IP's" ++msgstr "" ++ ++msgid "Notice" ++msgstr "" ++ ++msgid "Number of last lines stored in log files" ++msgstr "" ++ ++msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." ++msgstr "" ++ ++msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." ++msgstr "" ++ ++msgid "OPTIONAL: Network to use for communication" ++msgstr "" ++ ++msgid "OPTIONAL: Proxy-Server for detection and updates." ++msgstr "" ++ ++msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." ++msgstr "" ++ ++msgid "On Error the script will retry the failed action after given time" ++msgstr "" ++ ++msgid "On Error the script will stop execution after given number of retrys" ++msgstr "" ++ ++msgid "Overview" ++msgstr "" ++ ++msgid "PROXY-Server" ++msgstr "" ++ ++msgid "PROXY-Server not supported" ++msgstr "" ++ ++msgid "Password" ++msgstr "Contrasenya" ++ ++msgid "Path to CA-Certificate" ++msgstr "" ++ ++msgid "Please [Save & Apply] your changes first" ++msgstr "" ++ ++msgid "Please press [Read] button" ++msgstr "" ++ ++msgid "Please update to the current version!" ++msgstr "" ++ ++msgid "Process ID" ++msgstr "" ++ ++msgid "Read / Reread log file" ++msgstr "" ++ ++msgid "Registered IP" ++msgstr "" ++ ++msgid "Replaces [DOMAIN] in Update-URL" ++msgstr "" ++ ++msgid "Replaces [PASSWORD] in Update-URL" ++msgstr "" ++ ++msgid "Replaces [USERNAME] in Update-URL" ++msgstr "" ++ ++msgid "Run once" ++msgstr "" ++ ++msgid "Script" ++msgstr "" ++ ++msgid "Show more" ++msgstr "" ++ ++msgid "Software update required" ++msgstr "" ++ ++msgid "Start" ++msgstr "" ++ ++msgid "Start / Stop" ++msgstr "" ++ ++msgid "Status directory" ++msgstr "" ++ ++msgid "Stopped" ++msgstr "" ++ ++msgid "" ++"The currently installed 'ddns-scripts' package did not support all available " ++"settings." ++msgstr "" ++ ++msgid "The default setting of '0' will retry infinite." ++msgstr "" ++ ++msgid "There is no service configured." ++msgstr "" ++ ++msgid "Timer Settings" ++msgstr "" ++ ++msgid "To change global settings click here" ++msgstr "" ++ ++msgid "To use cURL activate this option." ++msgstr "" ++ ++msgid "URL" ++msgstr "" ++ ++msgid "URL to detect" ++msgstr "" ++ ++msgid "Unknown error" ++msgstr "" ++ ++msgid "" ++"Update URL to be used for updating your DDNS Provider.
Follow " ++"instructions you will find on their WEB page." ++msgstr "" ++ ++msgid "Update error" ++msgstr "" ++ ++msgid "Use HTTP Secure" ++msgstr "" ++ ++msgid "Use cURL" ++msgstr "" ++ ++msgid "User defined script to read systems IP-Address" ++msgstr "" ++ ++msgid "Username" ++msgstr "Nom d'usuari" ++ ++msgid "Verify" ++msgstr "" ++ ++msgid "Version" ++msgstr "" ++ ++msgid "Version Information" ++msgstr "" ++ ++msgid "Waiting for changes to be applied..." ++msgstr "" ++ ++msgid "Warning" ++msgstr "" ++ ++msgid "" ++"Writes detailed messages to log file. File will be truncated automatically." ++msgstr "" ++ ++msgid "" ++"Writes log messages to syslog. Critical Errors will always be written to " ++"syslog." ++msgstr "" ++ ++msgid "You should install BIND host package for DNS requests." ++msgstr "" ++ ++msgid "You should install GNU Wget with SSL (prefered) or cURL package." ++msgstr "" ++ ++msgid "You should install GNU Wget with SSL or cURL package." ++msgstr "" ++ ++msgid "You should install GNU Wget with SSL or replace libcurl." ++msgstr "" ++ ++msgid "cURL is installed, but libcurl was compiled without proxy support." ++msgstr "" ++ ++msgid "cURL without Proxy Support" ++msgstr "" ++ ++msgid "can not detect local IP. Please select a different Source combination" ++msgstr "" ++ ++msgid "can not resolve host:" ++msgstr "" ++ ++msgid "config error" ++msgstr "" ++ ++msgid "days" ++msgstr "" ++ ++msgid "directory or path/file" ++msgstr "" ++ ++msgid "either url or script could be set" ++msgstr "" ++ ++msgid "enable here" ++msgstr "" ++ ++msgid "file or directory not found or not 'IGNORE'" ++msgstr "" ++ ++msgid "help" ++msgstr "" ++ ++msgid "hours" ++msgstr "" ++ ++msgid "installed" ++msgstr "" ++ ++msgid "invalid - Sample" ++msgstr "" ++ ++msgid "minimum value '0'" ++msgstr "" ++ ++msgid "minimum value '1'" ++msgstr "" ++ ++msgid "minimum value 5 minutes == 300 seconds" ++msgstr "" ++ ++msgid "minutes" ++msgstr "" ++ ++msgid "missing / required" ++msgstr "" ++ ++msgid "must be greater or equal 'Check Interval'" ++msgstr "" ++ ++msgid "must start with 'http://'" ++msgstr "" ++ ++msgid "nc (netcat) can not connect" ++msgstr "" ++ ++msgid "never" ++msgstr "" ++ ++msgid "no data" ++msgstr "" ++ ++msgid "not found or not executable - Sample: '/path/to/script.sh'" ++msgstr "" ++ ++msgid "nslookup can not resolve host" ++msgstr "" ++ ++msgid "or" ++msgstr "" ++ ++msgid "or higher" ++msgstr "" ++ ++msgid "please disable" ++msgstr "" ++ ++msgid "please remove entry" ++msgstr "" ++ ++msgid "please select 'IPv4' address version" ++msgstr "" ++ ++msgid "please select 'IPv4' address version in" ++msgstr "" ++ ++msgid "please set to 'default'" ++msgstr "" ++ ++msgid "proxy port missing" ++msgstr "" ++ ++msgid "required" ++msgstr "" ++ ++msgid "seconds" ++msgstr "" ++ ++msgid "to run HTTPS without verification of server certificates (insecure)" ++msgstr "" ++ ++msgid "unknown error" ++msgstr "" ++ ++msgid "unspecific error" ++msgstr "" ++ ++msgid "use hostname, FQDN, IPv4- or IPv6-Address" ++msgstr "" ++ ++#~ msgid "Check for changed IP every" ++#~ msgstr "Comprova si s'ha canviat la IP cada" ++ ++#, fuzzy ++#~ msgid "Check-time unit" ++#~ msgstr "Unitat de temps de comprovació" ++ ++#~ msgid "Enable" ++#~ msgstr "Habilita" ++ ++#~ msgid "Force update every" ++#~ msgstr "Força actualització cada" ++ ++#, fuzzy ++#~ msgid "Force-time unit" ++#~ msgstr "Unitat de temps de forceig" ++ ++#~ msgid "Service" ++#~ msgstr "Servei" ++ ++#~ msgid "Source of IP address" ++#~ msgstr "Origen de l'adreça IP" ++ ++#~ msgid "custom" ++#~ msgstr "personalitzat" ++ ++# Hours ++#~ msgid "h" ++#~ msgstr "h" ++ ++#~ msgid "interface" ++#~ msgstr "interfície" ++ ++# Minutes (not minimum) ++#~ msgid "min" ++#~ msgstr "min" ++ ++#~ msgid "network" ++#~ msgstr "xarxa" ++ ++#~ msgid "Event interface" ++#~ msgstr "Interfície d'esdeveniment" +diff --git a/feeds/luci/applications/luci-app-ddns/po/cs/ddns.po b/feeds/luci/applications/luci-app-ddns/po/cs/ddns.po +new file mode 100644 +index 0000000..e957d58 +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/po/cs/ddns.po +@@ -0,0 +1,704 @@ ++# Generated from applications/luci-ddns/luasrc/model/cbi/ddns/ddns.lua ++# ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2010-04-02 13:44+0100\n" ++"PO-Revision-Date: 2014-06-20 23:22+0200\n" ++"Last-Translator: koli \n" ++"Language-Team: none\n" ++"Language: cs\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" ++"X-Generator: Pootle 2.0.6\n" ++ ++msgid "&" ++msgstr "" ++ ++msgid "-- custom --" ++msgstr "" ++ ++msgid "-- default --" ++msgstr "" ++ ++msgid "Advanced Settings" ++msgstr "" ++ ++msgid "Allow non-public IP's" ++msgstr "" ++ ++msgid "Applying changes" ++msgstr "" ++ ++msgid "Basic Settings" ++msgstr "" ++ ++msgid "" ++"Below a list of configuration tips for your system to run Dynamic DNS " ++"updates without limitations" ++msgstr "" ++ ++msgid "" ++"Below is a list of configured DDNS configurations and their current state." ++msgstr "" ++ ++msgid "Bind Network" ++msgstr "" ++ ++msgid "Binding to a specific network not supported" ++msgstr "" ++ ++msgid "" ++"BusyBox's nslookup and Wget do not support to specify the IP version to use " ++"for communication with DDNS Provider." ++msgstr "" ++ ++msgid "" ++"BusyBox's nslookup does not support to specify to use TCP instead of default " ++"UDP when requesting DNS server" ++msgstr "" ++ ++msgid "Casual users should not change this setting" ++msgstr "" ++ ++msgid "Check Interval" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Config error" ++msgstr "" ++ ++msgid "Configuration" ++msgstr "" ++ ++msgid "" ++"Configure here the details for all Dynamic DNS services including this LuCI " ++"application." ++msgstr "" ++ ++msgid "Configure here the details for selected Dynamic DNS service." ++msgstr "" ++ ++msgid "Current setting" ++msgstr "" ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
This is the default if you run DDNS scripts by yourself (i.e. via cron with " ++"force_interval set to '0')" ++msgstr "" ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
You can start/stop each configuration here. It will run until next reboot." ++msgstr "" ++ ++msgid "Custom update script to be used for updating your DDNS Provider." ++msgstr "" ++ ++msgid "Custom update-URL" ++msgstr "Vlastní aktualizační-URL" ++ ++msgid "Custom update-script" ++msgstr "" ++ ++msgid "DDNS Autostart disabled" ++msgstr "" ++ ++msgid "DDNS Service provider" ++msgstr "" ++ ++msgid "DNS requests via TCP not supported" ++msgstr "" ++ ++msgid "DNS-Server" ++msgstr "" ++ ++msgid "Date format" ++msgstr "" ++ ++msgid "Defines the Web page to read systems IPv4-Address from" ++msgstr "" ++ ++msgid "Defines the Web page to read systems IPv6-Address from" ++msgstr "" ++ ++msgid "Defines the interface to read systems IP-Address from" ++msgstr "" ++ ++msgid "Defines the network to read systems IPv4-Address from" ++msgstr "" ++ ++msgid "Defines the network to read systems IPv6-Address from" ++msgstr "" ++ ++msgid "" ++"Defines the source to read systems IPv4-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++ ++msgid "" ++"Defines the source to read systems IPv6-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++ ++msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" ++msgstr "" ++ ++msgid "Details for" ++msgstr "" ++ ++msgid "Directory contains Log files for each running section" ++msgstr "" ++ ++msgid "" ++"Directory contains PID and other status information for each running section" ++msgstr "" ++ ++msgid "Disabled" ++msgstr "" ++ ++msgid "Dynamic DNS" ++msgstr "Dynamické DNS" ++ ++msgid "" ++"Dynamic DNS allows that your router can be reached with a fixed hostname " ++"while having a dynamically changing IP address." ++msgstr "" ++"Dynamické DNS umožňuje, aby mohl být váš router dostupný pod pevným " ++"hostname, zatímco se jeho IP adresa dynamicky mění." ++ ++msgid "Enable secure communication with DDNS provider" ++msgstr "" ++ ++msgid "Enabled" ++msgstr "" ++ ++msgid "Error" ++msgstr "" ++ ++msgid "Error Retry Counter" ++msgstr "" ++ ++msgid "Error Retry Interval" ++msgstr "" ++ ++msgid "Event Network" ++msgstr "" ++ ++msgid "File" ++msgstr "" ++ ++msgid "File not found" ++msgstr "" ++ ++msgid "File not found or empty" ++msgstr "" ++ ++msgid "" ++"Follow this link
You will find more hints to optimize your system to " ++"run DDNS scripts with all options" ++msgstr "" ++ ++msgid "For detailed information about parameter settings look here." ++msgstr "" ++ ++msgid "For supported codes look here" ++msgstr "" ++ ++msgid "Force IP Version" ++msgstr "" ++ ++msgid "Force IP Version not supported" ++msgstr "" ++ ++msgid "Force Interval" ++msgstr "" ++ ++msgid "Force TCP on DNS" ++msgstr "" ++ ++msgid "Forced IP Version don't matched" ++msgstr "" ++ ++msgid "Format" ++msgstr "" ++ ++msgid "Format: IP or FQDN" ++msgstr "" ++ ++msgid "" ++"GNU Wget will use the IP of given network, cURL will use the physical " ++"interface." ++msgstr "" ++ ++msgid "Global Settings" ++msgstr "" ++ ++msgid "HTTPS not supported" ++msgstr "" ++ ++msgid "Hints" ++msgstr "" ++ ++msgid "Hostname/Domain" ++msgstr "" ++ ++msgid "IP address source" ++msgstr "" ++ ++msgid "IP address version" ++msgstr "" ++ ++msgid "IPv4-Address" ++msgstr "" ++ ++msgid "IPv6 address must be given in square brackets" ++msgstr "" ++ ++msgid "" ++"IPv6 is currently not (fully) supported by this system
Please follow " ++"the instructions on OpenWrt's homepage to enable IPv6 support
or update " ++"your system to the latest OpenWrt Release" ++msgstr "" ++ ++msgid "IPv6 not supported" ++msgstr "" ++ ++msgid "IPv6-Address" ++msgstr "" ++ ++msgid "If both cURL and GNU Wget are installed, Wget is used by default." ++msgstr "" ++ ++msgid "" ++"If this service section is disabled it could not be started.
Neither " ++"from LuCI interface nor from console" ++msgstr "" ++ ++msgid "" ++"If you want to send updates for IPv4 and IPv6 you need to define two " ++"separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" ++msgstr "" ++ ++msgid "" ++"In some versions cURL/libcurl in OpenWrt is compiled without proxy support." ++msgstr "" ++ ++msgid "Info" ++msgstr "" ++ ++msgid "Interface" ++msgstr "Rozhraní" ++ ++msgid "" ++"Interval to check for changed IP
Values below 5 minutes == 300 seconds " ++"are not supported" ++msgstr "" ++ ++msgid "" ++"Interval to force updates send to DDNS Provider
Setting this parameter " ++"to 0 will force the script to only run once
Values lower 'Check " ++"Interval' except '0' are not supported" ++msgstr "" ++ ++msgid "It is NOT recommended for casual users to change settings on this page." ++msgstr "" ++ ++msgid "Last Update" ++msgstr "" ++ ++msgid "Loading" ++msgstr "" ++ ++msgid "Log File Viewer" ++msgstr "" ++ ++msgid "Log directory" ++msgstr "" ++ ++msgid "Log length" ++msgstr "" ++ ++msgid "Log to file" ++msgstr "" ++ ++msgid "Log to syslog" ++msgstr "" ++ ++msgid "" ++"Neither GNU Wget with SSL nor cURL installed to select a network to use for " ++"communication." ++msgstr "" ++ ++msgid "" ++"Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS " ++"protocol." ++msgstr "" ++ ++msgid "Network" ++msgstr "Síť" ++ ++msgid "Network on which the ddns-updater scripts will be started" ++msgstr "" ++ ++msgid "Never" ++msgstr "" ++ ++msgid "Next Update" ++msgstr "" ++ ++msgid "No data" ++msgstr "" ++ ++msgid "No logging" ++msgstr "" ++ ++msgid "Non-public and by default blocked IP's" ++msgstr "" ++ ++msgid "Notice" ++msgstr "" ++ ++msgid "Number of last lines stored in log files" ++msgstr "" ++ ++msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." ++msgstr "" ++ ++msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." ++msgstr "" ++ ++msgid "OPTIONAL: Network to use for communication" ++msgstr "" ++ ++msgid "OPTIONAL: Proxy-Server for detection and updates." ++msgstr "" ++ ++msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." ++msgstr "" ++ ++msgid "On Error the script will retry the failed action after given time" ++msgstr "" ++ ++msgid "On Error the script will stop execution after given number of retrys" ++msgstr "" ++ ++msgid "Overview" ++msgstr "" ++ ++msgid "PROXY-Server" ++msgstr "" ++ ++msgid "PROXY-Server not supported" ++msgstr "" ++ ++msgid "Password" ++msgstr "Heslo" ++ ++msgid "Path to CA-Certificate" ++msgstr "" ++ ++msgid "Please [Save & Apply] your changes first" ++msgstr "" ++ ++msgid "Please press [Read] button" ++msgstr "" ++ ++msgid "Please update to the current version!" ++msgstr "" ++ ++msgid "Process ID" ++msgstr "" ++ ++msgid "Read / Reread log file" ++msgstr "" ++ ++msgid "Registered IP" ++msgstr "" ++ ++msgid "Replaces [DOMAIN] in Update-URL" ++msgstr "" ++ ++msgid "Replaces [PASSWORD] in Update-URL" ++msgstr "" ++ ++msgid "Replaces [USERNAME] in Update-URL" ++msgstr "" ++ ++msgid "Run once" ++msgstr "" ++ ++msgid "Script" ++msgstr "" ++ ++msgid "Show more" ++msgstr "" ++ ++msgid "Software update required" ++msgstr "" ++ ++msgid "Start" ++msgstr "" ++ ++msgid "Start / Stop" ++msgstr "" ++ ++msgid "Status directory" ++msgstr "" ++ ++msgid "Stopped" ++msgstr "" ++ ++msgid "" ++"The currently installed 'ddns-scripts' package did not support all available " ++"settings." ++msgstr "" ++ ++msgid "The default setting of '0' will retry infinite." ++msgstr "" ++ ++msgid "There is no service configured." ++msgstr "" ++ ++msgid "Timer Settings" ++msgstr "" ++ ++msgid "To change global settings click here" ++msgstr "" ++ ++msgid "To use cURL activate this option." ++msgstr "" ++ ++msgid "URL" ++msgstr "URL" ++ ++msgid "URL to detect" ++msgstr "" ++ ++msgid "Unknown error" ++msgstr "" ++ ++msgid "" ++"Update URL to be used for updating your DDNS Provider.
Follow " ++"instructions you will find on their WEB page." ++msgstr "" ++ ++msgid "Update error" ++msgstr "" ++ ++msgid "Use HTTP Secure" ++msgstr "" ++ ++msgid "Use cURL" ++msgstr "" ++ ++msgid "User defined script to read systems IP-Address" ++msgstr "" ++ ++msgid "Username" ++msgstr "Uživatelské jméno" ++ ++msgid "Verify" ++msgstr "" ++ ++msgid "Version" ++msgstr "" ++ ++msgid "Version Information" ++msgstr "" ++ ++msgid "Waiting for changes to be applied..." ++msgstr "" ++ ++msgid "Warning" ++msgstr "" ++ ++msgid "" ++"Writes detailed messages to log file. File will be truncated automatically." ++msgstr "" ++ ++msgid "" ++"Writes log messages to syslog. Critical Errors will always be written to " ++"syslog." ++msgstr "" ++ ++msgid "You should install BIND host package for DNS requests." ++msgstr "" ++ ++msgid "You should install GNU Wget with SSL (prefered) or cURL package." ++msgstr "" ++ ++msgid "You should install GNU Wget with SSL or cURL package." ++msgstr "" ++ ++msgid "You should install GNU Wget with SSL or replace libcurl." ++msgstr "" ++ ++msgid "cURL is installed, but libcurl was compiled without proxy support." ++msgstr "" ++ ++msgid "cURL without Proxy Support" ++msgstr "" ++ ++msgid "can not detect local IP. Please select a different Source combination" ++msgstr "" ++ ++msgid "can not resolve host:" ++msgstr "" ++ ++msgid "config error" ++msgstr "" ++ ++msgid "days" ++msgstr "" ++ ++msgid "directory or path/file" ++msgstr "" ++ ++msgid "either url or script could be set" ++msgstr "" ++ ++msgid "enable here" ++msgstr "" ++ ++msgid "file or directory not found or not 'IGNORE'" ++msgstr "" ++ ++msgid "help" ++msgstr "" ++ ++msgid "hours" ++msgstr "" ++ ++msgid "installed" ++msgstr "" ++ ++msgid "invalid - Sample" ++msgstr "" ++ ++msgid "minimum value '0'" ++msgstr "" ++ ++msgid "minimum value '1'" ++msgstr "" ++ ++msgid "minimum value 5 minutes == 300 seconds" ++msgstr "" ++ ++msgid "minutes" ++msgstr "" ++ ++msgid "missing / required" ++msgstr "" ++ ++msgid "must be greater or equal 'Check Interval'" ++msgstr "" ++ ++msgid "must start with 'http://'" ++msgstr "" ++ ++msgid "nc (netcat) can not connect" ++msgstr "" ++ ++msgid "never" ++msgstr "" ++ ++msgid "no data" ++msgstr "" ++ ++msgid "not found or not executable - Sample: '/path/to/script.sh'" ++msgstr "" ++ ++msgid "nslookup can not resolve host" ++msgstr "" ++ ++msgid "or" ++msgstr "" ++ ++msgid "or higher" ++msgstr "" ++ ++msgid "please disable" ++msgstr "" ++ ++msgid "please remove entry" ++msgstr "" ++ ++msgid "please select 'IPv4' address version" ++msgstr "" ++ ++msgid "please select 'IPv4' address version in" ++msgstr "" ++ ++msgid "please set to 'default'" ++msgstr "" ++ ++msgid "proxy port missing" ++msgstr "" ++ ++msgid "required" ++msgstr "" ++ ++msgid "seconds" ++msgstr "" ++ ++msgid "to run HTTPS without verification of server certificates (insecure)" ++msgstr "" ++ ++msgid "unknown error" ++msgstr "" ++ ++msgid "unspecific error" ++msgstr "" ++ ++msgid "use hostname, FQDN, IPv4- or IPv6-Address" ++msgstr "" ++ ++#~ msgid "Check for changed IP every" ++#~ msgstr "Zkontrolovat změnu IP každých" ++ ++#~ msgid "Check-time unit" ++#~ msgstr "Check-time jednotka" ++ ++#~ msgid "Enable" ++#~ msgstr "Povolit" ++ ++#~ msgid "Force update every" ++#~ msgstr "Vynutit aktualizaci každých" ++ ++#~ msgid "Force-time unit" ++#~ msgstr "Force-time jednotka" ++ ++#~ msgid "Hostname" ++#~ msgstr "Hostname" ++ ++#~ msgid "Service" ++#~ msgstr "Služba" ++ ++#~ msgid "Source of IP address" ++#~ msgstr "Zdroj IP adresy" ++ ++#~ msgid "custom" ++#~ msgstr "vlastní" ++ ++# Hours ++# Hodin ++#~ msgid "h" ++#~ msgstr "h" ++ ++#~ msgid "interface" ++#~ msgstr "rozhraní" ++ ++# Minutes (not minimum) ++# Minut ++#~ msgid "min" ++#~ msgstr "min" ++ ++#~ msgid "network" ++#~ msgstr "síť" +diff --git a/feeds/luci/applications/luci-app-ddns/po/de/ddns.po b/feeds/luci/applications/luci-app-ddns/po/de/ddns.po +new file mode 100644 +index 0000000..6ffde5d +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/po/de/ddns.po +@@ -0,0 +1,745 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: luci-app-ddns\n" ++"POT-Creation-Date: 2015-05-08 21:29+0100\n" ++"PO-Revision-Date: 2015-05-08 21:47+0100\n" ++"Last-Translator: Christian Schoenebeck \n" ++"Language-Team: \n" ++"Language: de\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"X-Generator: Poedit 1.7.5\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Poedit-SourceCharset: UTF-8\n" ++"X-Poedit-Basepath: .\n" ++ ++msgid "&" ++msgstr "&" ++ ++msgid "-- custom --" ++msgstr "-- benutzerdefiniert --" ++ ++msgid "-- default --" ++msgstr "-- Standard --" ++ ++msgid "Advanced Settings" ++msgstr "Erweiterte Einstellungen" ++ ++msgid "Allow non-public IP's" ++msgstr "Erlaube Nicht-öffentliche IPs" ++ ++msgid "Applying changes" ++msgstr "Änderungen anwenden" ++ ++msgid "Basic Settings" ++msgstr "Grundlegende Einstellungen" ++ ++msgid "" ++"Below a list of configuration tips for your system to run Dynamic DNS " ++"updates without limitations" ++msgstr "" ++"Liste der Konfigurationshinweise um Dynamische DNS Aktualisierungen ohne " ++"Einschränkungen zu nutzen" ++ ++msgid "" ++"Below is a list of configured DDNS configurations and their current state." ++msgstr "" ++"Liste der konfigurierten DDNS Konfigurationen und ihr momentaner Status." ++ ++msgid "Bind Network" ++msgstr "Bind-Netzwerk" ++ ++msgid "Binding to a specific network not supported" ++msgstr "'Bind' an ein bestimmtes Netzwerk wird nicht unterstützt" ++ ++msgid "" ++"BusyBox's nslookup and Wget do not support to specify the IP version to use " ++"for communication with DDNS Provider." ++msgstr "" ++"BusyBox's nslookup und Wget unterstützen nicht die IP Version für die " ++"Kommunikation festzulegen." ++ ++msgid "" ++"BusyBox's nslookup does not support to specify to use TCP instead of default " ++"UDP when requesting DNS server" ++msgstr "" ++"BusyBox's nslookup unterstützt es nicht das TCP-Protokoll für DNS Anfragen " ++"anstelle des standardmäßigen UDP-Protokolls." ++ ++msgid "Casual users should not change this setting" ++msgstr "Standard Benutzer sollten diese Einstellung nicht ändern." ++ ++msgid "Check Interval" ++msgstr "Prüfinterval" ++ ++msgid "Collecting data..." ++msgstr "Sammle Daten..." ++ ++msgid "Config error" ++msgstr "Konfigurationsfehler" ++ ++msgid "Configuration" ++msgstr "Einstellungen" ++ ++msgid "" ++"Configure here the details for all Dynamic DNS services including this LuCI " ++"application." ++msgstr "" ++"Konfiguriere hier die Details für alle Dynamik DNS Dienste einschließlich " ++"dieser LuCI Anwendung." ++ ++msgid "Configure here the details for selected Dynamic DNS service." ++msgstr "Konfiguriere hier die Details für den gewählten Dynamik DNS Dienst." ++ ++msgid "Current setting" ++msgstr "Aktuelle Einstellung" ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
This is the default if you run DDNS scripts by yourself (i.e. via cron with " ++"force_interval set to '0')" ++msgstr "" ++"Aktuell werden keine DDNS Aktualisierungen beim Systemstart oder bei " ++"Netzwerkereignissen gestartet.
Dieses ist der Standard, wenn Sie die " ++"DDSN Skripte über eigene Routinen (z.B. cron und Erzwungener Aktualisierung " ++"von '0') starten." ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
You can start/stop each configuration here. It will run until next reboot." ++msgstr "" ++"Aktuell werden DDNS Aktualisierungen nicht bei Systemstart oder bei " ++"Netzwerkereignissen gestartet.
Sie können jede Konfiguration hier " ++"starten und stoppen. Sie wird bis zum nächsten Neustart ausgeführt." ++ ++msgid "Custom update script to be used for updating your DDNS Provider." ++msgstr "Update-Skript um Aktualisierungen an Ihren DDNS Anbieter zu senden." ++ ++msgid "Custom update-URL" ++msgstr "Eigene Update-URL" ++ ++msgid "Custom update-script" ++msgstr "Eigenes Update-Skript" ++ ++msgid "DDNS Autostart disabled" ++msgstr "DDNS Autostart deaktiviert" ++ ++msgid "DDNS Service provider" ++msgstr "DDNS-Dienstanbieter" ++ ++msgid "DNS requests via TCP not supported" ++msgstr "DNS Anfragen über TCP nicht unterstützt" ++ ++msgid "DNS-Server" ++msgstr "DNS-Server" ++ ++msgid "Date format" ++msgstr "Datumsformat " ++ ++msgid "Defines the Web page to read systems IPv4-Address from" ++msgstr "" ++"Definiert die Web-Seite von der die aktuelle IPv4-Adresse des System gelesen " ++"wird." ++ ++msgid "Defines the Web page to read systems IPv6-Address from" ++msgstr "" ++"Definiert die Web-Seite von der die aktuelle IPv6-Adresse des System gelesen " ++"wird." ++ ++msgid "Defines the interface to read systems IP-Address from" ++msgstr "" ++"Definiert die Schnittstelle von der die aktuelle IP-Adresse des System " ++"gelesen wird." ++ ++msgid "Defines the network to read systems IPv4-Address from" ++msgstr "" ++"Definiert das Netzwerk von dem die aktuelle IPv4-Adresse des System gelesen " ++"wird." ++ ++msgid "Defines the network to read systems IPv6-Address from" ++msgstr "" ++"Definiert das Netzwerk von dem die aktuelle IPv6-Adresse des System gelesen " ++"wird." ++ ++msgid "" ++"Defines the source to read systems IPv4-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++"Definiert die Quelle von der die aktuelle IPv4-Adresse des Systems gelesen " ++"wird, die an Ihren DDNS Anbieter gesendet wird." ++ ++msgid "" ++"Defines the source to read systems IPv6-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++"Definiert die Quelle von der die aktuelle IPv6-Adresse des Systems gelesen " ++"wird, die an Ihren DDNS Anbieter gesendet wird." ++ ++msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" ++msgstr "" ++"Legt fest welche IP-Adresse 'IPv4/IPv6' zum DDNS Anbieter gesendet wird" ++ ++msgid "Details for" ++msgstr "Details für" ++ ++msgid "Directory contains Log files for each running section" ++msgstr "" ++"Das Verzeichnis enthält die Protokolldateien aller laufenden Konfigurationen." ++ ++msgid "" ++"Directory contains PID and other status information for each running section" ++msgstr "" ++"Das Verzeichnis enthält die PID und andere Statusinformationen aller " ++"laufenden Konfigurationen." ++ ++msgid "Disabled" ++msgstr "Deaktiviert" ++ ++msgid "Dynamic DNS" ++msgstr "Dynamisches DNS" ++ ++msgid "" ++"Dynamic DNS allows that your router can be reached with a fixed hostname " ++"while having a dynamically changing IP address." ++msgstr "" ++"Dynamisches DNS erlaubt es, den Router bei dynamischer IP-Adresse über einen " ++"festen DNS-Namen zu erreichen." ++ ++msgid "Enable secure communication with DDNS provider" ++msgstr "Aktiviert sichere Kommunikation mit dem DDNS Anbieter" ++ ++msgid "Enabled" ++msgstr "Aktiviert" ++ ++msgid "Error" ++msgstr "Fehler" ++ ++msgid "Error Retry Counter" ++msgstr "Wiederholungszähler bei Fehler" ++ ++msgid "Error Retry Interval" ++msgstr "Wiederholungsintervall bei Fehler" ++ ++msgid "Event Network" ++msgstr "Ereignis Netzwerk" ++ ++msgid "File" ++msgstr "Datei" ++ ++msgid "File not found" ++msgstr "Datei nicht gefunden" ++ ++msgid "File not found or empty" ++msgstr "Datei nicht gefunden oder leer" ++ ++msgid "" ++"Follow this link
You will find more hints to optimize your system to " ++"run DDNS scripts with all options" ++msgstr "" ++"Folgen Sie dem Link
Hier finden Sie weitere Hinweise um Ihr System für " ++"die Nutzung aller Optionen der DDNS Skripte zu optimieren." ++ ++msgid "For detailed information about parameter settings look here." ++msgstr "" ++"Detaillierte Informationen zu den Parametereinstellungen finden Sie hier." ++ ++msgid "For supported codes look here" ++msgstr "Unterstützte Kodierungen finden Sie hier." ++ ++msgid "Force IP Version" ++msgstr "Erzwinge IP-Version" ++ ++msgid "Force IP Version not supported" ++msgstr "Erzwinge IP-Version nicht unterstützt" ++ ++msgid "Force Interval" ++msgstr "Erzwungene Aktualisierung" ++ ++msgid "Force TCP on DNS" ++msgstr "Erzwinge TCP bei DNS-Anfragen" ++ ++msgid "Forced IP Version don't matched" ++msgstr "Erzwungene IP Version stimmt nicht überein" ++ ++msgid "Format" ++msgstr "Format" ++ ++msgid "Format: IP or FQDN" ++msgstr "Format: IP-Adresse oder FQDN" ++ ++msgid "" ++"GNU Wget will use the IP of given network, cURL will use the physical " ++"interface." ++msgstr "" ++"GNU Wget verwendet die IP des gewählten Netzwerkes; cURL verwendet die " ++"physikalische Schnittstelle." ++ ++msgid "Global Settings" ++msgstr "Globale Einstellungen" ++ ++msgid "HTTPS not supported" ++msgstr "HTTPS nicht unterstützt" ++ ++msgid "Hints" ++msgstr "Hinweise" ++ ++msgid "Hostname/Domain" ++msgstr "Rechnername/Domäne" ++ ++msgid "IP address source" ++msgstr "IP-Adressquelle" ++ ++msgid "IP address version" ++msgstr "IP-Adressversion" ++ ++msgid "IPv4-Address" ++msgstr "IPv4-Adresse" ++ ++msgid "IPv6 address must be given in square brackets" ++msgstr "Eine IPv6 Adresse muss in eckigen Klammern angegeben werden" ++ ++msgid "" ++"IPv6 is currently not (fully) supported by this system
Please follow " ++"the instructions on OpenWrt's homepage to enable IPv6 support
or update " ++"your system to the latest OpenWrt Release" ++msgstr "" ++"IPv6 wird vom System nicht (voll) unterstützt.
Bitte folgen Sie den " ++"Hinweisen auf der Homepage von OpenWrt um die volle IPv6-Unterstützung zu " ++"aktivieren
oder installieren Sie die aktuellste OpenWrt Version." ++ ++msgid "IPv6 not supported" ++msgstr "IPv6 nicht unterstützt" ++ ++msgid "IPv6-Address" ++msgstr "IPv6-Adresse" ++ ++msgid "If both cURL and GNU Wget are installed, Wget is used by default." ++msgstr "Wenn cURL und GNU Wget installiert sind, wird Wget verwendet." ++ ++msgid "" ++"If this service section is disabled it could not be started.
Neither " ++"from LuCI interface nor from console" ++msgstr "" ++"Wenn deaktiviert kann die Aktualisierung nicht gestartet werden.
Weder " ++"über das LuCI Web Interface noch von der Geräte-Konsole" ++ ++msgid "" ++"If you want to send updates for IPv4 and IPv6 you need to define two " ++"separate Configurations i.e. 'myddns_ipv4' and 'myddns_ipv6'" ++msgstr "" ++"Wenn Sie Aktualisierungen für IPv4 und IPv6 senden möchten benötigen Sie " ++"zwei Konfigurationen z.B. 'myddns_ipv4' und 'myddns_ipv6'" ++ ++msgid "" ++"In some versions cURL/libcurl in OpenWrt is compiled without proxy support." ++msgstr "" ++"In einigen Versionen von OpenWrt wurde cURL/libcurl ohne Proxy Unterstützung " ++"compiliert." ++ ++msgid "Info" ++msgstr "Informationen" ++ ++msgid "Interface" ++msgstr "Schnittstelle" ++ ++msgid "" ++"Interval to check for changed IP
Values below 5 minutes == 300 seconds " ++"are not supported" ++msgstr "" ++"Intervall zur Prüfung auf geänderte IP-Adresse
Minimum Wert 5 Minuten " ++"== 300 Sekunden" ++ ++msgid "" ++"Interval to force updates send to DDNS Provider
Setting this parameter " ++"to 0 will force the script to only run once
Values lower 'Check " ++"Interval' except '0' are not supported" ++msgstr "" ++"Intervall mit dem Aktualisierungen erzwungen an den DDNS Anbieter gesendet " ++"werden.
Ein Wert von '0' führt das Skript nur einmalig aus.
Der " ++"Wert muss größer als das Prüfintervall sein oder '0'." ++ ++msgid "It is NOT recommended for casual users to change settings on this page." ++msgstr "" ++"Es wird nicht empfohlen, dass Standard Benutzer die Einstellungen auf dieser " ++"Seite ändern." ++ ++msgid "Last Update" ++msgstr "Letztes Aktualisierung" ++ ++msgid "Loading" ++msgstr "Lade" ++ ++msgid "Log File Viewer" ++msgstr "Protokolldatei" ++ ++msgid "Log directory" ++msgstr "Protokoll-Verzeichnis" ++ ++msgid "Log length" ++msgstr "Protokolllänge" ++ ++msgid "Log to file" ++msgstr "Protokoll in Datei schreiben" ++ ++msgid "Log to syslog" ++msgstr "Systemprotokoll verwenden" ++ ++msgid "" ++"Neither GNU Wget with SSL nor cURL installed to select a network to use for " ++"communication." ++msgstr "" ++"Weder GNU Wget mit SSL noch cURL sind installiert um ein Netzwerk zur " ++"Kommunikation festzulegen." ++ ++msgid "" ++"Neither GNU Wget with SSL nor cURL installed to support updates via HTTPS " ++"protocol." ++msgstr "" ++"Weder GNU Wget mit SSL noch cURL sind installiert um Aktualisierungen über " ++"HTTPS Protokoll zu unterstützen." ++ ++msgid "Network" ++msgstr "Netzwerk" ++ ++msgid "Network on which the ddns-updater scripts will be started" ++msgstr "Netzwerk auf dem Ereignisse die ddns-updater Skripte starten" ++ ++msgid "Never" ++msgstr "Nie" ++ ++msgid "Next Update" ++msgstr "Nächste Aktualisierung" ++ ++msgid "No data" ++msgstr "Keine Daten" ++ ++msgid "No logging" ++msgstr "Keine Protokollierung" ++ ++msgid "Non-public and by default blocked IP's" ++msgstr "Nicht-öffentliche und standardmäßig blockierte IPs." ++ ++msgid "Notice" ++msgstr "Notiz" ++ ++msgid "Number of last lines stored in log files" ++msgstr "" ++"Anzahl der letzten Zeilen die in der Protokolldatei gespeichert werden." ++ ++msgid "OPTIONAL: Force the usage of pure IPv4/IPv6 only communication." ++msgstr "" ++"OPTIONAL: Erzwingt die Verwendung einer reinen IPv4/IPv6 Kommunikation." ++ ++msgid "OPTIONAL: Force the use of TCP instead of default UDP on DNS requests." ++msgstr "" ++"OPTIONAL: Erzwingt die Verwendung von TCP anstelle von UDP bei DNS Anfragen." ++ ++msgid "OPTIONAL: Network to use for communication" ++msgstr "OPTIONAL: Netzwerk das zur Kommunikation verwendet werden soll." ++ ++msgid "OPTIONAL: Proxy-Server for detection and updates." ++msgstr "OPTIONAL: Proxy-Server für Adresserkennung und Aktualisierungen" ++ ++msgid "OPTIONAL: Use non-default DNS-Server to detect 'Registered IP'." ++msgstr "" ++"OPTIONAL: Ersetzt den voreingestellten DNS-Server um die 'Registrierte IP' " ++"zu ermitteln." ++ ++msgid "On Error the script will retry the failed action after given time" ++msgstr "" ++"Bei Fehlern wird das Skript die fehlerhafte Aktion nach der gegebenen Zeit " ++"wiederholen" ++ ++msgid "On Error the script will stop execution after given number of retrys" ++msgstr "Das Skript wird nach der gegebenen Anzahl von Fehlversuchen beendet." ++ ++msgid "Overview" ++msgstr "Übersicht" ++ ++msgid "PROXY-Server" ++msgstr "Proxy-Server" ++ ++msgid "PROXY-Server not supported" ++msgstr "Proxy-Server nicht unterstützt" ++ ++msgid "Password" ++msgstr "Passwort" ++ ++msgid "Path to CA-Certificate" ++msgstr "Pfad zum CA-Zertifikat" ++ ++msgid "Please [Save & Apply] your changes first" ++msgstr "Bitte [Speichern & Anwenden] Sie Änderungen zunächst" ++ ++msgid "Please press [Read] button" ++msgstr "Bitte Protokolldatei einlesen" ++ ++msgid "Please update to the current version!" ++msgstr "Aktualisieren Sie bitte auf die aktuelle Version!" ++ ++msgid "Process ID" ++msgstr "Prozess ID" ++ ++msgid "Read / Reread log file" ++msgstr "Protokolldatei (neu) einlesen" ++ ++msgid "Registered IP" ++msgstr "Registrierte IP" ++ ++msgid "Replaces [DOMAIN] in Update-URL" ++msgstr "Ersetzt [DOMAIN] in der Update-URL" ++ ++msgid "Replaces [PASSWORD] in Update-URL" ++msgstr "Ersetzt [PASSWORD] in der Update-URL" ++ ++msgid "Replaces [USERNAME] in Update-URL" ++msgstr "Ersetzt [USERNAME] in der Update-URL" ++ ++msgid "Run once" ++msgstr "Einmalig ausführen" ++ ++msgid "Script" ++msgstr "Skript" ++ ++msgid "Show more" ++msgstr "Zeige mehr" ++ ++msgid "Software update required" ++msgstr "Softwareaktualisierung nötig" ++ ++msgid "Start" ++msgstr "Start" ++ ++msgid "Start / Stop" ++msgstr "Start / Stopp" ++ ++msgid "Status directory" ++msgstr "Status-Verzeichnis" ++ ++msgid "Stopped" ++msgstr "Angehalten" ++ ++msgid "" ++"The currently installed 'ddns-scripts' package did not support all available " ++"settings." ++msgstr "" ++"Die installierte Software 'ddns-scripts' unterstützt nicht alle verfügbaren " ++"Optionen." ++ ++msgid "The default setting of '0' will retry infinite." ++msgstr "Der Standard-Wert von '0' wird es endlosen erneut versuchen." ++ ++msgid "There is no service configured." ++msgstr "Kein Dienst konfiguriert" ++ ++msgid "Timer Settings" ++msgstr "Zeitgeber Einstellungen" ++ ++msgid "To change global settings click here" ++msgstr "Globale Einstellungen können sie hier ändern." ++ ++msgid "To use cURL activate this option." ++msgstr "Um cURL zu verwenden aktivieren sie diese Einstellung." ++ ++msgid "URL" ++msgstr "URL" ++ ++msgid "URL to detect" ++msgstr "URL zur Adresserkennung für" ++ ++msgid "Unknown error" ++msgstr "Unbekannter Fehler" ++ ++msgid "" ++"Update URL to be used for updating your DDNS Provider.
Follow " ++"instructions you will find on their WEB page." ++msgstr "" ++"Update-URL um Aktualisierungen an Ihren DDNS Anbieter zu senden.
Folgen " ++"Sie der Anleitung auf der Internet Seite des Anbieters." ++ ++msgid "Update error" ++msgstr "Aktualisierungsfehler" ++ ++msgid "Use HTTP Secure" ++msgstr "Verwende sicheres HTTP" ++ ++msgid "Use cURL" ++msgstr "Verwende cURL" ++ ++msgid "User defined script to read systems IP-Address" ++msgstr "" ++"Definiert das Skript mit dem die aktuelle IP-Adresse des System gelesen " ++"wird." ++ ++msgid "Username" ++msgstr "Benutzername" ++ ++msgid "Verify" ++msgstr "überprüfen" ++ ++msgid "Version" ++msgstr "Version" ++ ++msgid "Version Information" ++msgstr "Versionsinformationen" ++ ++msgid "Waiting for changes to be applied..." ++msgstr "Änderungen werden angewandt..." ++ ++msgid "Warning" ++msgstr "Warnung" ++ ++msgid "" ++"Writes detailed messages to log file. File will be truncated automatically." ++msgstr "" ++"Schreibt detaillierte Meldungen in die Protokolldatei. Die Datei wird " ++"automatisch gekürzt." ++ ++msgid "" ++"Writes log messages to syslog. Critical Errors will always be written to " ++"syslog." ++msgstr "" ++"Schreibt Meldungen ins Systemprotokoll. Kritische Fehler werden immer in das " ++"Systemprotokoll geschrieben." ++ ++msgid "You should install BIND host package for DNS requests." ++msgstr "" ++"Sie sollten das Programmpakete BIND host for DNS Anfragen installieren." ++ ++msgid "You should install GNU Wget with SSL (prefered) or cURL package." ++msgstr "" ++"Sie sollten das Programmpaket GNU Wget mit SSL (bevorzugt) oder cURL " ++"installieren." ++ ++msgid "You should install GNU Wget with SSL or cURL package." ++msgstr "Sie sollten das Programmpaket GNU Wget mit SSL oder cURL installieren." ++ ++msgid "You should install GNU Wget with SSL or replace libcurl." ++msgstr "" ++"Sie sollten das Programmpaket GNU Wget mit SSL installieren oder libcurl " ++"austauschen." ++ ++msgid "cURL is installed, but libcurl was compiled without proxy support." ++msgstr "" ++"cURL ist installiert, aber libcurl wurde ohne Proxy Unterstützung compiliert" ++ ++msgid "cURL without Proxy Support" ++msgstr "cURL ohne Proxy Unterstützung" ++ ++msgid "can not detect local IP. Please select a different Source combination" ++msgstr "" ++"kann lokale IP-Adresse nicht ermitteln. Bitte wählen Sie eine andere Quelle." ++ ++msgid "can not resolve host:" ++msgstr "Konnte Server nicht finden:" ++ ++msgid "config error" ++msgstr "Konfigurationsfehler" ++ ++msgid "days" ++msgstr "Tage" ++ ++msgid "directory or path/file" ++msgstr "Verzeichnis oder Pfad/zur/Datei" ++ ++msgid "either url or script could be set" ++msgstr "Weder Url noch Script ist definiert" ++ ++msgid "enable here" ++msgstr "hier aktivieren" ++ ++msgid "file or directory not found or not 'IGNORE'" ++msgstr "Datei oder Verzeichnis nicht gefunden oder nicht 'IGNORE'" ++ ++msgid "help" ++msgstr "Hilfe" ++ ++msgid "hours" ++msgstr "Stunden" ++ ++msgid "installed" ++msgstr "installiert" ++ ++msgid "invalid - Sample" ++msgstr "ungültig - Beispiel" ++ ++msgid "minimum value '0'" ++msgstr "Minimum Wert '0'" ++ ++msgid "minimum value '1'" ++msgstr "Minimum Wert '1'" ++ ++msgid "minimum value 5 minutes == 300 seconds" ++msgstr "Minimum Wert 5 Minuten == 300 Sekunden" ++ ++msgid "minutes" ++msgstr "Minuten" ++ ++msgid "missing / required" ++msgstr "fehlt / Pflichteingabe" ++ ++msgid "must be greater or equal 'Check Interval'" ++msgstr "muss größer als das Prüfintervall sein" ++ ++msgid "must start with 'http://'" ++msgstr "muss mit 'http://' beginnen" ++ ++msgid "nc (netcat) can not connect" ++msgstr "nc (netcat) kann keine Verbindung herstellen" ++ ++msgid "never" ++msgstr "nie" ++ ++msgid "no data" ++msgstr "Keine Daten" ++ ++msgid "not found or not executable - Sample: '/path/to/script.sh'" ++msgstr "" ++"Skript nicht gefunden oder nicht ausführbar. - Beispiel: 'Pfad/zum/Skript.sh'" ++ ++msgid "nslookup can not resolve host" ++msgstr "nslookup kann den Namen nicht auflösen" ++ ++msgid "or" ++msgstr "oder" ++ ++msgid "or higher" ++msgstr "oder höher" ++ ++msgid "please disable" ++msgstr "Bitte deaktivieren" ++ ++msgid "please remove entry" ++msgstr "Bitte Eintrag entfernen" ++ ++msgid "please select 'IPv4' address version" ++msgstr "Bitte 'IPv4' Adressversion auswählen" ++ ++msgid "please select 'IPv4' address version in" ++msgstr "Bitte 'IPv4' Adressversion auswählen in den" ++ ++msgid "please set to 'default'" ++msgstr "Bitte auf 'Standard' setzen" ++ ++msgid "proxy port missing" ++msgstr "Proxy-Port fehlt" ++ ++msgid "required" ++msgstr "erforderlich" ++ ++msgid "seconds" ++msgstr "Sekunden" ++ ++msgid "to run HTTPS without verification of server certificates (insecure)" ++msgstr "" ++"um HTTPS ohne Überprüfung der Server Zertifikate auszuführen (unsicher)" ++ ++msgid "unknown error" ++msgstr "Unbekannter Fehler" ++ ++msgid "unspecific error" ++msgstr "Unspezifischer Fehler" ++ ++msgid "use hostname, FQDN, IPv4- or IPv6-Address" ++msgstr "verwende Rechnername, FQDN, IPv4- oder IPv6-Adresse" +diff --git a/feeds/luci/applications/luci-app-ddns/po/el/ddns.po b/feeds/luci/applications/luci-app-ddns/po/el/ddns.po +new file mode 100644 +index 0000000..821e17e +--- /dev/null ++++ b/feeds/luci/applications/luci-app-ddns/po/el/ddns.po +@@ -0,0 +1,707 @@ ++msgid "" ++msgstr "" ++"Project-Id-Version: PACKAGE VERSION\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2010-04-02 13:44+0100\n" ++"PO-Revision-Date: 2012-03-18 17:08+0200\n" ++"Last-Translator: Vasilis \n" ++"Language-Team: LANGUAGE \n" ++"Language: el\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Pootle 2.0.4\n" ++ ++msgid "&" ++msgstr "" ++ ++msgid "-- custom --" ++msgstr "" ++ ++msgid "-- default --" ++msgstr "" ++ ++msgid "Advanced Settings" ++msgstr "" ++ ++msgid "Allow non-public IP's" ++msgstr "" ++ ++msgid "Applying changes" ++msgstr "" ++ ++msgid "Basic Settings" ++msgstr "" ++ ++msgid "" ++"Below a list of configuration tips for your system to run Dynamic DNS " ++"updates without limitations" ++msgstr "" ++ ++msgid "" ++"Below is a list of configured DDNS configurations and their current state." ++msgstr "" ++ ++msgid "Bind Network" ++msgstr "" ++ ++msgid "Binding to a specific network not supported" ++msgstr "" ++ ++msgid "" ++"BusyBox's nslookup and Wget do not support to specify the IP version to use " ++"for communication with DDNS Provider." ++msgstr "" ++ ++msgid "" ++"BusyBox's nslookup does not support to specify to use TCP instead of default " ++"UDP when requesting DNS server" ++msgstr "" ++ ++msgid "Casual users should not change this setting" ++msgstr "" ++ ++msgid "Check Interval" ++msgstr "" ++ ++msgid "Collecting data..." ++msgstr "" ++ ++msgid "Config error" ++msgstr "" ++ ++msgid "Configuration" ++msgstr "" ++ ++msgid "" ++"Configure here the details for all Dynamic DNS services including this LuCI " ++"application." ++msgstr "" ++ ++msgid "Configure here the details for selected Dynamic DNS service." ++msgstr "" ++ ++msgid "Current setting" ++msgstr "" ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
This is the default if you run DDNS scripts by yourself (i.e. via cron with " ++"force_interval set to '0')" ++msgstr "" ++ ++msgid "" ++"Currently DDNS updates are not started at boot or on interface events.
You can start/stop each configuration here. It will run until next reboot." ++msgstr "" ++ ++msgid "Custom update script to be used for updating your DDNS Provider." ++msgstr "" ++ ++msgid "Custom update-URL" ++msgstr "Προσαρμοσμένο URL-ενημέρωσης" ++ ++msgid "Custom update-script" ++msgstr "" ++ ++msgid "DDNS Autostart disabled" ++msgstr "" ++ ++msgid "DDNS Service provider" ++msgstr "" ++ ++msgid "DNS requests via TCP not supported" ++msgstr "" ++ ++msgid "DNS-Server" ++msgstr "" ++ ++msgid "Date format" ++msgstr "" ++ ++msgid "Defines the Web page to read systems IPv4-Address from" ++msgstr "" ++ ++msgid "Defines the Web page to read systems IPv6-Address from" ++msgstr "" ++ ++msgid "Defines the interface to read systems IP-Address from" ++msgstr "" ++ ++msgid "Defines the network to read systems IPv4-Address from" ++msgstr "" ++ ++msgid "Defines the network to read systems IPv6-Address from" ++msgstr "" ++ ++msgid "" ++"Defines the source to read systems IPv4-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++ ++msgid "" ++"Defines the source to read systems IPv6-Address from, that will be send to " ++"the DDNS provider" ++msgstr "" ++ ++msgid "Defines which IP address 'IPv4/IPv6' is send to the DDNS provider" ++msgstr "" ++ ++msgid "Details for" ++msgstr "" ++ ++msgid "Directory contains Log files f