Commit graph

243 commits

Author SHA1 Message Date
Mark Pizzolato
9e71982249 SCP: Avoid potential buffer overflow using sprintf
- avoid warnings about snprintf truncation

As reported in #717
2019-07-02 09:53:56 -07:00
Mark Pizzolato
1a48c543d5 TMXR: Fix tmxr_rqln() when speeds are enabled to avoid aways ready condition. 2019-04-10 15:08:49 -07:00
Mark Pizzolato
3840765c63 TMXR: Properly test when adding debugging options only to DEV_MUX DEVICEs 2019-03-13 06:45:21 -07:00
Mark Pizzolato
cb9876ce65 SCP: Cleanup gcc compiler flagged potential issues
Compiler warnings about undeclared case fall throughs, and potential
buffer overruns,
2019-01-21 16:43:17 -08:00
Mark Pizzolato
59bfff4bfd TMXR: Make sure to only set UNIT_TM_POLL flag for active tmxr units.
The effect here is to avoid clearing the UNIT_TM_POLL flag for devices which
call tmxr_set_line_unit or tmxr_set_line_output_unit on device reset.

As reported in #646
2019-01-05 07:38:02 -08:00
Mark Pizzolato
f8bc1add59 TMXR: Avoid potential improper clearing of UNIT_TM_POLL flag.
As discussed in #646
2019-01-04 17:40:41 -08:00
Mark Pizzolato
4b5b1edea5 TMXR: Properly reference the per line packet variable when connecting sockets 2018-11-19 04:58:24 -08:00
Mark Pizzolato
b6b457a84d SCP: Fix Coverity identified issues 2018-09-28 20:47:54 -07:00
Mark Pizzolato
488b91a62c TMXR: Avoid potential divide by 0 when setting speed without a speed factor 2018-09-08 13:58:20 -07:00
Lars Brinkhoff
6dfb0111e8 TMXR: Add Morton box line speeds: 25k, 40k, 50k, and 80k BPS. 2018-09-06 11:06:36 -07:00
Mark Pizzolato
99cabebbf0 TMXR: Make sure to send the telnet mantra on outgoing telnet connects 2018-09-06 02:07:37 -07:00
Mark Pizzolato
8ac1845b30 TMXR: Fix to drop DCD and CTS when a modem connection is dropped remotely
As reported  in #609
2018-08-26 15:45:12 -07:00
Mark Pizzolato
af173b7b6e TMXR: Rework modem signaling support
- Fix ineffective setting of RNG modem bit when line with DTR isn't available
- Fix logic clearing modem signal bits
- Add API to set/clear modem control behavior fo a specific line.
- return -2 status from tmxr_poll_conn when RNG has been enabled
2018-08-24 11:54:42 -07:00
Mark Pizzolato
6070692581 SCP: Add unit to AIO_VALIDATE context message 2018-08-08 11:51:54 -07:00
Mark Pizzolato
ee45ae1a08 TMXR: Remove 8-bit characters from comments 2018-07-15 07:26:23 -07:00
Mark Pizzolato
f42db0c6ea TMXR: Add tmxr_txdone_ln() to provide precise completion speed timing
Multi line TMXR devices can simplify state maintenance and better leverage
output scheduling when they use this API
2018-07-12 10:12:49 -07:00
Mark Pizzolato
67b0f38242 TMXR: Give priority to pending transfer delays prior to considering queued data 2018-07-07 21:57:23 -07:00
Mark Pizzolato
58ccb38d7b SCP: Add ability to ECHOF output to TMXR lines 2018-07-06 17:57:05 -07:00
Mark Pizzolato
4f61cd3a11 TMXR: Properly adjust speed delays when the factor is dynamically changed 2018-06-23 14:43:39 -07:00
Mark Pizzolato
d3da865e9b TMXR: Fix MUX transmit scheduling when buffer is empty
Also:
- Enhance SHOW MUX to support "SHOW MUX <dev>"
- Fix potential null pointer dereference with unusual ATTACH combinations
- Allow BPS factor to change without specifying an explicit speed.
2018-06-23 11:30:02 -07:00
Mark Pizzolato
53792d6261 TMXR: Describe TMXR API a little better 2018-06-19 22:05:12 -07:00
Mark Pizzolato
775d9f2453 TMXR: Minor attach error path and performance enhancements 2018-06-19 16:39:47 -07:00
Mark Pizzolato
b5537796ea TMXR: Add EXPECT/SEND support for BUFFERED lines
- Provide consistent behavior for connected OR BUFFERED lines
   BUFFERED lines can be used with MUX EXPECT/SEND scripting
   without an active connection.
- Fix SHOW MUX to display useful info for BUFFERED lines.
2018-06-19 16:13:22 -07:00
Mark Pizzolato
ffb6d4b269 TMXR: Fix ATTACH <dev> SPEED= to apply speed (or factor) if it is specified 2018-06-19 16:02:26 -07:00
Mark Pizzolato
215a71d608 TMXR: Make tmxr_rqln() only return count times tmxr_getc_ln() can be called 2018-06-19 15:59:19 -07:00
Mark Pizzolato
440bbfd307 TMXR: Consider pending SEND input when scheduling MUX input polling delays
Also consider pending SEND input when returning queued data count
2018-06-17 23:02:39 -07:00
Mark Pizzolato
d35b19a8ba TMXR: purge any unprocessed EXPECT rules and SEND data on a MUX detach 2018-06-17 21:55:55 -07:00
Mark Pizzolato
4428d49b08 TMXR: Properly determine wait time when multiple lines are active 2018-06-16 20:07:38 -07:00
Mark Pizzolato
0a7c9de1e1 TMXR: Change rx and tx delta values to be usecs including the speed factor 2018-06-13 04:51:34 -07:00
Mark Pizzolato
a3d8cc6118 TMXR: Actively flush output prior to assessing wait time 2018-06-13 04:06:20 -07:00
Mark Pizzolato
2bf523dea0 TMXR: Allow tmxr_init_line() to be called even if not attached (Dave Bryan) 2018-06-12 19:45:27 -07:00
Mark Pizzolato
ed2abaa2d8 SCP: Enhance debug output while tracking event and timer activity 2018-06-11 03:13:29 -07:00
Mark Pizzolato
06654d1ff5 TMXR: Make sure all MUX devices can leverage all debug selectors 2018-06-07 16:39:26 -07:00
Mark Pizzolato
b007669ad5 TMXR: Don't allow 0 speed specifier for speed programmable mux devices
As reported in #587
2018-06-05 08:51:19 -07:00
Mark Pizzolato
584147fb64 TMXR: Remove output unit from delay consideration after poll has nothing queued
The goal of the logic in _tmxr_activate_delay() is to properly schedule the next
poll activity considering input and/or output data rates that may be in effect.
We need to make sure that one more poll is scheduled after output data has
been sent since simulation logic may have deferred queuing output data for
other reasons and handles its reactivation in the same context that it polls for
output.
2018-05-20 08:07:30 -07:00
Mark Pizzolato
ce390bbae4 TMXR: Make transmitted data consider the configured line speed factor
As discussed in #566
2018-05-18 13:25:30 -07:00
Mark Pizzolato
3671ef1d87 TMXR: Add speed factor validation check and display in SHOW MUX 2018-05-17 13:32:37 -07:00
Mark Pizzolato
f2f4bfa8fb TMXR: Fix potential uninitialized variable reference Coverity warning
The uninitialized case would never occur since the routing containing that
code would never be called when the conditions that would leave the variable
uninitialized.
2018-04-25 14:15:45 -07:00
Mark Pizzolato
4c62583d13 TMXR: Add ability to disable specific lines on multi-line multiplexers.
sim> ATTACH <dev> Line=n,DISABLE
2018-04-18 02:14:28 -07:00
Mark Pizzolato
309598e2cd SCP: Fix declaration duplications and indentation issues 2018-04-16 16:57:06 -07:00
Mark Pizzolato
81bcd6d319 CONSOLE/SERIAL: Properly rate limit output to console port
When the console is connected to a serial port or telnet sessions enable
speed setting, the bits being output are now paced a the desired speed.
Multi-line mux I/O is also correctly rate limited on all lines.

This should address the problems described in #545
2018-04-06 04:12:38 -07:00
Mark Pizzolato
95f5a1c371 TMXR: Properly display serial configuration and allow unconfigured serial ports 2018-04-05 21:14:56 -07:00
Mark Pizzolato
d7b1707b45 TMXR: Properly set transmit wait time when speed changes are made.
- Display Input, Output and Connection Polling units properly.
2018-04-02 13:30:38 -07:00
Mark Pizzolato
3f7f92682d TMXR, SERIAL: Properly set serial port speed on attach. 2018-03-20 20:52:26 -07:00
Mark Pizzolato
f5ca960b82 TMXR: Disable ATTACH speed for devices which program port speed 2018-03-13 02:14:06 -07:00
Mark Pizzolato
cfbfac03bb TMXR: Set character delay times when changing serial port speeds
As discussed in #504
2018-03-03 01:14:51 -08:00
Mark Pizzolato
ba962252b0 TMXR: Properly initialize TMXR and UNIT connections
This will fix the SEGFAULT discussed in #528
2018-03-02 17:26:45 -08:00
Mark Pizzolato
d91d47d1f4 SCP: Silence compiler warnings 2018-02-13 12:27:18 -08:00
Mark Pizzolato
611679a5cd TMXR: Properly apply output rate limit timing to all lines on a mux
Compute proper scheduling delays for all mux polling activities.
2018-02-13 01:38:33 -08:00
Mark Pizzolato
305ce5b598 TMXR: Fix potential SegFault while negotiating telnet options
If a telnet session sends options just prior to closing a session, the response
traffic might get dropped which isn't a problem, but we need to make sure
that we stop referencing the now invalid line structure after that happens.
2017-12-22 03:20:32 -08:00