| 860 | void initMACCache() { macRingBuffer = xRingbufferCreate(MAC_CACHE_SIZE * 18, RINGBUF_TYPE_NOSPLIT); } |
| 861 | |
| 862 | bool isMACInCache(const String &mac) { |
| 863 | if (!macRingBuffer) return false; |
| 864 | size_t itemSize; |
| 865 | char *item = (char *)xRingbufferReceive(macRingBuffer, &itemSize, 0); |
| 866 | while (item) { |
| 867 | if (String(item) == mac) { |
| 868 | vRingbufferReturnItem(macRingBuffer, item); |
| 869 | return true; |
| 870 | } |
| 871 | vRingbufferReturnItem(macRingBuffer, item); |
| 872 | item = (char *)xRingbufferReceive(macRingBuffer, &itemSize, 0); |
| 873 | } |
| 874 | return false; |
| 875 | } |
| 876 | |
| 877 | void addMACToCache(const String &mac) { |
| 878 | if (!macRingBuffer) return; |