Actualizaciones OSCam 1.20_svn (Build: 11703)


OpenSpa Team
Miembro del equipo
Moderador OpenSPA
2 Mar 2009
En este hilo iremos poniendo las actualizaciones de OSCam y los cambios de las diferentes versiones segun las vayamos compilando y añadiendo a nuestras descargas, asi tendreis un poco mas de información sobre lo que estais usando. Toda sugerencia es bien recibida.

Actualmente compilamos 3 versiones de OSCam que podeis disfrutar en nuestra imagen:

- OSCam normal con lo mas basico y usado normalmente.
- OSCam_pcsc, este es como el anterior pero añade soporte para lectores usb pcsc (dni electronico).
- OSCam_modern, este añade la interface Modern Webif by Gorgone y algun extra mas.

Los ultimos cambios de Oscam podeis verlos en el siguiente enlace:


Cambios 11611
-build warning: no newline at end of file.
Cambios 11610
-fix build warning in module-cccam.c
Cambios 11609
-fix build warning in oscam-reader.c
Cambios 11608
-fix externel css loading #4809
Cambios 11607
-Fix slow reader loading #4808
Cambios 11606
-fix small typos for stapi build
Cambios 11605
-add aditional fixes for CMakeLists.txt
and oscam.c
Cambios 11604
-fix build warnings
Cambios 11603
-next build fix
Cambios 11602
-next build fix, revert Makefile exclude
Cambios 11601
-fix build module-monitor.c
Cambios 11600
-fix stapi build
Cambios 11599
-fix stapi5 build
Cambios 11598
-fix small monitor build error
Cambios 11597
-small fix for (lg) detection
Cambios 11596
-module-monitor.c build Fix
-lazy but works
Cambios 11595
-fix for reset readerstats @webif thnx to uf2k
-fix for client send cmd 0x50 after server restart
-fix client au + client auth
Cambios 11594
-small fix for webif
Cambios 11593
-webif cache-size / reader page for lg-flagged CWs
Cambios 11592
-add missing range from RFC 1597
Cambios 11591
-fix camd35/ext mode
Cambios 11590
-update wiki links
Cambios 11589
-restore config.h to 11580
Cambios 11588
-redo fixed version
Cambios 11587
-w33dburn buildfix
Cambios 11586
-fix build without cacheex
Cambios 11585
-this is an extension for cacheex and only for this !!!
it does not change any other aspects of oscam with this extension it becomes possible to mark and filter ecms
Cambios 11584
- small fix for CAK7 Cards HD03/04/05
refresh valid to date
-the recommendation remains to enable shared and disable global emm
Cambios 11583
-Commit patch that fixes some URL's from ticket #4800
Cambios 11582
-[gbx] repeat to ask all gbox readers again during fallback time
Cambios 11581
-fix for ticker #4787
Cambios 11580
-update wiki URL

Cambios 11579
-Revision 11393 introduced sharing instability side effect.
My fix is rather lame since it restores the old behavior in case the nodeid is lower than 0x7fffffffff

Cambios 11578
-rework code ref gbox_maxecmsend
-fix for ticket #4780
-change default to 5
-clean up some ecm stuff

Cambios 11577
-fix HD03/05 CMD Overflow
-patch provided by @pehedima
-should fix ticket #4777
-remove some DOS CRLFs in oscam.work.c

Cambios 11576
-[gbx] - more generalized routing info in cw msg
fix minor bugs​
thanks @chimpie23​
Cambios 11575
-[cak7] - fix caid 0000 and all other known issues
no config change required​
patch provided by @pehedima​

Cambios 11574
-[gbx] - fix ccc->gbox reshare
-[gbx] - add caidtab as reshare setting

Cambios 11573
-[gbx] - try fix ecm and cw messages
fix ecmfmt g,j parameters​
-[dvbapi] - add ecm.info gbox style

Cambios 11572
-fix for BSkyB 0963
-fix ticket #4764

Cambios 11571
-NDS DES/3DES Overcrypt support
-fix bug for wrong decoded classD3 CMD's
-improved Sky DE/CH/AT V14/V15 payload log output
-patch provided by kabeltod

Cambios 11570
-fix certificate chain loading
-fix for ticket #4573
-patch provided by delilah23

Cambios 11569
-Attempt to count descramblers used properly

Cambios 11568
-Fix for descramblers used not 100% fixed but it is more accurate than before

Cambios 11567
-More fix for dvbapi client v3

Cambios 11566
-HD+ HD05 Card support

Cambios 11565
-More tryfix socketdata handling

Cambios 11564
-Small fix

Cambios 11563
-More tryfix for dvbapi client protocol 3

Cambios 11562
-Tryfix for ticket 4759

Cambios 11561
- [dvbapi] Always regard stream_type 0x81 as audio (ac3) without looking for the ac3_descriptor
This fixes some not ATSC complaint channels reported with no sound.

Cambios 11560
-Remove more dvbapi logspam

Cambios 11559
-Fix: valid section length is minimal 4

Cambios 11558
-Newcamd: Corrected brain fart commit (zero check was even already present)
-Camd35: Add protection against empty ecms

Cambios 11557
-More fix for malformed ecm request as described in ticket 4760

Cambios 11556
-Refactor handling of command packages
-Add generic command package dump to assist in debugging
-Remove the now superfluous dumps that were thrown while processing the commands

Cambios 11555
-Add generic hardening against empty ecm. It makes no sense to process empty ecms at all!

Cambios 11554
-Implement changes needed as researched by t5b6_de for dvbapi client protocol V3

Cambios 11553
-More fix due to bad refactoring commits

Cambios 11552
-[gbx remm]
allow remm request for unknown emm
dont send via issuer as peer card

Cambios 11551
-Tryfix regression due to furious refactoring without unittests

Cambios 11550
-Final refactoring step of dvbapi_get_packet_size()

Cambios 11549
-More furious refactoring since I still wasnt happy with the resulting code!

Cambios 11548
-Just refactoring due to investigating an issue with CAPMT parsing

Cambios 11547
-[gbx remm]
fix card not updated if entitlements are expired
new gbox reader parameter 'force_remm'
dont send same successive remm twice

Cambios 11546
-[gbox] Cosmetics

Cambios 11545
-Replaced strncpy() with cs_strncpy() in a few places

Cambios 11544
-[dvbapi] Added more PMT audio descriptors

Cambios 11543
-[dvbapi] Cosmetics and minor optimizations

Cambios 11542
-[dvbapi] CAT filtering optimizations
Separate CAT filter (starting and stopping) from EMM filtering.
Stop CAT filter as soon as CAT is parsed, instead of letting it run forever. (Everytime we get a new channel, the CAT filter is restarted anyway).
Split CAT parsing from CA descriptor parsing.

Cambios 11541
- [dvbapi] Display service name when zapping
If present in oscam.srvid or oscam.srvid2, the service name is displayed at channel zap (like it was done before the CA PMT rewrite).

Cambios 11540
- [dvbapi] SDT parsing optimizations
The SDT filter is now stopped even if no service name or provide name is found. Previously, on FTA or BISS channels, the SDT filter would run forever.
The SDT is now used for getting the tsid and onid of the service (in case we haven't already receive them in the CA PMT).
Duplicate info from the log is removed to keep it clean. The SDT information is only printed once.
Removed some redundant chekcs from the SDT parsing function. They are already done in the caller function.
Added more service types as "tv".
The actual string parsing and supported character sets remained the same (still some eastern character sets are not supported).

Cambios 11539
-[dvbapi] Added option to enable/disable ecm.info file creation

Cambios 11538
-[documentation] Whitespace cleanup

Cambios 11537
- [dvbapi] Reworked "ca_pmt_cmd_id" skipping logic

According to the spec (https://www.dvb.org/resources/public/standards/En50221.V1.pdf), the "ca_pmt_cmd_id"
value shall be present inside the ES info loop. Unfortunately, each dvbapi client does each own thing. The
only reliable way to detect when this info is present in the CA PMT is to actually check its value, like it
was done in the old code.

Most boxes always send the typical value of 0x01 (ok_descrambling) and the above check works fine because
there is no descriptor_tag 0x01 to get confused with. On the contrary, for enigma2, values like 0x03 (query),
0x04 (not_selected) are possible (not yet, but soon). Skipping these higher values the same way will not work,
because descriptors with such tags can exist, so a different check is implemented for enigma2.

In practice, this commit fixes the VDR dvbapi plugin, as well as the enigma2 boxes with wrong dvbapi boxtype
setting ("none" instead on the correct "dreambox" - the setting is irrelevant now, but will make a difference
in the future, so make sure you set it correctly).

Cambios 11536
- [dvbapi] Fixed "ca_pmt_cmd_id" value for PMT files

For CA PMT messages received via PMT files, set the "ca_pmt_cmd_id" to a proper value (ok_descrambling) instead of zero.
Also made few cosmetic changes.

Cambios 11535
- [dvbapi] Tryfix for various boxes not working after 11533

It seems there are more retarded boxes out there that set the ca_pmt_cmd_id to 0 instead of a proper value.

Cambios 11534
-[dvbapi] Fixed previous commit when WITH_EXTENDED_CW is enabled

Cambios 11533
- [dvbapi] Rewritten the CA PMT parsing code

Some key notes for this revision:

The CA PMT and PMT parsing code is split into separate functions. Additional functionality is also moved to different functions.
The previous CA PMT parsing logic is retained (written by theparasol), but the code is much simpler, easier to maintain and a bit faster.
The CA PMT message is not completely parsed now if there is no need for it (e.g. no change is made to the channel).
The PMT is now parsed only if it's necessary (e.g. for powervu channels, when no streams are present in CA PMT, etc).
Added preliminary support for reading the "ca_pmt_cmd_id" value. A future update (in oscam and enigma2) will allow using multiple oscam instances simultaneously.
Added support for a new descriptor with tag 0x87 in the CA PMT message, used exclusively for sending the ca device information.
Added detailed information for the private CA PMT descriptors supported by oscam in the readme (for dvbapi client developers).

Cambios 11532
-[dvbapi] Small fix to previous commit.

Cambios 11531
-[dvbapi] DVBAPI_CA_SET_DESCR_DATA struct was not sent correctly to network clients.

Cambios 11530
-[dvbapi] Fixed compilation with coolapi.

Cambios 11529
-[dvbapi] Moved #define's to header file and made a few cosmetic changes
The CA PMT list management defined values are updated with proper info from the corresponding standard, instead of using OpenPLi's poor explanatory text.

Cambios 11528
-[dvbapi] Moved parsing of CA descriptor to a separate function
This is necessary for the upcoming changes.

Cambios 11527
-[dvbapi] Moved reading of priority entries in separate functions

Cambios 11526
-[dvbapi] When parsing PAT, save found PMT pid in the demuxer
This way we can later start the PMT filter without explicitly passing the PMT pid.

Cambios 11525
-[dvbapi] Changes to a couple of log messages

Cambios 11524
-[dvbapi] Changed variable name (cosmetic)
dvbapi_parse_capmt() returns the demux_id, not the pmt_pid, so use a proper variable name.

Cambios 11523
-Revert 11522 and applied correct fix made by nautilus7

Cambios 11522
-Tryfix possible regression introduced in rev 11520

Cambios 11521
-fix webif save issue with high var count

Cambios 11520
-Added support for a higher number of demux devices in CA PMT
Modern enigma2 boxes with FCB tuners can have many demux devices,
so a new CA PMT descriptor that allows up to 128 demuxes (descriptor tag 0x86) is now supported.
Also, the get_demux_options() function is completely re-written,
so it doesn't care for the order of descriptors inside the CA PMT message.

Cambios 11519
-small cleanup

Cambios 11518
  • Fixed bug in dvbapi not releasing used descramblers in stapi, coolapi and gxapi boxes
  • Increased MAX_STREAM_INDICES back to 32 (it must be equal to MAX_STREAM_PIDS)
  • Modified the get_emm_filter_adv() function to accept more arguments
  • Cosmetics to module-cccam.c and module-cccam-cacheex.x
  • Removed some camd specific code not needed anymore
Cambios 11517
-fix bug in disablecrccws_only_for also in cacheex
-general disable checksum correction code optimization

Cambios 11516
-fix bug in disablecrccws_only_for
update for server & client cams!

Cambios 11515
-small fix to the open() call when we get the descrambler count from the box

Cambios 11514
-remove duplicate debug dump of er->ecm

Cambios 11513
-fix building

Cambios 11512
-fixed the problem and oscam-camd can now be built with static libcrypto

Cambios 11511
-part 3. of dvb api changes
*Increased max demux to 32 and max filters to 64
*Decreased max ecm pids to 16 and emm pids to 16
*Decreased max stream indices to 8
*Lots of cosmetics changes

Cambios 11510
-small text typo fixes

Cambios 11509
-part 2.
Support for DVB-CISSA scrambling algorithm and 16 byte CWs

Cambios 11508
-first part of the rework on dvbapi
to incrase the amount of descramblers
-Get available descramblers in box and BISS2 related changes
*Instead of using a predefined number of descramblers (16 until now), oscam now gets the exact number of available descramblers in box.
*Skip cw checks for BISS2, similar to what is done for BISS1. BISS2 uses 16 byte cw, so some checks need to be skipped.
*Cosmetic changes including code refactoring, variable renaming and comment addition to several places.

Cambios 11507
- change tab / spaces

Cambios 11506
- switch to cbc
and fix oscam-string.x

Cambios 11505
- dont overwrite demux_index if demuxid >0

Cambios 11504
- to make people be happy ...

No "dummy" camd reader included at all in oscam
and no sign of camd in the webif
Removed WITH_EMU and WITH_SOFTCAM options from
:config.sh, makefile, cmakelists.txt and config.h

Some camd specific code parts remain in the source code
and can be activated only after patching with the camd reader

Cambios 11503
- this patch includes:

A. make, cmake and config parameters.

This means that we have 2 new options:
WITH_EMU to enable/disable the (dummy) camd reader, and
WITH_SOFTCAM to enable/disable linking of softcam.key inside the binary.
The WITH_SOFTCAM option can be removed completely if you like.
No code that reads keys is included.

B. All webif changes are included.

This means that when building WITH_EMU enabled,
there will be a stream relay page and
an camd reader "config bit" in the reader settings.
There will also be a softcam.key link
to open the softcam.key file and see its content
(similar to what is done in constant.cw file).

C. When building with disabled WITH_EMU,

there will be no sign of camd reader anywhere.

Cambios 11502
- fix some bugs
- insert hd03 and hd04 atr

Cambios 11501
- complete remove of cardlist.c + cardlist.h

Cambios 11500
- this is expected to be the last cleanup patch

Cambios 11499
- fiy small inconsistencies in config.h/config.sh

Cambios 11498
- fix bbuild for make & cmake
disable writing of empty keys

Cambios 11497
- fix reset to wrong defaults

Cambios 11496
- clean implementation of the card list
- rarely used modules are set from default on to default off (no codechange just setup switch)

Cambios 11495
- small acosc fix

Cambios 11494
- small fix for build without webif

Cambios 11493
- old compiler dont like passive #pragma comments

Cambios 11492
- eliminate build warnings by using the integrated function
cs_strncpy instead of strncpy

Cambios 11491
- extended fix for orf global emm
dont disable global emms or set in config blockemm-g = 0
caid 0x0D96 & 0x0D98
thnx to all testers and support on digital-eliteboard

Cambios 11490
- fix last commit missing ;

Cambios 11489
- some cleanups for newcamd
and add script for git svn diff creation

Cambios 11488
- fix typo in mca build
thanks sattotal

Cambios 11487
- enhance function anticascading or SIDs count

Cambios 11486
- add UPC Hungary support & clean up

Cambios 11485
thnx Optimum Power

Cambios 11484
- enhancement #4662
by Jotne
show number of cards in the log

Cambios 11483
- fix small typo
move log to debug #4664

Cambios 11482
- fix #4692 for missing values in ecminfo_type = 3
by Optimum Power

Cambios 11481
- small cleanup

Cambios 11480
- big update pack 5
another cleanup &
removed duplicate functions

Cambios 11479
- unified presentation
of tabs and spaces

Cambios 11478
- big cleanup pack 4

Cambios 11477
- another buildwarning fix
!!! SAMYGO User !!! report any issue

Cambios 11476
- fix 4 build warnings

Cambios 11475
- fix another small build warning

Cambios 11474
- fix cmake compiler warning

Cambios 11473
- big cleanup pack 3

Cambios 11472
- big cleanup & bugfix for all warnings for gcc 7.2+

Cambios 11471
- cleanup module-dvbapi.c

Cambios 11470
- Cleanup and add functions

Cambios 11469
- fix warnings in #11468

Cambios 11468
- another cleanup patch

Cambios 11467
- small cleanup in cscrypt
+ adding libs

Cambios 11466
- set demuxer stop point if PMT demux_index == 0
found by schwa226

Cambios 11465
- Changeset:
fix Nagra & Nagra Merlin Tier Expire Dates
Nagra EMM Filter merged
Nagra Merlin Code cleanup
completeness check of the required CAK7 keys
Block NAD changes reverted
fix xxor fallthrough
aescbc removed
tabs / comments / spaces cleanup
thnx kabeltod

Cambios 11464
- tryfix

Cambios 11463
- part1 cleanup and fixes for gcc 8.2

Cambios 11462
- fix last commit

Cambios 11461
- another cleanup patch
thnx optimum power

Cambios 11460
- code cleanup and fix for NDS Standard cards
thnx to KD (de-board)

Cambios 11459
- fix typo missing ;

Cambios 11458
- fix 1x fallthrough / break videoguard2 cleanup

Cambios 11457
- part 2 for ORF AU fix
-add CAID 0D96
-add on/off switch
thnx to pehedima

Cambios 11456
- [gbox] fix oscam crash when enable ccc to gbx share

Cambios 11455
- add support for VideoGuard? BSkyB (0960) entitlement date

Cambios 11454
- I send the FEDC patch for polish seca cards.
It was made by: Jej@n and ketanol

Cambios 11453
- created functions for detecting caid. "tandberg" is renamed to "director", because tandberg is the compary and director is the CA system.
by Nautilus7

Cambios 11452
- some dvbapi cleanups (but there's more to do.)
- whitespace clean up

Cambios 11451
- fix for last commit ...

Cambios 11450
- !!!! Better stream type identification based on descriptors
OSCam now detects the type of each stream pid (video, audio, subtitle, etc) based, not only on the "stream_type" value in the PMT, but on the stream descriptors as well. Stream type detection is crucial when using the extended cw and this patch fixes many problems with PowerVu? channels which had no working audio streams. Stream type detection is now done once and is the same whether the "simple" cw or the extended cw are used.
all based on Nautilus7 great JOB !!!!

Cambios 11449
- fix orf cards (0D98) au if global is blocked
based on pehedima fix digital-eliteboard

Cambios 11448
- better solution streamid
thnx Nautilus7

Cambios 11447
- Tryfix for Powervu
by Nautilus7

Cambios 11446
[gbox] - Speed up local card status detection and report cards to Leete las normas

Cambios 11445
- fix for ticket #4699 - add tandberg to 'get cardsysten' in oscam.simples.c
- fix for ticket #4700 - add #include <sys/sysmacros.h> to globals.

Cambios 11444
[gbox] - fix peer password not stored in config

Cambios 11443
[gbox] - fix parameter 'gbox_reshare'
  • show peer-id & online stat in webif reader
  • code clear up
Cambios 11442
-fix compiler issue when build without gbox

Cambios 11441
  • improve REMM feature
  • show remm req in webif
  • gbx webif cosmetics/improvements
  • fix typos from r11437 thx sattotal
  • remove ccc stuff from gbx page when ccc not compiled in
  • webif: display 'use_gpio' on physical readers only
Cambios 11440
[nagra merlin]
  • fix some compiler errors and warnings introduced r11429
  • patch provided by DaMulda?
Cambios 11439
-Enables Nagra Merlin (CAK7) reader by default
-Corresponding keys are now configurable via WebIf and config files

Cambios 11438
-[gbox webif]
  • dont show cccam stuff in gbx reader page
Cambios 11437
-[gbox webif]
  • make webif more gbx friendly
  • gbx specific settings not shown on other protocols
  • moved 'use_gpio' from smargo to mouse
Cambios 11436
- Fix for tiers with rights set to 0x49xx (tnx tommy76 for research and patch!)

Cambios 11435
- Revert r11164 see ticket #4609 (tnx Tommy76 for researching!)

Cambios 11434
- Fix #4688 not procesing all received emm packets at filter startup tnx xoxo for this patch!

Cambios 11433
  • fix DGCrypt Redlight Card not running since r11429
  • this fixes ticket #4687
  • thx OP and pehedima
  • fix mdc2.c compilation with openssl 1.1.x
  • thx flk
  • fix orf_ice text in cardlist.h


CONSEJO!!!: Antes de instalar cuanquiera de los OScam o NCam+ del panel descargas, es mas que recomendable parar la Cam en uso en el CamdManager.

Última edición:


Usuario Destacado
Loco por OpenSPA
25 Nov 2015
Puesta, la 11444 en la opcion normal, todo correcto. Gracias por las aclaraciones de cada versión Evox. ¡¡¡ Feliz año nuevo a todo el foro !!!


Usuario Destacado
Fan de OpenSPA
Amigo OpenSPA
18 May 2017
Gracias!! actualizándolo en mi deco desde Descargas OpenSPA :)


Usuario Destacado
Fan de OpenSPA
2 Dic 2015
Actualizada y funcionando.

Muchas gracias y feliz año nuevo al team


Usuario Destacado
Loco por OpenSPA
6 May 2017
Gracias por la aclaración y puesta 11444.
Feliz Nochevieja para tod@s!!!


OpenSpa Team
Miembro del equipo
Moderador OpenSPA
2 Mar 2009
Actualizados todos los OSCam:

- OSCam a 11446.
- OSCam_pcsc a 11446.
- OSCam_modern a 11446 r783.

Lo nuevo:

Cambios 11446
[gbox] - Speed up local card status detection and report cards to Leete las normas

Cambios 11445
- fix for ticket #4699 - add tandberg to 'get cardsysten' in oscam.simples.c
- fix for ticket #4700 - add #include <sys/sysmacros.h> to globals.



Usuario Activo
Amigo OpenSPA
18 Ene 2018
Muchas gracias evox. Funcionando 11446 (la normal) a la perfección en mi vu solo se v2.