X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/6a772a1273e0f18c33e8214f52f281912dac8471..b97311b1bde85d0aa388085e9a5747ac4da680d5:/client/graph.c diff --git a/client/graph.c b/client/graph.c index 995a32da..c0982067 100644 --- a/client/graph.c +++ b/client/graph.c @@ -166,11 +166,12 @@ uint8_t GetPskCarrier(const char str[], bool printAns, bool verbose) PrintAndLog("Failed to copy from graphbuffer"); return 0; } - //uint8_t countPSK_FC(uint8_t *BitStream, size_t size) - - carrier = countFC(grph,size,0); + uint16_t fc = countFC(grph,size,0); + carrier = fc & 0xFF; + if (carrier != 2 && carrier != 4 && carrier != 8) return 0; + if ((fc>>8) == 10 && carrier == 8) return 0; // Only print this message if we're not looping something - if (printAns){ + if (printAns) { PrintAndLog("Auto-detected PSK carrier rate: %d", carrier); } return carrier; @@ -193,7 +194,9 @@ int GetPskClock(const char str[], bool printAns, bool verbose) PrintAndLog("Failed to copy from graphbuffer"); return -1; } - clock = DetectPSKClock(grph,size,0); + size_t firstPhaseShiftLoc = 0; + uint8_t curPhase = 0, fc = 0; + clock = DetectPSKClock(grph, size, 0, &firstPhaseShiftLoc, &curPhase, &fc); // Only print this message if we're not looping something if (printAns){ PrintAndLog("Auto-detected clock rate: %d", clock);