Changeset 7641
- Timestamp:
- 10/08/12 15:17:34 (11 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/reader-videoguard-common.c
r7614 r7641 641 641 } 642 642 643 void rev_date_calc(const unsigned char *Date, int32_t *year, int32_t *mon, int32_t *day, int32_t *hh, int32_t *mm, int32_t *ss, int32_t base_year)644 {645 *year=(Date[0]/12)+base_year;646 *mon=(Date[0]%12)+1;647 *day=Date[1] & 0x1f;648 *hh=Date[2]/8;649 *mm=(0x100*(Date[2]-*hh*8)+Date[3])/32;650 *ss=(Date[3]-*mm*32)*2;651 }652 653 643 void rev_date_calc_tm(const unsigned char *Date, struct tm *timeinfo , int32_t base_year) 654 644 { 655 memset(&timeinfo, 0, sizeof(timeinfo)); 656 timeinfo->tm_year = (Date[0]/12) + base_year; 657 timeinfo->tm_mon = (Date[0]%12) + 1; 645 timeinfo->tm_year = Date[0] / 12 + base_year - 1900; //tm year starts at 1900 646 timeinfo->tm_mon = Date[0] % 12; //tm month starts with 0 658 647 timeinfo->tm_mday = Date[1] & 0x1f; 659 648 timeinfo->tm_hour = Date[2] / 8; -
trunk/reader-videoguard-common.h
r7175 r7641 43 43 extern int32_t do_cmd(struct s_reader * reader, const unsigned char *ins, const unsigned char *txbuff, unsigned char *rxbuff, 44 44 unsigned char * cta_res); 45 extern void rev_date_calc(const unsigned char *Date, int32_t *year, int32_t *mon, int32_t *day, int32_t *hh, int32_t *mm, int32_t *ss, int32_t base_year);46 45 extern void rev_date_calc_tm(const unsigned char *Date, struct tm *timeinfo , int32_t base_year); 47 46 extern void set_known_card_info(struct s_reader * reader, const unsigned char *atr, const uint32_t *atr_size); -
trunk/reader-videoguard1.c
r7175 r7641 73 73 break; 74 74 } 75 int32_t y, m, d, H, M, S;76 rev_date_calc(&cta_res[4], &y, &m, &d, &H, &M, &S, reader->card_baseyear);77 75 uint16_t tier_id = (cta_res[2] << 8) | cta_res[3]; 78 79 80 76 // add entitlements to list 81 77 struct tm timeinfo; 82 78 memset(&timeinfo, 0, sizeof(struct tm)); 83 timeinfo.tm_year = y - 1900; //tm year starts with 1900 84 timeinfo.tm_mon = m - 1; //tm month starts with 0 85 timeinfo.tm_mday = d; 79 rev_date_calc_tm(&cta_res[4],&timeinfo,reader->card_baseyear); 80 char tiername[83]; 86 81 cs_add_entitlement(reader, reader->caid, b2ll(4, reader->prid[0]), tier_id, 0, 0, mktime(&timeinfo), 4); 87 88 char tiername[83]; 89 rdr_log(reader, "tier: %04x, expiry date: %04d/%02d/%02d-%02d:%02d:%02d %s", tier_id, y, m, d, H, M, S, get_tiername(tier_id, reader->caid, tiername)); 82 rdr_log(reader, "tier: %04x, expiry date: %04d/%02d/%02d-%02d:%02d:%02d %s",tier_id,timeinfo.tm_year+1900,timeinfo.tm_mon+1,timeinfo.tm_mday,timeinfo.tm_hour,timeinfo.tm_min,timeinfo.tm_sec,get_tiername(tier_id, reader->caid, tiername)); 90 83 } 91 84 } -
trunk/reader-videoguard12.c
r7175 r7641 72 72 break; 73 73 } 74 int32_t y, m, d, H, M, S;75 rev_date_calc(&cta_res[4], &y, &m, &d, &H, &M, &S, reader->card_baseyear);76 74 uint16_t tier_id = (cta_res[2] << 8) | cta_res[3]; 77 78 // add entitlements to list79 75 struct tm timeinfo; 80 76 memset(&timeinfo, 0, sizeof(struct tm)); 81 timeinfo.tm_year = y - 1900; //tm year starts with 1900 82 timeinfo.tm_mon = m - 1; //tm month starts with 0 83 timeinfo.tm_mday = d; 77 rev_date_calc_tm(&cta_res[4],&timeinfo,reader->card_baseyear); 84 78 cs_add_entitlement(reader, reader->caid, b2ll(4, reader->prid[0]), tier_id, 0, 0, mktime(&timeinfo), 4); 85 86 79 char tiername[83]; 87 rdr_log(reader, "tier: %04x, expiry date: %04d/%02d/%02d-%02d:%02d:%02d %s", tier_id, y, m, d, H, M, S,get_tiername(tier_id, reader->caid, tiername));80 rdr_log(reader, "tier: %04x, expiry date: %04d/%02d/%02d-%02d:%02d:%02d %s",tier_id,timeinfo.tm_year+1900,timeinfo.tm_mon+1,timeinfo.tm_mday,timeinfo.tm_hour,timeinfo.tm_min,timeinfo.tm_sec,get_tiername(tier_id, reader->caid, tiername)); 88 81 } 89 82 } -
trunk/reader-videoguard2.c
r7611 r7641 270 270 if(cta_res[2]==0 && cta_res[3]==0 && stopemptytier) return; 271 271 if(cta_res[2]!=0 || cta_res[3]!=0) { 272 int32_t y,m,d,H,M,S;273 272 char tiername[83]; 274 rev_date_calc(&cta_res[4],&y,&m,&d,&H,&M,&S,reader->card_baseyear);275 273 uint16_t tier_id = (cta_res[2] << 8) | cta_res[3]; 276 277 274 // add entitlements to list 278 275 struct tm timeinfo; 279 276 memset(&timeinfo, 0, sizeof(struct tm)); 280 timeinfo.tm_year = y - 1900; //tm year starts at 1900 281 timeinfo.tm_mon = m - 1; //tm month starts with 0 282 timeinfo.tm_mday = d; 277 rev_date_calc_tm(&cta_res[4],&timeinfo,reader->card_baseyear); 283 278 cs_add_entitlement(reader, reader->caid, b2ll(4, reader->prid[0]), tier_id, 0, 0, mktime(&timeinfo), 4); 284 279 … … 286 281 rdr_debug_mask(reader, D_READER, "tier: %04x, tier-number: 0x%02x",tier_id,i); 287 282 } 288 rdr_log(reader, "tier: %04x, expiry date: %04d/%02d/%02d-%02d:%02d:%02d %s",tier_id, y,m,d,H,M,S,get_tiername(tier_id, reader->caid, tiername));283 rdr_log(reader, "tier: %04x, expiry date: %04d/%02d/%02d-%02d:%02d:%02d %s",tier_id,timeinfo.tm_year+1900,timeinfo.tm_mon+1,timeinfo.tm_mday,timeinfo.tm_hour,timeinfo.tm_min,timeinfo.tm_sec,get_tiername(tier_id, reader->caid, tiername)); 289 284 } 290 285 }
Note:
See TracChangeset
for help on using the changeset viewer.