In method ini_control_transfer there is the array question[].
It is 2 bytes in size.
char question[] = { 0x01,0x01 };
however, 8 bytes are expected in the for loop. This results is a buffer overflow.
if(debug) { for (i=0;i<reqIntLen; i++) fprintf(stderr, "%02x ",question[i] & 0xFF); fprintf(stderr, "\n"); }
better is:
for (i=0;i<2; i++) or sizeof
In method ini_control_transfer there is the array question[].
It is 2 bytes in size.
char question[] = { 0x01,0x01 };however, 8 bytes are expected in the for loop. This results is a buffer overflow.
if(debug) { for (i=0;i<reqIntLen; i++) fprintf(stderr, "%02x ",question[i] & 0xFF); fprintf(stderr, "\n"); }better is:
for (i=0;i<2; i++)or sizeof