Commit graph

247 commits

Author SHA1 Message Date
Philippe Teuwen ba47ac36cb Do not log to history with -h/-t/-m 2019-09-09 21:01:43 +02:00
Philippe Teuwen d5d2c64d50 allow to set debugmode from cli options 2019-09-09 20:45:10 +02:00
Philippe Teuwen 6385ee960f searchFile for firmwares 2019-09-09 19:55:27 +02:00
Philippe Teuwen afe891647f merge flasher in client 2019-09-09 01:35:15 +02:00
Iceman c9d42699fb textual 2019-09-05 15:52:40 +02:00
Philippe Teuwen 43055ae6a7 searchFile for cmdscripts 2019-09-04 23:29:03 +02:00
Philippe Teuwen b10edbaddc user dir: rework err msgs 2019-08-29 10:31:37 +02:00
Philippe Teuwen d2d58db985 Move history and logfile to ~/.proxmark3 2019-08-28 21:53:31 +02:00
Philippe Teuwen 254beefda2 Fix mingw utf8->cp850 support 2019-08-28 00:03:27 +02:00
Iceman 4e627f09c0 add: proxmark3 -v/--version - for easiness to detect version in offline mode and installs 2019-08-21 12:52:59 +02:00
Philippe Teuwen d19754567d summer restructuring:
* .h include only the strict minimum for their own parsing
  * this forces all files to include explicitment their needs and not count on far streched dependencies
  * this helps Makefile to rebuild only the minimum
  * according to this rule, most standalone .h are now gone
  * big app.h is gone
  * remove seldom __cplusplus, if c++ happens, everything will have to be done properly anyway
* all unrequired include were removed
* split common/ into common/ (client+arm) and common_arm/ (os+bootloader)
  * bring zlib to common/
  * bring stuff not really/not yet used in common back to armsrc/ or client/
  * bring liblua into client/
  * bring uart into client/
  * move some portions of code around (dbprint, protocols,...)
* rename unused files into *_disabled.[ch] to make it explicit
* rename soft Uarts between 14a, 14b and iclass, so a standalone could use several without clash
* remove PrintAndLogDevice
* move deprecated-hid-flasher from client to tools
* Makefiles
  * treat deps in armsrc/ as in client/
  * client: stop on warning (-Werror), same as for armsrc/

Tested on:

* all standalone modes
* Linux
2019-08-11 21:42:01 +02:00
Philippe Teuwen f40600f997 make style 2019-08-04 16:57:06 +02:00
Philippe Teuwen 1cb039255e Add client option -i to stay in interactive mode after a script or command
From 5a3f474331
with some fix in the logical flow
2019-08-04 15:34:18 +02:00
Philippe Teuwen 259c730bb0 exit(EXIT_FAILURE) if a port was specified to the client and no pm3 is usable 2019-07-17 20:15:47 +02:00
Gabriele Gristina fa2595a619 Fix Clang warnings 2019-07-10 18:46:30 +02:00
Philippe Teuwen a55e597e36 make style 2019-06-07 21:40:33 +02:00
Philippe Teuwen d7614684f8 Make sure standalone modes can be launched when connected on USB without client 2019-06-02 23:20:02 +02:00
iceman1001 24a4d053b3 chg: prompt now shows which channel is used. 2019-05-18 18:02:30 +02:00
Philippe Teuwen 68e5b3c355 style 2019-05-08 01:35:51 +02:00
Philippe Teuwen 532dbf28a1 let OpenPm be responsible of setting session.pm3_present 2019-05-07 20:37:23 +02:00
iceman1001 cb991b4d2c make sure CloseProxmark sets pm3_present. 2019-05-07 17:31:07 +02:00
iceman1001 b91e21edde better output from setting prompt, cursor is still inside ... 2019-05-07 12:29:26 +02:00
Philippe Teuwen a20392edf3 change offline prompt asap 2019-05-07 12:18:51 +02:00
Philippe Teuwen de54d35d5f unplug detection 2019-05-07 12:11:36 +02:00
iceman1001 f68a398e42 rename 2019-05-07 11:46:12 +02:00
iceman1001 61d250a7f8 add: 'hw connect' - lets you connect to a specified serial port. If already connected, it disconnects current port before. 2019-05-07 11:05:05 +02:00
Philippe Teuwen 1c70163605 reconnect fast 2019-05-07 01:06:01 +02:00
iceman1001 29a160c905 reconnect version2 yolo 2019-05-06 22:41:00 +02:00
iceman1001 cffd14a96b chg: reconnect to a disconnected proxmark3 device without restarting the client. Old functionality restored :)
chg: renamed thread
chg: easier if-statements for USART
2019-05-06 14:11:23 +02:00
Philippe Teuwen 65bd945b54 style 2019-05-05 22:04:35 +02:00
iceman1001 a49ae2d0ce FIX: slow reconfigure on mingw of serial port 2019-05-03 21:33:00 +02:00
Philippe Teuwen ca43afa19b begin of dynamic capabilities handling in client 2019-05-01 20:48:15 +02:00
Philippe Teuwen 820a6d99a9 better offline mode 2019-04-30 23:52:40 +02:00
iceman1001 f8f39d6196 fix: passing a struct. 2019-04-30 22:03:20 +02:00
Philippe Teuwen 0a4b90ac20 Simplify color & banner logic 2019-04-30 13:02:27 +02:00
Philippe Teuwen a91d0a7b19 Smart color handling:
* if on Windows, no color, as usual
* if on Linux, color only on real term
  * no color when > foo
  * no color in the logfile
2019-04-30 00:41:52 +02:00
Philippe Teuwen 69f8d81f4e style 2019-04-28 22:54:00 +02:00
Philippe Teuwen f1deb865db Merge branch 'master' into experimental_varlen
* master:
  ltrim cmd before display
  hf mf eload: fix absence of filename
  detect wrong numOfBlocks / numOfSectors arguments
  safeFile*: accept when suffix is already provided
  loadFile*: accept when suffix is already provided
  textual,  to reflect which repo.
  LoadEML: don't complain on the last \n
2019-04-28 22:53:12 +02:00
Philippe Teuwen 5bc9118a19 baudrate only for physical uart 2019-04-28 22:51:40 +02:00
Philippe Teuwen 281cdead26 ltrim cmd before display 2019-04-28 22:38:44 +02:00
Philippe Teuwen fbec3f3125 Merge branch 'master' into experimental_varlen
* master:
  fix segfault
  rework shell scripts for easy client or flasher
  Stop poking Internet when compiling
  doc multiple commands with -c
  Add support for: proxmark3 -c "hw ping;hw version;hw ping"
  update.sh flash boot only if option -b
2019-04-27 16:55:28 +02:00
Philippe Teuwen 8ebc44ee81 fix segfault 2019-04-27 16:52:23 +02:00
Philippe Teuwen e2e0b704c5 Several changes in the initial connection, see details:
* TestProxmark uses pingng
* New command CMD_CAPABILITIES to transmit capabilities from pm3 to host
* Use TestProxmark to retrieve capabilities with that new command
* CloseProxmark if TestProxmark fails
* Hide baudrate for USB and retrieve real baudrate from pm3 for BT
2019-04-27 02:46:20 +02:00
Philippe Teuwen 200290bc56 doc multiple commands with -c 2019-04-27 00:33:14 +02:00
Philippe Teuwen d3cc0bb71c Add support for: proxmark3 -c "hw ping;hw version;hw ping" 2019-04-27 00:31:05 +02:00
Philippe Teuwen e9bfc3eb7a Merge branch 'master' into experimental_varlen
* master:
  rename usb_present
  TestProxmark only if OpenProxmark returned pm3 present
  Trying original SPI mode for 24MHz flash mem
  text
2019-04-26 23:30:30 +02:00
Philippe Teuwen 897632a717 rename usb_present 2019-04-26 23:30:03 +02:00
Philippe Teuwen 4a576efc44 TestProxmark only if OpenProxmark returned pm3 present 2019-04-26 23:26:51 +02:00
Philippe Teuwen 1c136c8fc6 Merge branch 'master' into experimental_varlen
* master:
  rework Dbprintf & add color support
  use color macros
  doc magic
  archive and fix hid-flasher
  update standalone readme
2019-04-26 10:48:28 +02:00
Philippe Teuwen 70995f0f1e use color macros 2019-04-26 08:29:48 +02:00
Philippe Teuwen 6e744043f5 usart working... when debugged... 2019-04-21 00:44:19 +02:00
Philippe Teuwen 38fc6e2290 errors: cmdmain 2019-04-19 00:42:25 +02:00
iceman1001 436910605b unified Proxmark3 text 2019-04-16 20:00:25 +02:00
iceman1001 8657e17a0b more colors 2019-04-16 17:29:19 +02:00
iceman1001 2639de23c6 rearranged banner output and messages 2019-04-16 17:26:15 +02:00
iceman1001 aaedeafbb1 style spaces 2019-04-16 16:56:56 +02:00
Philippe Teuwen ba926a91e5 more yellow 2019-04-14 18:38:06 +02:00
Philippe Teuwen 04c0384d3e Testing pm3 communication 2019-04-14 17:25:17 +02:00
Philippe Teuwen 3cba736841 baudrate for usart: use define and limit to 115200 only for WITH_FPC_HOST 2019-04-14 14:42:03 +02:00
Philippe Teuwen 9676d788e0 style 2019-04-14 13:37:53 +02:00
Philippe Teuwen 681c8fd22a main: use proper executable name, especially for mingw 2019-04-14 13:35:52 +02:00
Philippe Teuwen e708d86306 Rework command line options 2019-04-14 12:54:37 +02:00
iceman1001 d28fac3ef0 style 2019-04-14 11:43:05 +02:00
iceman1001 dd404a67a1 Fix: USART - default speeds is lower (@ryan) 2019-04-14 11:09:31 +02:00
Philippe Teuwen 97676d3210 comparison of integers of different signs [-Wsign-compare] 2019-04-13 23:38:34 +02:00
Philippe Teuwen 5c55664fc5 use more static and fix [-Wmissing-prototypes] 2019-04-13 21:57:13 +02:00
iceman1001 4572acc1eb cleaning out the helptext
mingw got some bad asciiarts
2019-04-13 13:34:02 +02:00
Philippe Teuwen cbf81cf5c3 remove compilation warning 2019-04-02 22:43:00 +02:00
Philippe Teuwen 64ce30c06c make style 2019-04-02 22:32:45 +02:00
Philippe Teuwen 21be6d4400 FPC: got RX working, got client over usart somehow working..., see detailed commit msg
* using WITH_FPC:
  * activate basic usart
  * no double buffer for now, no interrupt
  * usart_dataavailable/usart_readbuffer/usart_writebuffer, to demo it:
    * pm3 client over USB, minicom over usart
    * analyse a d 414243
* using WITH_FPC_HOST:
  * it implies WITH_FPC as it's based on it
  * control pm3 with client over usart
  * EXPERIMENTAL! still some frame desync issues
  * you can connect both from usart & USB with two pm3 clients
    * actually you *have* to connect USB for the moment because
      it's used to send debug messages about buggy usart... See Dbprintf_usb below
  * "sessions": msgs are directed to the latest client to have sent a cmd
  * Dbprintf_usb macro to send msgs to USB client to help debugging usart...
  * We now have an option to run client at different speed as usart is 115200:
    client/proxmark3 /dev/ttyUSB0 -b 115200
  * Consequently, argc,argv handling is a bit revamped, it was so messy...
  * USB and flashing are still at 460800, don't try flashing over usart yet ^^
2019-04-02 22:06:10 +02:00
Philippe Teuwen 961d929f4d changing {} style to match majority of previous style 2019-03-10 11:20:22 +01:00
Philippe Teuwen 0373696662 make style 2019-03-10 00:00:59 +01:00
Philippe Teuwen 0d9223a547 client: fix mix of spaces & tabs 2019-03-09 23:35:06 +01:00
Philippe Teuwen 60f292b18e remove spurious spaces & tabs at end of lines 2019-03-09 08:59:13 +01:00
Philippe Teuwen 4dfcb727af cmds history: don't push to history if last command is replayed 2019-03-05 21:15:54 +01:00
iceman1001 ad72a424ef chg: use calloc 2019-01-30 21:40:50 +01:00
Chris 92d89dd539 fix: readline not installed on mac by default.. 2018-11-03 11:10:55 +01:00
Chris d30454fc5a fix: fflush(stdout), should sort out the blocking pipe problem
add:  line length (@merlokk)
2018-11-02 18:27:42 +01:00
Chris be57354478 chg: seems to be a free bug on macos 2018-09-09 12:36:16 +02:00
Chris 24eaac8681 CHG: the thread comms refactoring from offical pm3 repo
chg: FPC com speed limited to 115200 when compiled with FPC
chg: USART remake (@drandreas)
2018-09-06 21:43:20 +02:00
Chris 206ea46483 update text 2018-08-18 12:12:28 +02:00
Chris 1b0a49c8ab chg: from offical 2018-06-17 13:07:00 +02:00
iceman1001 99d7546ca4 @micolous changes
CHG: - Make all examples platform-specific
CHG: - Remove ModemManager rant on non-Linux platforms

Ref:  e2aa5eb47c
2018-05-06 22:43:46 +02:00
iceman1001 eb2e3ce681 chg: to debug.. 2018-04-06 23:02:56 +02:00
4m4rOk 2c490063da
Fixed undeclared identifier
Building the client fails because the identifier "ERROR" is undeclared. Changing it to "ERR" fixes this.
2018-04-06 22:53:37 +02:00
iceman1001 2aa9372534 CHG: rename of global variable
CHG: adjusted outputs.
2018-04-06 09:25:34 +02:00
iceman1001 d0b3f1311e chg: using_history? (suggestion of @pwpiwi) 2018-03-28 20:29:34 +02:00
iceman1001 4dd7c19be1 fix: causes readline to crash a lot on ubuntu 2018-03-21 08:13:07 +01:00
iceman1001 4c666e3832 add: OSX readline fixes ( @micolous )
0763239363
2018-03-17 14:35:34 +01:00
iceman1001 24482211ad chg: the dot progress is not logged anymore. Force fflush afterwards. 2018-03-05 20:07:29 +01:00
iceman1001 184ab1aeab fix: output from reconnect, seems to get stuck and not continue into cli. 2018-02-28 08:23:49 +01:00
iceman1001 a9c652bb6c no need for formatting 2018-02-21 18:20:50 +01:00
iceman1001 a29b2328db fix: g_debugMode - client side global debugvariable, moved to util.c 2018-02-21 15:54:13 +01:00
Brian Pow e9185085c7 use PrintAndLogEx() instead of PrintAndLog() 2018-02-21 21:02:28 +08:00
iceman1001 e6f51451aa chg: added the mutex lock to printing in communications thread. 2018-02-18 10:36:15 +01:00
iceman1001 09b2a079ba chg: enable ansi-colors for OSX 2018-02-06 19:21:47 +01:00
iceman1001 88becf8b09 chg: missed a spot.. showBanner should not be shown on apple 2018-02-06 12:45:38 +01:00
iceman1001 c72548562e chg: remove double exit text
chg: escape chars didn't work on apple
2018-02-05 16:38:00 +01:00
iceman1001 1965927009 chg: https://github.com/Proxmark/proxmark3/pull/558 (@pwpiwi) might solve the mystery crashes. 2018-02-01 15:24:36 +01:00
iceman1001 c2725bfa99 chg: enhanced rtrim for command prompt. 2017-12-21 10:08:07 +01:00