PDP11, Unibus VAX: Cleanup attach of Chaos Net routine

This commit is contained in:
Mark Pizzolato 2019-12-30 13:47:03 -08:00
parent e7cf2a00ec
commit 78fa98fd7e

View file

@ -411,7 +411,7 @@ t_stat ch_svc(UNIT *uptr)
t_stat ch_attach (UNIT *uptr, CONST char *cptr) t_stat ch_attach (UNIT *uptr, CONST char *cptr)
{ {
char linkinfo[256]; char *linkinfo;
t_stat r; t_stat r;
if (address == -1) if (address == -1)
@ -419,13 +419,16 @@ t_stat ch_attach (UNIT *uptr, CONST char *cptr)
if (peer[0] == '\0') if (peer[0] == '\0')
return sim_messagef (SCPE_2FARG, "Must set Chaosnet PEER \"SET CH PEER=host:port\"\n"); return sim_messagef (SCPE_2FARG, "Must set Chaosnet PEER \"SET CH PEER=host:port\"\n");
linkinfo[sizeof (linkinfo) - 1] = '\0'; linkinfo = (char *)calloc (100 + strlen (cptr) + strlen (peer), sizeof (*linkinfo));
snprintf (linkinfo, sizeof (linkinfo) - 1, "Buffer=%d,Line=%d,UDP,%s,PACKET,Connect=%s", if (linkinfo == NULL)
return SCPE_MEM;
sprintf (linkinfo, "Buffer=%d,Line=%d,UDP,%s,PACKET,Connect=%s",
(int)sizeof (tx_buffer), 0, cptr, peer); (int)sizeof (tx_buffer), 0, cptr, peer);
r = tmxr_attach (&ch_tmxr, uptr, linkinfo); r = tmxr_attach (&ch_tmxr, uptr, linkinfo);
free (linkinfo);
if (r != SCPE_OK) { if (r != SCPE_OK) {
sim_debug (DBG_ERR, &ch_dev, "TMXR error opening master\n"); sim_debug (DBG_ERR, &ch_dev, "TMXR error opening master\n");
return sim_messagef (r, "Error Opening: %s\n", peer); return sim_messagef (r, "Error Opening connection to: %s, using: %s\n", peer, cptr);
} }
sim_clock_coschedule (uptr, 1000); /* make sure polling starts */ sim_clock_coschedule (uptr, 1000); /* make sure polling starts */