SASC
DVBSoftCAM

cccam2.c File Reference

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <openssl/sha.h>
#include "cc.h"
#include "parse.h"
#include "crypto.h"
#include "helper.h"
#include "version.h"

Go to the source code of this file.

Classes

class  cCCcamCrypt
class  cCmd0cCrypt
class  cEcmShare
class  cEcmShares
class  cShareProv
class  cShare
class  cShares
struct  CmdHeader
struct  GenericCmd
struct  ClientInfo
struct  ServerInfo
struct  EcmRequest
struct  EmmRequest
struct  DcwAnswer
struct  DelShare
struct  AddShare
struct  ProvInfo
struct  NodeInfo
class  cCardClientCCcam2

Defines

#define CMD0C_MODE_PLAIN   0
#define CMD0C_MODE_RC6   1
#define CMD0C_MODE_RC4   2
#define CMD0C_MODE_CC   3
#define CMD0C_MODE_AES   4
#define CMD0C_MODE_IDEA   5
#define STDLAG   1000
#define MAXLAG   5000
#define SETCMDLEN(h, l)   BYTE2_BE(&(h)->cmdlen,(l)-4)
#define CMDLEN(h)   (UINT16_BE(&(h)->cmdlen)+4)
#define MAX_ECM_TIME   3000
#define PING_TIME   120*1000
#define CMD05_MODE_UNKNOWN   0
#define CMD05_MODE_PLAIN   1
#define CMD05_MODE_AES   2
#define CMD05_MODE_CC   3
#define CMD05_MODE_RC4   4
#define CMD05_MODE_LEN0   5

Functions

struct CmdHeader __attribute__ ((packed))
static cCardClientLinkReg
< cCardClientCCcam2 > 
__ncd ("cccam2")

Variables

static const char * cccamstr = "CCcam"
static cEcmShares ecmshares
unsigned char flags
unsigned char cmd
unsigned short cmdlen
struct CmdHeader header
unsigned char payload [0]
char username [20]
unsigned char nodeid [8]
unsigned char wantemus
char version [32]
char build [32]
unsigned short caid
unsigned int provid
unsigned int shareid
unsigned short sid
unsigned char datalen
unsigned char data [0]
unsigned char dummy
unsigned char cw [16]
unsigned int remoteid
unsigned char uphops
unsigned char maxdown
unsigned char cardserial [8]
unsigned char count
struct {
   unsigned char   provid [3]
   unsigned char   sa [4]
} prov [0]
cCardClientCCcam2 __attribute__

Define Documentation

#define CMD05_MODE_AES   2

Definition at line 644 of file cccam2.c.

#define CMD05_MODE_CC   3

Definition at line 645 of file cccam2.c.

#define CMD05_MODE_LEN0   5

Definition at line 647 of file cccam2.c.

#define CMD05_MODE_PLAIN   1

Definition at line 643 of file cccam2.c.

#define CMD05_MODE_RC4   4

Definition at line 646 of file cccam2.c.

#define CMD05_MODE_UNKNOWN   0

Definition at line 642 of file cccam2.c.

#define CMD0C_MODE_AES   4

Definition at line 171 of file cccam2.c.

#define CMD0C_MODE_CC   3

Definition at line 170 of file cccam2.c.

#define CMD0C_MODE_IDEA   5

Definition at line 172 of file cccam2.c.

#define CMD0C_MODE_PLAIN   0

Definition at line 167 of file cccam2.c.

#define CMD0C_MODE_RC4   2

Definition at line 169 of file cccam2.c.

#define CMD0C_MODE_RC6   1

Definition at line 168 of file cccam2.c.

#define CMDLEN (   h)    (UINT16_BE(&(h)->cmdlen)+4)

Definition at line 564 of file cccam2.c.

#define MAX_ECM_TIME   3000

Definition at line 639 of file cccam2.c.

#define MAXLAG   5000

Definition at line 334 of file cccam2.c.

#define PING_TIME   120*1000

Definition at line 640 of file cccam2.c.

#define SETCMDLEN (   h,
  l 
)    BYTE2_BE(&(h)->cmdlen,(l)-4)

Definition at line 563 of file cccam2.c.

#define STDLAG   1000

Definition at line 333 of file cccam2.c.


Function Documentation

struct CmdHeader __attribute__ ( (packed)  )
static cCardClientLinkReg<cCardClientCCcam2> __ncd ( "cccam2"  ) [static]

Variable Documentation

cCardClientCCcam2 __attribute__
char build[32]

Definition at line 582 of file cccam2.c.

unsigned short caid

Definition at line 595 of file cccam2.c.

unsigned char cardserial[8]

Definition at line 628 of file cccam2.c.

const char* cccamstr = "CCcam" [static]

Definition at line 37 of file cccam2.c.

unsigned char cmd

Definition at line 562 of file cccam2.c.

unsigned short cmdlen

Definition at line 563 of file cccam2.c.

unsigned char count

Definition at line 631 of file cccam2.c.

unsigned char cw[16]

Definition at line 610 of file cccam2.c.

unsigned char data[0]

Definition at line 600 of file cccam2.c.

unsigned char datalen

Definition at line 599 of file cccam2.c.

unsigned char dummy

Definition at line 606 of file cccam2.c.

Definition at line 292 of file cccam2.c.

unsigned char flags

Definition at line 562 of file cccam2.c.

struct CmdHeader header

Definition at line 570 of file cccam2.c.

unsigned char maxdown

Definition at line 627 of file cccam2.c.

unsigned char nodeid[0][8]

Definition at line 580 of file cccam2.c.

unsigned char payload[0]

Definition at line 571 of file cccam2.c.

struct { ... } prov[0]
unsigned char provid[3]

Definition at line 596 of file cccam2.c.

unsigned int remoteid

Definition at line 625 of file cccam2.c.

unsigned char sa[4]

Definition at line 634 of file cccam2.c.

unsigned int shareid

Definition at line 597 of file cccam2.c.

unsigned short sid

Definition at line 598 of file cccam2.c.

unsigned char uphops

Definition at line 627 of file cccam2.c.

char username[20]

Definition at line 579 of file cccam2.c.

char version[32]

Definition at line 582 of file cccam2.c.

unsigned char wantemus

Definition at line 581 of file cccam2.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines