mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2024-12-28 19:31:19 +08:00
Add checks in em4x50read to avoid segfaults in case loops go over the GraphTraceLen.
This commit is contained in:
parent
890bf4be90
commit
3628c31882
1 changed files with 7 additions and 5 deletions
|
@ -301,17 +301,19 @@ static void CmdEM4x50read(char *str)
|
||||||
while(i < GraphTraceLen)
|
while(i < GraphTraceLen)
|
||||||
{
|
{
|
||||||
// measure from low to low
|
// measure from low to low
|
||||||
while(GraphBuffer[i] > low)
|
while((GraphBuffer[i] > low) && (i<GraphTraceLen))
|
||||||
++i;
|
++i;
|
||||||
start= i;
|
start= i;
|
||||||
while(GraphBuffer[i] < high)
|
while((GraphBuffer[i] < high) && (i<GraphTraceLen))
|
||||||
++i;
|
++i;
|
||||||
while(GraphBuffer[i] > low)
|
while((GraphBuffer[i] > low) && (i<GraphTraceLen))
|
||||||
++i;
|
++i;
|
||||||
|
if (j>(MAX_GRAPH_TRACE_LEN/64)) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
tmpbuff[j++]= i - start;
|
tmpbuff[j++]= i - start;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* look for data start - should be 2 pairs of LW (pulses of 192,128) */
|
/* look for data start - should be 2 pairs of LW (pulses of 192,128) */
|
||||||
start= -1;
|
start= -1;
|
||||||
skip= 0;
|
skip= 0;
|
||||||
|
@ -1573,7 +1575,7 @@ static void CmdTIWrite(char *str)
|
||||||
if (res == 2) c.ext3=0;
|
if (res == 2) c.ext3=0;
|
||||||
if (res<2)
|
if (res<2)
|
||||||
PrintToScrollback("Please specify 2 or three hex strings, eg 0x1234 0x5678");
|
PrintToScrollback("Please specify 2 or three hex strings, eg 0x1234 0x5678");
|
||||||
else
|
else
|
||||||
SendCommand(&c, FALSE);
|
SendCommand(&c, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue