# CCcam team uvadi CCcam v2.0.11 # # 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 # 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 # 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/ttyUSB0 5500000 # 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 : 1 # 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/sci1 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 CAMDATA: /dev/sci1 3C 86 33 AA C0 D3 67 53 3D EC 7B B2 EE ED EB 8C A3 AD A5 2E 58 B9 9B B3 46 72 78 32 77 A1 DA AC 3B 61 06 AD 09 09 77 4E 03 1B 2A 6E 30 19 5B 43 76 83 AD 0F C5 99 B8 7D 08 CE A4 7B E1 B6 C7 6A # 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/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)