• Hola Guest, Si quieres poner tu granito de arena para mantener el foro y colaborar económicamente con su mantenimiento.

    Puedes hacerlo aquí: https://www.lonasdigital.com/donaciones/


OSCam Git 11.9xx

5.00 star(s) 1 Rating
Cambios 11939 * agregar verificación para la documentación wiki de los parámetros de configuración - [ci skip]

Agregar nuevo ayudante 'check-wiki-documentation' en oscam-helper.yml
Comprueba si todos los parámetros DEF_OPT_* están documentados en la wiki
Asigna archivos de configuración a archivos wiki.
* oscam-config-global.c -> oscam.conf.md
*oscam-config-account.c -> oscam.user.md *oscam-config-reader.c -> oscam.server.md
Salida coloreada que coincide con el estilo CI existente
Agregar nuevo trabajo 'wiki-check' en oscam-ci.yml
Se ejecuta en la etapa 'fixup' después de la limpieza del código
Desencadenantes en merge_request_event y programación
allow_failure: verdadero (solo advertencia)
dvbapi: eliminar opciones de configuración obsoletas de dvbapi
Eliminar las opciones de la sección [dvbapi] obsoletas durante más de 10 años:
- prioridad
- ignorar
- retraso_cw
Estas opciones se migraron al archivo oscam.dvbapi hace mucho tiempo.
Eliminar la función dvbapi_caidtab_fn() y la declaración externa relacionada
porque ya no son necesarios.
Los usuarios con configuraciones antiguas ahora verán advertencias de "configuración desconocida".
lo que les impulsa a migrar a oscam.dvbapi.
 
Last edited:
Cambio 11940 *Lector: añadir la función maxparallel para limitar los servicios simultáneos por lector

Esta función permite limitar la cantidad de servicios que pueden usar un lectorSimultáneamente, esencial para lectores de tarjetas con restricciones de ranura.
= NUEVAS OPCIONES DE CONFIGURACIÓN===
maxparallel (predeterminado: 0 = ilimitado)
Número máximo de servicios activos por lector. Al alcanzarlo, el lector... se omite y se prueban otros lectores (fallover).
tiempo de espera paralelo (predeterminado: 1000 ms)
Se agregó búfer al intervalo de ECM medido para la expiración de la ranura.
Un espacio expira cuando no se recibe ningún ECM dentro del intervalo medido + tiempo de espera.
factor paralelo (valor predeterminado: 1,5)
Multiplicador de ranuras pendientes para soportar zapping sin pantalla negra.
Establezca en 0 para deshabilitar las ranuras pendientes (aplicación estricta de maxparallel).
Sistema de doble ranura con servicios activos y pendientes:
Ranuras activas (tamaño: maxparallel)
Servicios confirmados que reciben activamente CW de este lector.
Ranuras pendientes (tamaño: maxparallel * parallelfactor)
Desbordamiento temporal durante el cambio de canal. Los servicios pendientes están
se promueve a activo cuando se liberan espacios (FIFO), o se descarta cuando
Los servicios activos necesitan capacidad.
Horario de reserva de franjas horarias:
Las ranuras se reservan cuando un lector ENTREGA un CW, no cuando la solicitud
Se envía. Esto evita que los lectores bloqueen la capacidad de los servicios.
No terminan de servir cuando se consulta a varios lectores en paralelo.
==LISTA DE BLOQUEO PARA UNA FALLOVER LIMPIA ===
Cuando se descarta un servicio pendiente, la combinación cliente+servicio es
Se agregó a una lista de bloqueo por lector. Esto causa:
Solicitudes ECM posteriores de combinaciones bloqueadas para omitir este lector
Cambio limpio a otros lectores sin ciclos de caída repetidos
No hay spam de registros de servicios que pasan repetidamente al estado pendiente y se abandonan.
Ciclo de vida de la lista de bloqueo:
Agregado: cuando el servicio se elimina de pendiente
Eliminado: cuando el cliente cambia a un servicio diferente
Despejado: cuando un espacio activo queda libre
=== CASO DE USO TÍPICO ===
Lector 1: maxparallel=1 (la tarjeta solo permite 1 servicio)
El receptor graba el Servicio A en el Lector 1, el usuario pasa al Servicio B
El servicio B va a la ranura pendiente (no hay pantalla negra durante el zap)
El servicio A envía ECM -> El servicio B se retira de pendiente
El servicio B está bloqueado en el Lector 1 -> pasa al Lector 2
El usuario detiene el servicio B -> bloqueo despejado, lector 1 disponible nuevamente
 
Cambio 11940 *Lector: añadir la función maxparallel para limitar los servicios simultáneos por lector

Precisamente instalé esta versión ayer, aún no he testeado esas nuevas opciones pero sin saber las novedades ya pensé que se comportaba bastante mas "rápida" a la hora de abrir...
 
Precisamente instalé esta versión ayer, aún no he testeado esas nuevas opciones pero sin saber las novedades ya pensé que se comportaba bastante mas "rápida" a la hora de abrir...

Yo de momento, no la he podido probar, Pero segun los test realizados, es como dices y algunas de las opciones nuevas, tiene buena pinta y mejoria en cache y bajada de tiempos, No exageradamente, y tampoco hace milagros :54:pero si algo notable .

Ya depende de cada uno, pues es una opcion otra jjj

En poder, te. Indico cuales son las novedades en foto jajaja de las opciones nuevas
 
Cambios 11941 * StreamRelay: soluciona la comparación de hosts de respaldo y las fugas de recursos
Se corrige la comparación del host de respaldo usando streq() en lugar de la comparación de puntero
Se corrigen fugas de sockets en connect_to_stream() en fallas de setsockopt/connect
Agregar controles de seguridad para glistenfd antes de cerrar operaciones
Se corrige remove_newline_chars() para que también gestione retornos de carro
Punteros de clave NULL después de dvbcsa_bs_key_free() para evitar la doble liberación
Rediseñar stream_server() usando el patrón do-while(0) para un manejo de errores más limpio
Formato de código según CODING.RULES.txt
 
Cambios 11942 * webif: corrección de la visualización de derechos para cccam

Separar las funciones de clasificación de tarjetas del módulo cccshare para permitir
Los clientes de CCCAM pueden ver los derechos recibidos en Webif incluso cuando
MODULE_CCCSHARE está deshabilitado.
Esto corrige un problema de diseño donde MODULE_CCCSHARE controlaba ambos
compartir funcionalidad (lado del servidor) y visualización de derechos (lado del cliente),
evitando que los clientes de CCCAM puros vean sus derechos.
 
Cambios 11943 *dvbapi: usar el descriptor SERVICE_TYPE_MASK para corregir la entrega de CW para servicios compartidos.
Cuando stream_write_cw() entrega con éxito un CW a un cliente de transmisión,
Devuelve verdadero y evita que se escriba el mismo CW a través de
Dispositivo CA (ioctl/netsend). Este enrutamiento exclusivo genera una brecha de CW.
en demuxers que requieren la entrega del dispositivo CA hasta el siguiente ciclo cw,
porque stream_write_cw() consume el CW antes que el cliente de transmisión
se ha desconectado completamente.
Analizar el descriptor SERVICE_TYPE_MASK (0x85) del CA PMT para
Identificar si un demux sirve a un cliente de flujo (tipo 7/8) o requiere
Dispositivo CA directo o descodificación de envío de red. Para demultiplexores que requieren
Dispositivo CA o entrega de netsend, siempre escriba el CW a través de dvbapi_write_cw
Independientemente de si stream_write_cw() lo consumió. Para transmisiones exclusivas
Los demuxers y clientes que no envían el descriptor 0x85 conservan el
comportamiento exclusivo original.
 
estoy contento con ncam y kscamd, demasido... me aburro xD, me podeis decir donde está este git? voy a probar a ver que sale
 
estoy contento con ncam y kscamd, demasido... me aburro xD, me podeis decir donde está este git? voy a probar a ver que sale

:109: Yo tambien me aburro con ncam jajaja

Por eso, aparte que tiene mucho peso y muchas tonterias jajaja🤭

Puse un Manual como compilarlo.

Si no, avisa, Y intento subirte y hacerte la ultima actualmente.

Un saludo
 
Cambio 11944 * dvbapi: suprimir el registro de reintentos de conexión del modo pmt 6
Registre el intento de conexión y el error solo una vez, luego vuelva a intentarlo silenciosamente cada segundo hasta que el servidor de CA PMT esté disponible
 
Cambio 11946 arreglar la compilación con OpenSSL 4
Corregir -Wdiscarded-calificadores en X509_get_subject/issuer_name
OpenSSL 4 cambiado X509_get_subject_name() y X509_get_issuer_name()
Para volver 'const X509_NAME *', que rompe la llamada a nuestro local
helper _X509_NAME_oneline_utf8() que todavía toma un no-const
X509_NOMBRE *:

oscam-signing.c:235:46: advertencia: pasando el argumento 1 de
'_X509_NAME_oneline_utf8' descarta el calificador 'const' desde
Tipo de objetivo de puntero [-Wdiscarded-califiers]
Enrute el resultado de los X509 getters a través de un uintptr_t lanzado a
Suelte explícitamente el calificador const en los sitios de llamada, reflejando el
Enfoque ya utilizado para ASN1_STRING_type() en ASN1_TIME_to_posix_time().
Esto evita cambiar la firma del ayudante, lo que requeriría una
Pase de const-corrección más invasivo dado que las versiones más antiguas de OpenSSL
(incluyendo 0.9.x, todavía compatible con este archivo) declaró muchos X509
APIs como no-const.
Fijar el accesor ASN1_STRING_type()
En OpenSSL 4 la estructura ASN1_STRING / ASN1_TIME se hizo completamente opaca,
Por lo tanto, los miembros de la estructura ya no se puede acceder directamente desde el público
Cabeceras. Esto rompió la compilación WITH_SIGNING:

oscam-signing.c:124:17: error: uso no válido de typedef incompleto
'ASN1_TIME' {aka 'const struct asn1_string_st'}
switch(t->tipo)
El puntero de datos ya se manejaba a través de ASN1_STRING_get0_data() para
OpenSSL >= 1.1.0, pero el tipo t-> todavía se accede directamente y fue
Se pasa por alto hasta que OpenSSL 4 eliminó el último bit de visibilidad de la estructura.
Reemplace el acceso directo al miembro con el accesor ASN1_STRING_type()
Función, que ha existido desde OpenSSL 0.9.x y por lo tanto es
Disponible en todas las versiones compatibles (1.0, 1.1, 3.x, 4.x) sin un
La versión guardia.
Desde las versiones anteriores de OpenSSL, declare que ASN1_STRING_type() toma un
no-const ASN1_STRING *, el lanzamiento se enruta a través de uintptr_t a
Retire explícitamente el calificador const de t sin activar
-Wscarded-calificadores (tratados como error por la compilación de CI 'antigua').
uintptr_t ya está disponible a través de globals.h (stdint.h).
 

Create an account or login to comment

You must be a member in order to leave a comment

Create account

Create an account on our community. It's easy!

Log in

Already have an account? Log in here.

Activity
So far there's no one here

Similar threads

PoP_PeQuE
Replies
190
Views
67K
PoP_PeQuE
PoP_PeQuE
S
Replies
3
Views
2K
samottome31
S
S
Replies
8
Views
2K
samottome31
S
M
Replies
1
Views
1K
PoP_PeQuE
PoP_PeQuE
Back
Top