[gbx] - more generalized routing info in cw msg
[oscam.git] / oscam-chk.h
blob84d21bcb71e69a794dbf3a3515f98977825b250a
1 #ifndef OSCAM_CHK_H_
2 #define OSCAM_CHK_H_
4 // betatunnel check (chk_on_btun)
5 #define SRVID_ZERO 0 // srvid + 0000 (used for service-filter bypass)
6 #define SRVID_MASK 1 // srvid + FFFF
8 uint32_t get_fallbacktimeout(uint16_t caid);
9 int32_t ecm_ratelimit_check(struct s_reader *reader, ECM_REQUEST *er, int32_t reader_mode);
10 int32_t matching_reader(ECM_REQUEST *er, struct s_reader *rdr);
11 uint8_t chk_if_ignore_checksum(ECM_REQUEST *er, FTAB *disablecrc_only_for);
13 uint8_t is_localreader(struct s_reader *rdr, ECM_REQUEST *er);
14 uint8_t chk_is_fixed_fallback(struct s_reader *rdr, ECM_REQUEST *er);
15 uint8_t chk_has_fixed_fallback(ECM_REQUEST *er);
16 int32_t chk_srvid_match(ECM_REQUEST *er, SIDTAB *sidtab);
17 int32_t chk_srvid(struct s_client *cl, ECM_REQUEST *er);
18 int32_t has_srvid(struct s_client *cl, ECM_REQUEST *er);
19 int32_t has_lb_srvid(struct s_client *cl, ECM_REQUEST *er);
20 int32_t chk_srvid_match_by_caid_prov(uint16_t caid, uint32_t provid, SIDTAB *sidtab);
21 int32_t chk_srvid_by_caid_prov(struct s_client *cl, uint16_t caid, uint32_t provid);
22 int32_t chk_srvid_by_caid_prov_rdr(struct s_reader *rdr, uint16_t caid, uint32_t provid);
23 int32_t chk_is_betatunnel_caid(uint16_t caid);
24 uint16_t chk_on_btun(uint8_t chk_sx, struct s_client *cl, ECM_REQUEST *er);
25 int32_t chk_ident_filter(uint16_t rcaid, uint32_t rprid, FTAB *ftab);
26 int32_t chk_sfilter(ECM_REQUEST *er, PTAB *ptab);
27 int32_t chk_ufilters(ECM_REQUEST *er);
28 int32_t chk_rsfilter(struct s_reader *reader, ECM_REQUEST *er);
29 int32_t chk_rfilter2(uint16_t rcaid, uint32_t rprid, struct s_reader *rdr);
30 int32_t chk_ctab(uint16_t caid, CAIDTAB *ctab);
31 int32_t chk_ctab_ex(uint16_t caid, CAIDTAB *ctab);
32 int32_t chk_caid(uint16_t caid, CAIDTAB *ctab);
33 int32_t chk_caid_rdr(struct s_reader *rdr, uint16_t caid);
34 int32_t chk_bcaid(ECM_REQUEST *er, CAIDTAB *ctab);
35 int32_t chk_is_null_CW(uint8_t cw[]);
36 int8_t is_halfCW_er(ECM_REQUEST *er);
37 int8_t chk_halfCW(ECM_REQUEST *er, uint8_t *cw);
38 int32_t chk_is_null_nodeid(uint8_t node_id[], uint8_t len);
39 bool check_client(struct s_client *cl);
40 uint16_t caidvaluetab_get_value(CAIDVALUETAB *cv, uint16_t caid, uint16_t default_value);
41 int32_t chk_is_fakecw(uint8_t *cw);
43 #endif