Format: 1.8 Date: Tue, 01 Mar 2016 20:40:54 +0300 Source: oscam Binary: oscam oscam-newcamd Architecture: source Version: 1.20-11441~r11211-xenial Distribution: xenial Urgency: medium Maintainer: Andrey Pavlenko Changed-By: Andrey Pavlenko Description: oscam - OSCam: Open Source Conditional Access Module oscam-newcamd - OSCam: Open Source Conditional Access Module Changes: oscam (1.20-11441~r11211-xenial) xenial; urgency=medium . * [r11211] . cccam protocol emm issue via and cw fix for ticket #3297 requested by dukat . . . * [r11210] . WebIf: - fix links to streamboard wiki help . . * [r11209] . Fix setting client_proto_version for the connection . The client_proto_version was lost when the PMT data was not send in the very first data packet processed. . The trace for the problem: - new socket connection fd: 14 - dvbapi_handlesockdata, client_proto_ver=0, pfd2[i]: i=0 - Got DVBAPI_CLIENT_INFO packet with size 42 - Client connected: 'vdr-plugin-dvbapi 2.2.1 / VDR 2.0.0' (protocol version = 2) - dvbapi_handlesockdata AFTER, client_proto_ver=2, pfd2[i]: i=0 . Now the connection is added to unassoc_fd, because there was only a greeting and no caPMT. Then the PMT update is on other pfd2 index (i=1) and the client_proto was set previously on index i=0 ! - dvbapi_handlesockdata, client_proto_ver=0, pfd2[i]: i=1 . And OSCam was using wrong protocol leading to problems with communication. . The commit uses the last_client_proto in this case to correctly fill the client_proto_version[] table with correct index. . . . * [r11208] . - More fix for re-enabled provid matching! . . . * [r11207] . DVBAPI: . - In CSA mode extended_cw_api should be always 0 regardless what user selected! . . . * [r11206] . - Reworked the re-enabled provid check in r11204 (Hope working setups dont need to be adopted by the thighter provid check!) . . . * [r11205] . DVBAPI: . - Fetching realpmt and ecmpid provid was fixed by an ecm request it lead to an additional ecmpid -> fixed! - Optimized the ecmpid / streampid addition code . . . * [r11204] . - Re-enable provid check. Some cards report it wrong may not be the reason to disable the check complete. If a card reports provid wrong it should be replaced with provid 000000 . . . * [r11203] . - Tryfix streampid issues dvbnetapi() (fatal trigger by r11202, but issue was already present for long time!) . . . * [r11202] . DVBAPI: . - Fixed a streampid bug in case decoding was temporarily stalled (introduced r11190) - On first streampid enable always disable the streampid on ca device with index -1 (makes 100% sure the index we use is used for decoding!) - Log cosmetics: dont hide "stop descrambling program number..." (user doesnt have to guess why is my channel not descrambled if its done on purpose!) . . . * [r11201] . WEBIF: . - Fix for ticket #4388 not cleaning notfound stats using webif->config->loadbalancer->Clear Not Found button . . . * [r11200] . VIACCESS: . - Fix for broken Nano 0E support regression introduced r11199 (Tnx Pr2 for patch!) . . . * [r11199] . VIACCESS: . - Improved nano E0 logging: only log if no initCA28 (tnx Pr2 for patch!) . . . * [r11198] . VIACCESS: . - Removed misleading failed logwarning if user isnt using ca28 init (there are cards that even dont need it anyway and work fine without it!) . . . * [r11197] . DVBAPI: . - Updating errno isnt mandatory in case a systemcall was successfull! . . . * [r11196] . DVBAPI: . - revert 1 line too much -> corrected! . . . * [r11195] . DVBAPI: . - Revert recent changes that might be the cause of fd's that dont get closed on some systems! . . . * [r11194] . DVBAPI: . - Tryfix some setups suffered from errno=24 Too many open files after some zapping since r11181 . . . * [r11193] . DVBAPI: . - Tryfix STAPI no matching S: line in oscam.dvbapi for pmtfile . . . * [r11192] . DVBAPI: . - Set PAT & PMT filter only on new caPMT list items, not on all (Tnx Schwa266 for providing patch!) . - Only start SDT filter on new caPMT list items too! . . . * [r11191] . DVBAPI: . = Tryfix VU+ streampid sensitivity reintroduced in r11168: dont disable streampids on ca device that are not used for decoding! . . . * [r11190] . DVBAPI: . - Experimental: on cw not found do not directly disable stream on ca since the already written cw is still valid for some time and we have time left to get the fresh cw before old cw is expired! - Experimental: only channel stop descrambling disables all streams used by this demuxer on the ca device - Tryfix: Seems an solved bug in r11064 was reintroduced in r11168, modded the involved code so it should work same as in r11064 . . . * [r11189] . small cosmetic fix to hide inactive clients . . * [r11188] . fix stapi5 streampids >16 . found by hoho . . * [r11187] . - Addition: ...Forgot the comment in code for future updates! . . . * [r11186] . - Proper TommyDS fix for buggy toolchain used for fritz 73xx and 74xx . And made a remark in code to prevent it to happen with future updates of TommyDS! . . . * [r11185] . forget another point to fix thanks AbrahaM... . . * [r11184] . fix build error on fritz 73xx und fritz 74xx . . * [r11183] . - (small) update tommyDS lib from https://github.com/amadvance/tommyds/ . . . * [r11182] . fix compile warning . . * [r11181] . poll fix patch for TVheadend patch by perexg http://www.streamboard.tv/oscam/ticket/4373 . . * [r11180] . fix proc reading patch by plnic http://www.streamboard.tv/oscam/ticket/4372 . . * [r11179] . fix #4366 patch by hook . . * [r11178] . DVBAPI: (see ticket #4369) . - fix unhandled_buf migration from temporary fd range to demuxer . . . * [r11177] . DVBAPI: (see ticket #4370) . - The unassoc_fd _MUST NOT_ be unset outside the poll loop for the network protocol (and pcnodmx mode) . . . * [r11176] . DVBAPI: . - Preserve client version for unassoc_fd[] (see ticket #4367) . . . * [r11175] . DVBAPI: . - Register adapterindex early (ticket #4368) . . . * [r11174] . DVBAPI: . - Tryfix ticket #4365 . . . * [r11173] . ca_mask should have 32 bits . . * [r11172] . fix activeindexers cast . . * [r11171] . log stream_type before it gets patched . . * [r11170] . raise INDEX_MAX_LOCAL to 15, at least the av7110 supports it . . * [r11169] . store client_proto_version for each connected dvbapi client . . * [r11168] . fixes for dvbapi pid index handling dvbapi via tcp now supports up to 64 indexes (0 to 63) dvbapi non-tcp now supports up to 8 indexes (0 to 7) fixed possible 100% cpu freeze bug; fixed index disable bug on stapi . . * [r11167] . fix typo . . * [r11166] . revert last commit . . * [r11165] . rewrote dvbapi pid index handling dvbapi via tcp now supports up to 0xDFFFFFFF indexes; dvbapi non-tcp now supports up to 8 indexes (can now be raised to any value <= 0xDFFFFFFF when needed); fixed possible 100% cpu freeze bug; . . * [r11164] . NAGRA: . - Additional EMM filtering for emms starting with 0x84 and 0x87 as used by e.g. MaxTV Tnx goes to Pr2 for delivering initial patch, I merely reworked it a bit so that not 3 additional filters will be setup! . . . * [r11163] . VIACCESS: . - Dont return error on softfail 9040 . . . * [r11162] . CCcam: . - Dont set both last send and get on keepalive, just set what is actually done (e.g. time of last send action or time of last get action) . . . * [r11161] . CCCAM: . - Add keepalive response from CCcam server to keepalive request from cccam client . . . * [r11160] . DVBAPI: . - Dont try to close and flush filter fd if stop filter already returned bad fd error . . . * [r11159] . fix oscam spam the dvbapi log with "PMT Update on socket.." on dvbapi client disconnect . patch by schwa226 http://www.streamboard.tv/oscam/ticket/4349#comment:4 . . * [r11158] . revert last commit . . * [r11157] . tryfix2: zap takes too long . . * [r11156] . tryfix: zapping takes too long . . * [r11155] . DVBAPI: . - Keep trying to close a filter that reported bad fd is useless -> skip! . . . * [r11154] . DVBAPI: . - Tryfix ticket #4353 (DVBAPI_AOT_CA_STOP command) . . . * [r11153] . fix status_loghistory height . . * [r11152] . added missing file . . * [r11151] . make number of displayed log lines in webif adjustable . . * [r11150] . make sure we do not loop too long on on socket . . * [r11149] . re-wrote packet receiving code. . problems are expected, please keep calm and open a ticket or post in the forum when you encounter one. . . * [r11148] . - Another tryfix for cardreaders that cant handle nagra layer switching! . . . * [r11147] . DVBAPI: . - Why should oscam convert subtitle type streampids to audio type? . . . * [r11146] . reduce livelog cpu load . . * [r11145] . VIACCESS: . - A9 Nano: not all classes need to be already present in card entitlement -> disabled all classes must match check - Dont throw error in log for softfail 9040 (card gives this back if all entitlements were already up to date) . . . * [r11144] . CCcam: . - Attempt to get keepalive, read timeout and inactivity timeout working like expected . Keepalive only works if both sides (client and server) have it enabled Its now possible to use -1 for inactivity timeout too. . . . . * [r11143] . block commercial libOscam (BOXTYPE_PC_NODMX) for Samsung TVs (the free one with BOXTYPE_SAMYGO still works) . . * [r11142] . DVBAPI: . - Do not reset ecmpidcount on fetching realpmt as it will invalidate values like status, tries, checked and influences the running decoding! . . . * [r11141] . DVBAPI: . - Add missing connfd that is needed to start filters on dvbnetapi . . . * [r11140] . undo last fix, should be fine on samygo . . * [r11139] . DVBAPI: . - Yet another quick & dirty workaround for "Samygo" messing up the dvbapi code. . . . * [r11138] . DVBAPI: . - Some fixes in communication handler . . . * [r11137] . DVBAPI: . - Tryfix realpmt doesnt add fake ecmpid (reported here: http://www.streamboard.tv/wbb2/thread.php?postid=554891#post554891 ) . . . * [r11136] . DVBAPI: . - Tryfix ticket #4349 (logspam dvbapi networkmode) . . . * [r11135] . DVBAPI: . - Fix for ticket #4350 (PAT/PMT could not be started on STAPI devices) - Some logcosmetics . . . * [r11134] . DVBAPI: . - Improved the correct srvid pmt fetching using section filtering: let the box do the heavy lifting! . . . * [r11133] . fix: one pmt stream may be used for multiple channels -> verify srvid . . * [r11132] . DVBAPI: . - Output SDT/PAT/CAPMT filterdata it might be handy for debugging purposes! . . . * [r11131] . revert last change . . * [r11130] . tryfix: problems on some channels after fetching real PMT . . * [r11129] . default to audio for stream_type 0x06 if no descriptors are available; this breaks when other datastreams come in the way, but better than nothing . . * [r11128] . directly filter pmt if pmtpid available some log cosmetics . . * [r11127] . second fix from #4347 . . * [r11126] . applied fix from #4347 . . * [r11125] . revert 11122; breaks reading on some stbs . . * [r11124] . better handling of invalid pmts . . * [r11123] . remove bit-rate info . . * [r11122] . do not spam cs_recv() if there is no data . . * [r11121] . fixed typo . . * [r11120] . updated streamtxt . . * [r11119] . fix log output for stream_type . . * [r11118] . tryfix: switching back to csa on OE2.2 . . * [r11117] . fix possible warning . . * [r11116] . fix possible endian problem . . * [r11115] . tryfix for encrypted PMTS; however we still need a capmt with valid caid descriptor, so this most likely will not be enough . . * [r11114] . if we cannot detect the command, skip one byte, or we will be stuck . . * [r11113] . fix build . . * [r11112] . fix: connection dropped if no incoming data (revert) fix: do not try to read capmt after killing the connection . . * [r11111] . use real PMT if it can be filtered . . * [r11110] . re-wrote loghistory loghistorylines now sets the amount of log history lines (the old loghistorysize has been removed to avoid confusion) skipping/invisible log lines (especially when using loglevel > 0) should now be fixed . . * [r11109] . fixes for extended cw mode . . * [r11108] . - Tryfix VDR http://www.streamboard.tv/wbb2/thread.php?postid=554649#post554649 . . . * [r11107] . DVBAPI: . - Fix for openxcas not using prio / non-prio run . . . * [r11106] . DVBAPI: . - Tryfix #4344 - Squashed a bug in start_filter() . . . * [r11105] . fix index reset . . * [r11104] . revert last commit: does not solve the problem . . * [r11103] . make sure that unused indices get released when we need a new one . . * [r11102] . fixed a bug in dvbapi_get_descindex() . . * [r11101] . small fix . . * [r11100] . fix crash in dvbapi_parse_capmt() when pmtfile == NULL . . * [r11099] . small fix . . * [r11098] . according to doc for recv(): . "These calls return the number of bytes received, or -1 if an error occurred. The return value will be 0 when the peer has performed an orderly shutdown." . -> so we must treat len == 0 as a disconnect, because we are using MSG_DONTWAIT, also added EWOULDBLOCK to the error checks . . * [r11097] . tryfix for #4343 . . * [r11096] . fixed some bugs . . * [r11095] . reworked index related code: converting back and forth between int8_t, int32_t and uint32_t is very confusing -> replaced with ca_index_t no longer using index == 0 for FTA . this makes the code a lot easier to understand and helps to find bugs . . * [r11094] . fix wrong config check . . * [r11093] . - Tryfix ticket #4343 . . . * [r11092] . updated video/audio pid detection . . * [r11091] . raise tcp_ito for cccam so that keepalive can work . . * [r11090] . updated cccam keepalive . . * [r11089] . update for last commit . . * [r11088] . tryfix: black scren when switching from a des channel to a csa channel . . * [r11087] . fix crashing on shutdown because of oscam-cache.c . . * [r11086] . update video/audio pid detection . . * [r11085] . cleaner version of last commit . . * [r11084] . fix crash when no filters are returned . . * [r11083] . more fixes for extended cw code . . * [r11082] . extended cw tryfix for black screen when switching from multiple cw mode to single cw mode . . * [r11081] . another tryfix for radegast . . * [r11080] . VIACCESS: . - All classes in an emm have to match! . . . * [r11079] . VIACCESS: . - Seems an emm can contain multiple classes -> reworked the code once more! . . . * [r11078] . radegast: suppressing subecms for caid 0x500 is broken on 0500:041980 -> fix: only suppress subecms when ecmlen > 0xFE . . * [r11077] . DVBAPI: . - Revert EMM handling exset and drecrypt since it breaks bulcrypt . . . * [r11076] . RATELIMITER: . - Fix on cooldown: take the srvidholdtime into account too! . . . * [r11075] . the 0x4A caid range contains a lot of systems, so better revert to the old line. caid_is_dre() is meant to be for Drecrypt, if a function for Dreamcrypt is needed, please create another function. . . * [r11074] . DVBAPI: . - Increase maximum filters to 32 for now. We could increase to 128, some boxes/images do support it but its eating up too much resources we better make it dynamical but it involves many dvbapi code changes The fd limit issue on demuxers has been researched in deep by AbrahaM, Mickey and Tequila for quite some time due too 0 size recording issues on some images. So a big thank you for the great effort you put into it: https://github.com/Duckbox-Developers/dr...a43375c2fddc7a6 . - Added a check on dvbapi startup how many filters each demuxer can handle (only api 1 and 3, so no stapi/coolstream/whatever) . - To avoid possibility of 0 recordings on old images/boxes due to too many emmfilters now emm and sdt filters get killed right before new channel is starting to descamble that way we make maximize the chance that ecm filters can be started . - Dreamcrypt seems to use caid 0x2710 too -> added! . . The fd limit on demuxers has been researched by AbrahaM, Mickey and Tequila due to the . . . * [r11073] . fix for long emms . . * [r11072] . +Added OE2.0 and OE2.2 cipher mode API to module-dvbapi.c (dreambox only for now) Possible ciphers on OE2.0: CSA, DES Possible ciphers on OE2.2: CSA, DES, AES128 (if the driver supports it) . +Updated oscam for extendes cws, this includes: ->using different cws for each stream type (video, audio, data) ->using CSA, DES, AES128 as cipher . -> All these changes are DISABLED by default atm, and can be turned on in globals.h: //#define WITH_EXTENDED_CW 1 . . . . . * [r11071] . DVBAPI: . - Tryfix streampid takeover . . . * [r11070] . added caid_is_dre() . . * [r11069] . *Fix: emmcache truncated last 3 bytes of cached EMM *Update: support large EMMs *Update: verify EMM length . . * [r11068] . fix MAX_EMM_SIZE for emm reassembly buffer . . * [r11067] . DVBAPI: . - Some rework on ca pmt parsing & connection handling . . . * [r11066] . DVBAPI: . - Some retrying while disabling filters and their fd's . . . * [r11065] . DVBAPI: . - Fix PMT parsing for caid 2710 (tricolor) . . . * [r11064] . DVBAPI: . - Disable all indexes for a streampid on ca right before takeover by new index . . . * [r11063] . DVBAPI: . - Tryfix takeover streampid from other demuxer with different index . . . * [r11062] . clienttimeout -> increasing multiplier to prevent low timeout values . . * [r11061] . IRDETO: . - Extended logging cardstatus after ECM request (Tnx Newcslover for providing initial patch!) . . . * [r11060] . SECA: . - Dont return ERROR on corrupt/fake ECM since it will block the channel for correct ecm too! . . . * [r11059] . IRDETO: . - Some cards have status on different position, so start using cta_res[cta_lr-2] instead of cta_res[3] (Tnx jsompis for providing patch!) . . . * [r11058] . CRYPTOWORKS: . - EMM rework . report issues here: http://www.streamboard.tv/wbb2/thread.php?postid=553585#post553585 . . . * [r11057] . IRDETO: . - Fix for non acs57 based cards: cardstatus after emm was 1 byte off (tnx Jsompis and newcslover!) . . . * [r11056] . VIACCESS: . - Fixed a logcosmetic . . . * [r11055] . VIACCESS: . - EMM logcosmetics . . . * [r11054] . IRDETO: . - Disable emmcache in code since it wont work for this cas: some logging revealed 150 unique emms in just 10 minutes, after several hours/days the emmcache will take tremendous resources leading to slow writing and timeouts on ecm handling! . . . * [r11053] . IRDETO: . - Fix: dont report in log error if its a softerror like 0x7B / 0x7C (chid already up to date / emm already written) . . . * [r11052] . EMM: . - Attempting to clean stale emms on every single new emm is a complete waste of resources! . . . * [r11051] . - Fix overflow warning r11050 . . . * [r11050] . DVBAPI: . - Add support for seca PBM and date in PMT of a channel (in the old days this was used for cams to determine if channel could be descrambled by card) . . . * [r11049] . IRDETO: . - More fix emm irdeto card status return (tnx newcslover!) . . . * [r11048] . VIACCESS: . - Update entitlements a bit more smarter after a successfull nano A9 has been written! . . . * [r11047] . IRDETO: . - Removed the == 00 as suggested by jsompis . . . * [r11046] . VIACCESS: . - Fix old classes not added anymore to entitlement database of oscam - Attempt to auto refresh entitlement after date emm written to card . . . * [r11045] . VIACCESS: . - Final tryfix viaccess emm: dont write same dated emm tnx goes to tvglotze and geisivi for assistence with testing and suggestions! . . . * [r11044] . VIACCESS: . - Next tryfix for 9040 errors . . . * [r11043] . IRDETO: . - Extend emm card status response to 5 bytes on both acs57 and non acs57 in order to get more details on the many shared error emms . . . * [r11042] . VIACCESS: . - Experimental tryfix emm 9040 error: card entitlement seems to have always double class entry with startdate just 1 below the other (tnx Pr2!) . . . * [r11041] . VIACCESS: . - Experimental tryfix emm 9040 error: if class entitlement on card is lower or equal in date skip the emm! (since it seems already being written) . . . * [r11040] . - Partially revert 11038 . . . * [r11039] . VIACCESS: . - Experimental: Avoid emm response 9040 by checking emm enddate, if same enddate -> skip! . Report your issues / results here: . http://www.streamboard.tv/wbb2/thread.php?postid=553132#post553132 . . . . * [r11038] . IRDETO: . - Fix emm errors, tested on Irdeto SC 58 version 19 revision 1, patch level e - Added card emm responsecodes to emmlog . . . * [r11037] . fix: do not display payload for network readers . . * [r11036] . oscam.version fix output for CARDREADER_INTERNAL_COOLAPI2 . . * [r11035] . DVBAPI: . - Tryfix prio betatunneled ecmpids . . . * [r11034] . DVBAPI: . - Resort ecmpid: use is_localreader() to detect localreaders! . . . * [r11033] . DVBAPI: . - Fix: and dont forget to paste it at the right position! ;) . . . * [r11032] . DVBAPI: . - Fix: removed a copy / paste error! . . . * [r11031] . DVBAPI: . - Resort ecmpids fix: the first P: match in oscam.dvbapi is used all next are ignored. . . . * [r11030] . DVBAPI: . - reworked prio settings once more . . . * [r11029] . DVBAPI: . - Resort ecmpids more fix for i:0 (attempt to resembles the old behaviour / function of it) . . . * [r11028] . DVBAPI: . - Resort ecmpids fixed forced ecmpid - Resort ecmpids I:0 was acting on all ecmpids -> ignore all -> black screen! . . . * [r11027] . applied coolstream2 patch by flk, thank you! . . * [r11026] . fixed macro . . * [r11025] . DVBAPI: . - Some more rework on sorting ecmpids . Post your personal input or bugreports here: http://www.streamboard.tv/wbb2/thread.php?postid=552726 . . . * [r11024] . fix for last commit . . * [r11023] . updated coolapi support for details see: http://www.streamboard.tv/wbb2/thread.php?&threadid=39134 . . * [r11022] . hide serial by default . . * [r11021] . added missing file from last commit . . * [r11020] . Patch from Ultra47: . - Correct PID in footer (now parent PID instead PID of Webif) - Show PID in oscam.conf - Fix for v10994: show only files entry constant.cw if constant.cw compiled . . . * [r11019] . fix a segfault . . * [r11018] . updated via6 atr check. this adds support for the new srg via6 card. thanks to everyone involved! for more details check: http://www.streamboard.tv/wbb2/thread.php?threadid=44106 . . * [r11017] . updated payload messages,thanks to regedit and Optimum Power . . * [r11016] . change/fix: now payload is always displayed in log, if its a nds card . . * [r11015] . fix: now 0F06/04 payload should be display for V13 or similar cards, too . . * [r11014] . DVBAPI: . - Disable sectionfiltering for ipboxes for more details see ticket #3056 . . . * [r11013] . fix: 0F06 prefix was missing in default ecmfmt config . . * [r11012] . fix: now forwarding ea.tier to write_ecm_answer() . . * [r11011] . now displaying tier name, if available, by default . . * [r11010] . better implementation for ecmfmt = y/Y enabled display of tier in ecmfmt by default . . * [r11009] . added ecmfmt = Y to display full payload (6 bytes) note: ecmfmt = y displays short payload (3 bytes) . . * [r11008] . added ecmfmt "t" t = used tier (videoguard) . . * [r11007] . DVBAPI: . - Tryfix prio in oscam.dvbapi is leading and still keep the new attempted feature that more matching readers for an ecmpid gives a higher prio! . . . * [r11006] . DVBAPI: . - Revert r10999 . . . * [r11005] . DVBAPI: . - Some rework on filtermatching - Some rework on wrong section length . . . * [r11004] . DVBAPI: . - Some rework on ecm/ecm/sdt section length returned by filters - More info about emm filterdata delivered to dvbapi . . . * [r11003] . DVBAPI: . Removed the filter killer on bad filterdata since there are too many boxes like STAPI and su980 that deliver data we didnt ask for! Now bad filtedata will be discarded. We cant kill the filter delivering bad data since its delivering good data too! At least the bad filterdata is detected and cant trigger bad things that should not happen. . . . . * [r11002] . DVBAPI: . - Tryfix MCA: reported broken since r10979 by FilipeAmadeuO . . . * [r11001] . DVBAPI: . - Dont setup filters for cards that dvbapi user has no group match (Tnx AbrahaM for reporting!) . . . * [r11000] . Keepalive: (patch delivered by boneco69) . - This patch make CCcam client to sent MSG_KEEP_ALIVE to SERVER every 10s so CCcam Server maintains the Client in connected state. - This patch enables "keepalive" parameter to IGNORE local timeout so the TCP stream isn't closed. - This patch enables "ccckeepalive" to work as espected. . . . . * [r10999] . DVBAPI: . - Fix emm filternum handling: it was always 1 too high! . . . * [r10998] . - Fix return value on different ecmhash: now its always either 0 or 1 nothing else! - Tryfix skip betatunneled ecm hash check since they never match! . . . * [r10997] . - Switching to nagra layer still seems to fail for ET-7500 and ET-8500, users affected should enable deprecated on the reader as a workaround! . . . * [r10996] . DVBAPI: . - r10995: there was no runnning code lost -> revert! - dont touch demuxers driven by other pmt files or connections than the current . . . * [r10995] . DVBAPI: . - Tryfix ticket #4308: somehow setting the demuxer was already running code was lost! . . . * [r10994] . Just commiting a patch delivered by ugola79: . . . . * [r10993] . - Auto create oscam.srvid2 if oscam.srvid and oscam.srvid both do not exist (its not nice that user have to create such a file manually in order to let SDT work!) . . . * [r10992] . DVBAPI: . - Only fix provid if provid could be extracted from ecm! . . . * [r10991] . DVBAPI: . - Small fix on stopping filters (they could be stopped by another thread!) . . . * [r10990] . DVBAPI: . - Tryfix disable streampids on stop descrambling channel . . . * [r10989] . DVBAPI: . - Even more fix for filter setup... Hope I catched them all by now :) . . . * [r10988] . DVBAPI: . - Fix: only register filter details if filter was set successfully . . . * [r10987] . DVBAPI: . - Stapi device ca handling fixes - Disable stapi filter killer on deliveral of bad filterdata (seems those boxes are notorious for delivering bad data!) . . Keep in mind: . Stapi code needs to be better integrated into oscam dvbapi. Since I'm a bad coder I cant do it without doing a lot of testdriving and I'm not buying a stapi device just to recode and please the crowd ;) . . . * [r10986] . DVBAPI: . - Some rework on filter input handling 3 strikes out -> 14 strikes out - Some rework on dvbapi ecm requests: only request same ecm again if current and previous ecmrequest result delivered no controlword - Some rework on ecm hashing for dvbapi (just use our own dvbapimodule only hashalgo) - Some rework on prio algo (I'm already starting to regret touching it in the first place!) - Revert enable / disable streams on ca device only once (possible sporadic requestmode 1 issues!) . . . . * [r10985] . DVBAPI: . - More fix for ecmpid prio code - Ecmhandler fixes the provid, dvbapi needs to do the same otherwise controlword handling fails! . . . * [r10984] . Added new value 'y' for parameter 'ecmfmt' to documentation. . . * [r10983] . Added new parameter 'getblockemmauprovid' to documentation. . . * [r10982] . DVBAPI: . - If enabling stream on ca device fails remove it from oscam internal capid list . . . * [r10981] . DVBAPI: . - Reworked ecmpid prio code (not all readers were evaluated in prio algo!) - More protection against data from unusable/bad filters: its now 3 strikes and you are out! . . . * [r10980] . DVBAPI: . - Fix memleak / azbox patch provided by ugola79 . . . * [r10979] . DVBAPI: . - Tryfix race condition: ecm request gets answered and handled by dvbapi cw handler before ecmd5 hash has been copied to demuxer for delayed response check . . . * [r10978] . fixed missing html part . . * [r10977] . fixed crash for negative class settings . . * [r10976] . fix for commit 10971 . . * [r10975] . fix for twin protocol . . * [r10974] . free CLASSTAB memory . . * [r10973] . removed CS_MAXCAIDTAB limit . . * [r10972] . adjustments for last commit . . * [r10971] . added patch from #4175. patch provided by w33d, thank you! . . * [r10970] . added support for twin protocol (serial) discuss in: http://www.streamboard.tv/wbb2/thread.php?postid=551263 patch provided by coolirc . . * [r10969] . fix for last commit . . * [r10968] . fix for last commit . . * [r10967] . camd35 tcp, cccam: enable TCP_NODELAY setting when not using cache-ex mode 2 or 3 . . * [r10966] . added fix for missing MSG_WAITALL for cygwin, as proposed in http://www.streamboard.tv/wbb2/thread.php?threadid=44029 thanks goes to softworkz . . * [r10965] . added proposed fix from http://www.streamboard.tv/wbb2/thread.php?threadid=44031 . . * [r10964] . added fix as proposed in #4294. thanks to perexg . . * [r10963] . DVBAPI: . - Some rework on CA server PMT connection handling . . . * [r10962] . DVBAPI: . - Tryfix vdr-plugin-dvbapi . . . * [r10961] . added option to enable syncing of emmfilters and auproviders with server. patch created by our well known and loved member the.sniffer, thank you very much! . . * [r10960] . DVBAPI: . - Remove filterdata debug line - Simplify filterstorage used for comparison . . . * [r10959] . DVBAPI (Experimental!) . - Added filterdata check: now we are sure filter data we get from the box is matching with the filter that we setup to receive it! . . . * [r10958] . Added new parameter 'cacheex_block_fakecws' and new config file 'oscam.fakecws' to documentation. . . * [r10957] . DVBAPI: . - Some rework on disable_unused_streampids() in attempt to improve it (affects channel changes crypted -> FTA, FTA -> crypted) . . . * [r10956] . DVBAPI: . - Fixed removal of pid in use by multiple indexes on a ca device and using index 0 for decoding was always returning REMOVED_DECODING_STREAMPID_INDEX . . . * [r10955] . DVBAPI: . - Enable / disable streampids only once on startup of channel - Index must be unique on same CA device: just counting up cant be used since ca device accepts not every index number . . . * [r10954] . until oscam is multi threading safe, do not shutdown when a pthread function failed . . * [r10953] . - Revert nonworking tryfix from r10951 . . . * [r10952] . - Tryfix regression introduced r10950 in ecmhandling . . . * [r10951] . - Tryfix regression introduced r10950 in ecmhandling . . . * [r10950] . Ratelimiter: . - Allow exactly 1 premature ecmtype (odd/even) change for a srvid sitting in a slot (usefull right after zapping to a new channel!) - Added trick in matching_reader() -> now dvbapi client will try again same ecm if readers couldnt answer due to ratelimit - Fixed reader_get_ecm() -> now asking same ecm that delivered no controlword due to ratelimit is impossible . . . * [r10949] . - Fix regression specific delay introduced in r10944 . . . * [r10948] . - Tryfix for original cccam flood issue with repsonses >5000ms in #4282 by TheTroll . . . * [r10947] . fix last commit . . * [r10946] . fix delayer() calls . . * [r10945] . dvbapi: . - Fix misplaced else constuction previous commit! . . . * [r10944] . dvbapi: . Now the generic delayer configured by delayer = xxx in oscam.conf and specific delayer configured in oscam.dvbapi with "D: [CAID]:[provider ID]:[service ID]:[ECM PID] delay" behave the same. They both will wait relative to the time of the ecmrequest: No wait is applied if controlword is received and delay time was already gone. Before the specific delayer waited always fixed time after controlword was recieved: that is confusing and can lead to pixalization if ecm response was delayed for some other reason. (E.G. card busy, network congestion) . . . * [r10943] . As discussed in http://www.streamboard.tv/wbb2/thread.php?&threadid=43929 , the server can no longer override client block-emm settings. . . * [r10942] . applied webif cleanup patch from: http://www.streamboard.tv/wbb2/thread.php?threadid=43972 thanks to the.sniffer and ultra47 . . * [r10941] . added cacheex dynwaittime fix from: http://www.streamboard.tv/wbb2/thread.php?&threadid=43936&page=2 thanks to w33dburner! . . * [r10940] . NDS: . - Datefix from #4188 for Videoguard Norway 0941 (tnx BigGyros for patch and Nimloth for testing!) . . . * [r10939] . - CWCycle improvement from #4274 (Thx lpm11 for patch!) . . . * [r10938] . DVBAPI: . - Revert 10937: there was no memleak, 10937 freed the BISS ecmrequest before it was handled by the ecmhandler! . . . * [r10937] . DVBAPI: . - Remove fakecm construction - Fix a memleak . . . * [r10936] . fixed a warning . . . * [r10935] . better fake cw statistics . . * [r10934] . optimized fake cw code. oscam can now deal with huge oscam.fakecw lists: . (config) 18556 fakecws's loaded (config) max 112 fakecw compares required for each cw . . * [r10933] . Added new parameter 'max_connections' to documentation. . . * [r10932] . fix another warning . . * [r10931] . fixed a warning . . * [r10930] . make sure er->ecmlen matches real ecm length . . * [r10929] . tryfix for #4004 . . * [r10928] . added irdeto base date from #4174. but kept out entries for irdeto cards, these do not hurt and make sure we do not break anything with this change. . . * [r10927] . reduced sleep delay, to avoid bug reported in #4264 . . * [r10926] . added user setting "max_connections", default value: 1; when the connection number reaches max_connections, the uniq setting kicks in. . . * [r10925] . added chid to ecm.info file for oscam, oscam_ms and wicardd mode . . * [r10924] . added fakecw filtering for csp with "csp_block_fakecws" . . * [r10923] . move double check up, to avoid bugs . . * [r10922] . fixed two bugs reported by boneco69 in #4255 . . * [r10921] . only warn when pthread_attr_setstacksize() fails, because there are systems where "sysconf(_SC_PAGESIZE)" returns a wrong value. . . * [r10920] . no longer using "check_filled()" for keys, because it did not work with keys containing zero bytes . . * [r10919] . added blocking of invalid cws/dcws for Cache-Ex. list the fake cws in oscam.fakecws, one dcw each line. fake cw blocking can be enabled with "cacheex_block_fakecws" in reader (ce mode 2)/account (ce mode 3) config . . * [r10918] . fix for mgcamd clients . . * [r10917] . updated newcam filtering once more . . * [r10916] . avoid invalid calls to pthread_cond_timedwait() . . * [r10915] . revert last commit (fix it good, just needed some tweaking on the other end) . . * [r10914] . fixed samygo filters . . * [r10913] . next tryfix for newcamd . . * [r10912] . fix for non-standard filter on samygo . . * [r10911] . revert last commit . . * [r10910] . added command line option to not write oscam.version . . * [r10909] . tryfix for #4212 . . * [r10908] . Added parameter 'readtiers' to documentation. . . * [r10907] . Added new boxtype 'samygo' to documentation. . . * [r10906] . disable read_sdt on samygo . . * [r10905] . fixed channel switch problem on samygo . . * [r10904] . fixed for samygo (libOSCAM.so v0.4.0) . new dvbapi config: (boxtype = samygo) . [dvbapi] enabled = 1 pmt_mode = 0 boxtype = samygo . . * [r10903] . fixed bug #4266 . . * [r10902] . fix for last commit . . * [r10901] . tryfix for #4267 . . * [r10900] . removed one more hard-coded index to devices[] . . * [r10899] . removed hard-coded indexes to devices[] . . * [r10898] . updated wetek dvb device name . . * [r10897] . added wetek dvbapi devices . . * [r10896] . Webif: . - Fix delete individual reader stat (broken since rev 10781) . . . * [r10895] . Added new parameter 'deskey' to documentation. . . * [r10894] . Viaccess nano E0 postprocessing support for returned CW. You still need the 3DES key which is not part of this patch. . . * [r10893] . WebIf: . - When polling is paused, the two [+] and [-] buttons are grey. - Start/Stop polling button have permanently red color. . If you can green color for "Start" polling button. You can use in custom.css file this: . .pollingdisabled {background-color: #0A0} .pollingdisabled:hover {background-color: #00D814} . . * [r10892] . WebIf: Fix for Safari. . next changes: - green color for polling enable - new icons (gray color -> white) for off status in readers and users . . * [r10891] . WebIf: Fix my mistake - thx ultra47 . . * [r10890] . WebIf: The final decision on the buttons . The backgroundcolor of the button indicates the following: . - red color - action - green color - status on - gray color - status off . I think that this solution is really a good compromise for all . http://www.streamboard.tv/wbb2/thread.php?threadid=43857 . If you want to use other buttons, please use the Template module. . . * [r10889] . DVBAPI: . - If an index of ca has already got cw part written skip it on following pids that use same ca and index . . . * [r10888] . DVBAPI: . - more rework on polling . . . * [r10887] . - Tryfix viaccess emmtext (tnx Pr2 for delivering the raw emm dumps!) . . . * [r10886] . DVBAPI: . - remove debugline / logspam . . . * [r10885] . DVBAPI: . - more rework on polling . . . * [r10884] . fix some warnings . . * [r10883] . tryfix: fix segfault crash when stopping via SIGTERM (kill command). when using "cs_restart_mode = 2" this made it impossible to shutdown oscam. . this also *maybe* fixes the webif related crash reported here: http://www.streamboard.tv/wbb2/thread.php?threadid=30975&page=34 . . * [r10882] . fixed name collision on some toolchains . . * [r10881] . fixed newlines (converted from win to unix) . . * [r10880] . DVBAPI: . - More rework dvbapi_read_device() . . . * [r10879] . updated headers . . * [r10878] . VIACCESS: . - Zero out the emm reassembly buffer before copying a fresh emm to it . . . * [r10877] . better buttons thanks BIT . . * [r10876] . EMM: . - Increase emm maxsize to 512, viaccess send new long emms with text in it! . VIACCESS: . - Attempt to add support to dump the new viaccess emm-text to readerlog . . . * [r10875] . replaced des implementation with a faster one (about 20x faster on most systems). moved newcamd specific des code into module-newcamd.c. . . * [r10874] . WebIf: Patch by hook - Make Pollinterval Button styleable in CSS. . . * [r10873] . WebIf: Add 'hover' effect for green buttons. . . * [r10872] . WebIf: by ultra47 Basic idea 'Polling Pause' . - polling in extra file (same code for 4 pages) - pause function for polling - show temp dir in files/oscam.version - use old play and pause button (is better for pause function and is the better lock for standard webif) - button with background image (now no problems with all browsers) => thx to skyndas - green background color for paused mode => idea by the.sniffer - change 'minus' character in polling and livelog button . Start discussion - http://www.streamboard.tv/wbb2/thread.php?postid=547587#post547587 . !!Please solve the icons, I-0 style??!! . . . * [r10871] . no longer modify stack size for threads where we did not so before. there is no experience whether it works for these threads, so do not risk it. . . * [r10870] . setting stack size again (not setting it gave problems on systems with low RAM). . . . * [r10869] . Doc: update for autodiscover config path, again. . . * [r10868] . DVBAPI: . - More rework dvbapi_read_device() . . . * [r10867] . DVBAPI: . - Rework dvbapi_read_device() in attempt to make the code less buggy . . . * [r10866] . updated find_conf_dir . . * [r10865] . webif ssl: fixed creating getssl key when ssl is disabled on startup . . * [r10864] . Update for autodiscover of config path in documentation. . . * [r10863] . fix for find_conf_dir() . . * [r10862] . rand() is fixed now, so use rand() instead of pointer address for client id . . * [r10861] . username() should return const char* . . * [r10860] . some fixes for read_sdt when no ecmpid is selected . . * [r10859] . fix for calls to pthread_join . . * [r10858] . Update for 'read_sdt' documentation. . . * [r10857] . no more messing with stack size; new code to align stack size to page size did not work . . * [r10856] . fixed dereference of null pointer . . * [r10855] . now printing all direct error messages to stderr . . * [r10854] . + tryfix for setting stack size on machines which enforce it to be a multiple of page size. NOTE: maybe it would be wise to stop setting stack size; we are doing it atm to save RAM, but we cannot know for sure how much stack size oscam really needs. normally it is advised to use the local default stack size. As I am not aware of any reported stack overflows in oscam, I did not remove it. . + now checking return value of all pthread functions where it makes sense to do so . + now always use start_thread() instead of pthread_create . . . . . * [r10853] . added overflow check to read_card() . . * [r10852] . Update for parameter 'read_sdt' to documentation: auto detection of service type. . . * [r10851] . fix for finding provider name when provid is zero . . * [r10850] . read_sdt: now also detecting service type (TV, Radio, Data) . . * [r10849] . tryfix for writing provid FFFFFE instead of provid 0 to srvid/2 . . * [r10848] . more fixes for srvid/provid search algo . . * [r10847] . Added new parameter 'write_sdt_prov' to documentation. . . * [r10846] . Added new parameter 'read_sdt' to documentation. . . * [r10845] . Added new config file 'oscam.srvid2' to documentation. . . * [r10844] . Added autodiscover of configuration files to documentation. . . * [r10843] . Added new paramter 'ecminfo_type' to documentation. . . * [r10842] . fixed last_provid when provid is 0 . . * [r10841] . updated read_sdt setting. new values: 0 = off 1 = on, do not save FTA channels 2 = on, save FTA channels . added new write_sdt_prov setting. values: 0 = on, do not write provider name into oscam.srvid/2 1 = on, write provider name into oscam.srvid/2 . . . * [r10840] . fixed missing '\0' in ecmfmt . . * [r10839] . only show first 3 payload bytes in ecmlog . . * [r10838] . oscam.provid: now ignoring invalid liens . . * [r10837] . some improvements for ecmfmt . . * [r10836] . - FTA support for detect channel name (SDT) . . . * [r10835] . fixed overflow in format_ecm() and adjusted buffer sizes . . * [r10834] . - Fix for AZbox using wrong capmt listcommand . . . * [r10833] . read_sdt: do not add empty provider names . . * [r10832] . fix compile error . . * [r10831] . read_sdt: updated to latest dvb standard (2014). korean and chinese encodings are not supported atm. . . * [r10830] . usage of pthread_attr_setstacksize() can now be disabled by defining "NO_PTHREAD_STACKSIZE" . EXTRA_FLAGS="'-DNO_PTHREAD_STACKSIZE" . . * [r10829] . re-wrote ecmfmt(). now displaying vg payload in ecmlog. variable name for ecmfmt setting is 'y' . . * [r10828] . some fixes for loghistory multi-threading . . * [r10827] . fixed error . . * [r10826] . fixed typo . . * [r10825] . updated vg payload name . . * [r10824] . fix for payload view in webif . . * [r10823] . added last payload to webif for vg cards . . * [r10822] . fixed typo . . * [r10821] . read_sdt: fixed reading sdt data with empty provider name . . * [r10820] . more fixes for last commit . . * [r10819] . fixed error . . * [r10818] . fixed gbox lock bug . . * [r10817] . Most calls to pthread are now checked for errors. From now on use the new SAFE_*() wrappers when using pthread functions. . Warning: After adding the pthread checks, I had to fix several existing bugs, including: + no initialization for lockindex in dvbapi + using unitialized locks in oscam-log + no initialization for ecm_pushed_deleted_lock . Because of that I execept at least some more bugs related to pthread. So keep calm and upload a log file if oscam now crashes you with a "FATAL ERROR" message. The bugs were already there, but now we are catching them. . . . . * [r10816] . fixed cccam problem introduced in r10812 . . * [r10815] . added oscam.version info for DVB API read-sdt charsets . . * [r10814] . applied garbage collector patch from pointer2 (thank you!), with some small modifications. . . * [r10813] . the same changes from r10812 for gbox. additionally two calls to cs_writeunlock() have been disabled, because the make so sense for me. . note to gbox devs: there is still an overflow possible in gbox_send_ecm() with its 1024 send buffer, if ecmlen is very big. however, the code is very complicated, so I am not touching it. . . . * [r10812] . fixed buffer overflows when sending/receiving ecms/emms . the rules for ecms are now: min. size: 0 or >=3 (a size of 1 or 2 is not allowed) max. size: MAX_ECM_SIZE (defined in globals.h) SCT_LEN(ecm) must be <= er->ecmlen . the rules for emms are now: min. size: 0 (we could add also a check for >=3 here, but I am not sure atm whether this would affect emm reassembly) max. size: MAX_EMM_SIZE (defined in globals.h) . . . . * [r10811] . fix for r10809 . . * [r10810] . added sdt data dump to debug log . . * [r10809] . improvment to emmcache setting display in webif, as requestes in http://www.streamboard.tv/wbb2/thread.php?postid=546800 . . * [r10808] . fix for older irdeto cards. patch provided by newcslover (#4238), thank you! . . * [r10807] . fixed some warnings . . * [r10806] . oscam.srvid2 now supports provider name. service ID:CAID1[@PROVID1[@PROVID2[@...]]][,CAID2[@PROVIDA[@PROVIDB[@...]]]]|[channel_name]|[type]|[description]|[provider] . . * [r10805] . added USE_UTF8 compile flag to enable webif utf-8 mode by default. example: make USE_UTF8=1 . . * [r10804] . fix: reset last_providptr . . * [r10803] . more fixes for srvid file link . . * [r10802] . webif: fixed links to srvid file if oscam.srvid2 exists . . * [r10801] . webif: fixed oscam.srvid / .srvid2 highlighting . . * [r10800] . Update for 'fix07' and 'ins2e06' parameter in documentation. . . * [r10799] . removed "ecminfo_hide_ms_name" setting, because it did not solve the problem for external tools, and this is useless . . * [r10798] . Back to old 'oscam.srvid' format in documentation. Waiting for new final format. . . * [r10797] . fixed cccam server not reporting a card when it does not exactly match the SRVID filtering. patch provided by TheTroll (#4227), thank you! . . . * [r10796] . Removed limits for 'oscam.srvid' in documentation. . . * [r10795] . New default value for 'read_old_classes' in documentation. . . * [r10794] . New 'oscam.srvid' format in documentation, again. . . * [r10793] . Update for new 'oscam.srvid' format in documentation. . . * [r10792] . webif: fixed .srvid/.srvid2 logic: if .srvid2 exists, display it first . . * [r10791] . Added new parameter 'initial_debuglevel' to documentation. . . * [r10790] . Added new parameter 'sysloghost' and 'syslogport' to documentation. . . * [r10789] . fix for read_sdt: added ISO8859toUTF8(), now iso-to-utf8 conversion without iconv is possible. if you do not need special char support for read_sdt, you can now disable the addon option "READ_SDT_CHARSETS", which will save about 22KB memory . . * [r10788] . fixed a warning . . * [r10787] . now also updating last_providptr in oscam-ecm.c . . * [r10786] . webif: fixed file_exits(oscam.srvid) check . . * [r10785] . Removed 'via_emm_global' from documentation. . . * [r10784] . now auto-detecting in webif whether oscam.srvid or oscam.srvid2 is used. patch provided by pr2 (#4236), thank you! . . * [r10783] . updated display of channel name and provider name in webif. patch provided by pr2, thank you! . . * [r10782] . update webif for new caid,provid syntax. patch provided by pr2, thank you! . . * [r10781] . change log syntax from caid:provid to caid@provid. patch provided by pr2, thank you! (ticket #4232) . . * [r10780] . we can never be sure whether a file exists, because it can be deleted at any time. so just quietly abort sending gbox sms, if the file disappears . . * [r10779] . fixed sr_init_locks(). Patch provided by pointer2, thank you! . . * [r10778] . loadbalancer save status without blocking . . . * [r10777] . reduced cccam blocking time from 60s to 10s . . * [r10776] . Webif: . - Fix for active polling mouse-over current channel and click (tnx Hook for patch!) . . . * [r10775] . As it turned out iconv is not a viable solution for converting charsets to utf-8. -> Removed it, until we have a replacement, reading sdt channel names is partly broken . . * [r10774] . oscam.log: log header should now always have the same size . . * [r10773] . only use liconv on cygwin, this should fix building . . * [r10772] . sdt parser now converts all dvb strings to utf-8. start oscam with -u or --utf8 to enable utf-8 webif mode, and the channel names should be detected correctly. some providers violate dvb standars however (for exampple TNTSAT, and may give some unreadable names) . INFO oscam now links with iconv, if it is not available on all toolchains, a compile flag needs to be added . . * [r10771] . fixed typo . . * [r10770] . fixed crash on reloading oscam.provid . . * [r10769] . WebIf: Fix typo in css.css and jscript.js . . * [r10768] . sdt filter now only requests the table it understands. this fixes sdt detection for tf1/france3. . . * [r10767] . raised pmtbuffer to handle some sdt streams correctly . . * [r10766] . read_sdt: now filtering out control codes . . * [r10765] . disabled read_sdt by default . . * [r10764] . sdt parser now writes all caid/provid combinations into oscam.srvid . . * [r10763] . changed ecm logging syntax from caid&provid to caid@provid . . * [r10762] . removed extra newline for sdt detection . . * [r10761] . allow new syntax caid@provid in oscam.dvbapi . . * [r10760] . added option to hide 'msec' name in ecm.info . . * [r10759] . added oscam.srvid2 to webif files . . * [r10758] . only show "unknown" if channel name is unknown on status page . . * [r10757] . + added new oscam.srvid syntax: . service ID:CAID1[@PROVID1[@PROVID2[@...]]][,CAID2[@PROVIDA[@PROVIDB[@...]]]]|[name]|[type]|[description] . these are read from oscam.srvid2 at the moment, due to compatibility reasons. if a oscam.srvid2 file exists, it will be used, and oscam.srvid will be ignored. . + dvbapi channel name detection now also writes provider into oscam.prvid . . . * [r10756] . updated unknown channelname syntax . . * [r10755] . oscam.provid: . added new syntax: . CAID@PROVID1@PROVID2@PROVID3|Provider_Name|satellite|language . the old syntax still works. you still can use : instead of @. . if provider-name is empty in oscam.srvid, the value from oscam.prvid will be used, if available . . * [r10754] . updated NO_PROVID_VALUE . . * [r10753] . oscam.srvid: empty provider name is now allowed . example: 0500@030B00:232B||HD1| . . * [r10752] . applied patch from #4216 thanks goes to pr2 . . * [r10751] . possible fix for USE_OPENXCAS . . * [r10750] . dvbapi: added provider and channel name detection via SDT . if service name is unknown, it will be written into oscam.srvid. detection works only for non-FTA channels. . config: (default: 1) . oscam.conf . [dvbapi] dvbapi_read_sdt = 1 . . * [r10749] . - Removed static 512 bytes buffer for proxy readers (only a minority actually used it and its safer and eats less mem to assign them dynamically to prevent bufferoverflows due to large ecms) - Increased / set the static buffers for local readers to MAX_ECM_SIZE - Increased MAX_ECM_SIZE to 596 bytes according to new ecm lengths viaccess introduced - Some changes to oscam-reader so it can handle larger ecms - Some changes to reader-viaccess so it can handle larger ecms . . . * [r10748] . fixed a warning . . * [r10747] . more fixes for oscam.srvid . . * [r10746] . more fixes for oscam.srvid . . * [r10745] . more bugfixes for oscam.srvid . . * [r10744] . fixed crash on reloading oscam.srvid . . * [r10743] . fix for r10741 . . * [r10742] . oscam.srvid: fixed compatibility with old syntax . . * [r10741] . new oscam.srvid syntax: . CAID1@PROVID1@PROVID2@PROVID3,CAID2@PROVIDA@PROVIDB:SRVID|.... . no more limits! no supporting unlimited number of caids and provids per line . . . * [r10740] . updated find_conf_dir() directory list . . * [r10739] . fixed webif crash when displaying services . . * [r10738] . dvbapi: use better way to obtain csystem name in ecminfo code . . * [r10737] . fixed sending log lines without header to monitor . . * [r10736] . viaccess readers: . default value for "read_old_classes" is now "1", . because otherwise emms for expired classes do not get written. if you want to speed up card init, you can set "read_old_classes = 0", but keep in mind that emms for expired classes will not get written. . . * [r10735] . fixed monitor logcount offset . . * [r10734] . made __get_servicename() faster . . here is the syntax for oscam.srvid (the last info contained a lot of typos): . CAID(@PROVID)[,CAID(@PROVID),...]:service ID|[provider]|[name]|[type]|[description] . for example: . // caid 100, ALL provids, srvid 1111 0100:1111:x|y|z|v . // caid 100, provid 123456, srvid 1111 0100@123456:1111:x|y|z|v . // caid 100, ALL provids , srvid 1111 0100@000000:1111:x|y|z|v . // caid 100, provid 123456, srvid 1111 and caid 200, provid 654321, srvid 1111 0100@123456,0200@654321:1111:x|y|z|v . Note 1: Max. 10 caids per line possible . Note 2: Only one provid per caid, if you want multiple provids for the same caid, use: //caid 100, provid 123456, srvid 1111 and caid 100, provid 654321, srvid 1111 0100@123456,0100@654321:1111:x|y|z|v . Note 3: If you have these two lines: 0100@123456:1111:a|b|c|d 0100@000000:1111:x|y|z|v . caid 0100, provid 123456, srvid 1111 will get a|b|c|d, and caid 0100, all other provids, srvid 1111 will get x|y|z|v -> Non-zero provids are stronger than zero-"catch-all"-provids . . * [r10733] . fix for last commit . . * [r10732] . new oscam.srvid syntax: . CAID(@PROVID)[,CAID(@PROVID),...]:service ID|[provider]|[name]|[type]|[description] . for example: . 0100:1111:x|y|z|v => caid 100, ALL provids, srvid 1111 0100@123456:1111:x|y|z|v => caid 100, provid 123456, srvid 1111 0100@000000:1111:x|y|z|v => caid 100, provid 000000, srvid 1111 0100@123456,0200:654321:1111:x|y|z|v => caid 100, provid 000000, srvid 1111 and => caid 200, provid 654321, srvid 1111 . . * [r10731] . another fix for r10728 . . * [r10730] . fixed r10728 . . * [r10729] . nicer implementation for isValidCW() . . * [r10728] . oscam.srvid: added support for multiple PROVIDs . syntax is now: CAID[,CAID,...]:PROVID[,PROVID,..]:service ID|[provider]|[name]|[type]|[description . limits: max 10 CAIDs max 5 PROVIDs . . . * [r10727] . ecm.info: added signature check . . * [r10726] . fixed ecm.info for cygwin fixed new ecm.info types . . * [r10725] . added find_conf_dir() as proposed in #4222, but modified it at bit, so that there should be no disadvantages. if we cannot find it, we still use the default CS_CONFDIR, and we check CS_CONFDIR first. setting the conf dir via command line (-c ...) overrides this detection. . . * [r10724] . fixed warnings . . * [r10723] . updated remote syslog syntax . . * [r10722] . dvbapi: moved ecm.info code into one function, added new ecm.info types . configured in oscam.conf: . [dvbapi] ecminfo_type = 0 . . possible values for ecminfo_type: 0 - default oscam syntax 1 - default oscam syntax with ecmtime in ms instead of s 2 - wicardd 3 - mgcamd 4 - cccam 5 - camd3 . . . * [r10721] . fix for videoguard2_poll_status() . . * [r10720] . removed hardcoded offset from cs_write_log() . . * [r10719] . update switch/on-off icons . . * [r10718] . dvbapi: . - Use SCT_LEN() to get ecmlength - Dump received ecm data - Warn if received ecm is too long for oscam to handle . . . * [r10717] . oscam.log: . + fixed and unified syslog logging + removed all hardcoded log header offsets, it is now possible to easily modify the log header in get_log_header(), and we even could log a line without header now . . * [r10716] . revert 10702 . . * [r10715] . applied "Turn the status field from CAID:SRVID to CAID:PROVID:SRVID" patch, see #4216, thanks goes to pr2 . . * [r10714] . fixed typo in last commit . . * [r10713] . added support for picons by channel name . syntax is: . take service-name from oscam.srvid, replace all upper-case letters with lower case, replace * with star, replace & with and, replace + with plus, remove everything but a-z and 0-9, if the result is name, the picon file will be IC_name.tpl . for example: service-name "BBC-ONE +HD" picon file: "IC_bbconeplushd.tpl" . if service-name ends with hd, and picon is not found, fallback to name without hd, example: picon file: "IC_bbconeplushd.tpl" -> not found, search for: picon file: "IC_bbconeplus.tpl" . see ticket #4213 . . * [r10712] . added provid to channel picons . old syntax: (still working) IC_[caid]_[srvid].tpl (for example: IC_0500_1234.tpl) IC_0000_[srvid].tpl (for example: IC_0000_1234.tpl) . new syntax: IC_[caid]_[provid]_[srvid].tpl (for example: IC_0500_123456_1234.tpl) . . * [r10711] . more improvement for oscam.srvid fallback: preserve prid if valid and nothing found . . . * [r10710] . improved oscam.srvid fallback: . case 1: caid, provid, srvid have valid (non-zero) value [dvbapi] . -> try to find oscam.srvid entry where caid, provid, srvid match (new syntax) -> if nothing found try to find oscam.srvid entry where caid, srvid match and provid is 0 (old syntax) . . case 2: caid, srvid have valid (non-zero) value, provid is 0 [cccam, camd35, etc] . -> try to find oscam.srvid entry where caid, srvid match and provid is 0 (old syntax) -> if nothing found try to find oscam.srvid entry where caid, srvid match and ignore provid (new syntax) . . * [r10709] . fix for Changeset 10697: client->last_provid is now used . . * [r10708] . now showing emm length as dec and hex number . . * [r10707] . applied load balancer fixes from #4207 . . * [r10706] . fix for stapi5 bug reported in #4206 . . * [r10705] . added setting "initial_debuglevel" to set the debuglevel on startup with oscam.conf: . example: [global] initial_debuglevel = 8 . . . . . * [r10704] . now starting by default in background on stapi devices patch by Vitaliy69, ticket #4209 . . . * [r10703] . added remote syslog server support . example (in oscam.conf): [global] sysloghost = localhost syslogport = 10517 . if you do not set sysloghost, this feature is disabled . note that it is also possible to use the local syslog service, by setting: . [global] logfile = syslog . . * [r10702] . added videoguard reader option "minimize_emm_filter" for boxes that do not correctly handle all filters . minimize_emm_filter = 0 => all filters activated (all serial positions, 7 filters total) [DEFAULT] minimize_emm_filter = 1 => only filter 1st serial position (3 filters total) minimize_emm_filter = 2 => only filter 1st and 2nd serial position (5 filters total) . . * [r10701] . replaced static pthread mutex initializers, because of buggy gclibs giving a warning . . * [r10700] . small fix for stapi5 commit . . * [r10699] . added STAPI5, thanks goes to: schwa226, Vitaliy69, Openbox Team . compile with: make USE_STAPI5=1 . . . . . * [r10698] . fixed off button color . . * [r10697] . modified and applied service name patch from #3932 . old: 0500:038f|SSR / SRG|SRF Info . new: (both formats are possible) 0500:038f|SSR / SRG|SRF Info 0500:50800:038f|SSR / SRG|SRF Info . the new advanced mode will work with dvbapi . . * [r10696] . fixed compile without gbox . . * [r10695] . applied fix from ticket #4044 . . * [r10694] . added thread for gbox sms sender, see ticket #4126 . . * [r10693] . module-dvbapi.c: added fix for missing IPV6_V6ONLY, like we are doing it in oscam-net.c this should solve ticket #4141 . . * [r10692] . new on/off icons created by Bit . . * [r10691] . activated "videoguard2_poll_status()" as reported in ticket #. looks like it was forgotten in Changeset 10607. if it was not forgotten, but intented to be disabled, please revert and add a comment to this function or delete it . . * [r10690] . increased newcamd CWS_NETMSGSIZE from 400 to 500. [see ticket #4170 ] moved newcamd specific des functions from des.c into module-newcamd.c . . * [r10689] . fixed changeset 10687 for some compilers . . * [r10688] . applied from ticket #4185: Added entitlements info to the json api . . * [r10687] . tryfix for #4194 . . * [r10686] . added Sky Mexico (095B) ATR from #4197 . . * [r10685] . module-cccshare.c: removed "card->aufilter" (tryfix for #3904), we no longer make a copy of an au-card without the hex-serial, but hide the hex-serial depending on the user "au = ..." setting. . In addition, the visibility of the card hexserials has changed: . Old: 1) user has au disabled -> user does not see any hexserials 2) user has "au = rdr1" -> user sees ALL hexserials (local readers + remote (cccam) cards) 3) user has "au = 1" -> user sees ALL hexserials (local readers + remote (cccam) cards) . Now: 1) user has au disabled -> user does not see any hexserials 2) user has "au = rdr1" -> user sees hexserials of reader "rdr1" [if "rdr1" is a cccam reader, the user will see the hex-serials of its peers] 3) user has "au = 1" -> user sees ALL hexserials (local readers + remote (cccam) cards) . . * [r10684] . fixed last commit . . * [r10683] . revert #10679 . . * [r10682] . emm length should be printed as hex numbers . . * [r10681] . reader-videoguard-common.c: adjusted emm filter: when filtering for emms with our serial at position #3, we now make sure the sub-emm counter is >= 3; this could also be done for emms with our serial at position #2 but would need an additional filter (because we would needd to filter for sub-emm-counter bits "1x" and "01") . . * [r10680] . - Revert r10672 ( patch from ticket http://www.streamboard.tv/oscam/ticket/4175 ) Several users report issues, see here: http://www.streamboard.tv/wbb2/thread.php?threadid=43675&threadview=0&hilight=&hilightuser=0&page=1 . . . * [r10679] . cccam proto card loss tryfix #3904 . . * [r10678] . WebIf: - fix for only text in Subnav in entitlements.html, readerconfig.html and user_edit.html . . * [r10677] . WebIf: Better solution for alignment image for text in readerstats.html . . * [r10676] . WebIf: Added css class for table in scanusb.html . . * [r10675] . - Oopsy: revert unwanted changes to default config . . . * [r10674] . - Buildfix: without cache_ex module oscam build was broken . . . * [r10673] . - Several webif improvements (committed blind for a change) . . . * [r10672] . - Several webif improvements from here: http://www.streamboard.tv/wbb2/thread.php?postid=540330#post540330 (Did not review the code, just a blind commit for a change!) . . . * [r10671] . dvbapi: . - Fix for azbox capmt parsing fails on some channels (introduced r10667) tnx Scader for report, testing and logs! . . . . * [r10670] . cryptoworks: Fix possible crash. . This fixes ticket #4192. Patch submited by danman. . . * [r10669] . fix clienttimeout lower than 1000ms not possible saves always in ms example 8 = 800ms . . . * [r10668] . - There is no need to use a lower ATR_TIMEOUT on sci readers -> removed - Typo fix io_serial: code comment and real code value do not match -> fixed - Sci_FastReset() give some additional timeout -> less chance to leave the card in error state . . . * [r10667] . - Tryfix for regression introduced rev 10666 that affects sh4 octagon receivers (reported by Netview) . . . * [r10666] . dvbapi: . - Fix wrong pmt parsing as suggested by racocvr . . . * [r10665] . - Just another useless logcosmetic change . . . * [r10664] . - Tryfix dvbapi channelcache: only use exact srvid matches in cache and ignore matches on caid:provid only in order to prevent non-decoding issues . . . * [r10663] . reader-nagra.c: adjusted HD01/02 tier date offset . . * [r10662] . change again . . . . ....... for my haters . . * [r10661] . improved description . . * [r10660] . - Tryfix show current channelname in text if no picon exists . . . * [r10659] . DVBAPI: . - Fix for stapi receivers cannot record any program as reported by ngc1927 - Moved pmtfile stop descrambling channel to the pmtparser . . . * [r10658] . Fix: viaccess aes handling now provider independent . Thanks Pr2 for providing patch! . . . . * [r10657] . reader-nagra.c: fixed expire date for HD01/HD02 cards tier 0BEA . . * [r10656] . dvbapi: . - Improved code and log to detect if demuxer is running (demuxer could already have ecmfilters but not started descrambling yet!) . . . * [r10655] . dvbapi: . - Reworked capmt handling - Some log cosmetics . . . * [r10654] . dvbapi: . - fixed reset of current ecmpids and streams right before capmt table parsing - fix for "not requesting cw -> ecm filter was killed!" (on capmt update of already descrambling demuxer the er->provid could be zero again for 1 ecm request) - some log cosmetics fixes . . . . * [r10653] . Make get_cardsystem_desc_by_caid() function public and use it also in dvbapi/ecminfo . The function get_cardsystem_desc_by_caid() is used by CCcam share to print nice cardsystem description in the webif. . This commit moves the above function from CCcam specific to oscam-simples.c. This way it is also used in the dvbapi/ecminfo to print the cardsystem name (eg. when displaing the ECM information in the skin data). . . . * [r10652] . dvbapi: add support for ECMINFO in network mode (bump proto to v2) . . . * [r10651] . irdeto basedate update http://www.streamboard.tv/wbb2/thread.php?postid=541615#post541615 . . * [r10650] . - Fix abs() compile warnings reported by BigGyros . . . * [r10649] . Fix for chk_port_tab, 'prids' index should be set to 0 for every 'filts' index change . Tnx to Azurit3 for catching this bug and testing! . http://www.streamboard.tv/oscam/ticket/4165 . . . * [r10648] . [gbx] Improve rebroadcast thread . . . * [r10647] . - Fix for broken stapi timeshift introduced r10640 . . . * [r10646] . - dvbapi: revert flushread before setting new sectionfilter . . . * [r10645] . [gbx] Make compilers happy (fix warnings of r10644) . . . . * [r10644] . [gbx] Move hello send to other send functions . . . . * [r10643] . dvbapi: . - Some rework on irdeto handling - Requestmode 1: added check on valid oldecmpid - Flush ecm filterdata from previous sectionfilter before setting a new ecm sectionfilter . . . * [r10642] . Dvbapi guet rid off compile warning. . This warning was just cause error msg from function read was not used. Error handling is well done. So it's just an ennoying warning in this case. With this nothing changes except that we are rid of the compile warning. . . * [r10641] . [gbx] reshuffle code to make extra declarations superflous . . . . * [r10640] . DVBAPI: . - More CA device streampid rework . . . * [r10639] . [gbx] various patches - revert r10223 to restore good night functionality - split cards write functions to avoid unnecessary local cards writing . . . . * [r10638] . fritzbox toolchain buildfix . . * [r10637] . - Small cs378x and cs357x emm fix . . . * [r10636] . updated hashtable code from http://tommyds.sourceforge.net/index.html . . * [r10635] . gbox build fix . . * [r10634] . Revert r10633 - the people have spoken... . . * [r10633] . cccam: Allow to ignore good/bad sids. . . * [r10632] . - dvbapi: while disabling certain streampid take camask into consideration! . . . * [r10631] . - Stapi dvbapi fix for not stopping old descrambler pid associations after zapping to another channel (introduced r10612) . . . . * [r10630] . Newcamd: . - Fix for non-matching emm caid (introduced r10582) . However the real reason is that before it was broken too: emmcaid was always 0000 but it was eventually checked against 0000 so it passed The improvements gf introduced made the emmchecks more strict and so the bad code of newcamd started to fail. . Tnx Dukynukem for not whining and complaining like others did but eventually providing 2 simple logs and testing the patch! . . . * [r10629] . - Fix for viaccess provid extraction from emm . Tnx goes to Pr2 for research and patch! . . . * [r10628] . [gbx] Fix cards list cleaned on client logout . . . . * [r10627] . - ECM dump fix for ecms that can not be processed by readers . . . * [r10626] . [gbx] Another better return for r10624 . . . . * [r10625] . [gbx] Proper return for r10624 . . . . * [r10624] . [gbx] Add one more LOCKITER in cards module . . . . * [r10623] . [gbx] use LOCKITER instead of ITER for pending cards . . . . * [r10622] . better to use static inline instead of #ifdef . thnx jsompis . . * [r10621] . fix build without HAVE_DVBAPI . . * [r10620] . dvbapi: . - More rework on handling streampids . . . * [r10619] . [gbx] Small correction for writing expired.info . . . . * [r10618] . Tnx goes to Pr2 for this patch! . - Add Maturity level for Seca card - Small rework on Viaccess maturity - Display n/a for not Viaccess or Seca readers . . . . * [r10617] . [gbx] Rework some cards functionalities - Unify delete cards function. - Move checkcode to cards module. - Print expired cards which are currently not send. . . . . * [r10616] . Viaccess: (patch by Pr2) . - Get and display the cards maturity level . . . . * [r10615] . - Cosmetic rework streampid count - Removed workaround for Vu boxes and gigablue boxes -> it doesnt work! . . . * [r10614] . - More rework streampid . . . * [r10613] . dvbapi: . - Only disable streampids not used on another ecmpid on same demuxer or any other demuxer with same index - Some rework on index assign function . . . * [r10612] . dvbapi: . More streampid rework . . . * [r10611] . - Added workaround for boxes with buggy dvb driver implementations (all vu models and gigablue) . . . * [r10610] . dvbapi: . - Next tryfix blackscreen while recording and zapping around on same transponder. . . . . * [r10609] . dvbapi: . - Another tryfix for blackscreen while recording and zapping around on same transponder . . . * [r10608] . [gbx] remove unused variables from structs & fix double local cards . . . . * [r10607] . All cas systems: . - cs_add_entitlement: extended with find only modus and some protection: only add if not found jet! . Viaccess specific: (Special thanks go again to Bit and Pr2 for their testing and logging!) . - Separate reassembly buffers for every provid, this should fix reassembly issues if you have viaccess cards with different providers on them. - Extract provid from 8c/8d nano instead of provid from emmpid so they never can be mixed up with emm 8e for other provid - Combine with the correct provider 8c/8d emm based on the SA info in the 8e emm - Smarter and same filters for network and local cards - Smarter prio of the filters: shared on top, global at the end and skip not useful providers - Nano A9 provider class check to avoid 90 40 (very big thanks goes to Bit for his analysis!) . . . . * [r10606] . - Tryfix flushing a BADF filter will result in infitive loop since select() returns -1 forever - Compiler warning cosmetics but no log flooding since we are not interested in any result . . . * [r10605] . dvbapi . Now rid of compile warning with flush read . . * [r10604] . - Avoid logspam: its slowing down and not funny to see repeating lines . . . * [r10603] . - Dont flush dvb netapi devices: they (mis)use 1 filter for all! - Protection against zero-ed emm in case of receiver internal bufferoverflow . . . * [r10602] . Fix for broken dvbapi pmtmode 0 introduced in r10600 (Tnx Q33ny for reporting!) . . . * [r10601] . - Small logcosmetic fix . . . * [r10600] . DVBAPI: . - Fix for requestmode 1 changing ecmpid while already descrambling (reused streampid could be disabled by stopping old ecm filter and pmt was send again by receiver) - Flush stale filterdata at the moment a filter is stopped to empty receiver internal filter databuffer . . . . * [r10599] . - Free reassembly buffer . . . * [r10598] . - Rework on emm filter rotation . . . * [r10597] . - Nicer fix for r10596 . . . * [r10596] . - Fix for handling of emmfilters if maxfilters is reached. . . . * [r10595] . Introduce caid checking function for Viaccess. . . * [r10594] . Introduce caid checking function for Cryptoworks. . . * [r10593] . Introduce caid checking function for Nagra. . . * [r10592] . Introduce caid checking function for Seca. . . * [r10591] . Introduce caid checking function for Videoguard. . . * [r10590] . Introduce caid checking function for Bulcrypt. . . * [r10589] . Introduce caid checking functions for Irdeto and Betacrypt. . . * [r10588] . Introduce caid checking functions for BISS. . . * [r10587] . cosmetic fixes . . * [r10586] . removed "via_emm_global" setting, since it is no longer used . . * [r10585] . - Small cosmetic fix! . . . * [r10584] . Viaccess: . Special tnx goes to Bit and Pr2 for extensive testing, pointers and feedback! . - Filtering of global emms (needed e.g. for wiping stale entitlement by provider) - Local attached cards only: filtering of shared emms that match with the providers on your cards - Several bugfixes emm filtering/parsing in generic - Added new parameter for reader emmcache - Enabled temporarily the viaccess emm debug logs to track down any reported issues . old emmcache = x,y,z new: emmcache = x,y,z,d . if you set d to 1 then for that reader device specific emms are enabled. default is off since this parameter is only handy for certain users and certainly not for users using cards in readers. . . . . * [r10583] . globals: Remove unused defines. . These defines are not used anywhere. . . * [r10582] . csystem: Build ops as static structures. . We don't really need to call a function to initialize our ops structure. We can directly initialize it and use the structures. Also now we don't have to size the caids array statically. . . * [r10581] . csystem: Make csystem pointer in struct s_reader const. . This signals that nothing should be changed via this pointer. . . * [r10580] . csystem: Turn reader->csystem into pointer to struct s_cardsystem. . Stop copying `struct s_cardsystem` into every reader. We can work with pointer to the structure without problems. . This reduces `struct s_reader` size by ~120 bytes. . . * [r10579] . csystem: Rename all variables that point to struct s_cardsystem to csystem. . This makes it easier to grep for places that call back into card systems. . . * [r10578] . Fix memory leak during RSA operation . . * [r10577] . csctapi: Constify pointers to struct s_cardreader. . This communicates clearly that the ops structure can not be changed at run time. . . * [r10576] . csctapi: Build ops as static structures and return pointer to them. . Now we keep only one copy of card reader ops into memory and next step is to constify the structures. . . * [r10575] . csctapi: Convert s_reader->crdr structure to pointer to struct s_cardreader. . This allows us to keep only one copy of cardreader ops, instead of copying them into every reader context. . . * [r10574] . csctapi: Move s_cardreader.flush flag to struct s_reader. . `flush` flag can be changed on per reader bases (sci reader changes it for exmaple). If we are going to convert reader->crdr from structure to pointer we need to move `flush` into reader context. . . * [r10573] . csctapi: Preparatons for turning reader->crdr into pointer. . This commit is just preparation for converting `struct s_reader->crdr` into pointer to `struct s_cardreader` instead of copy of the structure. . . * [r10572] . Do not print # before numbers. . `#number` is being parsed by trac as reference to ticket number. So posting logs into trac that contain `#number` messes up the logs. . It really is just a cosmetic issue but it annoys me. . . * [r10571] . newcamd: Try to fix ticket #4125. . . * [r10570] . [gbx] Fix doubled local cards . . . . * [r10569] . copy emm to send in emm.html optimized loop . . * [r10568] . [gbx] code restructuring - Centralize converting gbx caprovid functions in helper module - unify add card functions - move ecm checksum to helper - remove caid and provid from card (use caprovid only) - rename provid_1 to caprovid . . . . * [r10567] . boxtype info patch . http://www.streamboard.tv/wbb2/thread.php?postid=536576#post536576 . . . . * [r10566] . Move csystem.active flag into struct s_reader. . This is the only thing that is modified in `struct s_cardsystem`. . Moving this flag into `struct s_reader` would allow us to start using pointer to card system ops, instead of copying the ops into every `struct s_reader`. . . * [r10565] . Constify ->desc field in ops structures. . desc is always initialized with static strings, so adding const communicates this correctly. . . * [r10564] . Remove ->active field from struct s_module. . It is only set in one place but it is never used anywhere. . . * [r10563] . Fix regression introduced in r10557 (try 2). . This reverts r10162 and should fix fixes regression introduced in r10557. . r10562 was not the right fix. The right fix was to return the caid when the list is empty. . This should fix ticket #4123 and #4142. . . * [r10562] . Fix regression introduced in r10557. . This fixes regression introduced in r10557. chk_caid() func was broken when I rewrote it and since it is pretty central to the whole filtering the results were not pretty. . This should fix ticket #4123. . . * [r10561] . smargo: Introduce is_smargo_reader() macro and use it where needed. . This reduces direct manipulation of crdr.desc field. . . * [r10560] . smargo: Remove smargo prefixes in log messages rdr_log() already adds them. . . * [r10559] . Do not leak caidtab when freeing accounts. . Fix leak introduced in r10557. Account's caidtab was not cleared. . . * [r10558] . Replace cs_log() with rdr_log() where we have reader context. . This is not a complete solution, I only changed the places where reader desc was already used in the logging message. There are a lot of places (in modules) where we have reader context but we're using cs_log(). If somebody wants to replace such cs_log() calls with rdr_log(), grep for D_READER in modules-*.c . . * [r10557] . Convert caidtab to dynarray. . Less code, smaller data structures, smaller binary size and added tests for the functionality. . {{{ Structures: struct s_caidtab | -176 struct s_reader | -168 struct s_client | -176 struct s_auth | -176 struct s_config | -520 . Binary: add/remove: 3/1 grow/shrink: 10/10 up/down: 577/-1679 (-1102) }}} . caidtab is used by the following config settings: ACCOUNT: caid READER: caid GLOBAL: lb_noproviderforcaid GLOBAL: double_check_caid GLOBAL: cwcycle_check_caid . Now each of theses can hold more than 32 values which was the old hard coded limit. . . * [r10556] . [gbx] Minor change regarding pointer handling in reinit proxy. . . . . * [r10555] . [gbx] Be even more pessimistic. Addition to 10554. . . . . * [r10554] . [gbx] Protect against null pointer deref. Thx gfto. . . . . * [r10553] . Convert caidvaluetab to dynarray. . Less code, smaller data structures, smaller binary size and added tests for the functionality. . {{{ Structures: struct s_caidvaluetab | -50 struct s_auth | -56 . Binary size: add/remove: 3/0 grow/shrink: 4/5 up/down: 285/-872 (-587) }}} . caidvaluetab is used by the following config settings: ACCOUNT: lb_nbest_percaid GLOBAL: lb_nbest_percaid GLOBAL: lb_retrylimits GLOBAL: cacheex_mode1_delay GLOBAL: fallbacktimeout_percaid . Now each of theses can hold more than 16 values which was the old hard coded limit. . . * [r10552] . Machine info . Azbox fix should now cover premium and premium+ . . * [r10551] . Machine Info . More solid for azbox . . * [r10550] . Machine info . Azbox premium . . * [r10549] . [gbx] Another small addition for r10547. . . . . * [r10548] . [gbx] Minor fix for r10547. . . . . * [r10547] . [gbx] Move call to init_local_gbox as proposed here: http://www.streamboard.tv/wbb2/thread.php?postid=536529#post536529 . . . . * [r10546] . webif: Change return type of tpl_{addVar,addMsg,printf} to void. . The return value of these functions was used in only one place (and it's usage was fishy). I'm changing the return type to void because nothing that these functions can return is currently useful. . . * [r10545] . webif: Make tpl_addTmp() static and remove it from public headers. . This function is used only in module-webif-tpl.c. It should not be public. . . * [r10544] . Update copyright years. . We have made changes in 2014 and 2015 (and we'll probably make even more changes in 2015). So update the years to correctly reflect that the code was changed. . . * [r10543] . If oscam is not running on "generic" device, show the type and name in webif. . . * [r10542] . Allow boxtype_is() to check for "generic" box type. . Also return const declaration for box{type,name}_get() functions. const is needed because the string returned by these functions should not be changed. Using const makes the compiler work for us and warn if we try to change the result of box{type,name}_get(). . . * [r10541] . Free stb_boxname when oscam exists. . . * [r10540] . webif: constify some parameters in template functions. . This makes it clear that these parameters are not going to be changed. . . * [r10539] . Machine Info . Webif cosmetic . . * [r10538] . Machine info . Display Machine type into webif status page. If not known Machine is generic If boxname known Machine is boxname If boxtype known and not boxname Machine is boxtype . . * [r10537] . Patch by ultra47: . Final patch of configuriable showing of emm in emm.html?label=XXX . Default set in Config part WebIf: httpemmuclean (unique emm) => showing and filtering to a size of 256kb, over them cleaning and backup httpemmsclean (shared) => not showing httpemmgclean (global) => not showing . Settings for parameter "httpemmsclean, httpemmgclean, httpemmuclean" -1 => no showing 0 => only show emm file >1 => show filtered and cleaning (if the size higher as settings) emm file . . * [r10536] . Machine info . Extra protection for not cleared parameters . . * [r10535] . Machine info . forgot one line . . * [r10534] . Machine info . extra fix . . * [r10533] . Machine Info . Correction about one name . . * [r10532] . Machine info . Added boxname where it's relevant (cosmetic) . . * [r10531] . [gbx] Minor changes . . . * [r10530] . Machine info . Print correct info by boxtype if boxtype present. Also the final used variable will have the boxtype. . . * [r10529] . build: Add needed libraries when building pcsc under cygwin. . This fixes ticket #4118. The patch is inspired by patch posted by routerunner in this ticket. . . * [r10528] . [gbx] small internal change for calling some card functions . . . . * [r10527] . - tryfix newcamd . . . * [r10526] . Reduce camd35/cccam cacheex code differences. . No code changes just code movement. . . * [r10525] . Reduce camd35/cccam cacheex code differences. . This helps reduce the diff. . . * [r10524] . Reduce camd35/cccam cacheex code differences. . This helps reduce the diff. . . * [r10523] . Reduce camd35/cccam cacheex code differences. . We already have log prefixes, so remove the artificial text difference in logging messages. . . * [r10522] . Reduce camd35/cccam cacheex code differences. . Reduce the differences by using simple var. . . * [r10521] . Reduce camd35/cccam cacheex code differences. . No code changes just code movement. . . * [r10520] . - Fix for broken VDR support introduced in r10519 . . . * [r10519] . DVBApi: . - On sleepsend stop decoding the channel! - Some rework to avoid receiver internal bufferoverflow . . . * [r10518] . move Spam to debug . . * [r10517] . hide another Spam from init log . . * [r10516] . [gbx] fix compiler warnings. Thx ni_hao. Fix #4116 . . . . * [r10515] . - Fix detection of changed host ip for Cs357 connections . . . * [r10514] . [gbx] small addition to r10513 . . . . * [r10513] . [gbx] Unify list of cards. Move all card specific functionality into separate files. Refer to http://www.streamboard.tv/wbb2/thread.php?threadid=43066 . . . . * [r10512] . don't Spam on nonexistent irrelevant files . . * [r10511] . tests: Build tests binary by using standard build system machinery. . This fixes the build under OS X and also allows the tests to cover all oscam functionality (once the tests are written of course). . Note that the binary that build by `make tests` now would be called `tests.bin` (previously it was called `tests`). You can override that name using an undocumented TESTS_BIN `make` parameter, so `make tests TESTS_BIN=blah` would build the tests binary called `blah`. . . * [r10510] . - Move reader emmcache usage detection in function and use it! . . . * [r10509] . New values for parameter 'emmcache'. . . * [r10508] . - Add Atemio Nemesis to fixed readerspeed of 4.5 Mhz (due to usage of TDA8024) . . . * [r10507] . Sci . extra fix . . * [r10506] . Sci . another small fix on autospeed . . * [r10505] . Sci vu+ . Forgot the autospeed 1 this could still clock other speeds according to atr tables. For vu+ usseless and even could trigger bug for cards with higher max fs. The vu+ can only run at 4.5 Mhz. . . * [r10504] . Rewrite ftab parsing and generation functions. . This commit affects these settings: - account: chid, ident - reader: chid, ident, fallback_percaid, localcards . Makes the code smaller and easier to follow. bloatcheck reports binary size savings: {{{ add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-1237 (-1237) function old new delta mk_t_ftab 426 351 -75 ftab_fn 446 201 -245 chk_ftab 1524 607 -917 }}} . Also add tests for the parser and generator. . . * [r10503] . tests: Small text change. . . * [r10502] . Move functions for dynamic array manipulations in oscam-array.{c,h} . . * [r10501] . tests: Check if clone functions work as expected. . . * [r10500] . Rename array functions clear_XXX() to XXX_clear() . This is preparation for unifying array functions. . . * [r10499] . Rename clone_ftab() to ftab_clone() . This is preparation for unifying array functions. . . * [r10498] . Rename clone_ttab() to tuntab_clone(). . This is preparation for unifying array functions. . . * [r10497] . Refactor code to reduce duplication. . Introduce array_clone() and use it to prevent copy + paste code. . . * [r10496] . Refactor code to reduce duplication. . Introduce array_clear() and use it to prevent copy + paste code. . . * [r10495] . Refactor code to reduce duplication. . Introduce array_add() and use it to prevent copy + paste code. . . * [r10494] . Rename ftab_add_filter() to ftab_add() . This follows the style of the other TYPE_add() functions. . . * [r10493] . Exit early if there is nothing to be done in the cfg settings generator. . . * [r10492] . Rename some variables to make the code easier to understand. . . * [r10491] . - tryfix dvbapi emm freezing . . . * [r10490] . vg: Clear entitlements before adding new ones. . Patch by Mandos. This fixes ticket #4115. . . * [r10489] . Rewrite tuntab (betatunnel) conf parsing and generation functions. . Makes the code smaller and easier to follow. bloatcheck reports binary size savings: {{{ add/remove: 1/0 grow/shrink: 0/2 up/down: 82/-489 (-407) function old new delta tuntab_add - 82 +82 mk_t_tuntab 451 288 -163 chk_tuntab 808 482 -326 }}} . Also add tests for 'betatunnel' parser/generator. . . * [r10488] . - Small fix for dvbapi: only init emm filter values for firstrun on non-running channels . . . * [r10487] . - Fix for emmcache lastseen - Some recode for emm handling without emmcache / emmstat . . . * [r10486] . EMM: . Reworked the emmcache and emmstats once more! . usecache = 0,x,x = disable usage of emmcache and emmstats usecache = 1,x,x = enable emmcache, emmstats and save to file if oscam is stopped usecache = 2,x,x = enable emmcache, emmstats but dont save to file if oscam is stopped . . . . * [r10485] . Do not increase the number of entries in the dynarray if allocation fails. . . * [r10484] . Rewrite ecm header whitelist code. . Change the structure that tracked ecm header whitelist and rewrite the related code. Now it is a lot simpler (68 lines less code) and closer to ecm whitelist parser and generator. . Tests module was updated with support for ecm header white list. . There is a positive effect on binary size as well (-440 bytes). . {{{ add/remove: 4/2 grow/shrink: 3/1 up/down: 1639/-2079 (-440) function old new delta chk_ecm_hdr_whitelist - 699 +699 mk_t_ecm_hdr_whitelist - 555 +555 static.ecm_ratelimit_findspace 2499 2685 +186 ecm_hdr_whitelist_add - 113 +113 matching_reader 1973 2008 +35 clear_ecm_hdr_whitelist - 34 +34 static.ecm_ratelimit_check 2728 2745 +17 static.free_reader_ecm_headerwhitelist 66 - -66 mk_t_ecmheaderwhitelist 669 - -669 ecmheaderwhitelist_fn 1473 129 -1344 }}} . A negative is that after the rewrite the ecm header whitelist structure takes a bit more memory than before. . . * [r10483] . Add 'tests' to .gitignore . . * [r10482] . - Errorhandling for emmstat, emmcache and channelcache saving: on error remove created file! . . . * [r10481] . tests: Integrate test vectors into test structure. . . * [r10480] . Make ecm whitelist parser easier to understand. . Rename some variables and small code cleanup. . . * [r10479] . Improve ecm whitelist parser and generator. . Invalid values (0xffff) are reset to zero and now you can have filters that have only ident (provider_id) defined. For example this is valid filter: `@123456:11,22,33` that will match provider with id 123456 and ecm lengths 0x11, 0x22 and 0x33. . . * [r10478] . Add test module for oscam config entries parsers and generators. . We have lots of custom parsers and generators for our config file settings. Unfortunately there are no test vectors for them or any kind of test infrastructure which makes improving them or adding features much harder that it needs to be. . This commit introduces stand alone `tests` module. The purpose of this module (the code is in `tests.c`) is to collect test vectors and to test them. . The module is stand-alone and it is built as separate binary by using `make tests`. . . * [r10477] . - fix semicolon typo . . . * [r10476] . - Dont load/save any channelcache on dbox2 since they will crash . . . * [r10475] . - Dont load/save any emmstat or cache on dbox2 since they will crash . . . * [r10474] . - Add dbox2 to recognized boxtypes . . . * [r10473] . sci . vu+ extra char was not needed . . * [r10472] . Sci . fixed speed 4.50 for all vu boxes . . * [r10471] . Do not initialize openssl twice when ghttp module is enabled. . . * [r10470] . webif/ghttp/ssl: Do not leak memory allocated by openssl. . This patch does several related things: 1. Moves SSL initialization in one place (using it from two threads can cause undefined behaviour). 2. Clean openssl allocated context if ssl initialization in webif failed for some reason (not founding certificate file for example). 3. Clear memory after openssl error functions are called. . . * [r10469] . dvbapi: Fix memset() with reversed parameters. . . * [r10468] . Rename boxtype() function to boxtype_is(). . This prevents old (and broken) compilers from warning about it. . {{{ oscam.c: In function 'init_machine_info': oscam.c:706:7: warning: declaration of 'boxtype' shadows a global declaration [-Wshadow] globals.h:2042:6: warning: shadowed declaration is here [-Wshadow] oscam.c: In function 'boxtype': oscam.c:762:26: warning: declaration of ‘boxtype’ shadows a global declaration [-Wshadow] oscam.c:762:6: warning: shadowed declaration is here [-Wshadow] }}} . Fixes ticket #4112. . . * [r10467] . Do not work directly with stb_boxtype. . stb_boxtype is possible to be NULL, in which case using strcasecmp() or similar functions would cause segfault. This patch defines two new functions for dealing with stb_boxtype. . boxtype(X) checks if stb_boxtype equals X. boxtype_get() returns the detected box type string. . As a nice side effect (in addition to cleaner and safer code) we shave off a bit of binary size. . bloatcheck reports: {{{ add/remove: 2/0 grow/shrink: 0/3 up/down: 63/-255 (-192) function old new delta boxtype - 43 +43 boxtype_get - 20 +20 dvbapi_ioctl 367 359 -8 Sci_Deactivate 251 235 -16 cardreader_init 1784 1553 -231 }}} . . * [r10466] . Sci . set sci in function off boxtype by a couple of dm boxes. Vuduo2 set to the only speed it is clocked. . . * [r10465] . some webif fixes for commit 10403 . . * [r10464] . updated doc for read_old_classes . . * [r10463] . dvbapi: . - More fix for receiver internal bufferoverflow - Skip executing of specific emm filter handlingcode if ecm is being handled! . . . * [r10462] . Added default value for 'read_old_classes'. . . * [r10461] . Added new parameter 'read_old_classes' to documentation. . . * [r10460] . Do not rely on the compiler to clear the whole structure when using short initializer . This prevents the compiler from complaining about: {{{ oscam-conf-chk.c: In function 'chk_ecm_whitelist': oscam-conf-chk.c:504: warning: missing initializer oscam-conf-chk.c:504: warning: (near initialization for 'new_ecm_whitelist.ewdata') oscam-conf-chk.c:508: warning: missing initializer oscam-conf-chk.c:508: warning: (near initialization for 'd.caid') }}} . Reported by AbrahaM. . . * [r10459] . Rewrite ecm whitelist code. . Change the structure that tracked ecm whitelist and rewrite the related code. Now it is a lot simpler (160 lines less code). There is a positive effect on binary size as well (-1.2k). . bloatcheck report: {{{ add/remove: 4/2 grow/shrink: 0/5 up/down: 1059/-2357 (-1298) function old new delta chk_ecm_whitelist - 533 +533 mk_t_ecm_whitelist - 425 +425 ecm_whitelist_add - 67 +67 clear_ecm_whitelist - 34 +34 static.ecm_ratelimit_check 2745 2728 -17 matching_reader 2043 1973 -70 static.free_reader_ecm_whitelist 149 - -149 static.ecm_ratelimit_findspace 2685 2499 -186 update_ecmlen_from_stat 709 340 -369 mk_t_ecmwhitelist 463 - -463 ecmwhitelist_fn 1232 129 -1103 }}} . A negative is that after the rewrite the ecm whitelist structure takes a bit more memory than before. . This fixes small memory leak in parsing shown in trac ticket #4099 comment 11. . . * [r10458] . bulcrypt: Another fix for v2 EMMs. . Patch by chepik suggested in ticket #4110. . . * [r10457] . EMM: . - Prevent oscam from running out of resources: remove stale emmcache + emmstats after 30 days (perhaps make this user configable?) - Some code adoption to prevent possible null deference . . . * [r10456] . minilzo: Disable internal checks because they cause build errors. . This fixes: {{{ LINK ../archiv/oscam-svn8403-fritz33xx-webif.debug build/mips-linux-uclibc/minilzo/minilzo.o: In function `_lzo_config_check': minilzo.c:(.text+0x678): undefined reference to `__clzsi2' collect2: ld returned 1 exit status }}} . This is the same commit as r8404. . . * [r10455] . - miniLZO update to version 2.09 (released 4 feb 2015) . . . * [r10454] . Allocate TUNTAB dynamically . The TUNTAB structure size is 602 bytes and also the number of entries is limited. . This structure is used to implement the beta tunnel feature via 'betatunnel' account setting. . This feature is not used by everyone but everyone takes the memory hit. . This patch makes the bulk of the structure dynamically allocated. The memory savings are as follows (x86_64 defconfig): . {{{ struct before after delta savings s_tuntab 602 16 -586 97.4% s_client 2440 1856 -584 24.0% s_auth 1976 1392 -584 29.6% . Binary size: add/remove: 1/0 grow/shrink: 5/5 up/down: 335/-485 (-150) }}} . . * [r10453] . doc: Remove CS_MAXTUNTAB mentions in the docs. . CS_MAXTUNTAB is going away when TUNTAB structure becomes dynamic. . . * [r10452] . Clear destination FTAB before parsing the new one. . . * [r10451] . - Cs357 (=camd35 UDP) prevent usage of reconnecttimeout, UDP is stateless so it makes no sense! . . . * [r10450] . Small cleanup of FTAB related code. . . * [r10449] . Correctly reload ident and chid filters on client reinit. . This fixes a bug introduced in FTAB rewrite. . . * [r10448] . - More tryfix for internal filter bufferoverlow of receiver . . . * [r10447] . newcamd: Fix mgclient support which was broken with ftab changes in r10426. . It seems that FTAB changes in r10426 have broken mgclient support in newcamd module. According to the reporter this patch fixes the problem. . Ref: http://www.streamboard.tv/wbb2/thread.php?threadid=43056 . . * [r10446] . bulcrypt: Fix writing of unique EMMs in v2. . Patch by chepik posted in ticket #4110. . . * [r10445] . Fix libusb linking on FreeBSD. . This fixes ticket #4103. . . * [r10444] . some fixes with ftab allocation . . * [r10443] . viaccess: now only reading active entitlements/classes, use read_old_classes = 1 in the [reader] config to read all entitlements/classes. this should speed up card init. . . * [r10442] . - Fix for emmcache not loading if emmlogdir is set . . . * [r10441] . Revert "Add -std=c99 to compiler flags." . This reverts commit r10434. . It seems that `-std=c99` really breaks oscam subtly at least according to ticket #4106. . Since setting the standart is not bringing anything positive but seems to come with it's own set of weird bugs, it is better to revert it. . . * [r10440] . __asm__ fix for c99 . . * [r10439] . Better fix for asm usage in cscrypt. . This is better fix that the one applied in r10437. Thanks to Jens for pointing out that this is a better way. . . * [r10438] . - Tryfix for dvbapi internal bufferoverlow . . . * [r10437] . cscrypt: Fix for build with -std=c99. . The optimization that is written in asm for a long time have been performed by the compiler so having it in asm is kind of pointless. . Also not using inline asm makes it possible to build oscam with -std=c99 compiler option. . This fixes ticket #4107. . . * [r10436] . List destruction should always set the list to NULL. . This removes ll_destroy_xxx_NULL() macros in favour of making all ll_destroyXX() functions set the list parameter to NULL. We already have three list destruction functions (too many) in addition to that having 2 more (in the form of macros) was starting to get unwise. . This change also removes the need for this idiom (used in couple of places): . {{{ ll_destroy(x); x = NULL; }}} . The ll_destroyXXX() functions are checking if their parameter is NULL, so there is no need for the caller to check it. . . * [r10435] . config-reader: Refactor freeing of ecm_whitelist and ecm_header_whitelist. . It is a tricky code and duplicating it can only lead to bad things. . . * [r10434] . Add -std=c99 to compiler flags. . This changes nothing in the build (we are already c99 compatible). It just establishes the base compiler support that we are expecting. . . * [r10433] . pages_gen: Avoid strict-aliasing warnings. . . * [r10432] . oscam-emm-cache: Add new lines at the end of file. . Some compilers warn when files don't end with new lines. . . * [r10431] . Additional fix for r10422 (Add card_done() callback to card readers). . I've missed the fact that private data was freed also in free_reader(). Now the leak described in r10422 should be fixed. . . * [r10430] . conf-reader: Free strings allocated by config. . The memory occupied by 'description' and 'readnano' was not freed when reader freeing function was called. . . * [r10429] . camd33/camd35: Allocate aes_keys per client on connect. . This saves 480 bytes in `struct s_client` for every client that is not using camd33 or camd35 protocols. . Structure changes: . {{{ struct before after delta savings s_client 3048 2568 -480 15.8% . binary size: add/remove: 1/0 grow/shrink: 3/0 up/down: 103/0 (103) }}} . . * [r10428] . cryptoworks/viaccess: Allocate EMM reassembly buffers on demand. . This patch saves 1008 bytes from `struct s_client` in the common case where cw/via readers are enabled. Now only AU enabled clients would allocate EMM reassembly buffer for themselves. . Structure changes: . {{{ struct before after delta savings s_client 3928 2920 -1008 25.0% }}} . . * [r10427] . newcamd: Prevent filter copying. . In addition to saving some copying, bloatcheck reports: {{{ add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-120 (-120) function old new delta newcamd_auth_client 5523 5403 -120 }}} . . * [r10426] . Allocate FTAB dynamically . The FTAB structure size is bigger than 2100 bytes and also the number of filters is limited to 16. . This structure is used to implement the account filters (via 'ident' and 'chid' settings) and reader filters (via 'fallback_percaid', 'localcards', 'ident' and 'chid' settings). . These settings are not used by everyone but everyone takes the memory hit. . This patch makes the bulk of the structure dynammically allocated. The memory savings are very nice: . {{{ struct before after delta savings s_ftab 2116 16 -2100 99.3% s_reader 13592 5200 -8392 61.8% s_client 8120 3928 -4192 51.7% s_auth 6176 1976 -4200 68.1% . Binary size: add/remove: 2/0 grow/shrink: 13/23 up/down: 1139/-434 (705) }}} . . * [r10425] . cryptoworks/viaccess: Use rdr_log in EMM reassembly functions. . . * [r10424] . ghttp: Release all memory on exit. . valgrind reports: {{{ 192 bytes in 1 blocks are still reachable in loss record 1 of 1 at 0x4C29ADD: malloc (vg_replace_malloc.c:296) by 0x4B5773: cs_malloc (oscam-string.c:11) by 0x4B1536: ll_create (oscam-llist.c:44) by 0x44F744: module_ghttp (module-ghttp.c:758) by 0x4048FB: main (oscam.c:1502) }}} . and a lot of things related to SSL error strings that were not freed when SSL is enabled. . . * [r10423] . Wait before stopping GC when running under valgrind. . This hack leaves some time for oscam threads to finish what they're doing before stopping the garbage collector. It is a hack to make valgrind happy and to produce clean report of what is possibly leaked. . . * [r10422] . Add card_done() callback to card readers. . This allows card readers to free their privately allocated data and fixes leak in videoguard2 reader. . valgrind reported: . {{{ 344 bytes in 2 blocks are definitely lost in loss record 436 of 733 at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) by 0x478FD3: cs_malloc (oscam-string.c:11) by 0x44F2C2: memorize_cmd_table (reader-videoguard-common.c:773) by 0x45295D: videoguard2_card_init.part.0 (reader-videoguard2.c:587) by 0x453A77: videoguard2_card_init (reader-videoguard2.c:539) by 0x4436A0: reader_get_cardsystem (reader-common.c:144) by 0x443A44: cardreader_do_reset (reader-common.c:194) by 0x47AE47: work_thread (oscam-work.c:293) by 0x5477181: start_thread (pthread_create.c:312) by 0x578800C: clone (clone.S:111) }}} . . * [r10421] . Remove executable bit on source files. . . * [r10420] . EMM: . Replace the simple emm ringbuffer with dynamic allocated buffering for emms and emmstats Emmcache and emm reader stats are now loaded and saved upon oscam start and stop For my usage the cards will only be served with fresh emms no matter how many times I start and stop oscam. . ToDo: . The usual fixing of broken stuff :) Webif cosmetics: use the new additions like firstseen, lastseen, firstwrite, lastwrite, delete emmcache, delete emm reader stat.. . . . . * [r10419] . fixed aeskey list memleak . . * [r10418] . fixed hashtable freeing . . * [r10417] . Remove dead increments. . The variables that are incremented are not used after that, so the increment can be removed. . Found by clang checker. . . * [r10416] . Let the compiler decide if func needs to be inlined. . This function is the only inlined function (that is not static) in the whole oscam source. Surely that func is not that important but also the compiler complains about it when c99 mode is switched on. . With this patch bloatcheck reports 589 byte savings. {{{ add/remove: 1/0 grow/shrink: 0/1 up/down: 152/-741 (-589) function old new delta __xxor - 152 +152 do_cmd 4124 3383 -741 }}} . . * [r10415] . strings.h needs to be included for strcasecmp(). . We got strcasecmp() indirectly because of _GNU_SOURCE, but let's be explicit that we need that header. . . * [r10414] . cacheex: Remove unused function and remove inline marks. . . * [r10413] . reader: Free emm cache. . valgrind reported: {{{ 565,248 bytes in 46 blocks are definitely lost in loss record 483 of 487 at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) by 0x477F63: cs_malloc (oscam-string.c:11) by 0x4774FF: reader_init (oscam-reader.c:1153) by 0x47A0A1: work_thread (oscam-work.c:285) by 0x5477181: start_thread (pthread_create.c:312) by 0x578800C: clone (clone.S:111) }}} . . * [r10412] . pages_gen: Free all memory when exiting with errors. . The bug was found with clang checker. . . * [r10411] . pages_gen: Check if we have any templates at all. . The bug was found with clang checker. . This prevents possible allocation with 0 size and weird behaviour when there are no defined templates. . . * [r10410] . pages_gen: Simplify loading of is_defined.txt . We already have readfile() function, let's use it. . . * [r10409] . webif color fix . . * [r10408] . Prevent possible NULL pointer deref. . Looks impossible to me but according to clang checker it can happen. The fix is simple enough. . . * [r10407] . Check the result of cs_strdup(). . It is not a very likely situation that in this place cs_strdup() would fail but crashing is not nice and the result of memory allocation functions must be checked at all times. . . * [r10406] . fixed memleak . . * [r10405] . revert camd35 pid change . . * [r10404] . small fix for last commit . . * [r10403] . applied patches 10399_status_online_proxys_r4.patch 10399_duoble_emm_online_proxies_cosmetic s_r1.patch from: http://www.streamboard.tv/wbb2/thread.php?postid=535337#post535337 . . * [r10402] . Cleanup cache allocations on oscam exit. . valgrind reports: . {{{ 272 bytes in 1 blocks are possibly lost in loss record 3 of 5 at 0x4C2B854: calloc (vg_replace_malloc.c:623) by 0x40128C4: _dl_allocate_tls (in /lib64/ld-2.20.so) by 0x4E3CFE5: pthread_create@@GLIBC_2.2.5 (in /lib64/libpthread-2.20.so) by 0x4B8590: start_thread (oscam.c:822) by 0x404C2B: main (oscam.c:1562) . 512 bytes in 1 blocks are still reachable in loss record 4 of 5 at 0x4C29ADD: malloc (vg_replace_malloc.c:296) by 0x4918CB: tommy_hashlin_init (tommyhashlin.c:50) by 0x492308: init_hash_table (oscam-hashtable.c:11) by 0x492602: init_cache (oscam-cache.c:69) by 0x4043EA: main (oscam.c:1480) . 512 bytes in 1 blocks are still reachable in loss record 5 of 5 at 0x4C29ADD: malloc (vg_replace_malloc.c:296) by 0x4918CB: tommy_hashlin_init (tommyhashlin.c:50) by 0x492308: init_hash_table (oscam-hashtable.c:11) by 0x41FC12: cacheex_init_hitcache (module-cacheex.c:56) by 0x4043EF: main (oscam.c:1481) }}} . . * [r10401] . Prevent memory loss. . valgrind reports: . {{{ 66 bytes in 1 blocks are definitely lost in loss record 1 of 2 at 0x4C29ADD: malloc (vg_replace_malloc.c:296) by 0x4B4A83: cs_malloc (oscam-string.c:11) by 0x4B4B6F: cs_strdup (oscam-string.c:46) by 0x49EF2B: init_config (oscam-config-global.c:1078) by 0x4043F4: main (oscam.c:1482) }}} . . * [r10400] . cache: Mark variables and functions static. . These are not used outside of oscam-cache.c they should be static. . . * [r10399] . Sci . Gives shorter init time for seca/nagra tunneled cards on Vu+ series . . * [r10398] . cache: Split cacheex code into separate function. . . * [r10397] . cache: Split cycle check code into separate function. . . * [r10396] . cache: Simplify code. . The `if` check is already ugly enough, let's simplify it a bit. . . * [r10395] . cache: Simplify code. . Having multiple places that unlock a taken lock is an easy mistake waiting to happen. . . * [r10394] . cache: Reduce CS_CACHEEX ifdefs. . struct ecm_request_t grows by a pointer but we can always regain this space (if needed) by just trimming the structure a bit. vid and prid can be uint16_t, from_xxx variables can be packed into bitmask, msglog can be slimmed down, cwc_msg_log can trimmed from 64 bytes to 32 without any problem and there are probably more...). . . * [r10393] . cache: Remove CW_CYCLE_CHECK ifdefs. . Due to structure alignment (we have 3 single bytes before uint16_t) we've already lost the single byte that is occupied by got_bad_cwc. We can use this opportunity to simplify the code. . . * [r10392] . cwcycle: Move private structures out of the header file. . This structures are only used in module-cw-cycle-check. I'm leaving only the public stuff in the header file. . . * [r10391] . cacheex: Move cacheex code out of oscam-ecm.c into module-cacheex.c . . * [r10390] . camd35 tcp: do not complain about packet size if a client closed the connection . . * [r10389] . dvbapi: new command to stop descrambling all demuxers . The commit add possibility to close all demuxers related with the connection (using network protocol). It uses the following packet for this: 9F 80 3f 04 83 02 00 FF . If the demux index = 0xff then all related demuxers are stopped. . . . * [r10388] . oscam-monitor: fixed sending corrupt packets when strlen(txt) > 255 on crypted connections . . * [r10387] . gbox: Remove gbox code from garbage collector. . gbox specific code (that is not even related to memory management) have no place in garbage collector which is pretty central part of oscam. . Ref: http://www.streamboard.tv/wbb2/thread.php?postid=535223 . . * [r10386] . gbox: Remove unneeded initialization. . This field is already zero (the client is cs_malloc()'ed). . . * [r10385] . gbox: Remove unneeded initializations in oscam-ecm. . These fields are already zero (courtesy of cs_malloc() couple of lines up). . . * [r10384] . more fixes . . * [r10383] . fixed last commit . . * [r10382] . fixed memory leaks reported here: http://www.streamboard.tv/wbb2/thread.php?postid=535176#post535176 . . * [r10381] . added fix for possible crash . . * [r10380] . added cccam card sid merging . . * [r10379] . final fix for warning "array subscript has type char" we are now using the same syntax as strtolower() [oscam-string.c] see thread: http://www.streamboard.tv/wbb2/thread.php?postid=535127 . . * [r10378] . gbox: Disable calling external OSD scripts by default. . Calling external sripts the way it is implemented is big security hole, so this patch disables this feature by default. . If you need it, uncomment `#define GBOX_ENABLE_UNSAFE_OSD 1` and recompile oscam. . For more info: http://www.streamboard.tv/wbb2/thread.php?postid=534454#post534454 . . * [r10377] . Fixes/cleanups related to read tiers patch committed in r10376. . . * [r10376] . vg2: Add read tiers patch. . For more info see ticket #4091. . Original patch by BigGyros. Original readme follows: . This patch is the sum of various code: - some found in streamboard forum (thanks to authors) - some were reversed from a (shitty) commercial oscam mods (thanks to an anonymous guy who sent to me) some written just by observing the logs from a season interface . What this patch does? 1) it fix the read of tiers for the nds cards like 09AC that stopped to support the ins76 method readtiers = 0 //disable = 1 //ins70 = 2 //ins76 (add it in the reader section or use webif) 2) it adds support for some ins that helps the nds card after the emm update 3) I hope it will breaks business of assholes who gain money from the free works of some streamboard users. . What this patch does not? 1) this patch does not break any DRM or any countermeasure done to fight the piracy 2) this patch does not help anybody to share cw 3) this patch does not help the assholes to sell receivers, lines, oscam-mod, fake solutions, birds, woods, monkeys.. . Is the patch tested? - Yes, it works.. . . * [r10375] . cacheex: Cleanup the header file a bit for easier reading. . . * [r10374] . cacheex: Move cacheex code from oscam-cache.c to module-cacheex.c . oscam-cache.c is for generic code. . . * [r10373] . better fix for warning "array subscript has type char" . . * [r10372] . fixed warning "array subscript has type char" . . * [r10371] . disable ecm odd/even byte check for constcw requests . . * [r10370] . Smartreader protocol . fix compile warning . . * [r10369] . Smartreader protocol . Modified restart protection to be dev handle base. . . * [r10368] . Sci . IOCTL_SET_DEACTIVATE does not work on dm8000. Free allocated mem's when closing reader. . . * [r10367] . [gbx] Introduce optional parameter cccam_reshare in gbox section of oscam.server. . cccam_reshare can be used to control the number of hops of cccam cards in the gbx network. It is independent from the global reshare settings of cccam and is similar to the parameter cccreshare in the reader settings of cccam. However the logic is gbx-like not cccam. Setting it to 0 will prevent cccam cards from being shared. Settings > 0 represent the number of hops. . . . . * [r10366] . net: Initialize local variable. . Found by clang checker. . . * [r10365] . ecm: Prevent possible NULL ptr dereference. . Found by clang checker. . . * [r10364] . cccam: Prevent possible NULL ptr dereference. . Found by clang checker. . . * [r10363] . Correctly restore errno after nanosleep(). . Additional fix after r10353. . . * [r10362] . oscam-log: Remove useless check. . Size can't be zero, no need for check for this at all. . . * [r10361] . WebIf: . - Fix typo and set width for table in emm_running.html . . * [r10360] . enabled and fixed dvbapi for cygwin. now it is possible to run a dvbapi tcp server on windows. for example together with dvbv-dvbapi-plugin by schwa226 thread here: http://www.streamboard.tv/wbb2/thread.php?threadid=42677 . . * [r10359] . WebIf: . 1. Fix for textarea in script.html. Show height for textarea if isn´t text output. 2. Same width for table in emm.html as emm output in textares. . . * [r10358] . Currently we are not sending the (ecm)pid over camd35, this makes constcw requests impossible. To fix this, this change will use the "buf+18" field to store the pid. This space is ignored or set to a hard-coded value by all other camd3 implementations I checked. The orignal camd3 code either sets it to zero or fills this field with something related to the crc32 checksum and the value at buf+16. Since up to now we just set it to '0xffff', this change should not break anything. I have tested connecting to orignal camd3 and everything worked. . . * [r10357] . Sci . Modified restart wait until closed protection to act really reader based. Added a extra log output to detect incompatible commands versus stb type. Example The IOCTL_SET_DEACTIVATE function. Not supported on dm8000 but required on vuduo2. . . * [r10356] . Webif: (Tnx Ultra47 and oscam community members for their effort!) . - Fix for http://www.streamboard.tv/oscam/ticket/4064 - Patch r9947 enhanced - Fix show written emms if emm logdir empty - Optical fixes show written emms - Show written emms on write emm tab sorted and filtred (oldest first, newest last), idea by schorsch . . . . * [r10355] . stat: Remove useless check. . Checking for 'ea' just tricks static checkers that 'ea' can be NULL which it can't be. . . * [r10354] . smartreader: Prevent NULL pointer derefence. . . * [r10353] . Correctly restore errno after nanosleep(). . . * [r10352] . [gbx] Obey reshare parameter of cccam also in gbx network. Check for ECMs taking too many hops. . . . . * [r10351] . fix for #4043 . . * [r10350] . oscam-config: Fix variable types. . If you have set `lb_force_fallback` in your config, because of wrong variable type in oscam-config-reader.c initializing this variable overwrite others after it. . This may lead to crashes and unexpected behaviour. . . * [r10349] . devtools: Improve messages in check_config_tables.sh . . * [r10348] . devtools: Improve config table checking script. . . * [r10347] . Prevent "too many open files" issue on OS X. . Patch by powercore posted in ticket #4008. . . * [r10346] . log: Third try to fix anticasc log. . This is a fix for ticket #4092. . . * [r10345] . cccam: Move cacheex code into separate file. . This cleans up module-cccam.c (which is already very big) and the ability to compare camd35 and cccam cacheex implementations. . They have a lot of common. . Another nice thing is the removal of all CS_CACHEEX ifdefs in cccam module. . . * [r10344] . cacheex: Remove useless ifdefs. . The whole file is guarded by CS_CACHEEX ifdef, there is no need for these extra ifdefs. . . * [r10343] . log: Fix for anticasc log. . Additional fix for ticket #4092. . . * [r10342] . build: Do not warn about using openssl on OS X. . . * [r10341] . log: Add missing new line in log lines. . This fixes ticket #4092. . . * [r10340] . camd35: Move cacheex related code in module-camd35-cacheex.{c,h} . Over 45% of the code in camd35 was dedicated to cacheex. So much code deserves it's own file. This cleans camd35 a lot and makes it ifdef free and a lot easier to follow. . . * [r10339] . camd35: Add proper prefix to all functions that didn't have one. . * All camd35 funcs now have camd35_ prefix. * All camd35 funcs that deal with cacheex now have camd35_cacheex_ prefix. . . * [r10338] . camd35: Mark funcs static where needed. . These functions are used only in this module. . . * [r10337] . camd35: Prepare cacheex code for moving into separate file. . This commit is just preparation for moving camd35 cacheex code into separate file. . . * [r10336] . camd35: Prepare cacheex code for moving into separate file. . This commit is just preparation for moving camd35 cacheex code into separate file. . . * [r10335] . camd35: Prepare cacheex code for moving into separate file. . This commit is just preparation for moving camd35 cacheex code into separate file. . . * [r10334] . camd35: Prepare cacheex code for moving into separate file. . This commit is just preparation for moving camd35 cacheex code into separate file. . . * [r10333] . camd35: Prepare cacheex code for moving into separate file. . This commit is just preparation for moving camd35 cacheex code into separate file. . . * [r10332] . camd35: Prepare cacheex code for moving into separate file. . This commit is just preparation for moving camd35 cacheex code into separate file. . . * [r10331] . camd35: Remove unneeded CS_CACHEEX ifdefs. . This code is already covered by ifdef CS_CACHEX, no need for second check inside this ifdef. . . * [r10330] . dvbapi experimental: auto filter limiting . Some users experience "ERROR: read error on fd xx" I guess this due to the fact too much filters (presumable emm type) are started and the box is killing random filters started before. Even worse, soms boxes accept it all without returning to us no more filters we reached maximum. On attempt to read the data from a certain filter the "ERROR: read error on fd xx" is returned. . Now this filter is killed and the max ammount filters is lowered by 1. Once oscam is running for some time the max ammount filters will be settled on a value that works for your box. . Feedback you can give here: http://www.streamboard.tv/wbb2/thread.php?postid=534445#post534445 . . . * [r10329] . WebIf: Right maxlegth for input (set Group) in user_edit.html . Thx uf2k. . . * [r10328] . - tryfix: moved the cs_sleepms() to a (hopefully) better place in the handler code . . . * [r10327] . build: Fix smartreader compilation on OS X. . . * [r10326] . webif/pages_gen: Do not leak fds in readfile(). . readfile() was not closing the file it opened. If your system have lowered file open limits (like < 256) pages_gen failed because there were too many open files. . . * [r10325] . Reduce CS_CACHEEX ifdefs. . * Structure definitions do not need to be guarded. * Funcs that are not used would be dropped by the compiler. * Func declarations do not need to be guarded. . No binary changes. . . * [r10324] . webif: Reduce WITH_LB ifdefs. . We can use config_enabled() instead of ifdef in these cases. . . * [r10323] . config-reader: Reduce WITH_LB ifdefs. . Just code movement, no functional changes. . . * [r10322] . config-account: Remove duplicated function. . The function already exists in oscam-config-global.c. No need to copy/paste it. . . * [r10321] . camd35: Remove WITH_LB ifdefs. . We can use config_enabled() instead of ifdef in this case. . . * [r10320] . chk: Remove WITH_LB ifdefs. . Just code movement, no functional changes. . . * [r10319] . reader: Remove WITH_LB ifdefs. . Just code movement, no functional changes. . . * [r10318] . ecm: Reduce WITH_LB ifdefs. . Just code movement, no functional changes. . . * [r10317] . ecm: Reduce WITH_LB ifdefs. . Just code movement, no functional changes. . . * [r10316] . ecm/dvbapi: Reduce WITH_LB ifdefs. . Just code movement, no functional changes. . . * [r10315] . ecm: Reduce WITH_LB ifdefs. . Just code movement, no functional changes. . . * [r10314] . ecm: Remove dead code guarded by WITH_LB ifdef. . The removed code boils down to: . {{{ if (!provid) { loop { if (some_check || some_other_check) provid = 0; break; } } }}} . which is obviously bogus since provid is already 0. . . * [r10313] . Revert "gbox: Do not use popen() to write into files." . This reverts commit r10286. It turns out that gbox really wanted to execute shell commands. See commit r9723. . . * [r10312] . gbox: Add new lines at the of OSD files. . Without new lines r10286 probably broke the osd functionality. . . * [r10311] . pcsc: Do not include PCSC/reader.h on OS X. . This header do not exist on OS X's pcsc. . . * [r10310] . build: Check USE_ flags when card reader config is being listed. . This allows the build to display SMART and PCSC readers, when they are enabled. . . * [r10309] . build: Show what config file is being used. . . * [r10308] . [gbx] One more it found. . . . . * [r10307] . [gbx] Small fix for r10305. . . . . * [r10306] . - Fix compile warning introduced in r10305 . . . * [r10305] . [gbx] Fix total cards in hello display. Fight against spaghetti code. . . . . * [r10304] . [gbx] Consolidate MSG_HELLO1 handling. . . . . * [r10303] . [gbx] Collapse first hello handling. Do not malloc hostname on every new hello. . . . . * [r10302] . build: When getting include PATHs do not try to compile. . This speeds up include path detection nearly three times (not that it was slow but anyway). . . * [r10301] . build: Allow PCSC headers to be installed in CROSS/.../local/include/PCSC . Without this oscam would try to include PCSC headers from host's /usr/local/include/PCSC instead of the headers in the toolchain. . . * [r10300] . build: Fix cross compilation of PCSC. . We use the compiler's last include PATHs and add PCSC to it. . Basicaly it is /usr/include but in case of cross compilation it might be something else. . Since using -Iinc_path instructs the compiler to use inc_path (without add the toolchain system root) we need to have this hack to get the "real" last include path. Why we needs this? . Well, the PCSC headers are broken and rely on having the directory that they are installed it to be in the include PATH. . We can't just use -I/usr/include/PCSC because it won't work in case of cross compilation. . . * [r10299] . build: A simpler way of fixing PCSC header idiotism. . Just playing with include paths is enough to work around broken PCSC headers which are installed in include/PCSC/... but include themselves without PCSC/ . . * [r10298] . README.build: Update. . . * [r10297] . build: Remove TARGET_SYSROOT. . gcc option -print-sysroot is not always supported. For example on older toolchains and for toolchains compiled without --with-sysroot. . Also this variable is not used. . . * [r10296] . build: Allow PCSC to be built with other than shipped headers in extapi. . If you do not want to use the PCSC headers shipped in extapi, you may build oscam by specifiyng another include directory. . {{{ make USE_PCSC=1 DEFAULT_PCSC_FLAGS=-I/usr/local/include }}} . . * [r10295] . [gbx] more log cosmetics . . . . * [r10294] . README.build: Update. . . * [r10293] . build: Clean pcsc build variables for OS X. . . * [r10292] . build: Use local pcsc headers for compilation. . . * [r10291] . build: Use pcsc headers in extapi. . . * [r10290] . extapi: Add PCSC headers. . PCSC headers as shipped by pcsclite project are buggy. They are installed in /usr/{local/}include/PCSC but they use #include and #include (Note the missing PCSC/ directory). . The result is that the compilation fails if the compiler is not instructed to add to its include path /usr/include and/or /usr/include/local. . Adding these paths comes with it's own set of problems for cross compilation. . So the "cleanest" thing is to adopt pscs headers in extapi. . Currently extapi/PCSC contains all headers that are needed for PCSC compilation. The only difference between them and the ones shipped by pcsclite is that include statements were fixed to correctly include PCSC/... . Even if you don't have pcsc installed `make pcsc` would compile oscam, just the final link phase would fail complaining about missing libpcsclite. . . * [r10289] . Make file PCSC . better then hack in 10288 . . * [r10288] . build: Fix PCSC cross compilation. . This hack is needed because PCSC includes instead of . . It is ugly but it'll work. . . * [r10287] . Revert "build: Remove forced include path in pcsc build." . This reverts commit r10285. . PCSC ships with broken headers which include when they should include . It worked for me because I have copied wintypes.h into /usr/local/include. . . * [r10286] . gbox: Do not use popen() to write into files. . Using popen() to write into files is highly unusual. Let's do this properly. . . * [r10285] . build: Remove forced include path in pcsc build. . Adding /usr/include/PCSC in the include path is wrong in case of cross compiling. We include pcsc headers using #include which forces the compiler to use default include search path, which in turn contains /usr/include and /usr/local/include. . So this should fix building pcsc in cross compilation environment. . . * [r10284] . dvbapi: . Add support for mapped A: lines . Example: . A:::10E0:0844::: 2600:000000:1FFF . Receiver wants to demux srvid 10E0 on adapter 0000 camask 0001 index 0000 pmtpid 0844 .. .. Added fake ecmpid 2600:000000:1fff for unencrypted stream on srvid 10E0 . . . . * [r10283] . log: Unify logging function names under cs_log prefix. . This commit renames logging functions. Now everything that logs can be found by searching for cs_log. . Here is what is being done: . ` > Existing logging: > -> cs_log > > Renamed: > cs_debug_mask -> cs_log_dbg > rdr_debug_mask -> rdr_log_dbg > rdr_debug_mask_sensitive -> rdr_log_dbg_sensitive > > Existing logging that hexdumps buffer: > -> cs_log_dump > -> rdr_log_dump > > Renamed: > cs_ddump_mask -> cs_log_dump_dbg > rdr_ddump_mask -> rdr_log_dump_dbg ` . Here is the script that was used to make the changes. . {{{ FILES=$(find -name '*.c' -o -name '*.h') . perl -pi -e 's|cs_debug_mask|cs_log_dbg|g' $FILES perl -pi -e 's|rdr_debug_mask|rdr_log_dbg|g' $FILES perl -pi -e 's|rdr_debug_mask_sensitive|rdr_log_dbg_sensitive|g' $FILES perl -pi -e 's|cs_ddump_mask|cs_log_dump_dbg|g' $FILES perl -pi -e 's|rdr_ddump_mask|rdr_log_dump_dbg|g' $FILES }}} . The old function names were defined as compatability but don't use them in new code because these defines would be removed sometimes in the future. . . * [r10282] . log: Unify log headers. . We don't really need 3 types of log headers. . . * [r10281] . log: Add log prefix to hex dumps. . . * [r10280] . [gbx] Small addition to r10279 . . . . * [r10279] . [gbx] Harmonizing log messages after recent changes by gfto. Thx! . . . . * [r10278] . - Revert experimental protection against boxes that seem to close filters without being instructed to do so by dvbapi - On hypercube su980 always return ok on io_ctl + some code cosmetics in io_ctl to make it more readable - Some recoding on dvbapi init (boxtype+api) since cs_log() needs these parameters set before otherwise crashing . . . * [r10277] . Internal readers non-pll (cardmhz < 2000): . Proper fix for regression introduced in r10267 . . . * [r10276] . - Fix for segfaults due to changed logline styles (used vars must be inited before logging now!) . . . * [r10275] . - Remove unused var .Di from struct cardreadersettings . . . * [r10274] . - Somehow I managed to get oscam to use too much resources -> give it back! . . . * [r10273] . dvbapi: . - More rework on resorting ecmpids - More Logcosmetics . . . * [r10272] . More dvbapi eyecandy: log how much time sorting the ecmpids takes! . . . * [r10271] . dvbapi: . Channelcache enhenced once more: deleting whole channelcache on oscam.dvbapi change removed. Now exact channelcache hit is checked at end of ecmpid prio/ignore matching. If a channelcache entry matches with highest prio -> start descrambling only that ecmpid otherwise ignore channelcache. . . . . * [r10270] . - Same mixup D <> Di for smargo . . . * [r10269] . - Correction mixup of D and Di (old code was sending D but smartreader code accepted it as Di...) . . . * [r10268] . csctapi: Change Fi only on sci card readers. . This fixes regression introduced in r10267. . . * [r10267] . csctapi: Merge three write_settings() callbacks. . This patch removes write_settings2 and write_settings3 callbacks merging them into single write_settings() that receives struct s_cardreader_settings parameter. . . * [r10266] . serial: Don't try to be cute with logging format strings. . The compiler will save duplicated strings only once anyway, so there is no need for such a trick. . . * [r10265] . log: Rename cs_dump() and rdr_dump() to cs_log_dump() and rdr_log_dump(). . Now searching for cs_log we'll get places where logging funcs are used. . . * [r10264] . Use rdr_dump instead of cs_dump in card readers. . . * [r10263] . gbox: Remove duplicated log prefixes. . . * [r10262] . constcw: Remove duplicated log prefixes. . . * [r10261] . Move logCWtoFile() func to oscam-ecm.c . It is the only place where it is used also the idea of oscam-log.c is to hold the global logging code. . . * [r10260] . log: Move anticasc logging code into module-anticasc.c . And clean an ifdef in module-log.c . . * [r10259] . dvbapi/azbox/mca: Clean logging messages. . Now that we have module prefixes these additional prefixes are not needed. . . * [r10258] . dvbapi: No need to handle obvious invalid fd! . . . * [r10257] . dvbapi: . - Small log cosmetic I missed - Experimental protection against boxes that seem to close filters without being instructed to do so by dvbapi . . . * [r10256] . dvbapi log cosmetics . . . * [r10255] . log: Add MODULE_LOG_PREFIX to the files that need it. . . * [r10254] . log: Prepare anticascading log for logging prefixes. . . * [r10253] . log: Align module prefixes. . . * [r10252] . log: Allow each source file to declare it's own log prefix. . Adding `#define MODULE_LOG_PREFIX "mymodule"` before including globals.h would instruct logging functions to add this prefix in each log message. . This functionality would allow a lot of cleanup in module logging messages and it'll make it easier to sort (filter) messages by module. . . * [r10251] . csctapi: Use rdr_debug_mask() instead of cs_debug_mask(). . . * [r10250] . smartreader: Use rdr_log() instead of cs_log(). . . * [r10249] . csctapi: Use rdr_log() in azbox and sci card readers. . . * [r10248] . readers: Use rdr_log() in cryptoworks and viaccess readers. . . * [r10247] . dvbapi: Workaround for CA_SET_DESCR ioctl() on su980. . The kernel on su980 boxes is buggy returns error when CA_SET_DESCR is called. For more info see: http://www.streamboard.tv/wbb2/thread.php?postid=533940 . . * [r10246] . Machine info . Extend boxtype info to all internall readers as harmless test. Or at least as check that it's harmless. . . * [r10245] . Machine Info . cosmetic removed a not wanted space . . * [r10244] . Machine info . added su980 boxtype . . * [r10243] . oscam-log: Split cs_log_int(). . Split cs_log_int() into separate functions for logging single lines and logging with buffer dumping. This is made mainly to avoid having unused parameters in a single function. . As far as the users of the logging API are concerned - the API is unchanged. . bloatcheck reports 12077 bytes saved from x86_64 oscam binary and 14044 bytes saved on dm500 binary. . . * [r10242] . oscam-log: Prepare cs_log_int() for splitting into separate functions. . This is just a preparation - code movement and whitespace changes. No noticable functional changes. . . * [r10241] . oscam-log: Remove lock parameter of cs_log_int(). . The comment added in r10240 was wrong. liboscam_stapi.a calls cs_log() function which is correctly emulated in module-dvbapi-stapi.c so it is safe to remove lock parameter of cs_log_int(). . According to bloatcheck this change saves 9006 bytes from the oscam binary on x86_64. . . * [r10240] . oscam-log: Clarify why we keep 'lock' parameter to cs_log_int(). . . * [r10239] . oscam-log: Remove XXX_nolock() macroses. . The `lock` parameter of cs_log_int() is even marked as unused because it really is. There is no point in having XXX_nolock. . . * [r10238] . oscam-log: Reorder some declarations to reduce ifdefs. . . * [r10237] . Revert "Extra dump functions." . This reverts commit r10016. . Gratiuous copy+paste for no reason at all. These functions were not even used. Not worth the extra 75 lines of code that does exactly nothing (luckily the linker knows when a code is not used so these functions never increased the binary size and after removing them the binary is exactly the same). . . * [r10236] . failban: Restore the behaviour broken by r10232. . . * [r10235] . - Refresh nagra entitlement only if last written emm was more than 60 minutes ago . . . * [r10234] . - fix for pincode (now only 4 digits) - cosmeticfix for boxkey => now double length - fix for last channel on status.html . Tnx goes to Ultra47 developing the patch together with some dedicated oscam users! . . . * [r10233] . Remove ifdef from oscam-config.c . . * [r10232] . Remove CS_ANTICASC ifdef in oscam-failban.c . . * [r10231] . Clean SO_REUSEPORT ifdefs. . Most (if not all) of these calls to set socket option SO_REUSEPORT are bogus IMHO, but cleaning this mess is left for another time. For now just remove create a function and use it instead of sprinkling ifdefs everywhere. . I'm 97.8% sure that all of these calls can be removed... . For more info about SO_REUSEPORT see: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c617f398edd4db2b8567a28e899a88f8f574798d http://stackoverflow.com/questions/3261965/so-reuseport-on-linux . . * [r10230] . Remove last HAVE_DVBAPI ifdef in oscam-reader.c . . * [r10229] . Move function used only in dvbapi module closer to where it is called. . Also cleanup the function a bit. . . * [r10228] . Eliminate the last two ifdefs's in oscam-work.c . Move the code where it belongs in module-cacheex.c and remove the ifdefs. . . * [r10227] . config: Some sed implementations do not support -i option. . Patch by kraiv @ satsupreme for improving OpenBSD support. . . * [r10226] . - Cosmetic fix for internal readers driving irdeto cards at wrong speed . . . * [r10225] . - Revert accidental changes to config.h . . . * [r10224] . - dvbapi fix for boxtype pc using listenport (tnx Manio for reporting and testing) . . . * [r10223] . [gbx] Remove extra call to gbox_send_good_night . . . . * [r10222] . [gbx] Fix memleak introduced with r10140. Supposed to fix ticket 4075. See: http://www.streamboard.tv/wbb2/thread.php?threadid=42906 . . . . * [r10221] . OpenBSD fixes from kraiv @ satsupreme. . . * [r10220] . - Only allow listenport on boxtype pcnodmx . . . * [r10219] . - Fix for clear channelcache sporadic crashing . . . * [r10218] . Machine Info . boxtype with less complicated code done by gf. . . * [r10217] . oscam-work: Reduce CS_CACHEEX ifdefs. . . * [r10216] . oscam-work: Replace ifdef with config_enabled(MODULE_CCCAM). . . * [r10215] . Update README.build. . Somebody (probably me) forgot to run `make README.build` after changing the help text in the Makefile. . . * [r10214] . dvbapi/samygo: Clean the code for future development. . According to the developers SAMYGO dvb code is not currently working. This patch removes the config symbol and cleans the code so future development can fix the code easily. . For more info: http://www.streamboard.tv/wbb2/thread.php?postid=533219 . In theory if the code was working this transformation should not break it and fixing only the samygo detection routine should return it to the state before this patch minus all the ifdefs. . . * [r10213] . Remove more useless WITH_CARDREADER ifdef's. . . * [r10212] . Remove some HAVE_DVBAPI ifdefs. Checksums-Sha1: 622c06067c7257e92d6f8f500b6b5125c5e3835f 1652 oscam_1.20-11441~r11211-xenial.dsc e00e132e2c382c68e8962b4862895a154a0840d0 43001 oscam_1.20-11441~r11211-xenial.debian.tar.bz2 Checksums-Sha256: 92cf49ef09c87e9cafda1ce79f9efa5f81f5e5f3a9bce1b9b2156e1eca3f2fbb 1652 oscam_1.20-11441~r11211-xenial.dsc 363d88fa3e3900ab3f086e3e95351041c77d83d4e2854734820d11f689a9283e 43001 oscam_1.20-11441~r11211-xenial.debian.tar.bz2 Files: 26853caa511de16f605e701d98af4713 1652 video extra oscam_1.20-11441~r11211-xenial.dsc 920f55c63577c7216455791c107eb242 43001 video extra oscam_1.20-11441~r11211-xenial.debian.tar.bz2