diff options
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | MANUAL | 16 | ||||
-rw-r--r-- | channels.h | 10 | ||||
-rw-r--r-- | config.c | 35 | ||||
-rw-r--r-- | config.h | 22 | ||||
-rw-r--r-- | device.c | 4 | ||||
-rw-r--r-- | dvbdevice.c | 6 | ||||
-rw-r--r-- | eitscan.c | 4 | ||||
-rw-r--r-- | i18n.c | 44 | ||||
-rw-r--r-- | menu.c | 33 | ||||
-rw-r--r-- | vdr.5 | 22 | ||||
-rw-r--r-- | vdr.c | 3 |
12 files changed, 81 insertions, 120 deletions
@@ -4124,3 +4124,5 @@ Video Disk Recorder Revision History - Fixed the "Day" field of the "Edit timer" menu when pressing '0' to switch from "single shot" to "weekly", followed by the "Right" key (reported by Andreas Böttger). +- The file 'ca.conf' is obsolete and has been removed. +- Revised all descriptions regarding CICAM. @@ -656,17 +656,11 @@ Version 1.2 CICAM: - CICAM DVBn m Defines the "Conditional Access" capabilities of the DVB - card 'n'. Each DVB card can provide up to two CICAM - methods ('m' = [1, 2]). - - In the 'setup.conf' file the value consists of the card - number, followed by a list of decryption method values - (defined in 'ca.conf'). - For instance - CaCaps = 3 101 102 - would define that card number 3 is able to decrypt - "Premiere World" and the "ORF". + CICAM DVBn m Shows the CAMs that each device contains, where 'n' is + the number of the device, and 'm' is the number of the + Common Interface slot of that device. The "Red" key + can be pressed to enter the CAM menu, and the "Green" key + triggers a reset of the selected CAM. Recording: @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: channels.h 1.36 2005/09/17 09:59:14 kls Exp $ + * $Id: channels.h 1.37 2006/01/07 13:00:43 kls Exp $ */ #ifndef __CHANNELS_H @@ -39,6 +39,14 @@ #define MAXLANGCODE1 4 // a 3 letter language code, zero terminated #define MAXLANGCODE2 8 // up to two 3 letter language codes, separated by '+' and zero terminated +#define CA_FTA 0x0000 +#define CA_DVB_MIN 0x0001 +#define CA_DVB_MAX 0x000F +#define CA_USER_MIN 0x0010 +#define CA_USER_MAX 0x00FF +#define CA_ENCRYPTED_MIN 0x0100 +#define CA_ENCRYPTED_MAX 0xFFFF + struct tChannelParameterMap { int userValue; int driverValue; @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: config.c 1.139 2006/01/04 14:37:54 kls Exp $ + * $Id: config.c 1.140 2006/01/07 12:28:49 kls Exp $ */ #include "config.h" @@ -120,24 +120,6 @@ bool cSVDRPhost::Accepts(in_addr_t Address) return (Address & mask) == addr.s_addr; } -// -- cCaDefinition ---------------------------------------------------------- - -cCaDefinition::cCaDefinition(void) -{ - number = 0; - description = NULL; -} - -cCaDefinition::~cCaDefinition() -{ - free(description); -} - -bool cCaDefinition::Parse(const char *s) -{ - return 2 == sscanf(s, "%d %a[^\n]", &number, &description) && description && *description; -} - // -- cCommands -------------------------------------------------------------- cCommands Commands; @@ -158,21 +140,6 @@ bool cSVDRPhosts::Acceptable(in_addr_t Address) return false; } -// -- cCaDefinitions --------------------------------------------------------- - -cCaDefinitions CaDefinitions; - -const cCaDefinition *cCaDefinitions::Get(int Number) -{ - cCaDefinition *p = First(); - while (p) { - if (p->Number() == Number) - return p; - p = (cCaDefinition *)p->Next(); - } - return NULL; -} - // -- cSetupLine ------------------------------------------------------------- cSetupLine::cSetupLine(void) @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: config.h 1.237 2006/01/04 13:41:59 kls Exp $ + * $Id: config.h 1.238 2006/01/07 12:57:42 kls Exp $ */ #ifndef __CONFIG_H @@ -61,20 +61,6 @@ public: bool Accepts(in_addr_t Address); }; -#define CACONFBASE 100 - -class cCaDefinition : public cListObject { -private: - int number; - char *description; -public: - cCaDefinition(void); - ~cCaDefinition(); - bool Parse(const char *s); - int Number(void) const { return number; } - const char *Description(void) const { return description; } - }; - template<class T> class cConfig : public cList<T> { private: char *fileName; @@ -166,15 +152,9 @@ public: bool Acceptable(in_addr_t Address); }; -class cCaDefinitions : public cConfig<cCaDefinition> { -public: - const cCaDefinition *Get(int Number); - }; - extern cCommands Commands; extern cCommands RecordingCommands; extern cSVDRPhosts SVDRPhosts; -extern cCaDefinitions CaDefinitions; class cSetupLine : public cListObject { private: @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.c 1.117 2006/01/06 13:50:00 kls Exp $ + * $Id: device.c 1.118 2006/01/07 14:09:17 kls Exp $ */ #include "device.h" @@ -647,7 +647,7 @@ eSetChannelResult cDevice::SetChannel(const cChannel *Channel, bool LiveView) ciHandler->SetSource(Channel->Source(), Channel->Transponder()); // Men at work - please stand clear! ;-) #ifdef XXX_DO_MULTIPLE_CA_CHANNELS - if (Channel->Ca() > CACONFBASE) { + if (Channel->Ca() >= CA_ENCRYPTED_MIN) { #endif ciHandler->AddPid(Channel->Sid(), Channel->Vpid(), 2); for (const int *Apid = Channel->Apids(); *Apid; Apid++) diff --git a/dvbdevice.c b/dvbdevice.c index 6f99939e..52c52cea 100644 --- a/dvbdevice.c +++ b/dvbdevice.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbdevice.c 1.147 2006/01/05 15:30:06 kls Exp $ + * $Id: dvbdevice.c 1.148 2006/01/07 14:05:59 kls Exp $ */ #include "dvbdevice.h" @@ -503,7 +503,7 @@ bool cDvbDevice::Ready(void) int cDvbDevice::ProvidesCa(const cChannel *Channel) const { - if (Channel->Ca() >= 0x0100 && ciHandler) { + if (Channel->Ca() >= CA_ENCRYPTED_MIN && ciHandler) { unsigned short ids[MAXCAIDS + 1]; for (int i = 0; i <= MAXCAIDS; i++) // '<=' copies the terminating 0! ids[i] = Channel->Ca(i); @@ -767,7 +767,7 @@ bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Ne if (Channel->Vpid() && !HasPid(Channel->Vpid()) || Channel->Apid(0) && !HasPid(Channel->Apid(0))) { #ifdef DO_MULTIPLE_RECORDINGS #ifndef DO_MULTIPLE_CA_CHANNELS - if (Ca() > CACONFBASE || Channel->Ca() > CACONFBASE) + if (Ca() >= CA_ENCRYPTED_MIN || Channel->Ca() >= CA_ENCRYPTED_MIN) needsDetachReceivers = Ca() != Channel->Ca(); else #endif @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: eitscan.c 1.29 2005/11/05 15:24:36 kls Exp $ + * $Id: eitscan.c 1.30 2006/01/07 14:10:17 kls Exp $ */ #include "eitscan.h" @@ -147,7 +147,7 @@ void cEITScanner::Process(void) for (cScanData *ScanData = scanList->First(); ScanData; ScanData = scanList->Next(ScanData)) { const cChannel *Channel = ScanData->GetChannel(); if (Channel) { - if (!Channel->Ca() || Channel->Ca() == Device->DeviceNumber() + 1 || Channel->Ca() >= 0x0100) { + if (!Channel->Ca() || Channel->Ca() == Device->DeviceNumber() + 1 || Channel->Ca() >= CA_ENCRYPTED_MIN) { if (Device->ProvidesTransponder(Channel)) { if (!Device->Receiving()) { bool MaySwitchTransponder = Device->MaySwitchTransponder(); @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: i18n.c 1.227 2006/01/06 16:03:41 kls Exp $ + * $Id: i18n.c 1.228 2006/01/07 12:50:33 kls Exp $ * * Translations provided by: * @@ -1494,6 +1494,48 @@ const tI18nPhrase Phrases[] = { "CA", "CA", }, + { "Free To Air", + "frei empfangbar", + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + }, + { "encrypted", + "verschlüsselt", + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + "",//TODO + }, { "Sid", "Sid", "Sid", @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 1.387 2006/01/06 11:44:25 kls Exp $ + * $Id: menu.c 1.388 2006/01/07 13:51:09 kls Exp $ */ #include "menu.h" @@ -42,28 +42,25 @@ // --- cMenuEditCaItem ------------------------------------------------------- class cMenuEditCaItem : public cMenuEditIntItem { -private: - const cCaDefinition *ca; - bool allowCardNr; protected: virtual void Set(void); public: - cMenuEditCaItem(const char *Name, int *Value, bool AllowCardNr = false); + cMenuEditCaItem(const char *Name, int *Value); eOSState ProcessKey(eKeys Key); }; -cMenuEditCaItem::cMenuEditCaItem(const char *Name, int *Value, bool AllowCardNr) +cMenuEditCaItem::cMenuEditCaItem(const char *Name, int *Value) :cMenuEditIntItem(Name, Value, 0) { - ca = CaDefinitions.Get(*Value); - allowCardNr = AllowCardNr; Set(); } void cMenuEditCaItem::Set(void) { - if (ca) - SetValue(ca->Description()); + if (*value == CA_FTA) + SetValue(tr("Free To Air")); + else if (*value >= CA_ENCRYPTED_MIN) + SetValue(tr("encrypted")); else cMenuEditIntItem::Set(); } @@ -73,18 +70,8 @@ eOSState cMenuEditCaItem::ProcessKey(eKeys Key) eOSState state = cMenuEditItem::ProcessKey(Key); if (state == osUnknown) { - if (NORMALKEY(Key) == kLeft) { // TODO might want to increase the delta if repeated quickly? - if (ca && ca->Prev()) { - ca = (cCaDefinition *)ca->Prev(); - *value = ca->Number(); - } - } - else if (NORMALKEY(Key) == kRight) { - if (ca && ca->Next() && (allowCardNr || ((cCaDefinition *)ca->Next())->Number() > MAXDEVICES)) { - ca = (cCaDefinition *)ca->Next(); - *value = ca->Number(); - } - } + if (NORMALKEY(Key) == kLeft && *value >= CA_ENCRYPTED_MIN) + *value = CA_FTA; else return cMenuEditIntItem::ProcessKey(Key); Set(); @@ -266,7 +253,7 @@ void cMenuEditChannel::Setup(void) Add(new cMenuEditIntItem( tr("Dpid1"), &data.dpids[0], 0, 0x1FFF)); Add(new cMenuEditIntItem( tr("Dpid2"), &data.dpids[1], 0, 0x1FFF)); Add(new cMenuEditIntItem( tr("Tpid"), &data.tpid, 0, 0x1FFF)); - Add(new cMenuEditCaItem( tr("CA"), &data.caids[0], true));//XXX + Add(new cMenuEditCaItem( tr("CA"), &data.caids[0])); Add(new cMenuEditIntItem( tr("Sid"), &data.sid, 1, 0xFFFF)); /* XXX not yet used Add(new cMenuEditIntItem( tr("Nid"), &data.nid, 0)); @@ -8,7 +8,7 @@ .\" License as specified in the file COPYING that comes with the .\" vdr distribution. .\" -.\" $Id: vdr.5 1.41 2006/01/06 14:21:49 kls Exp $ +.\" $Id: vdr.5 1.42 2006/01/07 12:30:49 kls Exp $ .\" .TH vdr 5 "19 Mar 2005" "1.3.38" "Video Disk Recorder Files" .SH NAME @@ -152,7 +152,7 @@ tab (@); l l. \fB0000\fR@Free To Air \fB0001...000F\fR@explicitly requires the device with the given number -\fB0010...00FF\fR@reserved for user defined assignments defined in \fIca.conf\fR +\fB0010...00FF\fR@reserved for user defined assignments \fB0100...FFFF\fR@specific decryption methods as broadcast in the data stream\fR .TE Values in the range 0001...00FF will not be overwritten, all other values @@ -389,24 +389,6 @@ l l. There can be any number of actions in a line, including none at all - in which case the entry would be used only to set the LOF to use for the given frequency range and polarization. -.SS CONDITIONAL ACCESS -The file \fIca.conf\fR defines the numbers to be used in the \fBConditional access\fR -field of channels in \fIchannels.conf\fR and assigns descriptive texts to them. -Example: - -\fB101 Premiere World\fR - -Anything after (and including) a '#' character is comment. - -Value lines consist of an integer number, followed by a text describing -this decryption method (typically the name of the pay tv service using this -decryption method). - -The special value \fB0\fR means \fBFree To Air\fR, which can be used for -channels that don't require additional decryption hardware. - -The values \fB1...4\fR can be used for channels that for some reason explicitly -need a given DVB card (for backward compatibility). .SS REMOTE CONTROL KEYS The file \fIremote.conf\fR contains the key assignments for all remote control units. Each line consists of one key assignment in the following format: @@ -22,7 +22,7 @@ * * The project's page is at http://www.cadsoft.de/vdr * - * $Id: vdr.c 1.230 2006/01/06 12:47:16 kls Exp $ + * $Id: vdr.c 1.231 2006/01/07 12:27:45 kls Exp $ */ #include <getopt.h> @@ -514,7 +514,6 @@ int main(int argc, char *argv[]) Commands.Load(AddDirectory(ConfigDirectory, "commands.conf"), true) && RecordingCommands.Load(AddDirectory(ConfigDirectory, "reccmds.conf"), true) && SVDRPhosts.Load(AddDirectory(ConfigDirectory, "svdrphosts.conf"), true) && - CaDefinitions.Load(AddDirectory(ConfigDirectory, "ca.conf"), true) && Keys.Load(AddDirectory(ConfigDirectory, "remote.conf")) && KeyMacros.Load(AddDirectory(ConfigDirectory, "keymacros.conf"), true) )) |