oscam.server(5) File Formats Manual oscam.server(5) NAME oscam.server - reader configuration file for OSCam SYNOPSIS The server configuration file for OSCam contains reader parameters. sections in oscam.server are recurring (more than one reader possible). At least one [reader] section is required. DESCRIPTIONS The [reader] section label = name name for reader, required enable = 0|1 0 = deactivate reader, default:1 description = text description of reader, default:none protocol = reader protocol reader protocol, required: camd35|cs357x cccam cs378x constcw gbox ghttp internal mouse mp35 newcamd|newcamd525 newcamd524 pcsc radegast scam sc8in1 serial smargo smartreader device = [;]serial:serialnum|bus:device| | ,[,]| ,| ,| pcsc| <0|1>>| constantcw define local or remote reader readertype: set reader type SR: Smartreader+ (default) Infinity: Infinity USB TripleP1: Smargo Triple Reader port 1 TripleP2: Smargo Triple Reader port 2 TripleP3: Smargo Triple Reader port 3 bus:device: bus name and device name of the Smartreader+ or Infinity USB (get the names with lsusb 'Bus' and 'Device') serialnum: serial number of reader of the Smartreader+ or Infinity USB device: device name device:slot: device name and slot number sc8in1 [1-8] (only one SC8in1 reader supported) ip|hostname: IP address or host name port: TCP/IP port lport: remapping to local TCP/IP port gboxpport: UDP port for remote gbox peer PCSC: number of PCSC reader, starting with 0 0|1: for Coolstream HD-1 STB only: select reader 0 or reader 1 constantcw: constant CW file name constant CW file format: · standard format CAID:Provider ID:Service ID:PMT ID:ECM PID::key (16 Bytes seperated by spaces) example: 1234:123456:1234:2345:3456::00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F · extended OScam format CAID:Provider ID:Service ID:PMT ID:ECM PID:Video PID:key (16 Bytes seperated by spaces) example: 1234:123456:1234:2345:3456:7890:00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F detect = [!]CD|[!]DSR|[!]CTS|[!]RING|[!]NONE|[!]gpio[1-7] status detect of card, NONE = no detection, ! = inverse, default:CD cardmhz = mhz set standard SC frequency in units of 10 kHz, for Irdeto SC set to 600 mhz, for Dreambox DM800 / DM8000 set to 2700 mhz, for Dreambox DM7025 set to 8300 mhz, for older PowerPC Dreambox STBs set to 3150 mhz, refer to OVERCLOCKING, default:357 mhz = frequency set reader frequency in units of 10 kHz, if mhz > cardmhz you are in overclocking mode. For Smargo readers and Dreambox internal readers frequency will be set by ATR if autospeed is set to 1, default:357 autospeed = 0|1 1 = sets mhz according to ATR. Currently only used for smartreader, Smargo and Dreambox internal protocol, other read‐ ers will be adapted to use this parameter as well. If You wan't to overclock you're card set it to 0, default:1 deprecated = 0|1 First the SC will be initialized in normal mode. If it fails, the SC will be automatically reverted to deprecated mode, so that the SC speed will not be changed and the communication will remain on normal ATR speed of 9600 baud. 1 = use deprecated SC mode only, default:0 mode = mode set card init mode for AzBox internal reader, default:none smargopatch = 0|1 1 = enable workaround for Smartreader+ reader until native mode works, default:0 sc8in1_dtrrts_patch = 0|1 1 = enable fix for SC8in1/MCR DTR/RTS kernel bug, default:0 use_gpio = 0|1 1 = use GPIO to init the reader. This needs to be set on WRT54G router, default:0 ins2e06 = payload add check control for pin payload (4 hex bytes) for NDS Videoguard 2 SCs, valid for physical readers only, default:none ins7e = payload add 26 hex-bytes payload for NDS Videoguard 2 SCs, valid for physical readers only, default:none ins7e11 = TA1 byte set TA1 byte for NDS Videoguard 2 SCs, valid for physical readers only, default:none fix07 = 0|1 1=enable 0x07 fix for NDS Videoguard 2 SCs, valid for physical readers only, default:1 force_irdeto = 0|1 1 = force Irdeto SC mode even if RSA key is set for Irdeto tunnled Nagravion SC, default:0 nagra_read = 0|1|2 read Nagravison records (on NCMED SCs only): 0 = disabled (default) 1 = read all records with expired rights 2 = read records with valid rights only rsakey = RSA key RSA key for Nagravision/Tiger SCs, CAM key data for Irdeto SCs, Conax SCs, default:none deskey = DES key DES key for Viaccess SCs post-processing, default:none boxkey = box key box key for Nagravision SCs / CAM key for Irdeto SCs pincode = pincode pincode for Conax, Cryptoworks and Viaccess SCs, default:none fix9993 = 0|1 1 = enable fix for 9993 error with CAID 0919 Videoguard SCs, default:0 readtiers = 0|1|2 method to get tiers of NDS Videoguard SCs: 0 = disabled (default) 1 = ins70 method 2 = ins76 method boxid = NDS box ID NDS receiver box id ndsversion = 0|1|12|2 set NDS Videoguard version 0 = autodetection (default) 1 = NDS Videoguard 1 12 = NDS Videoguard 1+ 2 = NDS Videoguard 2 aeskeys = CAID #0@provid:AES key #0 CAID #0[,AES key #1 CAID #0],...[;CAID #1@provid:AES key #0 CAID #1[,AES key #1 CAID #1],...]... multiple 16 bytes AES keys for Viaccess SCs (the used postprocessing AES key is specified through the D2 nano of the ECM) special AES keys: 00 = do not return any CW, no AES key specified FF = return CW received from the S, no AES key specified example: aeskeys = 0500@012345:000102030405060708090a0b0c0d0e0f;0500@543210:000102030405060708090a0b0c0d0e0f,0,0f0e0d0c0b0a090807060504030201 key = DES key key for newcamd remote reader encryption user = name user for remote reader password = password password for remote reader services = [!]services[,[!]]... reader [de]assignment to service group, default=none caid = [&][:][,[&][:target ]]... define and mapping of CAIDs for reader, default:all CAIDs with mask FFFF example: caid = 0100 caid = 0200&ffee:0300 caid = 0400&ff00:0500,0600 caid = 0702,0722 caid = 0702&ffdf (shortcut for the example above) ident = :[,provid]...[;:[,provid]...]... set CAID and SC specific ident for reader example: ident = 0100:123456,234567;0200:345678,456789 class = [!]class[,[!]class]... set SC specific class in hex for reader example: class = 01,02,!1b,!2b chid = CAID:ChID set SC specific ChIDs for reader, default:none example: chid = 0100:12 group = 1..64[,1..64]... reader assingment to groups, default:none, required audisabled = 0|1 1 = exclude reader from auto AU, default:0 auprovid = provider ID set provider ID to use the right reader for auto AU example: auprovid = 123456 disableserverfilter = 0|1 1 = ignore caid and provid settings of reader due faulty clients, default:0 inactivitytimeout = seconds inactivity timeout for all TCP based remote readers, -1 = reconnect on network failure for newcamd, even in idle, default:0 reconnecttimeout = seconds reconnect if missing answers from a remote reader, default:30 reconnectdelay = milli-seconds set maximum TCP connection block delay, default:60000 connectoninit = 0|1 1 = allow newcamd connections to be established on startup although there isn't a request yet, default:0 keepalive = 0|1 1 = allow cs378x TCP socket to be always connected, default:0. Always on if cacheex reader type. fallback = 0|1 1 = define reader as fallback, standard and fallback reader must have the same group, default:0 fallback_percaid = [:[,ident]]...[;[:[,ident]]...].... use reader as fallback for defined CAIDs only, two-digit wildcard CAIDs are possible, fallback_percaid overrules fall‐ back, default:none example: fallback_percaid = 1234:234567;89;10:345678 emmcache = usecache,rewrite,logging set EMM cache of local reader: usecache = 0|1||2 0 = EMM caching disabeld (default) 1 = enable EMM caching and save EMMs to file after stopping OSCam 2 = enable EMM caching, don't save EMMs to file after stopping OSCam rewrite = determines how often one and the same EMM is written, default:0 logging = EMM logging mask: 0 = EMM logging disabled (default) 1 = logging EMM errors 2 = logging written EMMs 4 = logging skipped EMMs 8 = logging blocked EMMs 16 = logging disabled AU example: emmcache = 1,3,2 cacheex = 0|1|2|3 set cache exchange mode 0: disable cache exchange mode (default) 1: enable cache exchange pull mode 2: enable cache exchange push mode for camd 3.5x / 3.57x and CCcam protocol 3: enable reverse cache exchange push mode for camd 3.5x / 3.57x and CCcam protocol Identical cache exchange modes must be set on local OSCam server and remote OSCam user asccount. Please consider memory consumption. cacheex_maxhop = hops define maximum hops for cache exchange, default=10 csp_ecm_filter = [caid][&mask][@provid][$servid],n cache exchange incoming ECM filter setting (mode 2 only) for Cardservproxy, default:none cacheex_drop_csp = 0|1 1 = drop incoming Cardservproxy cache (mode 2 only), detection is zero ecmd5, default:0 cacheex_allow_request = 0|1 1 = allow incoming ECM request (mode 2), default:1 cacheex_allow_filter = 0|1 1 = allow cache exchange filter (for cache exchange mode 2 only), default:1 cacheex_block_fakecws = 0|1 1 = enable fake DCWs blocking (for cache exchange mode 2 only), get fake DCWs form oscam.fakecws, default:0 ecmwhitelist = [CAID[@provid]:]length[,length]...[;[CAID[@provid]:]length[,length]...]... set valid ECM length per CAID and provid in hex, default:none,provid=000000 example: ecmwhitelist = 10,20,0a,0b ecmwhitelist = 0100:10,20;0200@123456:0a,4b In normal operation mode this parameter is not required. ecmheaderwhitelist = [CAID[@provid]:]header[,header]...[;[CAID[@provid]:]header[,header]...]... set vaild ECM header per CAID and provid in hex, default:none,provid=000000 ratelimitecm = count number of different SIDs in ECMs allowed for an interval, default:0 ecmnotfoundlimit = count number of ECMs with "not found" answer until the reader will be restarted, 0 = no limit, default:0 resetcycle = count number of ECMs until SC reset is performed, 0 = disabled, valid for physical readers only, default:0 ratelimitseconds = seconds interval for rate limit, default:0 ecmunique = 0|1 1 = enable check for matching ECM hash in ratelimit slot , default:0 srvidholdseconds = seconds time to keep service ID in ratelimit slot, during this time checkeding for ecmunique is disbaled, default:0 cooldown = delay,duration define cooldown: delay: delay in seconds for which the reader is allowed to do more ECM requests than defined by ecmratelimit, default: none duration: duration in seconds the reader needs to cooldown, default:none ratelimitecm and ratelimitseconds are required blocknano = nano[,nano]...|all list of EMM-nanos to block (in hex w/o 0x) or all EMM-nanos, valid for physical readers only, default:none example: blocknano = 45,93,7a,ff blocknano = all blockemm-u = 0|1 1 = block unique EMMs, default:0 blockemm-s = 0|1 1 = block shared EMMs, default:0 blockemm-g = 0|1 1 = block global EMMs, default:0 blockemm-unknown = 0|1 1 = block unknown types of EMMs, default:0 blockemm-bylen = [length range,length range]... block all types of EMMs by length, default:none example: blockemm-bylen = 1-10,11- read_old_classes = 0|1 (Viaccess SCs only) 0 = read only active entitlements 1 = read all entitlements (default) saveemm-u = 0|1 1 = save unique EMMs to log file, default:0 saveemm-s = 0|1 1 = save shared EMMs to log file, default:0 saveemm-g = 0|1 1= save global EMMs to log file, default:0 saveemm-unknown = 0|1 1 = save unknown types of EMMs to log file, default:0 savenano = nano[,nano]....|all (obsolete) list of EMM-nanos to save (in hex w/o 0x) or all EMM-nanos, only valid for physical readers, default:none example: savenano = 45,93,7a,ff savenano = all readnano = [path]filename write file (usually a copy of a file saved by savenano) to your smartcard, if no path is specified, the specified file is searched for in the configuration directory, only valid for physical readers, default:none example: readnano = write.emm readnano = /var/oscam/write.emm dropbadcws = 0|1 1 = reject bad CWs, send "not found" instead of bad CWs, default:0 disablecrccws = 0|1 1 = disable CRC for CW, default: 0 In normal operation mode this parameter is not required. Parameter is incompatible with DVB standard. ident = [:[,]...][;[:[,]...]]... use this reader as local in loadbalancer's reader selection, default:none lb_whitelist_services = ,... reader assignement to service group for channels which may never be blocked by the loadbalancer to the reader , default=none lb_weight = weight the higher the value the higher the probability for reader selection in load balacing mode, default:100 It's an divider for the average responstime. lb_force_fallback = 0|1 1 = set the reader always as fallaback for load balacing without considering the reader's statistics, default:0 cccversion =
.. set CCcam version, default:none example: cccversion = 1.2.34 cccmaxhops = hops set CCcam maximum SC distance hops, default:10 -1 = disabled 0 = remote local SCs only 1 = remote local SCs and + 1 hop 2 = remote local SCs and + 2 hops and so on After reading this SC hop will be incremented by one. ccchop = hop set hop for non CCCam readers, default:0 cccreshare = hop set reader's CCcam reshare hop, default:0 -1 = reshare value off cccam in global config 0 = resharing for direct peer only x = resharing for direct peer and share level x cccwantemu = 0|1 1 = request to provide emu from CCCam server, too, default:0 ccckeepalive = 0|1 1 = send keepalive messages to keep connection to remote CCCam server up, default:0 cccreconnect = timeout reconnect again after ECM request timeout in milli-seconds, default:4000 cccmindown = number filters all readers with hops smaller than number, default:0 gbox_reshare = level gbox reshare level of local cards, default:0 gbox_max_distance = distance maximum distance to receive gbox peer cards, default:2 gbox_max_ecm_send = number maximum of gbox peers ECMs will be send to, default:3 use_ssl = 0|1 1 = use SSL for ghttp protocol, default:0 OVERCLOCKING · Dreambox and other internal readers For Dreambox and other internal readers the highest possible clockrate will be auto detected. The mhz parameter lets you override the values chosen by OSCam, if it differs from 357 and 358, but usually you will not set any value for mhz. For certain Dreamboxes (especially PPC clones) the default mhz parameter leads to slow ECM times and/or "not found" ECMs. By setting mhz to values like 200, 300, 400, ... 1600 you can find a value that works for your receiver and your card. The higher the mhz value, the slower the ECM time (strange enough). If you choose the value too low, your card is not recognized (no ATR or "card not supported"). If you choose the value too high, you get slow ECM times. Our experience is that either no mhz line, or a line mhz = 1000 works best. · Phoenix / Smartmouse reader Overclocking does not work with Windows and Mac OS X. Set mhz equivalent to the frequency of the reader. OSCam can not set the frequency of the reader. · Smargo Smartreader+ Use protocol = smargo for the FDDI kernel drivers (no libusb needed) or (not recommended) use protocol = smartreader for OSCam's driver implementation based on libusb. Set the reader frequency with the native Smargo Smartreader+ tool (srp_tools). If not setting mhz and cardmhz, OSCam tries to set the baudrate automatically, according to the maximum speed indicated by ATR. Overclocking is possible. OSCam tries to set the baudrate automatically. A standard serial port has limited baudrate settings, so SC overclocking might not work. When using a serial reader the best way for overclocking is connecting it to a FTDI based USB to serial port adapter. If overclocking does not work, verify the effective baudrate in the logfile. If it deviates too much from the requested baudrate, the SC will not be recognized (no ATR) and the value for mhz should be adjusted again. The higher the baudrate, the more accurate the effective baudrate can be. CACHE EXCHANGE · pull mode (on request: cache exchange from remote to local OSCam) ECM requests will be forwarded to the remote cache exchange partner. If the CW could not be found in the cache of the remote exchange partner, a not found will be answered. If the CW could not be found in the cache of the remote exchange partner but a pending ECM request is open, the request will be re-initiated after the wait time defined in cacheexwait‐ time. · push mode (continuous: cache exchange from remote to local OSCam) CWs from the remote cache exchange partner will be forwarded to the local cache. Forwarding only works while the camd camd 3.5x / 3.57x or CCcam protocol connection between the local and remote OSCam has been established. · reverse push mode (continuous: cache exchange from local to remote OSCam) CWs from the local cache will be forwarded to the remote cache exchange partner. Forwarding only works while the camd camd 3.5x / 3.57x or CCcam protocol connection between the remote and local OSCam has been established. EXAMPLES · serial mouse compatible reader [reader] label = myserialmousereader detect = cd protocol = mouse device = /dev/ttyS1 group = 1 caid = 0100 services = myservice,!thisservice · USB mouse compatible reader [reader] label = myusbmousereader detect = cd protocol = mouse device = /dev/ttyUSB0 aeskey = 0102030405060708090a0b0c0d0e0f10 group = 2 caid = 0200 · camd 3.78x reader [reader] label = mycamd378xreader protocol = cs378x device = 192.168.0.1,1234 user = user1 password = password1 group = 3 · newcamd reader [reader] label = mynewcamdreader protocol = newcamd key = 0102030405060708091011121314 device = 192.168.0.2,2345 user = user2 password = password2 group = 4 · CCcam reader [reader] label = mycccamreader protocol = cccam device = 192.168.0.3,3456 user = user3 password = password3 group = 5 caid = 0300,0400,0500 cccversion = 1.2.3 · PCSC reader [reader] label = mypcscreader protocol = pcsc device = 0 aeskey = 0102030405060708090a0b0c0d0e0f10 group = 6 caid = 0600 · Smargo Smartreader+ [reader] label = mysmartreader protocol = smartreader device = 001:002 aeskey = 0102030405060708090a0b0c0d0e0f10 group = 7 caid = 0700 · internal reader [reader] label = myinternalreader protocol = internal device = /dev/sci0 group = 8 caid = 0800 · sc8in1 reader [reader] label = mysc8in1reader protocol = sc8in1 device = /dev/ttyUSB0:1 group = 9 caid = 0900 · constant CW [reader] label = myconstantcw protocol = constcw device = /var/keys/constant.cw group = 10 · gbox reader [reader] label = mygboxreader protocol = gbox device = 192.168.0.4,45678,56789 user = user4 password = password4 group = 11 caid = 1100 SEE ALSO list_smargo(1), oscam(1), oscam.ac(5), oscam.cacheex(5), oscam.cert(5), oscam.conf(5), oscam.dvbapi(5), oscam.fakecws(5), oscam.guess(5), oscam.ird(5), oscam.provid(5), oscam.ratelimit(5), oscam.services(5), oscam.srvid(5), oscam.srvid2(5), oscam.tiers(5), oscam.user(5), oscam.whitelist(5) oscam.server(5)