# CCcam team uvadi CCcam v2.0.5 # # Special greets go to all our friends all over the world, you know who you are! # # Specjalne podziekowania dla Ludzi z Polski, dzieki ktorym jest duzo nowych funkcji w wersji 2.0.0 # Ostatnim razem zapomnielismy o nich wspomniec w readme. DZieki Chlopaki! # ###################################################################### # friends # ###################################################################### # syntax for to add a friend user to CCcam with the max up hops limit (default = 5) # sharing of emus (default = 1), allow emm (default = 1), and optional # downshare limits per share (default = no limits) and optional # downshare limits per share based on caid:id:sid # and optional timeslots in which share is valid (to block channels on box of children after 19:00 for instance) # if no timeslot is defined 24 hrs a day is used # emus are shared only one level down, even if no limits given # # max username length 20 # password length 'unlimited' # #F: ( { caid:id(:downhops), caid:id(:downhops), ... } { caid:id:sid, caid:id:sid, ... } { begintime-endtime, ... } ) hostname/ip address # # example: # # F: user1 pass1 # # user1 gets all our shares at max 5 hops from us # (our local cards + max five hops away). He can share down to his own # clients. He also receive emu shares (if he has 'yes' behind his C: entry), # and is allowed to send us emm. # # F: user2 pass2 0 1 0 { 0100:000080, 0622:000000:1, 0500:000000:2 } # # user2 gets only our local cards but no 0100:000080. # and our 0622:000000 cards only for himself (1 hop down), # and 0500 cards for himself plus one additional hop down. # He also gets our emus, and is NOT allowed to send us emm (updates). # # F: user3 pass3 5 0 1 { 0:0:3, 0100:000080:1 } # # user3 gets all cards at a maximum of 5 hops away from us, # and get's to share them down two further levels beyond his own level. # But he is not allowed to share 0100:000080 down to other users. # He gets no emus from us, and he is allowed to send us emm. # # F: user4 pass4 5 0 1 { 0:0:3, 0100:000080:1 } { 0100:000080:15df } # # user4 gets all cards at a maximum of 5 hops away from us, # and get's to share them down two further levels beyond his own level. # But he is not allowed to share 0100:000080 down to other users. # He gets no emus from us, and he is allowed to send us emm. # He is also not allowed to view channel 0100:000080:15df # # F: user4 pass4 5 0 1 { } { } { 12:00-17:00, 19:00-20:00 } # # user4 gets all cards at a maximum of 5 hops away from us, # and get's to share them down two further levels beyond his own level. # the share is only valid between 12:00 and 17:00 and between 19:00 and 20:00 # outside these hours the share will not give cw's to the client # # # F: user5 pass5 5 1 1 { } { } { } 192.168.1.1 # # user5 gets all cards at a maximum of 5 hops away from us # user5 is only allowed to connect from the host 192.168.1.1 # ###################################################################### # connections # ###################################################################### # syntax for to add a client connection to other CCcam # add yes on end to use friends emus (non public private key/emu,etc...), # but only works when corresponding F line on server has '1' for # optional limits just like F line, but for incoming shares (ignore shares more than 'uphops' away) # #C: ( { caid:id(:uphops), caid:id(:uphops), ... } ) # #note: if {} limits are added, cannot be omitted. Use either yes or no. # # example: # # C: someserver.somedomain 12000 user1 pass1 # C: 192.168.1.2 12000 user2 pass2 # connects to CCcam without use of friends emus # # C: 192.168.1.2 12000 user3 pass3 yes # connects to CCcam, and receives friends emus also. # syntax for to add newcamd server connection # #N: # # example: # # N: 127.0.0.1 10000 dummy dummy 01 02 03 04 05 06 07 08 09 10 11 12 13 14 # # add a newcamd card, give it an offset of 2 hops, in the share list # # N: 127.0.0.1 10000 dummy dummy 01 02 03 04 05 06 07 08 09 10 11 12 13 14 2 # # stealthy login on newcamd server: # # N: 127.0.0.1 10000 dummy dummy 01 02 03 04 05 06 07 08 09 10 11 12 13 14 1 1 # # stealth modes: 0 = disabled, 1 = mgcamd new, 2 = mgcamd old, 3 = evocamd, 4 = generic # uper slot with newcs N: 127.0.0.1 34000 dummy dummy 01 02 03 04 05 06 07 08 09 10 11 12 13 14 # lower slot with newcs N: 127.0.0.1 34001 dummy dummy 01 02 03 04 05 06 07 08 09 10 11 12 13 14 # # mpcs for 1833to1702 N: 127.0.0.1 15000 mpcs dummy 01 02 03 04 05 06 07 08 09 10 11 12 13 14 # syntax for to add radegast server connection # #R: # # example: # # R: 127.0.0.1 678 0100 000080 # syntax for to add camd3 connection # #L: # # example: # # L: 127.0.0.1 567 dummy dummy 0100 000080 # syntax for add gbox connection # #G: # # support optional limits just like C line (ignore shares more than 'uphops' away) # { caid:id(:uphops), caid:id(:uphops), ... } # # example: # # G: AABBCCDD my.address.tv 2500 12345678 peer.address.tv 2500 ###################################################################### # Other config settings # ###################################################################### # server shall listen on this port pro incoming connections # default port is 12000, disable server with parm -s or set port 0 # #SERVER LISTEN PORT : 12000 # server can give some info about server and client connections # and cardinfo using telnet or webbrowser. # # Switch on/off access to info # default is yes # #ALLOW TELNETINFO: no #ALLOW WEBINFO: no # Show extended client info when showing client list # default is yes # #SHOW EXTENEDED CLIENT INFO : no # The webinfo service can be protected with a username and password. # This is switched off by default # #WEBINFO USERNAME : #WEBINFO PASSWORD : # The telnetinfo service can be protected with a username and password. # This is switched off by default # #TELNETINFO USERNAME : #TELNETINFO PASSWORD : # default port for telnet is 16000 # default port for web is 16001 # supported commands: # info # activeclients # clients # servers # shares # providers # entitlements # example use: # echo servers | telnet localhost 16000 # go with your browser to http://ip_CCcam_server:16001 # #TELNETINFO LISTEN PORT : 16000 #WEBINFO LISTEN PORT : 16001 # time in seconds to keep On Screen Display active. # default is 0 (turned off) # #ZAP OSD TIME : 3 # username used to show popup (default : root) #OSD USERNAME : root # password used to show popup (default : dreambox) #OSD PASSWORD : dreambox # port used to show popup (default : 80) #OSD PORT : 80 # Serial reader config. Add as many as you have attached too your system # replaces old name 'PHOENIX READER PATH', but still works. # default is none # optionally add readertype : phoenix,mouse,uniprog,sc8in1,smartreader+ # (when non readertype given defaults to uniprog (e.g. for mastera)) # # SERIAL READER : # # example # #SERIAL READER : /dev/tts/0 #Smargo USB Support SERIAL READER : /dev/usb/tts/0 smartreader+ #SERIAL READER : /dev/usb/tts/1 smartreader+ # Serial reader smartcard write delay. # Setting to finetune smartcard write speed, optimal setting depends on speed of system, and # speed of card. Default value is calculated, but can overrule by setting. # Use number of microseconds delay between bytes, 0 = no delay, -1 = calculated default # Note: huge difference between values 0 and 1, because of schedular overhead # # SMARTCARD WRITE DELAY : # # example, 10ms write delay on smartcard in reader attached to /dev/ttyUSB0 # #SMARTCARD WRITE DELAY: /dev/ttyUSB0 10000 # # NOTE on sc8in1; because 8 smartcards are used on the same devicename, use # devicename_0 .. devicename_7 for settings which require devicename to make # settings per smartcard. example /dev/ttyS0_0, /dev/ttyS0_1 .. # example, 8ms write delay between bytes to smartcard on last sc8in1 channel, attached to /dev/tts/0 # #SMARTCARD WRITE DELAY: /dev/tts/0_7 8000 # Smartcard clock speed override # Setting override specified speed for smartcard. # Don't add setting unless you're sure what you're doing. # In 99% of the cases the reader selects the optimal speed. # Adding this setting either slows your card down, or might destroy it. # # SMARTCARD CLOCK FREQUENCY : # # example # #SMARTCARD CLOCK FREQUENCY: /dev/sci0 3570000 #für unteren Slot #und für einen oberen slot dann wohl : SMARTCARD CLOCK FREQUENCY: /dev/sci1 368000 # if timing should be shown in OSD and debug output # default is no (turned off) # #SHOW TIMING : yes # enables mini OSD which shows server(type), cardreader, keys or fta only # default is no (turned off) # #MINI OSD : yes # turns debugging on and off # default is no (turned off) # #DEBUG : yes # should CCcam try to read and parse newcamd.conf for server connections # default is no (turned off) # #NEWCAMD CONF : yes # configure what EMM blocker you want. Add as many as readers you have attached # default is blocking nothing # # B: /dev/sci0 01 # 00 - nothing # 01 - sa blocked # 02 - ua blocked # 04 - ga blocked # and sum of for combinations # #examples # #B: /dev/tts/0 07 #B: /dev/sci0 01 # disable all local EMM readers # saves lots of CPU, but you won't get any updates anymore # (unless you get updates from your clients) # # default: no # #DISABLE EMM : yes # with this setting you can # allow a client on two hops away # to send the updates to the cardserver # # default : no # #EXTRA EMM LEVEL : yes # with this setting you can # configure how many emm listeners are started. # for example use 2 when recording # and viewing different systems and both need constant updates # # default : 1 # EMM THREADS : 2 # overrule the nds boxkey (4 byte hex) # # BOXKEY: # #example # #BOXKEY: /dev/sci0 00 11 22 33 # set card pin # * please be very careful with this option as you could lock your card * # # PIN: # #example # #PIN: /dev/sci0 1234 # overrule the irdeto camkey (8 byte hex), default 11 22 33 44 55 66 77 88 # # CAMKEY: # #example # #CAMKEY: /dev/sci0 11 22 33 44 55 66 77 88 # overrule the irdeto camdata (64 byte hex) # trailing zero bytes can be omitted # default for unknown ASC's is 11 22 33 44 55 66 77 88 00 00 .. 00, known ASC's have other defaults # # CAMDATA: ... # #example, when only the first 15 camdata bytes are nonzero # #CAMDATA: /dev/sci0 11 22 33 44 55 66 77 88 99 aa bb cc dd ee ff # custom add id's for BEEF patched cards # # BEEF ID: # #example # #BEEF ID: 4101 0 0 0 0 0 0 0 /dev/sci0 # what Softcam.Key should CCcam try to read # defaults to /var/keys/SoftCam.Key # #SOFTKEY FILE : /var/keys/SoftCam.Key # what AutoRoll.Key should CCcam try to read # defaults to /var/keys/AutoRoll.Key # #AUTOROLL FILE : /var/keys/AutoRoll.Key # what constant.cw should CCcam try to read # defaults to /var/keys/constant.cw # file content can be like # # ca4:id6:sid4:pmtpid4:ecmpid4:key16(01 02 03...) # #STATIC CW FILE : /var/keys/constant.cw # in this file you can configure what CAIDs CCcam should prefer or ignore # defaults to /var/etc/CCcam.prio # file content can have ignores (I) and prio lists (P) # # note 1: I line affects both for ecm and emm (receive no emm on ignored systems) # P line only affects ecm choice (emm still received for all available systems, not just the priority system) # # note 2: ident 0 means 'all idents'. So 'caid:0' is the same as 'caid'. # # note 3: for some systems (e.g. nagra (caid 18xx)), the ident is not known at the time the # prio lists are checked. In that case, matching is done on caid only, even if the P line # defines nonzero idents. So for example '1801:401' behaves the same as '1801' in a P line # I lines work differently, they are checked two times, once before ecm or emm is received, again # after ecm or emm are received (and nagra ident should be known) # P lines are only checked once, before ecm received. # # note 4: if a P line contains caid:ident pairs which are not available for the current # channel, that P line is not used for that channel. # Example, channel has systems 626, 1801:401 then P line with "1801,100:96,626" is ignored by that channel, # because channel doesn't have 100:96. # But P line with "1801" works, and also "626,1801" will work for channel # # note 5: P lines are parsed in the order in which they are found in the prio file. # Only the first matching P line is used # # situation 1: ignore allways this caid, all idents, on all channels # I: caid # # situation 2: ignore allways this caid/ident pair # I: caid:ident # # situation 3: ignore this caid/ident pair, on channel 'sid' # I: caid:ident:sid # # situation 4: when both caid1 and caid2 exist for a channel, prefer caid1 over caid2 # P: caid1, caid2 # # situation 5: when caid1:ident1 till caidN:identN exist for a channel, use them in order of this list. # P: caid1:ident1, caid2:ident2, .., caidN:identN # # situation 6: when caid1:ident1 till caidN:identN exist for channel 'sid', use them in order of this list. # Sid on first caid/ident pair identifies sid for which list is used. All other sids ignore this list. # P: caid1:ident1:sid, caid2:ident2, .., caidN:identN # #CAID PRIO FILE : /var/etc/CCcam.prio # # In this file all provider idents are defined # The info from this file is being used in the web interface # format: # "Provider description" # # PROVIDERINFO FILE : /var/etc/CCcam.providers # # In this file all channel idents are defined # The info from this file is being used in the web interface # format: # caid:ident:sid "Channel description" # # CHANNELINFO FILE : /var/etc/CCcam.channelinfo # write wrong logins to file # defaults is off # #LOG WARNINGS : /tmp/warnings.txt # global setting for stealthy login to newcamd/newcs server, N line can overrule # stealth modes: 0 = disabled, 1 = mgcamd new, 2 = mgcamd old, 3 = evocamd, 4 = generic # default: 0 # #NEWCAMD STEALTH : 0 # load balancing between identical cards, list device names of card readers containing identical cards, # optionally followed by a list of service id's which are to be excluded from loadbalancing # # LOADBALANCE : .. { , .. , } # # multiple loadbalance groups can be configured, by adding multiple lines # warning: restart is required, when loadbalance group config changes # #example 1: load balance requests for three identical cards # # LOADBALANCE : /dev/ttyS0 /dev/ttyS1 /dev/ttyS2 # #example 2: load balance requests for two almost identical cards, sid 0df3 and 0de1 are only available #on one of the cards, so requests for these sids shouldn't be loadbalanced # # LOADBALANCE : /dev/ttyS5 /dev/ttyS6 { 0df3,0de1 } # in version 1.2.1 and lower there was a problem which could lead to disconnecting clients # in version 1.4.0 network load was significantly reduced # in version 1.7.0 dangerous password bug was fixed # in order to take advantage of these fixes, all clients should upgrade # with this setting you can force that clients at least use a certain version otherwise they are denied when logging in # # default : accept all versions # #example 1: avoid disconnecting clients problem # #MINIMUM CLIENT VERSION : 1.3.0 # #example 2: achieve network load decrease # #MINIMUM CLIENT VERSION : 1.4.0 # #example 3: don't allow potentially wrong passwords (pre 1.7.0 has password bug) # #MINIMUM CLIENT VERSION : 1.7.0 # Irdeto smartcards: option to disable smart chid checking for irdeto smartcards. # Default, only chids advertised by card are accepted. # This avoids a lot of unwanted card traffic # # But if smartcard has hidden/unknown chids, all chids should be tried. # In that case specify 'TRY ALL CHIDS' option for cardreader. # Use with care, enabling option causes more card traffic. # Only use setting when some channels don't work without it. # note: if even this setting don't help decode all channels, try using # commandline arg -l, to disable all self-learning features (warning: slower) # #TRY ALL CHIDS : # #example: card in /dev/ttyUSB0 gets ecm for all possible chids, not #just the chids it officially supports # #TRY ALL CHIDS : /dev/ttyUSB0 TRY ALL CHIDS : /dev/sci0 TRY ALL CHIDS : /dev/sci1 # perform smartcard post init commands # # POSTINIT : () # # send commands in 'filename' to 'device', and delete 'filename' when # optional 'autodelete' argument nonzero # #example: # #POSTINIT : /dev/sci0 /tmp/postinit # #example /tmp/postinit contents: #c134000003000000 #c13201000a # Option to override autodetected dvb api version. Restart needed. # #DVB API: # # <1 = no dvb, 1 = dvb api 1, 3 = dvb api 3> # # WARNING: only use when autodetect fails! # #example, disable nonworking dvb hardware: #DVB API: -1 # Option to set global share limits # #GLOBAL LIMITS: { caid:id(:downhops), caid:id(:downhops), ... } # #example: # #GLOBAL LIMITS : { 0100:000080, 0622:000000:1, 0500:000000:2 } # # all users get no 0100:000080. # and our 0622:000000 cards only for themself (1 hop down), # and 0500 cards for themself plus one additional hop down. # global limits are overridden by client specific limits (see F:) # Option to reject shares with less than required downhops on clientside # #MINIMUM DOWNHOPS: # # default: 0 (don't ignore any shares) # #example: # #MINIMUM DOWNHOPS: 1 # # ingore shares that have less than 1 'downhops' (i.e. can not be shared # further down to other clients)