update oscam support for API/CardReaders,change source to git

This commit is contained in:
coolsnowwolf 2017-10-30 00:45:26 +08:00
parent e028790b06
commit 3645684b8c
3 changed files with 427 additions and 42 deletions

View File

@ -0,0 +1,240 @@
menu "OSCam build options"
depends on PACKAGE_oscam
config OSCAM_USE_LIBCRYPTO
bool "Build with OpenSSL libcrypto"
help
"Use OpenSSL libcrypto instead of OSCam internal crypto functions"
default n
config OSCAM_USE_LIBUSB
bool "Build with libusb"
default n
menu "Protocols"
depends on PACKAGE_oscam
config OSCAM_MODULE_CAMD33
bool "camd 3.3"
default n
config OSCAM_MODULE_CAMD35
bool "camd 3.5 UDP"
default n
config OSCAM_MODULE_CAMD35_TCP
bool "camd 3.5 TCP"
default n
config OSCAM_MODULE_NEWCAMD
bool "newcamd"
default n
config OSCAM_MODULE_CCCAM
bool "CCcam"
default n
config OSCAM_MODULE_CCCSHARE
bool "CCcam share"
default n
config OSCAM_MODULE_GBOX
bool "gbox"
default n
config OSCAM_MODULE_RADEGAST
bool "radegast"
default n
config OSCAM_MODULE_SERIAL
bool "Serial"
default n
config OSCAM_MODULE_CONSTCW
bool "constant CW"
default n
config OSCAM_MODULE_PANDORA
bool "Pandora"
default n
config OSCAM_MODULE_GHTTP
bool "Ghttp"
default n
config OSCAM_MODULE_SCAM
bool "scam"
default n
endmenu
menu "Readers"
depends on PACKAGE_oscam
config OSCAM_READER_NAGRA
bool "Nagravision"
default n
config OSCAM_READER_IRDETO
bool "Irdeto"
default n
config OSCAM_READER_CONAX
bool "Conax"
default n
config OSCAM_READER_CRYPTOWORKS
bool "Cryptoworks"
default n
config OSCAM_READER_SECA
bool "Seca"
default n
config OSCAM_READER_VIACCESS
bool "Viaccess"
default n
config OSCAM_READER_VIDEOGUARD
bool "NDS Videoguard"
default n
config OSCAM_READER_DRE
bool "DRE Crypt"
default n
config OSCAM_READER_TONGFANG
bool "Tongfang"
default n
config OSCAM_READER_BULCRYPT
bool "Bulcrypt"
default n
config OSCAM_READER_GRIFFIN
bool "Griffin"
default n
config OSCAM_READER_DGCRYPT
bool "DGCrypt"
default n
endmenu
menu "Card readers"
depends on PACKAGE_oscam
config OSCAM_USE_PCSC
bool "PCSC"
select OSCAM_USE_LIBUSB
default n
config OSCAM_CARDREADER_PHOENIX
bool "Phoenix/mouse"
select OSCAM_USE_LIBUSB
default n
config OSCAM_CARDREADER_SC8IN1
bool "SC8in1"
select OSCAM_USE_LIBUSB
default n
config OSCAM_CARDREADER_MP35
bool "AD-Teknik MP 3.6/USB Phoenix"
select OSCAM_USE_LIBUSB
default n
config OSCAM_CARDREADER_SMARGO
bool "Argolis Smargo Smartreader"
select OSCAM_USE_LIBUSB
default n
config OSCAM_CARDREADER_STINGER
bool "STINGER"
select OSCAM_USE_LIBUSB
default n
endmenu
comment "Addons"
config OSCAM_HAVE_DVBAPI
bool "DVB API"
default y
config OSCAM_READ_SDT_CHARSETS
bool "DVB API read-sdt charsets"
default y
config OSCAM_IRDETO_GUESSING
bool "Irdeto guessing"
default n
config OSCAM_CS_ANTICASC
bool "Anti cascading"
default y
config OSCAM_WITH_DEBUG
bool "Debug messages"
default n
config OSCAM_MODULE_MONITOR
bool "Monitor"
default n
config OSCAM_WITH_LB
bool "Loadbalancing"
default y
config OSCAM_S_CACHEEX
bool "Cache exchange"
default y
config OSCAM_CW_CYCLE_CHECK
bool "CW Cycle Check"
default y
config OSCAM_LCDSUPPORT
bool "LCD support"
default n
config OSCAM_LEDSUPPORT
bool "LED support"
default n
config OSCAM_CLOCKFIX
bool "Clockfix (disable on old systems!)"
default y
config OSCAM_IPV6SUPPORT
bool "IPv6 support (experimental)"
default n
config OSCAM_WEBIF
bool "Web Interface"
default n
config OSCAM_WEBIF_LIVELOG
bool "LiveLog"
depends on OSCAM_WEBIF
default n
config OSCAM_WEBIF_JQUERY
bool "Jquery onboard (if disabled webload)"
depends on OSCAM_WEBIF
default n
config OSCAM_TOUCH
bool "Touch Web Interface"
depends on OSCAM_WEBIF
default n
config OSCAM_WITH_SSL
bool "SSL support"
depends on OSCAM_WEBIF
select OSCAM_USE_LIBCRYPTO
default n
endmenu

View File

@ -1,71 +1,204 @@
#
# Copyright (C) 2010 OpenWrt.org
#
# Copyright (C) 2016 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# maz-1 <ohmygod19993 at gmail dot com>
# $Id$
include $(TOPDIR)/rules.mk
PKG_BRANCH:=trunk
PKG_SOURCE_URL:=http://www.streamboard.tv/svn/oscam/trunk
#PKG_REV:=$(shell LC_ALL=C svn info ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p')
PKG_REV:=10777
PKG_NAME:=oscam
PKG_VERSION:=svn$(PKG_REV)
PKG_VERSION:=1.20-$(PKG_REV)
PKG_RELEASE:=1
PKG_REV:=2780c48789c8e1427df4078ea9b06e0b51594bbc
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
PKG_SOURCE_PROTO:=svn
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=$(PKG_REV)
PKG_BUILD_DEPENDS:=
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_URL:=https://github.com/coolsnowwolf/oscam.git
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.bz2
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)
PKG_LICENSE:=GPLv3
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=tmn505
PKG_CONFIG_DEPENDS := \
OSCAM_USE_LIBCRYPTO \
OSCAM_USE_LIBUSB \
OSCAM_USE_PCSC \
OSCAM_WEBIF \
OSCAM_WEBIF_LIVELOG \
OSCAM_WEBIF_JQUERY \
OSCAM_TOUCH \
OSCAM_WITH_SSL \
OSCAM_HAVE_DVBAPI \
OSCAM_READ_SDT_CHARSETS \
OSCAM_IRDETO_GUESSING \
OSCAM_CS_ANTICASC \
OSCAM_WITH_DEBUG \
OSCAM_MODULE_MONITOR \
OSCAM_WITH_LB \
OSCAM_CS_CACHEEX \
OSCAM_CW_CYCLE_CHECK \
OSCAM_LCDSUPPORT \
OSCAM_LEDSUPPORT \
OSCAM_CLOCKFIX \
OSCAM_IPV6SUPPORT \
OSCAM_MODULE_CAMD33 \
OSCAM_MODULE_CAMD35 \
OSCAM_MODULE_CAMD35_TCP \
OSCAM_MODULE_NEWCAMD \
OSCAM_MODULE_CCCAM \
OSCAM_MODULE_CCCSHARE \
OSCAM_MODULE_GBOX \
OSCAM_MODULE_RADEGAST \
OSCAM_MODULE_SCAM \
OSCAM_MODULE_SERIAL \
OSCAM_MODULE_CONSTCW \
OSCAM_MODULE_PANDORA \
OSCAM_MODULE_GHTTP \
OSCAM_READER_NAGRA \
OSCAM_READER_IRDETO \
OSCAM_READER_CONAX \
OSCAM_READER_CRYPTOWORKS \
OSCAM_READER_SECA \
OSCAM_READER_VIACCESS \
OSCAM_READER_VIDEOGUARD \
OSCAM_READER_DRE \
OSCAM_READER_TONGFANG \
OSCAM_READER_BULCRYPT \
OSCAM_READER_GRIFFIN \
OSCAM_READER_DGCRYPT \
OSCAM_CARDREADER_PHOENIX \
OSCAM_CARDREADER_SC8IN1 \
OSCAM_CARDREADER_MP35 \
OSCAM_CARDREADER_SMARGO \
OSCAM_CARDREADER_STINGER
include $(INCLUDE_DIR)/package.mk
define Package/oscam
DEPENDS:=+libopenssl +libpthread +libusb-1.0
TITLE:=Open Source Conditional Access Module software
URL:=http://streamboard.gmc.to/oscam/
SUBMENU:=
define Package/oscam/config
source "$(SOURCE)/Config.in"
endef
define Package/oscam/description
An Open Source Conditional Access Module software,
based on the very good MpCS version 0.9d created by dukat.
endef
CONFIGURE_ARGS += --with-ssl=openssl
define Build/Prepare
$(call Build/Prepare/Default)
mkdir -p $(PKG_BUILD_DIR)/build
cd $(PKG_BUILD_DIR)/build;
endef
config_files=oscam.ac oscam.cacheex oscam.cert oscam.conf oscam.dvbapi oscam.guess oscam.ird oscam.provid oscam.server oscam.services oscam.srvid oscam.tiers oscam.user oscam.whitelist
define Package/oscam/conffiles
/etc/oscam/
endef
define Build/Compile
echo 'set (OSCAM_SYSTEM_NAME wrt350nv2)' > $(PKG_BUILD_DIR)/toolchain.cmake
echo 'set (CMAKE_SYSTEM_NAME Linux)' >> $(PKG_BUILD_DIR)/toolchain.cmake
echo 'set (CMAKE_C_COMPILER $(TARGET_CROSS)gcc)' >> $(PKG_BUILD_DIR)/toolchain.cmake
echo 'set (CMAKE_SYSTEM_PROCESSOR $(ARCH))' >> $(PKG_BUILD_DIR)/toolchain.cmake
cd $(PKG_BUILD_DIR)/build;cmake -DCMAKE_TOOLCHAIN_FILE=$(PKG_BUILD_DIR)/toolchain.cmake ..;make
define Package/oscam
SECTION:=net
CATEGORY:=Network
TITLE:=Open Source Conditional Access Modul
URL:=http://www.streamboard.tv/oscam
DEPENDS:=+OSCAM_USE_LIBCRYPTO:libopenssl +OSCAM_USE_LIBUSB:libusb-1.0 +OSCAM_USE_PCSC:pcscd
endef
define Package/list-smargo
$(call Package/oscam)
TITLE:=List smargo readers
DEPENDS:=oscam
endef
CONFIGURE_CMD = ./config.sh
CONFIGURE_ARGS = \
--restore \
$(if $(CONFIG_OSCAM_WEBIF),--enable,--disable) WEBIF \
$(if $(CONFIG_OSCAM_WEBIF_LIVELOG),--enable,--disable) WEBIF_LIVELOG \
$(if $(CONFIG_OSCAM_WEBIF_JQUERY),--enable,--disable) WEBIF_JQUERY \
$(if $(CONFIG_OSCAM_TOUCH),--enable,--disable) TOUCH \
$(if $(CONFIG_OSCAM_WITH_SSL),--enable,--disable) WITH_SSL \
$(if $(CONFIG_OSCAM_HAVE_DVBAPI),--enable,--disable) HAVE_DVBAPI \
$(if $(CONFIG_OSCAM_READ_SDT_CHARSETS),--enable,--disable) READ_SDT_CHARSETS \
$(if $(CONFIG_OSCAM_IRDETO_GUESSING),--enable,--disable) IRDETO_GUESSING \
$(if $(CONFIG_OSCAM_CS_ANTICASC),--enable,--disable) CS_ANTICASC \
$(if $(CONFIG_OSCAM_WITH_DEBUG),--enable,--disable) WITH_DEBUG \
$(if $(CONFIG_OSCAM_MODULE_MONITOR),--enable,--disable) MODULE_MONITOR \
$(if $(CONFIG_OSCAM_WITH_LB),--enable,--disable) WITH_LB \
$(if $(CONFIG_OSCAM_CS_CACHEEX),--enable,--disable) CS_CACHEEX \
$(if $(CONFIG_OSCAM_CW_CYCLE_CHECK),--enable,--disable) CW_CYCLE_CHECK \
$(if $(CONFIG_OSCAM_LCDSUPPORT),--enable,--disable) LCDSUPPORT \
$(if $(CONFIG_OSCAM_LEDSUPPORT),--enable,--disable) LEDSUPPORT \
$(if $(CONFIG_OSCAM_CLOCKFIX),--enable,--disable) CLOCKFIX \
$(if $(CONFIG_OSCAM_IPV6SUPPORT),--enable,--disable) IPV6SUPPORT \
$(if $(CONFIG_OSCAM_MODULE_CAMD33),--enable,--disable) MODULE_CAMD33 \
$(if $(CONFIG_OSCAM_MODULE_CAMD35),--enable,--disable) MODULE_CAMD35 \
$(if $(CONFIG_OSCAM_MODULE_CAMD35_TCP),--enable,--disable) MODULE_CAMD35_TCP \
$(if $(CONFIG_OSCAM_MODULE_NEWCAMD),--enable,--disable) MODULE_NEWCAMD \
$(if $(CONFIG_OSCAM_MODULE_CCCAM),--enable,--disable) MODULE_CCCAM \
$(if $(CONFIG_OSCAM_MODULE_CCCSHARE),--enable,--disable) MODULE_CCCSHARE \
$(if $(CONFIG_OSCAM_MODULE_GBOX),--enable,--disable) MODULE_GBOX \
$(if $(CONFIG_OSCAM_MODULE_RADEGAST),--enable,--disable) MODULE_RADEGAST \
$(if $(CONFIG_OSCAM_MODULE_SCAM),--enable,--disable) MODULE_SCAM \
$(if $(CONFIG_OSCAM_MODULE_SERIAL),--enable,--disable) MODULE_SERIAL \
$(if $(CONFIG_OSCAM_MODULE_CONSTCW),--enable,--disable) MODULE_CONSTCW \
$(if $(CONFIG_OSCAM_MODULE_PANDORA),--enable,--disable) MODULE_PANDORA \
$(if $(CONFIG_OSCAM_MODULE_GHTTP),--enable,--disable) MODULE_GHTTP \
$(if $(CONFIG_OSCAM_READER_NAGRA),--enable,--disable) READER_NAGRA \
$(if $(CONFIG_OSCAM_READER_IRDETO),--enable,--disable) READER_IRDETO \
$(if $(CONFIG_OSCAM_READER_CONAX),--enable,--disable) READER_CONAX \
$(if $(CONFIG_OSCAM_READER_CRYPTOWORKS),--enable,--disable) READER_CRYPTOWORKS \
$(if $(CONFIG_OSCAM_READER_SECA),--enable,--disable) READER_SECA \
$(if $(CONFIG_OSCAM_READER_VIACCESS),--enable,--disable) READER_VIACCESS \
$(if $(CONFIG_OSCAM_READER_VIDEOGUARD),--enable,--disable) READER_VIDEOGUARD \
$(if $(CONFIG_OSCAM_READER_DRE),--enable,--disable) READER_DRE \
$(if $(CONFIG_OSCAM_READER_TONGFANG),--enable,--disable) READER_TONGFANG \
$(if $(CONFIG_OSCAM_READER_BULCRYPT),--enable,--disable) READER_BULCRYPT \
$(if $(CONFIG_OSCAM_READER_GRIFFIN),--enable,--disable) READER_GRIFFIN \
$(if $(CONFIG_OSCAM_READER_DGCRYPT),--enable,--disable) READER_DGCRYPT \
$(if $(CONFIG_OSCAM_CARDREADER_PHOENIX),--enable,--disable) CARDREADER_PHOENIX \
$(if $(CONFIG_OSCAM_CARDREADER_SC8IN1),--enable,--disable) CARDREADER_SC8IN1 \
$(if $(CONFIG_OSCAM_CARDREADER_MP35),--enable,--disable) CARDREADER_MP35 \
$(if $(CONFIG_OSCAM_CARDREADER_SMARGO),--enable,--disable) CARDREADER_SMARGO \
$(if $(CONFIG_OSCAM_CARDREADER_STINGER),--enable,--disable) CARDREADER_STINGER \
--disable CARDREADER_INTERNAL_AZBOX \
--disable CARDREADER_INTERNAL_COOLAPI \
--disable CARDREADER_INTERNAL_COOLAPI2 \
--disable CARDREADER_INTERNAL_SCI \
--disable CARDREADER_DB2COM \
--disable CARDREADER_STAPI \
--disable CARDREADER_STAPI5
MAKE_FLAGS +=
ifeq ($(CONFIG_OSCAM_USE_LIBUSB),y)
MAKE_FLAGS += USE_LIBUSB=1
endif
ifeq ($(CONFIG_OSCAM_USE_PCSC),y)
MAKE_FLAGS += USE_PCSC=1
endif
ifeq ($(CONFIG_OSCAM_USE_LIBCRYPTO),y)
MAKE_FLAGS += USE_LIBCRYPTO=1
endif
ifeq ($(CONFIG_OSCAM_WITH_SSL),y)
MAKE_FLAGS += USE_SSL=1
endif
MAKE_FLAGS += CONF_DIR=/etc/oscam
MAKE_FLAGS += OSCAM_BIN=Distribution/oscam
MAKE_FLAGS += LIST_SMARGO_BIN=Distribution/list-smargo
define Package/oscam/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/build/oscam $(1)/usr/bin/
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/Distribution/oscam $(1)/usr/sbin/oscam
$(INSTALL_DIR) $(1)/etc/oscam
$(INSTALL_DATA) $(addprefix $(PKG_BUILD_DIR)/Distribution/doc/example/,$(config_files)) $(1)/etc/oscam/
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/oscam.init $(1)/etc/init.d/oscam
endef
$(eval $(call BuildPackage,oscam))
define Package/list-smargo/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/Distribution/list-smargo $(1)/usr/bin/list-smargo
endef
$(eval $(call BuildPackage,oscam))
$(eval $(call BuildPackage,list-smargo))

View File

@ -0,0 +1,12 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2016 OpenWrt.org
START=50
USE_PROCD=1
start_service() {
procd_open_instance
procd_set_param command /usr/sbin/oscam
procd_set_param respawn
procd_close_instance
}