This falls through to using 239.255.86.86 as the multicast address and
excluding a shared secret hash, if no shared secret has been entered.
This restores compatibility with QEMU’s `-netdev dgram` mode, as
suggested by @richardg867.
Based on a xfree 3.3.6 realtek svga driver source, this commit implements a proper clock table for the RTG310x cards (both -5 and -6). Fixes wrong refresh rates on Windows drivers and DOS possibly.
The prior code did a memmove over the packet data, and in cases where
a packet is completely full (large transfers under an MTU 1500, for
instance), it would corrupt the data packet and nothing got
transferred.
In its place, teach the code to build up the secret_hash header as a
separate component and send a larger packet (by 32 bytes). The
original packet remains intact and will get received by the intended
target this way.
Two birds in one commit: with the introduction of shared secrets,
there is a practically-infinite amount of local switches that can be
used, by merely editing the shared secret string. As such, support
for old switch groups has been removed.
In addition to this, the multicast address for local switch has been
altered to 239.255.80.86. This ensures a hard compatibility break
with the previous code and old (albeit interim) builds of 86Box would
not attempt to receive packets with shared secrets.
This allows for a “shared secret” to be entered for a network switch,
segmenting traffic so that multiple people could use the feature
simultaneously without accidentally entering into or interfering with
each other's networks.
Takes a string specified in the configuration file (using the
net_%02i_secret key) and hashes it through SHA3-256 to prepend to each
data packet. This hash is used to compare packets on reception and
allow or discard them.
1. See above.
2. Reuse the 4k ROM with proper loading mechanism so that extended ATI modes can be used with the ATI 8514 Ultra 4k ROM (add-on).
3. Disable excess logging.
4. Apparently 8514/A bresenham line must always draw the last pixel unlike the vector lines, fixes missing pixels in some programs e.g.: calculator on Windows 3.x using 8514/A drivers.