Carserver Proxy 0.8.13
Cardservproxy changelog:
- Added: New attribute per profile 'network-id' (the original dvb network
id, 4 hex digits). This will uniquely identify profiles between proxies,
instead of ca-id. It will also be used in filtering enigma services files.
See proxy-reference.html for info about how to find the id if you don't
know your dvb-network.
- Added: Optional mapping table to auto-assign newcamd connectors to
profiles based on ca-id, to make this work as before even when multiple
profiles use the same ca-id (no longer any need to set 0000, use the
correct id always). Use this only when it is unknown which card a remote
newcamd server contains (or when this changes randomly).
- Added: ClusteredCache now avoids locking for requests where a remotely
received cache lock has the same ip as requesting client, to deal with
situations where both connectors and cache sharing are used to link
multiple proxies together (prevents incoming ecm requests from a remote
proxy being blocked by the cache lock from that same proxy).
- Added: Plugins can now affect connector selection, if they implement the
interface CwsSelector. They'll be given a chance to exclude connectors
from the selection process for each message.
- Added: Cache hits where the cached request had a different ca-id will now
be blocked, to avoid misleading clients that are sending requests to the
wrong profile. This can be disabled using new global setting <block-
caid-mismatch>.
- Added: Disconnected connectors now show when they went offline.
- Added: Newcamd OSD messages are now sent to Acamd as well (previously
only to Mgcamd).
- Added: More user events in the remote api (login, logout, login failure).
Plugins can use these as well.
- Changed: ClusteredCache now uses a much more compact format to
reduce bandwidth (not compatible with old versions).
- Fixed: ClusteredCache bandwidth usage estimates are now properly
calculated even with multiple peers and sync-period.
- Fixed: Minor browser-specific issues with the status web layouts (clear
the browser cache or force a reload).
- Changes to proxy.xml:
Added: Attribute 'network-id' to <profile> (4 hex digits, i.e "a027"). Set this
to the original dvb network id.
Added: Element <block-caid-mismatch> (true/false, default: true) to section
ca-profiles.
Added: Element <caid-profile-map> to <newcamd-connector>
(caid=profilename, entries separated by space). This element
is mandatory if no profile attribute is set for the connector.
For example: <caid-profile-map>0b00=cable 0500=terrestrial</caid-profile-map)
- Changes to the [Only Registered Users Can See Links] api:
Added: Attribute 'disconnected' to <connector> (cws-connectors output).
The time of last disconnect (if disconnected).
Added: Attribute 'network-id' to <profile> (ca-profiles output).
Cardservproxy-0.9.0.RC5
Cardservproxy changelog:
------------------------
0.9.0 - RC5
- Fixed: The included ConaxConnector plugin in 0.8.13 was an older version.
- Fixed: Extra http auth login was required for accessing plugin webs (bug introduced in 0.8.13).
- Fixed: Probing of connectors with unknown status wasn't done when cache hits occured.
- Fixed: No longer possible to create multiple profiles where both ca-id and network-id are the same.
- Fixed: Anonymized (non-au) newcamd card-data can no longer end up with user id 1 (this confused some clients).
- Fixed: Disabling a profile now automatically disables any connectors that explicitly references it.
- Fixed: Enigma services file parsing now uses comma separated filter strings, to allow names with spaces.
- Changed: Network-id is now used in enigma services file parsing only when no provider string filter is set.
- Changed: All time fields in the config can now be specified in minutes/secs/millisecs by adding a suffix (m, s, ms).
If no suffix is added, the old default for the field will be assumed (so configs/docs remain compatible).
- Changed: Added and updated defaults in the generated proxy.xml template to make more sense with the current version.
- Changed: ClusteredCache sync-period is now used even in receive-only mode (without peers). This can allow you to
significantly increase cache hits at the expense of ecm transaction time. ClusteredCache is now used by default.
- Added: Services parser for dvbviewer exports (ini files). The filter string is matched against the "Root" key if set.
- Added: Timed ecm blacklist per connector, to avoid forwarding the same ecm several times to a connector that can't
handle it (mainly when there is no sid to go by in the request). Entries will be kept for 3*max-cw-wait.
- Added: Slightly better awareness of satellite concepts like provider-idents and other ca-system-specific artefacts.
This includes extending the service mapper with an additional custom-id/cid (besides sid) for systems like **deto.
For some systems this will include provider-ident as a factor in the mapping (with require-provider-match for profile).
- Changed: Max-connections changed to a per-profile value, to handle the satellite scenario of the same user connecting
to multiple profiles. I.e now max-connections 1 means the user is allowed 1 connection in every profile they have.
NOTE: This means if you change the value or add ports to a profile, you may have to kick users before it takes effect.
- Added: New connector type 'csp-connector' specifically for chaining multiple proxies together. Requires that the
ONID (network-id) and ca-id is set properly for all profiles in all involved proxies. This type allows multiple
profiles to be shared over a single connection, and prevents loops (forwarding the same ecm back and forth between
proxies that have each other as connectors).
The protocol is documented in the source and connections are initiated using the [Only Registered Users Can See Links] (so ssl can/should be used).
See proxy-reference.html for more info.
- Added: New connector type 'chameleon-connector' for connecting to newcs as mgcamd and accessing multiple cards in one
newcamd session. Only properly identified traffic can be sent to this connector type (known caid + provider ident).
Only remote cards that map into locally defined profiles (matching caid/provider ident) will be used.
- Added: Support for mgcamd/newcs newcamd-extensions in incoming connections (via a single extended-port for all
profiles), using multiple systems over a single newcamd session. For this to work all combinations of caid and
provider ident must map to a profile with network-id set. Ambiguous traffic will be denied.
- Added: Redundant forwarding. The service mappers can now be configured to select two of the least loaded connectors
instead of just one (if two or more candidate connectors exist for a request). If enabled, this can up to double the
load on the cards, but assuming enough capacity exists it will mean always having a backup ready in case the primary
connector choice failed/timed out for any reason. Should improve reliability in single-node proxy setups.
- Added: Plugin dependency resolver. This makes it easy to build plugins that make use of existing 3rd party libraries,
by fetching jars automatically on first load. See README.Plugins.txt for more info.
- Added: When using only asynchronous connectors, it is now possible for a client session to get a cache hit even after
a forward to card was initiated. This can result in transactions with both F and C/R flags.
- Added: Last-seen data now also contains entries for failed login/connect attempts, available through a new status
command 'login-failures' (available to all users, but non-admins can only see attempts made with their user name).
- Added: New interface ReplyFilter that plugins can use to intercept and alter/block DCW's as they're returned from
connectors, before they're processed by the proxy (possibly find and delete bad CW's). See README.Plugins.txt.
A DcwFilterPlugin that illustrates this and blocks some common bad responses is included.
- Added: Fixes for running under jamvm on embedded systems (including the broken auto-generating of the config template).
- Added: New status commands for troubleshooting: 'export-services', 'system-properties' and 'system-threads'.
- Added: Option to configure the date-format used by the default logger.
- Added: Arbitrary ****-data/remote info can now be returned by connectors (for display/troubleshooting/statistics).
- Added: Multiple client ids (oscam, scam, rq-sssp etc).
- Added: More example plugins included.
- Changes to proxy.xml:
Added: Element <csp-connect> to <status-web> (to receive csp-connections, enabled by default).
Added: Element <csp-connector> to <connectors> (to define csp-connectors). See proxy-reference.html.
Added: Element <chameleon-connector> to <connectors> (connector to a newcs/chameleon setup as mgcamd). Same as a
newcamd-connector, except it is not bound to a profile, always asynchronous and ignoring the client-id setting.
Added: Element <extended-newcamd> to <profiles> (unbound port for extended newcamd protocol, as used between mgcamd
and newcs). Allows mgcamd to use multiple systems (all profiles the user has access to) over a single connection.
Added: Element <log-dateformat> to <logging> (optional java SimpleDateFormat string to use for the standard logs).
Added: Attribute 'provider-idents' to <profile> (optional, allows listing of provider-idents, even with no connectors).
Added: Attribute 'require-provider-match' to <profile> (true/false, default: true). Set to false if you know that for
this profile, provider idents in ecm requests do not need to match those on the cards (this is the case for **deto).
NOTE: If require-provider-match is false, provider-idents will get 000000 added automatically. Conversely, if only
ident 000000 is specified for a profile, require-provider-match defaults to false instead of true when omitted.
Added: Attribute 'provider-idents' to <newcamd-connector>, (optional, overrides the idents from the server/card).
Added: Attribute 'exclusive' to <can-decode-services> (true/false, default: false). Set to true for a list to indicate
that there should be no probing done for the connector, only those services listed are to be considered decodable.
Changed: Attribute 'provider' for <service-file> changed to 'filter' to avoid confusion. If provider-idents have been
specified correctly for the profile, there is no longer any need to repeat that list in the case of cccam parsing.
Changed: All elements that allowed hex sid lists to be specified (per connector or profile) now accept an alternate
syntax sid:cid (where cid is custom id, used for situations like the **deto chid where sid alone is not enough).
NOTE: <allow-services> is an exception, checks against that list are made with sid only.
Added: Element <redundant-forwarding> to <mapper> (true/false, default: false). Can be set globally or per profile,
as with other mapping settings. Transactions that trigger redundant forwarding will get the new flag '2'.
- Changes to the [Only Registered Users Can See Links] api: (always use /xmlHandler?command=status-commands or ctrl-commands to see syntax).
Added: New status command 'export-services', dumps the internal state of the service maps (admin only). Add the param
format=hex for an alternate format matching the sid lists used in the config.
Added: New status command 'system-properties', shows the JVM system properties (superuser only).
Added: New status command 'system-threads', dumps all JVM threads as strings (superuser only).
Added: New status command 'login-failures', shows a list of failed login attempts per user or ip (for most interfaces).
Added: New ctrl command 'gen-keystore', auto creates a java keystore for using the status web with SSL.
Added: New ctrl command 'disable-connector', temporarily disables a specified connector.
Added: New ctrl command 'set-profile-debug', temporarily changes debug flags (set to false for ALL to delete ecm logs).
Added: New ctrl command 'remove-failed', removes entries matching specified wildcard mask from login-failures.
Added: Attribute 'time' to <jvm> (proxy-status output). Local system time as a rfc822 date.
Added: Attribute 'cdata' to <service> (most output containing services). Custom data for service mapping (chid/ident).
Added: Element <remote-info> to <connector> (cws-connectors output). List of <cws-param> elements with name/value
attributes, containing arbitrary information about the connector.
Added: Attributes 'network-id', 'ca-id', 'provider-ident' and 'origin-id' to <ecm> (transaction logs). These are only
included when the transaction occured in the '*' profile, and origin-id only for CspSession transactions.
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.