Commit graph

1212 commits

Author SHA1 Message Date
Martin Lund
3e50191107 Add tty line configuration script API
On some platforms calling high()/low() to switch line states result in
costly system calls whick makes it impossible to swith two or more tty
lines simultaneously.

To help solve this timing issue we introduce a tty line state
configuration API which can be used instead of using
high()/low().

Using config_low(line) and config_high(line) one can set up a new line
state configuration for multiple lines and then use config_apply() to
finally apply the configuration. This will result in only one system
call to instruct the serial port drive to switch all the configured line
states which should help ensure that the lines are switched
simultaneously.

Example:

script = config_high(DTR); config_low(RTS); config_apply()
2024-04-06 09:34:25 +02:00
Martin Lund
4369d5b66f Add ONULBRK mapping flag
Add ONULBRK mapping to map nul (zero) to send break signal on output.

This is useful if one needs to e.g. send the break signal to the tty
device when connected via socket.
2024-04-05 13:55:51 +02:00
Martin Lund
70913fe120 Add --log-directory option
For specifying directory path in which to save automatically named log
files.
2024-04-04 12:31:55 +02:00
Martin Lund
83f826349b Update codeql config 2024-04-02 03:52:54 +02:00
Martin Lund
00f57c9992 Update circleCI 2024-04-01 15:55:03 +02:00
Martin Lund
0becfa3274 Add Lua scripting feature
Add support for running Lua scripts that can manipulate the tty control
lines. Script is activated automatically on connect or manually via in
session key command.

The Lua scripting feature opens up for many posibilities in the future
such as adding expect like functionality to easily and programatically
interact with the connected device.
2024-04-01 15:37:40 +02:00
Martin Lund
6fee8514f4 Invert line states to reflect true electrical level 2024-03-30 16:31:45 +01:00
Martin Lund
10255d52d0 Update AUTHORS 2024-03-24 11:21:42 +01:00
Mingjie Shen
6720da3b88 Check return values of sscanf()
Failing to check that a call to 'sscanf' actually writes to an output
variable can lead to unexpected behavior at reading time.
2024-03-24 11:03:51 +01:00
Jakob Haufe
ed4ac0c797 Support NO_COLOR env variable as per no-color.org 2024-03-06 13:38:59 +01:00
Martin Lund
d45c9b1a22 Update TODO 2024-03-01 12:28:51 +01:00
Martin Lund
91459c2490 Update AUTHORS 2024-02-19 16:51:24 +01:00
Martin Lund
593f9495f4 Add support for disabling prefix key handling
To disable prefix key input handing simply set prefix-ctrl-key to
'none'.

Based on original patch from Sebastian Krahmer.
2024-02-19 16:51:02 +01:00
Martin Lund
6c520090c6 Add meson man pages install option
Defaults to installing man pages.
2024-02-13 13:49:29 +01:00
Martin Lund
67640d4a00 Update AUTHORS 2024-02-12 22:25:07 +01:00
Fredrik Svedberg
58c9489b92 Add map FF to ESC-c on input
Added map of form feed to ESC-c on input for terminals that
do not clear screen on ^L but do on ESC-c.
2024-02-12 22:22:20 +01:00
Brian
553b67e406
Add CodeQL Workflow for Code Security Analysis (#220)
* Add CodeQL Workflow for Code Security Analysis

Add CodeQL Workflow for Code Security Analysis

This pull request introduces a CodeQL workflow to enhance the security analysis of our repository. CodeQL is a powerful static analysis tool that helps identify and mitigate security vulnerabilities in our codebase. By integrating this workflow into our GitHub Actions, we can proactively identify and address potential issues before they become security threats.

We added a new CodeQL workflow file (.github/workflows/codeql.yml) that
- Runs on every push and pull request to the main branch.
- Excludes queries with a high false positive rate or low-severity findings.
- Does not display results for third-party code, focusing only on our own codebase.

Testing:
To validate the functionality of this workflow, we have run several test scans on the codebase and reviewed the results. The workflow successfully compiles the project, identifies issues, and provides actionable insights while reducing noise by excluding certain queries and third-party code.

Deployment:
Once this pull request is merged, the CodeQL workflow will be active and automatically run on every push and pull request to the main branch. To view the results of these code scans, please follow these steps:
1. Under the repository name, click on the Security tab.
2. In the left sidebar, click Code scanning alerts.

Additional Information:
- You can further customize the workflow to adapt to your specific needs by modifying the workflow file.
- For more information on CodeQL and how to interpret its results, refer to the GitHub documentation and the CodeQL documentation.

Signed-off-by: Brian <bayuan@purdue.edu>

* Add CodeQL Workflow for Code Security Analysis

Add CodeQL Workflow for Code Security Analysis

This pull request introduces a CodeQL workflow to enhance the security analysis of our repository. CodeQL is a powerful static analysis tool that helps identify and mitigate security vulnerabilities in our codebase. By integrating this workflow into our GitHub Actions, we can proactively identify and address potential issues before they become security threats.

We added a new CodeQL workflow file (.github/workflows/codeql.yml) that
- Runs on every pull request (functionality to run on every push to main branches is included as a comment for convenience).
- Runs daily.
- Excludes queries with a high false positive rate or low-severity findings.
- Does not display results for git submodules, focusing only on our own codebase.

Testing:
To validate the functionality of this workflow, we have run several test scans on the codebase and reviewed the results. The workflow successfully compiles the project, identifies issues, and provides actionable insights while reducing noise by excluding certain queries and third-party code.

Deployment:
Once this pull request is merged, the CodeQL workflow will be active and automatically run on every push and pull request to the main branch. To view the results of these code scans, please follow these steps:
1. Under the repository name, click on the Security tab.
2. In the left sidebar, click Code scanning alerts.

Additional Information:
- You can further customize the workflow to adapt to your specific needs by modifying the workflow file.
- For more information on CodeQL and how to interpret its results, refer to the GitHub documentation and the CodeQL documentation (https://codeql.github.com/ and https://codeql.github.com/docs/).

Signed-off-by: Brian <bayuan@purdue.edu>

* Add CodeQL Workflow for Code Security Analysis

Add CodeQL Workflow for Code Security Analysis

This pull request introduces a CodeQL workflow to enhance the security analysis of our repository. CodeQL is a powerful static analysis tool that helps identify and mitigate security vulnerabilities in our codebase. By integrating this workflow into our GitHub Actions, we can proactively identify and address potential issues before they become security threats.

We added a new CodeQL workflow file (.github/workflows/codeql.yml) that
- Runs on every pull request (functionality to run on every push to main branches is included as a comment for convenience).
- Runs daily.
- Excludes queries with a high false positive rate or low-severity findings.
- Does not display results for git submodules, focusing only on our own codebase.

Testing:
To validate the functionality of this workflow, we have run several test scans on the codebase and reviewed the results. The workflow successfully compiles the project, identifies issues, and provides actionable insights while reducing noise by excluding certain queries and third-party code.

Deployment:
Once this pull request is merged, the CodeQL workflow will be active and automatically run on every push and pull request to the main branch. To view the results of these code scans, please follow these steps:
1. Under the repository name, click on the Security tab.
2. In the left sidebar, click Code scanning alerts.

Additional Information:
- You can further customize the workflow to adapt to your specific needs by modifying the workflow file.
- For more information on CodeQL and how to interpret its results, refer to the GitHub documentation and the CodeQL documentation (https://codeql.github.com/ and https://codeql.github.com/docs/).

Signed-off-by: Brian <bayuan@purdue.edu>

* Add CodeQL Workflow for Code Security Analysis

Add CodeQL Workflow for Code Security Analysis

This pull request introduces a CodeQL workflow to enhance the security analysis of our repository. CodeQL is a powerful static analysis tool that helps identify and mitigate security vulnerabilities in our codebase. By integrating this workflow into our GitHub Actions, we can proactively identify and address potential issues before they become security threats.

We added a new CodeQL workflow file (.github/workflows/codeql.yml) that
- Runs on every pull request (functionality to run on every push to main branches is included as a comment for convenience).
- Runs daily.
- Excludes queries with a high false positive rate or low-severity findings.
- Does not display results for git submodules, focusing only on our own codebase.

Testing:
To validate the functionality of this workflow, we have run several test scans on the codebase and reviewed the results. The workflow successfully compiles the project, identifies issues, and provides actionable insights while reducing noise by excluding certain queries and third-party code.

Deployment:
Once this pull request is merged, the CodeQL workflow will be active and automatically run on every push and pull request to the main branch. To view the results of these code scans, please follow these steps:
1. Under the repository name, click on the Security tab.
2. In the left sidebar, click Code scanning alerts.

Additional Information:
- You can further customize the workflow to adapt to your specific needs by modifying the workflow file.
- For more information on CodeQL and how to interpret its results, refer to the GitHub documentation and the CodeQL documentation (https://codeql.github.com/ and https://codeql.github.com/docs/).

Signed-off-by: Brian <bayuan@purdue.edu>

* Update codeql-buildscript.sh

---------

Signed-off-by: Brian <bayuan@purdue.edu>
2024-02-07 00:31:35 +01:00
Sylvain LAFRASSE
4269ec835d Fix double call of tty_disconnect() on macOS/Darwin. 2024-01-12 12:11:24 +01:00
Martin Lund
e572255fd2 Fix file descriptor handling on MacOS 2024-01-11 20:36:17 +01:00
Martin Lund
bfefd04b55 Update README 2023-12-10 21:43:11 +01:00
Jakob Haufe
ed66c72ca1
Fix troff warning (#216)
.eo/.ec sections seemingly need explicit empty lines using .sp

Otherwise, troff complains:

troff:<standard input>:535: warning: expected numeric expression, got '\'
troff:<standard input>:538: warning: expected numeric expression, got '\'
troff:<standard input>:541: warning: expected numeric expression, got '\'
2023-12-08 10:43:37 +01:00
Martin Lund
14f598e11e Update README 2023-09-28 12:52:01 +02:00
Martin Lund
7193e6f0c9 Bump version 2023-09-22 16:57:44 +02:00
HiFiPhile
72399c4fe6
CYGWIN: Fix port auto connection. (#211) 2023-09-22 11:53:37 +02:00
Martin Lund
1777206de7 Update plain text man page 2023-09-21 08:47:34 +02:00
Martin Lund
1c32555c2a Update NEWS 2023-09-19 21:48:58 +02:00
Martin Lund
4307e81760 Update AUTHORS 2023-09-19 21:47:55 +02:00
Martin Lund
3d7d9c85b5 Bump version 2023-09-19 21:37:05 +02:00
Martin Lund
02b60e9fb3 Revert "Make quit hint more explicit"
This reverts commit 93e49ab5a2.
2023-09-19 21:21:59 +02:00
Martin Lund
c93922fd36 Update README 2023-09-16 16:10:30 +02:00
Martin Lund
838c110876 Increase header size for ymodem 2023-09-16 15:03:38 +02:00
Martin Lund
a42f3f78d1 Overwrite old stale letters on xmodem filename input
When entering a file name, eg. 'test' it whould output the following
with 2 stale letters of the former input string:

[14:41:58.987] Send file with XMODEM
[14:42:08.015] Sending file 'test'st
[14:42:08.015] Press any key to abort transfer

To avoid this we simply overwrite the 2 stale letters with whitespaces.
2023-09-16 14:51:34 +02:00
Martin Lund
93e49ab5a2 Make quit hint more explicit
To minimize confusion for new users.
2023-09-16 14:13:27 +02:00
Martin Lund
ed0386d2c4 Re-adjust max line size
So it stays within maximum size handled by xmodem.
2023-09-16 13:14:55 +02:00
Martin Lund
63dced047f Update AUTHORS 2023-09-16 12:30:52 +02:00
Martin Lund
cf6e8b963b Clean up whitespaces 2023-09-16 12:27:34 +02:00
Martin Lund
07864a0e78 Increase line buffer size
Just to make sure we accept very long filenames.
2023-09-16 12:25:38 +02:00
Martin Lund
c9c5f03c10 Fix meson source listing 2023-09-16 12:20:34 +02:00
pnrhub
e6ffbd9058
Add xmodem and ymodem file send support (#208)
* Add xmodem and ymodem file send support
---------

Co-authored-by: pnr <pnr@home25.nl>
2023-09-16 12:17:38 +02:00
Martin Lund
812dee8e54
Merge pull request #207 from HiFiPhile/eintr
tty_stdin_input_thread(): write to pipe only if byte_count > 0.
2023-09-14 00:19:39 +02:00
HiFiPhile
d9dc1ff698 tty_stdin_input_thread(): write to pipe only if byte_count > 0. 2023-09-14 00:06:46 +02:00
Martin Lund
c01baca157
Merge pull request #206 from HiFiPhile/eintr
Ignore EINTR error.
2023-09-13 23:30:04 +02:00
HiFiPhile
5c441f22c2 Ignore EINTR error. 2023-09-13 22:45:11 +02:00
Martin Lund
8134cd3486 Update AUTHORS 2023-09-10 13:57:12 +02:00
Martin Lund
46a72d8254
Merge pull request #204 from HiFiPhile/com
CYGWIN: Add support for "COM*" naming.
2023-09-10 13:55:47 +02:00
HiFiPhile
bdca5a27ec CYGWIN: Add support for "COM*" naming. 2023-09-10 13:32:01 +02:00
Martin Lund
3c7c865e59 Update man page 2023-09-07 00:55:52 +02:00
Martin Lund
59cd3a1379 Update README 2023-08-20 23:48:43 +02:00
Martin Lund
98052936b0 Update TODO 2023-08-18 14:20:14 +02:00
Martin Lund
a486ba581b
Merge pull request #200 from weskoerber/fix/log-append-cli
fix: support --log-append in cli options
2023-07-14 09:25:41 +02:00