define LOG_MESSAGE_PACKET and add support for HCI_DUMP_PACKETLOGGER and HCI_DUMP_STDOUT

This commit is contained in:
matthias.ringwald 2012-02-20 19:12:47 +00:00
parent 94066f6ccc
commit 0d79c710aa
2 changed files with 20 additions and 1 deletions

View File

@ -53,7 +53,7 @@ extern "C" {
// extension for client/server communication // extension for client/server communication
#define DAEMON_EVENT_PACKET 0x05 #define DAEMON_EVENT_PACKET 0x05
// L2CAP data // L2CAP data
#define L2CAP_DATA_PACKET 0x06 #define L2CAP_DATA_PACKET 0x06
@ -66,6 +66,9 @@ extern "C" {
// Security Manager protocol data // Security Manager protocol data
#define SM_DATA_PACKET 0x09 #define SM_DATA_PACKET 0x09
// debug log messages
#define LOG_MESSAGE_PACKET 0xfc
// Fixed PSM numbers // Fixed PSM numbers
#define PSM_SDP 0x01 #define PSM_SDP 0x01

View File

@ -154,10 +154,18 @@ void hci_dump_packet(uint8_t packet_type, uint8_t in, uint8_t *packet, uint16_t
printf("ACL => "); printf("ACL => ");
} }
break; break;
case LOG_MESSAGE_PACKET:
// assume buffer is big enough
packet[len] = 0;
printf("LOG -- %s\n", (char*) packet);
return;
default:
return;
} }
hexdump(packet, len); hexdump(packet, len);
break; break;
} }
case HCI_DUMP_BLUEZ: case HCI_DUMP_BLUEZ:
bt_store_16( (uint8_t *) &header_bluez.len, 0, 1 + len); bt_store_16( (uint8_t *) &header_bluez.len, 0, 1 + len);
header_bluez.in = in; header_bluez.in = in;
@ -168,6 +176,7 @@ void hci_dump_packet(uint8_t packet_type, uint8_t in, uint8_t *packet, uint16_t
write (dump_file, &header_bluez, sizeof(hcidump_hdr) ); write (dump_file, &header_bluez, sizeof(hcidump_hdr) );
write (dump_file, packet, len ); write (dump_file, packet, len );
break; break;
case HCI_DUMP_PACKETLOGGER: case HCI_DUMP_PACKETLOGGER:
header_packetlogger.len = htonl( sizeof(pktlog_hdr) - 4 + len); header_packetlogger.len = htonl( sizeof(pktlog_hdr) - 4 + len);
header_packetlogger.ts_sec = htonl(curr_time.tv_sec); header_packetlogger.ts_sec = htonl(curr_time.tv_sec);
@ -186,11 +195,18 @@ void hci_dump_packet(uint8_t packet_type, uint8_t in, uint8_t *packet, uint16_t
case HCI_EVENT_PACKET: case HCI_EVENT_PACKET:
header_packetlogger.type = 0x01; header_packetlogger.type = 0x01;
break; break;
case LOG_MESSAGE_PACKET:
header_packetlogger.type = 0xfc;
break;
default: default:
return; return;
} }
write (dump_file, &header_packetlogger, sizeof(pktlog_hdr) ); write (dump_file, &header_packetlogger, sizeof(pktlog_hdr) );
write (dump_file, packet, len ); write (dump_file, packet, len );
break;
default:
break;
} }
#endif #endif
} }