FreeCalypso > hg > freecalypso-tools
view rvinterf/old/before-rvinterf/log.c @ 783:c136a1a2474b
simagent: initial implementation of APDU exchange
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 13 Mar 2021 22:06:08 +0000 |
parents | e7502631a0f9 |
children |
line wrap: on
line source
/* * This module implements the logging function */ #include <sys/types.h> #include <stdio.h> #include <string.h> #include <strings.h> #include <stdlib.h> #include <unistd.h> #include <time.h> extern char pr_item[]; extern FILE *logF; extern time_t logtime; static struct tm last_tm; log_item() { struct tm *curtm; curtm = gmtime(&logtime); if (curtm->tm_year != last_tm.tm_year || curtm->tm_mon != last_tm.tm_mon || curtm->tm_mday != last_tm.tm_mday) fprintf(logF, "%d-%02d-%02d (gmtime):\n", curtm->tm_year + 1900, curtm->tm_mon+1, curtm->tm_mday); fprintf(logF, "[%02d:%02d:%02d] %s\n", curtm->tm_hour, curtm->tm_min, curtm->tm_sec, pr_item); bcopy(curtm, &last_tm, sizeof(struct tm)); } log_sent_packet(pkt, pktlen) u_char *pkt; { int i; char *dp; dp = pr_item; strcpy(dp, "Sent"); dp += 4; for (i = 0; i < pktlen; i++) { sprintf(dp, " %02X", pkt[i]); dp += 3; } *dp = '\0'; print_item(); }