-void CloseProxmark(receiver_arg* conn, char* serial_port_name) {
- pthread_mutex_lock(&conn->recv_lock);
-
- // Block the port from being used by anything
- serial_port* my_port = GetSerialPort();
- SetSerialPort(NULL);
-
- // Then close the port.
- uart_close(my_port);
- pthread_mutex_unlock(&conn->recv_lock);
-
- // Fix for linux, it seems that it is extremely slow to release the serial port file descriptor /dev/*
- unlink(serial_port_name);
-}
-
-bool OpenProxmark(char* serial_port_name) {
- serial_port *new_port = uart_open(serial_port_name);
- if (new_port == INVALID_SERIAL_PORT || new_port == CLAIMED_SERIAL_PORT) {
- //poll once a second
- return false;
- }
-
- SetSerialPort(new_port);
- return true;
-}