projects
/
hmcfgusb
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
5936039
)
print timestamps in verbose mode
author
Michael Gernoth
<michael@gernoth.net>
Sat, 13 Jul 2013 10:49:03 +0000
(12:49 +0200)
committer
Michael Gernoth
<michael@gernoth.net>
Sat, 13 Jul 2013 10:49:03 +0000
(12:49 +0200)
hmland.c
patch
|
blob
|
blame
|
history
diff --git
a/hmland.c
b/hmland.c
index d91026a8c8ee928e215ba68287f090974c768609..a9d9670186f8dc522b1bc772b3a1db689f0d3267 100644
(file)
--- a/
hmland.c
+++ b/
hmland.c
@@
-34,6
+34,7
@@
#include <sys/socket.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/socket.h>
#include <sys/stat.h>
#include <fcntl.h>
+#include <time.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <libusb-1.0/libusb.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <libusb-1.0/libusb.h>
@@
-68,6
+69,19
@@
static int wait_for_h = 0;
#define CHECK_SPACE(x) if ((*outpos + x) > outend) { fprintf(stderr, "Not enough space!\n"); return 0; }
#define CHECK_AVAIL(x) if ((*inpos + x) > inend) { fprintf(stderr, "Not enough input available!\n"); return 0; }
#define CHECK_SPACE(x) if ((*outpos + x) > outend) { fprintf(stderr, "Not enough space!\n"); return 0; }
#define CHECK_AVAIL(x) if ((*inpos + x) > inend) { fprintf(stderr, "Not enough input available!\n"); return 0; }
+static void print_timestamp(FILE *f)
+{
+ struct timeval tv;
+ struct tm *tmp;
+ char ts[32];
+
+ gettimeofday(&tv, NULL);
+ tmp = localtime(&tv.tv_sec);
+ memset(ts, 0, sizeof(ts));
+ strftime(ts, sizeof(ts)-1, "%Y-%m-%d %H:%M:%S", tmp);
+ fprintf(f, "%s.%06ld: ", ts, tv.tv_usec);
+}
+
static int format_part_out(uint8_t **inpos, int inlen, uint8_t **outpos, int outlen, int len, int flags)
{
const uint8_t nibble[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
static int format_part_out(uint8_t **inpos, int inlen, uint8_t **outpos, int outlen, int len, int flags)
{
const uint8_t nibble[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
@@
-278,6
+292,7
@@
static int hmlan_format_out(uint8_t *buf, int buf_len, void *data)
if (verbose) {
int i;
if (verbose) {
int i;
+ print_timestamp(stdout);
printf("LAN < ");
for (i = 0; i < outpos-out-2; i++)
printf("%c", out[i]);
printf("LAN < ");
for (i = 0; i < outpos-out-2; i++)
printf("%c", out[i]);
@@
-299,6
+314,7
@@
static int hmlan_format_out(uint8_t *buf, int buf_len, void *data)
if (verbose) {
int i;
if (verbose) {
int i;
+ print_timestamp(stdout);
printf("LAN < ");
for (i = 0; i < curr_rx->len-2; i++)
printf("%c", curr_rx->rx[i]);
printf("LAN < ");
for (i = 0; i < curr_rx->len-2; i++)
printf("%c", curr_rx->rx[i]);
@@
-366,6
+382,7
@@
static int hmlan_parse_in(int fd, void *data)
continue;
if (verbose) {
continue;
if (verbose) {
+ print_timestamp(stdout);
printf("LAN > ");
for (i = 0; i < last; i++)
printf("%c", instart[i]);
printf("LAN > ");
for (i = 0; i < last; i++)
printf("%c", instart[i]);
@@
-397,7
+414,8
@@
static int hmlan_parse_in(int fd, void *data)
hmcfgusb_send(dev, out, sizeof(out), 1);
}
} else if (r < 0) {
hmcfgusb_send(dev, out, sizeof(out), 1);
}
} else if (r < 0) {
- perror("read");
+ if (errno != ECONNRESET)
+ perror("read");
return r;
} else {
return 0;
return r;
} else {
return 0;
@@
-618,6
+636,7
@@
static int socket_server(char *iface, int port, int flags)
client_addr = ntohl(csin.sin_addr.s_addr);
if (verbose) {
client_addr = ntohl(csin.sin_addr.s_addr);
if (verbose) {
+ print_timestamp(stdout);
printf("Client %d.%d.%d.%d connected!\n",
(client_addr & 0xff000000) >> 24,
(client_addr & 0x00ff0000) >> 16,
printf("Client %d.%d.%d.%d connected!\n",
(client_addr & 0xff000000) >> 24,
(client_addr & 0x00ff0000) >> 16,
@@
-631,6
+650,7
@@
static int socket_server(char *iface, int port, int flags)
close(client);
if (verbose) {
close(client);
if (verbose) {
+ print_timestamp(stdout);
printf("Connection to %d.%d.%d.%d closed!\n",
(client_addr & 0xff000000) >> 24,
(client_addr & 0x00ff0000) >> 16,
printf("Connection to %d.%d.%d.%d closed!\n",
(client_addr & 0xff000000) >> 24,
(client_addr & 0x00ff0000) >> 16,
Impressum
,
Datenschutz