Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package tio for openSUSE:Factory checked in 
at 2023-06-13 16:09:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tio (Old)
 and      /work/SRC/openSUSE:Factory/.tio.new.15902 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "tio"

Tue Jun 13 16:09:39 2023 rev:13 rq:1092667 version:2.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/tio/tio.changes  2022-12-29 13:09:36.777111912 
+0100
+++ /work/SRC/openSUSE:Factory/.tio.new.15902/tio.changes       2023-06-13 
16:09:41.702950898 +0200
@@ -1,0 +2,8 @@
+Sat Jun 10 12:01:41 UTC 2023 - Martin Hauke <mar...@gmx.de>
+
+- Update to 2.6:
+  * Remove warning when using pattern option
+  * Add --log-append option
+  * Fix line termination for response wait feature
+
+-------------------------------------------------------------------

Old:
----
  tio-2.5.tar.xz

New:
----
  tio-2.6.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ tio.spec ++++++
--- /var/tmp/diff_new_pack.fFOaOV/_old  2023-06-13 16:09:42.402955028 +0200
+++ /var/tmp/diff_new_pack.fFOaOV/_new  2023-06-13 16:09:42.410955075 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package tio
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           tio
-Version:        2.5
+Version:        2.6
 Release:        0
 Summary:        Simple TTY terminal I/O application
 License:        GPL-2.0-or-later

++++++ tio-2.5.tar.xz -> tio-2.6.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/AUTHORS new/tio-2.6/AUTHORS
--- old/tio-2.5/AUTHORS 2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/AUTHORS 2023-06-10 13:02:32.000000000 +0200
@@ -42,5 +42,8 @@
 Victor Oliveira <rhapso...@gmail.com>
 Attila Veghelyi <aveghe...@dension.com>
 Vyacheslav Patkov <sl...@patkov.ru>
+Bill Hass <billh...@umich.edu>
+Peter van Dijk <pe...@7bits.nl>
+Braden Young <bra...@somewearlabs.com>
 
 Thanks to everyone who has contributed to this project.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/NEWS new/tio-2.6/NEWS
--- old/tio-2.5/NEWS    2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/NEWS    2023-06-10 13:02:32.000000000 +0200
@@ -1,5 +1,60 @@
 
-=== tio v2.5 ===
+=== tio v2.6 ===
+
+
+
+Changes since tio v2.5:
+
+ * Remove warning when using pattern option
+
+ * Add --log-append option
+
+   Add --log-append option which makes tio append to any existing log file.
+
+   This also changes the default behaviour of tio from appending to
+   overwriting any existing log file. Now you have to use this new option
+   to make tio append.
+
+ * Update man page
+
+ * Update README
+
+ * Fix line termination for response wait feature
+
+   The response wait feature waited for a line response, a string
+   terminated with either CR or NL. However, some devices may send a CR and
+   then their line content and then NL. This means tio will quit before
+   receiving and printing the line response. To solve this we simply ignore
+   the CR character and only consider lines terminated with a NL character.
+
+   This should work for all devices as lines are AFAIK always terminated
+   with either CRNL or a NL.
+
+ * Update tty device listing configuration
+
+   Cleanup and add FreeBSD tty device listing support.
+
+Braden Young:
+
+ * Move map variables to tty to keep them all in one spot
+
+ * Configure socket mapping flags from tty parsing logic. Remove duplicate 
parsing logic in socket
+
+ * Support input mapping modes for sockets
+
+Josh Soref:
+
+ * Various spelling fixes
+
+Peter van Dijk:
+
+ * avoid "warning: unused parameter" on setspeed stub
+
+ * use right /dev/ path on Haiku
+
+Bill Hass:
+
+ * Update README with details on snap confinement
 
 
 
@@ -524,7 +579,7 @@
    pipe data to tio which then forwards the data to the connected serial
    device.
 
-   Non ineractive means that tio does not react to interactive key commands
+   Non interactive means that tio does not react to interactive key commands
    in the incoming stream. This allows users to pipe binary data directly
    to the connected serial device.
 
@@ -653,7 +708,7 @@
    inherently inconsistent with how you define required arguments.
 
    To avoid confusion we decide to avoid this inconsistency by replacing
-   optional options with additional options with required argmuments.
+   optional options with additional options with required arguments.
 
  * Replace '1' with 'enable' in config files
 
@@ -1018,10 +1073,10 @@
  * Fix out of tree builds
 
    Out of tree builds are currently broken because $(top_srcdir)src/include
-   is not in the search path. In tree builds are working because autconf add
+   is not in the search path. In tree builds are working because autoconf adds
    $(top_builddir)/src/include to the search path for the generated config.h.
    As $(top_builddir) and $(top_srcdir) are identical during in tree builds
-   the search path still end up beeing somehow correct.
+   the search path still end up being somehow correct.
 
    To fix this add -I$(srcdir)/include to the CPPFLAGS in Makefile.am.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/README.md new/tio-2.6/README.md
--- old/tio-2.5/README.md       2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/README.md       2023-06-10 13:02:32.000000000 +0200
@@ -1,6 +1,9 @@
+
+[![tio](images/tio-icon.png)]()
+
 # tio - a simple serial device I/O tool
 
-[![](https://img.shields.io/circleci/build/gh/tio/tio?token=da7e7fd0d0ee99b9f986f8877dcdbe28f73d9e06)](https://circleci.com/gh/tio/tio/tree/master)
+[![](https://img.shields.io/circleci/build/github/tio/tio)](https://circleci.com/github/tio/tio/tree/master)
 
[![](https://img.shields.io/github/v/release/tio/tio?sort=semver)](https://github.com/tio/tio/releases)
 
[![](https://img.shields.io/repology/repositories/tio)](https://repology.org/project/tio/versions)
 
[![](https://img.shields.io/tokei/lines/github/tio/tio)](https://github.com/tio/tio)
@@ -29,7 +32,7 @@
 
  * Easily connect to serial TTY devices
  * Automatic connect and reconnect
- * Sensible defaults
+ * Sensible defaults (115200 8n1)
  * Support for non-standard baud rates
  * Support for RS-485 mode
  * Support for mark and space parity
@@ -55,6 +58,7 @@
  * Visual or audible alert on connect/disconnect
  * Remapping of prefix key
  * Man page documentation
+ * Binary size less than 80kB
  * Plays nicely with [tmux](https://tmux.github.io)
 
 ## 3. Usage
@@ -256,9 +260,12 @@
 
 Install latest stable version:
 ```
-$ snap install tio
+$ snap install tio --classic
 ```
 
+Note: Classic confinement is currently required due to limitations of the 
snapcraft framework.
+See [Issue #187](https://github.com/tio/tio/issues/187) for discussion.
+
 ### 4.3 Installation using brew (MacOS, Linux)
 
 If you have [brew](http://brew.sh) installed:
@@ -279,7 +286,7 @@
 
 Install steps:
 ```
-$ meson build
+$ meson setup build
 $ meson compile -C build
 $ meson install -C build
 ```
@@ -288,6 +295,15 @@
 
 Note: The meson install steps may differ depending on your specific system.
 
+### 4.6 Known issues
+
+Getting permission access errors trying to open your serial device?
+
+Add your user to the group which allows serial device access. For example, to 
add your user to the 'dialout' group do:
+```
+$ sudo usermod -a -G dialout <username>
+```
+
 
 ## 5. Contributing
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/TODO new/tio-2.6/TODO
--- old/tio-2.5/TODO    2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/TODO    2023-06-10 13:02:32.000000000 +0200
@@ -1,3 +1,34 @@
+ * Support for interaction using simple autoresponse strings
+
+   Add support for simple autoresponse strings in the configuration file. For
+   example:
+
+   autoresponse = expect:'localhost login: ', send:'root\n',
+                  expect:'Password: ', send:'abcd1234\n'
+
+   When expect line is matched tio will respond by writing the send string.
+
+   When parsing the autoresponse variable make sure matching expect/send pairs
+   else provide warning.
+
+   Maybe support regex matching in expect string to make feature more powerful.
+
+   This is mostly a convenience feature. For more powerful scripted interaction
+   users can continue use the socket feature in combination with the expect 
tool
+   as described in the man page.
+
+   Maybe provide a mechanism to disable autoresponse feature. Maybe by defining
+   maximum match count and/or in session key command to toggle feature.
+
+ * Support for running external command
+
+   Add key command e.g. 'ctrl-t r' which prompts user to run external command.
+   The command will be run in a process which stdin/stdout is redirected to the
+   serial port.
+
+   This is the first step towards maybe also adding automatic support for
+   x/y/zmodem data transfer protocols by calling external programs such as
+   rb/sb, rx/sx, rz/sz, etc.
 
  * Allow tio to connect to socket
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/example/config new/tio-2.6/example/config
--- old/tio-2.5/example/config  2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/example/config  2023-06-10 13:02:32.000000000 +0200
@@ -22,6 +22,7 @@
 hexadecimal = disable
 timestamp = disable
 log = disable
+log-append = disable
 log-strip = disable
 local-echo = disable
 color = bold
@@ -29,7 +30,7 @@
 response-wait = disable
 alert = none
 
-# Sub-configuraions
+# Sub-configurations
 
 [rpi3]
 baudrate = 115200
Binary files old/tio-2.5/images/tio-icon.png and 
new/tio-2.6/images/tio-icon.png differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/man/tio.1.in new/tio-2.6/man/tio.1.in
--- old/tio-2.5/man/tio.1.in    2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/man/tio.1.in    2023-06-10 13:02:32.000000000 +0200
@@ -131,7 +131,10 @@
 
 Enable log to file.
 
-If no filename is provided the filename will be automatically generated.
+The filename will be automatically generated using the following format
+tio_DEVICE_YYYY-MM-DDTHH:MM:SS.log.
+
+The filename can be manually set using the \-\-log-file option.
 
 .TP
 .BR "    \-\-log-file \fI<filename>
@@ -139,6 +142,11 @@
 Set log filename.
 
 .TP
+.BR "    \-\-log-append
+
+Append to log file.
+
+.TP
 .BR "    \-\-log-strip
 
 Strip control characters and escape sequences from log.
@@ -220,8 +228,8 @@
 .TP
 .BR \-r ", " \-\-response-wait
 
-Wait for line response then quit. A line is considered any string ending with
-either CR or NL character. If no line is received tio will quit after response
+Wait for line response then quit. A line is considered any string terminated
+with a NL character. If no line is received tio will quit after response
 timeout.
 
 Any tio text is automatically muted when piping a string to tio while in
@@ -280,7 +288,7 @@
 .SH "KEYS"
 .PP
 .TP 16n
-In session, the following key sequences, a prefix key (default: ctrl-t) 
followed by a command key, are intercepted as tio commands:
+In session, all key strokes are forwarded to the serial device except the 
following key sequence: a prefix key (default: ctrl-t) followed by a command 
key. These sequences are intercepted as tio commands:
 .IP "\fBctrl-t ?"
 List available key commands
 .IP "\fBctrl-t b"
@@ -502,12 +510,12 @@
 .TP
 Redirect serial device I/O to Unix file socket for scripting:
 
-$ tio -S unix:/tmp/tmux-socket0 /dev/ttyUSB0
+$ tio -S unix:/tmp/tio-socket0 /dev/ttyUSB0
 
 .TP
 Then, to issue a command via the file socket simply do:
 
-$ echo "ls -la" | nc -UN /tmp/tmux-socket0 > /dev/null
+$ echo "ls -la" | nc -UN /tmp/tio-socket0 > /dev/null
 
 .TP
 Or use the expect command to script an interaction:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/man/tio.1.txt new/tio-2.6/man/tio.1.txt
--- old/tio-2.5/man/tio.1.txt   2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/man/tio.1.txt   2023-06-10 13:02:32.000000000 +0200
@@ -1,4 +1,4 @@
-tio(1)                                                                         
                                       User Commands                            
                                                                                
   tio(1)
+tio(1)                                                                         
                                                                User Commands   
                                                                                
                                                      tio(1)
 
 NAME
        tio - a simple serial device I/O tool
@@ -66,8 +66,7 @@
 
               Disable automatic connect.
 
-              By  default tio automatically connects to the provided device if 
present. If the device is not present, it will wait for it to appear and then 
connect. If the connection is lost (eg. device disconnects), it will wait for 
the device to
-              reappear and then reconnect.
+              By default tio automatically connects to the provided device if 
present. If the device is not present, it will wait for it to appear and then 
connect. If the connection is lost (eg. device disconnects), it will wait for 
the device to reappear and then reconnect.
 
               However, if the --no-autoconnect option is provided, tio will 
exit if the device is not present or an established connection is lost.
 
@@ -101,12 +100,18 @@
 
               Enable log to file.
 
-              If no filename is provided the filename will be automatically 
generated.
+              The filename will be automatically generated using the following 
format tio_DEVICE_YYYY-MM-DDTHH:MM:SS.log.
+
+              The filename can be manually set using the --log-file option.
 
            --log-file <filename>
 
               Set log filename.
 
+           --log-append
+
+              Append to log file.
+
            --log-strip
 
               Strip control characters and escape sequences from log.
@@ -151,8 +156,7 @@
 
               Redirect I/O to socket.
 
-              Any input from clients connected to the socket is sent on the 
serial port as if entered at the terminal where tio is running (except that 
ctrl-t sequences are not recognized), and any input from the serial port is 
multiplexed  to  the
-              terminal and all connected clients.
+              Any input from clients connected to the socket is sent on the 
serial port as if entered at the terminal where tio is running (except that 
ctrl-t sequences are not recognized), and any input from the serial port is 
multiplexed to the terminal and all connected clients.
 
               Sockets remain open while the serial port is disconnected, and 
writes will block.
 
@@ -170,7 +174,7 @@
 
        -r, --response-wait
 
-              Wait for line response then quit. A line is considered any 
string ending with either CR or NL character. If no line is received tio will 
quit after response timeout.
+              Wait for line response then quit. A line is considered any 
string terminated with a NL character. If no line is received tio will quit 
after response timeout.
 
               Any tio text is automatically muted when piping a string to tio 
while in response mode to make it easy to parse the response.
 
@@ -215,7 +219,7 @@
               Display help.
 
 KEYS
-       In session, the following key sequences, a prefix key (default: ctrl-t) 
followed by a command key, are intercepted as tio commands:
+       In session, all key strokes are forwarded to the serial device except 
the following key sequence: a prefix key (default: ctrl-t) followed by a 
command key. These sequences are intercepted as tio commands:
 
        ctrl-t ?        List available key commands
 
@@ -391,11 +395,11 @@
 
        Redirect serial device I/O to Unix file socket for scripting:
 
-              $ tio -S unix:/tmp/tmux-socket0 /dev/ttyUSB0
+              $ tio -S unix:/tmp/tio-socket0 /dev/ttyUSB0
 
        Then, to issue a command via the file socket simply do:
 
-              $ echo "ls -la" | nc -UN /tmp/tmux-socket0 > /dev/null
+              $ echo "ls -la" | nc -UN /tmp/tio-socket0 > /dev/null
 
        Or use the expect command to script an interaction:
 
@@ -444,4 +448,4 @@
 AUTHOR
        Created by Martin Lund <martin.l...@keep-it-simple.com>.
 
-tio 2.5                                                                        
                                        2022-11-02                              
                                                                                
   tio(1)
+tio 2.6                                                                        
                                                                  2022-12-17    
                                                                                
                                                      tio(1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/meson.build new/tio-2.6/meson.build
--- old/tio-2.5/meson.build     2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/meson.build     2023-06-10 13:02:32.000000000 +0200
@@ -1,5 +1,5 @@
 project('tio', 'c',
-    version : '2.5',
+    version : '2.6',
     license : [ 'GPL-2'],
     meson_version : '>= 0.53.2',
     default_options : [ 'warning_level=2', 'buildtype=release', 'c_std=gnu99' ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/configfile.c new/tio-2.6/src/configfile.c
--- old/tio-2.5/src/configfile.c        2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/configfile.c        2023-06-10 13:02:32.000000000 +0200
@@ -198,6 +198,10 @@
             asprintf(&c.log_filename, "%s", value);
             option.log_filename = c.log_filename;
         }
+        else if (!strcmp(name, "log-append"))
+        {
+            option.log_append = read_boolean(value, name);
+        }
         else if (!strcmp(name, "log-strip"))
         {
             option.log_strip = read_boolean(value, name);
@@ -285,6 +289,10 @@
         {
             option.mute = read_boolean(value, name);
         }
+        else if (!strcmp(name, "pattern"))
+        {
+            // Do nothing
+        }
         else
         {
             tio_warning_printf("Unknown option '%s' in configuration file, 
ignored", name);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/log.c new/tio-2.6/src/log.c
--- old/tio-2.5/src/log.c       2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/log.c       2023-06-10 13:02:32.000000000 +0200
@@ -69,8 +69,17 @@
 
     log_filename = filename;
 
-    // Open log file in append write mode
-    fp = fopen(filename, "a+");
+    // Open log file
+    if (option.log_append)
+    {
+        // Appends to existing log file
+        fp = fopen(filename, "a+");
+    }
+    else
+    {
+        // Truncates existing log file
+        fp = fopen(filename, "w+");
+    }
     if (fp == NULL)
     {
         tio_warning_printf("Could not open log file %s (%s)", filename, 
strerror(errno));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/options.c new/tio-2.6/src/options.c
--- old/tio-2.5/src/options.c   2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/options.c   2023-06-10 13:02:32.000000000 +0200
@@ -74,6 +74,7 @@
     .ri_pulse_duration = 100,
     .no_autoconnect = false,
     .log = false,
+    .log_append = false,
     .log_filename = NULL,
     .log_strip = false,
     .local_echo = false,
@@ -119,6 +120,7 @@
     printf("  -L, --list-devices                     List available serial 
devices by ID\n");
     printf("  -l, --log                              Enable log to file\n");
     printf("      --log-file <filename>              Set log filename\n");
+    printf("      --log-append                       Append to log file\n");
     printf("      --log-strip                        Strip control characters 
and escape sequences\n");
     printf("  -m, --map <flags>                      Map characters\n");
     printf("  -c, --color 0..255|bold|none|list      Colorize tio text 
(default: bold)\n");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/options.h new/tio-2.6/src/options.h
--- old/tio-2.5/src/options.h   2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/options.h   2023-06-10 13:02:32.000000000 +0200
@@ -48,6 +48,7 @@
     unsigned int ri_pulse_duration;
     bool no_autoconnect;
     bool log;
+    bool log_append;
     bool log_strip;
     bool local_echo;
     enum timestamp_t timestamp;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/setspeed.c new/tio-2.6/src/setspeed.c
--- old/tio-2.5/src/setspeed.c  2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/setspeed.c  2023-06-10 13:02:32.000000000 +0200
@@ -33,6 +33,7 @@
 #include <IOKit/serial/ioss.h>
 #endif
 
+#include "misc.h"
 
 #ifdef HAVE_TERMIOS2
 int setspeed(int fd, int baudrate)
@@ -62,6 +63,9 @@
 #else
 int setspeed(int fd, int baudrate)
 {
+    UNUSED(fd);
+    UNUSED(baudrate);
+
     errno = EINVAL;
     return -1;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/socket.c new/tio-2.6/src/socket.c
--- old/tio-2.5/src/socket.c    2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/socket.c    2023-06-10 13:02:32.000000000 +0200
@@ -33,6 +33,7 @@
 #include "socket.h"
 #include "options.h"
 #include "print.h"
+#include "tty.h"
 
 #define MAX_SOCKET_CLIENTS 16
 #define SOCKET_PORT_DEFAULT 3333
@@ -340,11 +341,26 @@
                 clientfds[i] = -1;
                 continue;
             }
-            /* match the behavior of a terminal in raw mode */
-            if (*output_char == '\n')
+
+            /* If INLCR is set, a received NL character shall be translated 
into a CR character */
+            if (*output_char == '\n' && map_i_nl_cr)
             {
                 *output_char = '\r';
             }
+            else if (*output_char == '\r')
+            {
+                /* If IGNCR is set, a received CR character shall be ignored 
(not read). */
+                if (map_ign_cr)
+                {
+                    return false;
+                }
+
+                /* If IGNCR is not set and ICRNL is set, a received CR 
character shall be translated into an NL character. */
+                if (map_i_cr_nl)
+                {
+                    *output_char = '\n';
+                }
+            }
             return true;
         }
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/timestamp.c new/tio-2.6/src/timestamp.c
--- old/tio-2.5/src/timestamp.c 2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/timestamp.c 2023-06-10 13:02:32.000000000 +0200
@@ -50,7 +50,7 @@
         first = false;
     }
 
-    // Add formatted timestap
+    // Add formatted timestamp
     switch (option.timestamp)
     {
         case TIMESTAMP_NONE:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/tty.c new/tio-2.6/src/tty.c
--- old/tio-2.5/src/tty.c       2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/tty.c       2023-06-10 13:02:32.000000000 +0200
@@ -56,15 +56,26 @@
 #include "timestamp.h"
 #include "misc.h"
 
-#if defined(__APPLE__)
+/* tty device listing configuration */
+
+#if defined(__linux__)
+#define PATH_SERIAL_DEVICES "/dev/serial/by-id/"
+#define PREFIX_TTY_DEVICES ""
+#elif defined(__FreeBSD__)
+#define PATH_SERIAL_DEVICES "/dev/"
+#define PREFIX_TTY_DEVICES "cua"
+#elif defined(__APPLE__)
 #define PATH_SERIAL_DEVICES "/dev/"
 #define PREFIX_TTY_DEVICES "tty."
 #elif defined(__CYGWIN__)
 #define PATH_SERIAL_DEVICES "/dev/"
 #define PREFIX_TTY_DEVICES "ttyS"
-#else
-#define PATH_SERIAL_DEVICES "/dev/serial/by-id/"
+#elif defined(__HAIKU__)
+#define PATH_SERIAL_DEVICES "/dev/ports/"
 #define PREFIX_TTY_DEVICES ""
+#else
+#define PATH_SERIAL_DEVICES "/dev/"
+#define PREFIX_TTY_DEVICES "tty"
 #endif
 
 #ifndef CMSPAR
@@ -118,6 +129,9 @@
 };
 
 bool interactive_mode = true;
+bool map_i_nl_cr = false;
+bool map_i_cr_nl = false;
+bool map_ign_cr = false;
 
 static struct termios tio, tio_old, stdout_new, stdout_old, stdin_new, 
stdin_old;
 static unsigned long rx_total = 0, tx_total = 0;
@@ -976,14 +990,17 @@
             if (strcmp(token,"INLCR") == 0)
             {
                 tio.c_iflag |= INLCR;
+                map_i_nl_cr = true;
             }
             else if (strcmp(token,"IGNCR") == 0)
             {
                 tio.c_iflag |= IGNCR;
+                map_ign_cr = true;
             }
             else if (strcmp(token,"ICRNL") == 0)
             {
                 tio.c_iflag |= ICRNL;
+                map_i_cr_nl = true;
             }
             else if (strcmp(token,"OCRNL") == 0)
             {
@@ -1409,7 +1426,7 @@
 
                     if (option.response_wait)
                     {
-                        if ((input_char == '\r') || (input_char == '\n'))
+                        if (input_char == '\n')
                         {
                              tty_sync(fd);
                              exit(EXIT_SUCCESS);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tio-2.5/src/tty.h new/tio-2.6/src/tty.h
--- old/tio-2.5/src/tty.h       2022-12-17 17:11:22.000000000 +0100
+++ new/tio-2.6/src/tty.h       2023-06-10 13:02:32.000000000 +0200
@@ -24,6 +24,9 @@
 #include <stdbool.h>
 
 extern bool interactive_mode;
+extern bool map_i_nl_cr;
+extern bool map_i_cr_nl;
+extern bool map_ign_cr;
 
 void stdout_configure(void);
 void stdin_configure(void);

Reply via email to