Commit graph

17 commits

Author SHA1 Message Date
Lars Brinkhoff
70af29ac0c H316: The UDP code doesn't need anything from h316_defs.h.
Removing this line makes it easier to reuse the h316_udp.c file in
other simulators that want to use the IMP-host interface.
2021-11-01 18:17:46 +01:00
Mark Pizzolato
36a732b26f H316: Update error and warning messages to properly use SCP APIs 2020-02-16 17:30:20 -08:00
Charles Anthony
e8bceec8e2 H316: Implement the IMP host interface.
- From Charles Anthony passed through Lars Brinkhoff
- Cleaned up for cross platform builds - Mark Pizzolato
2020-02-15 13:19:37 -08:00
Mark Pizzolato
4fe9ae7f76 H316, Ibm1130, S3: Silence GCC warnings about potential format truncation 2019-12-30 17:44:15 -08:00
Mark Pizzolato
437e5a4bb5 H316: Use snprintf() to avoid potential buffer overflow 2019-07-16 04:12:42 -07:00
Mark Pizzolato
85770281fb H316: Remove Coverity indicated warnings rather than declaring them intentional 2019-07-07 19:29:30 -07:00
Mark Pizzolato
05f682115c H316: Avoid potential buffer overflow for UDP connect string 2018-08-27 12:09:25 -07:00
Mark Pizzolato
5531ccb175 ALL: Massive 'const' cleanup
These changes facilitate more robust parameter type checking and helps
to identify unexpected coding errors.

Most simulators can now also be compiled with a C++ compiler without
warnings.

Additionally, these changes have also been configured to facilitate easier
backporting of simulator and device simulation modules to run under the
simh v3.9+ SCP framework.
2016-05-15 15:25:33 -07:00
Mark Pizzolato
0b015efcac Compiler suggested cleanup 2015-02-11 12:25:11 -08:00
Mark Pizzolato
1fb209c275 SOCKETS: Cleanup, simplify and extend the sim_sock API set.
Cleanup/Simplification by:
	1) removing irrelevant master flag variable from sim_close_sock and thus sim_err_sock
	2) change previous boolean feature arguments (datagram, nodelay, reuseaddr) to flag bits in a single option argument.  This allows for features to be added by new flag bits which don't change the calling signatures.
	3) changed all status returns to be int (vs t_stat) with success being 0 and error being -1
	4) removed unneeded simh specific type references to allow sim_sock to be used by n
Extended API by providing flags to influence socket setup/behavior:
	SIM_SOCK_OPT_REUSEADDR	Retains prior behavior when sim_switches had -U set
	SIM_SOCK_OPT_DATAGRAM	UDP socket setup provided for when prior datagram argument was specified
	SIM_SOCK_OPT_NODELAY		TCP Nagle disable provided for when prior nodelay argument was specified
	SIM_SOCK_OPT_BLOCKING	Blocking socket mode (detault is non blocking)
2015-02-11 09:41:18 -08:00
Mark Pizzolato
c548b34772 Compiler suggested cleanups. 2014-10-27 17:14:28 -07:00
Mark Pizzolato
8810571d7e H316: Improve IMP error recovery when a remote host is restarted. 2013-12-02 12:00:48 -08:00
Mark Pizzolato
33248778cf TMXR: Correct const attributes for packet reading APIs. 2013-12-02 10:29:04 -08:00
Mark Pizzolato
0e7311704d H316: Fix compiler warning 2013-11-30 00:36:51 -08:00
Mark Pizzolato
9bd573d967 H316: Added support for proper max data packet size transmission and reception in h316_udp.c 2013-11-29 23:42:38 -08:00
Mark Pizzolato
c9f73eac90 H316: Rewrote h316_udp to use TMXR lines for UDP transport of data. Changed h316_mi to leverage built-in loopback mode in TMXR.
This gives UDP transport on all simh host platforms.
2013-11-26 13:30:11 -08:00
Mark Pizzolato
65402fbaa1 H316: Resurrecting the ARPAnet IMP (from Bob Armstrong)
This summer a group of us worked together to resurrect the original ARPAnet IMP software, and I’m now happy to say that the IMP lives again in simulation.    It’s possible to run the original IMP software on a modified version of the H316 simh and to set up a virtual network of simulated IMPs talking to each other.   IMP to IMP connections, which would have originally been carried over leased telephone lines, are tunneled over IP.  As far as we can tell, everything works pretty much as it did in the early 1970s.  IMPs are able to exchange routing information, console to console communications, network statistics, and they would carry host traffic if there were hosts on the network.  The hooks are in there to allow simh to support the IMP side of the 1822 host interface, and the next step would be to recover the OS for an ARPAnet era host and then extend the corresponding simulator to talk to the IMP simulation.
2013-11-23 08:40:26 -08:00