Commit 64e5e381 authored by Sven Gestegård Robertz's avatar Sven Gestegård Robertz
Browse files

experimental sigparser

parent 3ca451b1
...@@ -401,11 +401,13 @@ int accept_packet(labcomm_sig_parser_t *d) { ...@@ -401,11 +401,13 @@ int accept_packet(labcomm_sig_parser_t *d) {
advancen(d, nbytes); advancen(d, nbytes);
d->current_decl_is_varsize = FALSE; // <-- a conveniance flag in labcomm_sig_parser_t d->current_decl_is_varsize = FALSE; // <-- a conveniance flag in labcomm_sig_parser_t
VERBOSE_PRINTF("type_decl "); VERBOSE_PRINTF("type_decl ");
get_varint(d); //ignore length field
accept_signature(d); accept_signature(d);
} else if (type == SAMPLE_DECL) { } else if (type == SAMPLE_DECL) {
d->current_decl_is_varsize = FALSE; // <-- a conveniance flag in labcomm_sig_parser_t d->current_decl_is_varsize = FALSE; // <-- a conveniance flag in labcomm_sig_parser_t
advancen(d, nbytes); advancen(d, nbytes);
VERBOSE_PRINTF("sample_decl "); VERBOSE_PRINTF("sample_decl ");
get_varint(d); //ignore length field
accept_signature(d); accept_signature(d);
} else if(type >= LABCOMM_USER) { } else if(type >= LABCOMM_USER) {
#ifdef EXIT_WHEN_RECEIVING_DATA #ifdef EXIT_WHEN_RECEIVING_DATA
...@@ -603,14 +605,19 @@ static int accept_sample_data(labcomm_sig_parser_t *d){ ...@@ -603,14 +605,19 @@ static int accept_sample_data(labcomm_sig_parser_t *d){
accept_user_id(d); accept_user_id(d);
unsigned int uid = pop_val(d); unsigned int uid = pop_val(d);
printf("sample data... uid=0x%x\n", uid); printf("sample data... uid=0x%x\n", uid);
int len = get_varint(d); //length field
#ifdef DEBUG #ifdef DEBUG
dump_signature(d, uid); dump_signature(d, uid);
#endif #endif
#ifdef SKIP_BY_PARSING
labcomm_signature_t *sigt = get_sig_t(d, uid); labcomm_signature_t *sigt = get_sig_t(d, uid);
int encoded_size = sigt->encoded_size(sigt, NULL); int encoded_size = sigt->encoded_size(sigt, NULL);
INFO_PRINTF("encoded_size from sig: %d\n", encoded_size); INFO_PRINTF("encoded_size from sig: %d\n", encoded_size);
labcomm_signature_t *sig = get_sig_t(d, uid); labcomm_signature_t *sig = get_sig_t(d, uid);
skip_packed_sample_data(d, sig); skip_packed_sample_data(d, sig);
#else
advancen(d, len);
#endif
return TRUE; return TRUE;
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment