What's new in Client/Server Comm Lib for Xbase 7.1

Feb 15, 2018
  • Fixed problem with cscFileCRC().
  • Fixed problem with cscCryptoPutFileExt() - data was being incorrectly appended.
  • Added more internal diagnostics.
  • Added cscTestDotted() - returns TRUE if dotted address in correctly formatted.
  • Fixed problem in cscRelease() - log file was being closed prematurely.
  • Increased MAX_DATA_SIZE from 30000 to 50000 bytes.
  • Added CSC_SET_SOCK_REUSE [to cscSetInteger], enabling an app to close the listening socket and immediately reopen without error.

New in Client/Server Comm Lib for Xbase 7.0 (Apr 16, 2015)

  • Added cscMulticast() that receives multicast UDP packets.
  • Added cscClientExt() that binds to a local IP address (for multi-homed computers)
  • Fixed bogus CSC_BAD_OFFSET error sometimes returned by crcCryptoPutFile().

New in Client/Server Comm Lib for Xbase 6.3.1 (Jul 4, 2013)

  • Fixed: cscCryptoGetFileExt and cscCryptoPutFileExt were not using local file path.
  • Added: cscFillRandom(*,*,Seed) uses random seed if passed seed is zero.
  • Added: cscSetInteger(Port, CSC_SET_CLOSE_TIMEOUT, Tics) sets max tics before socket is forced closed.
  • Added: New example programs that use AES (Advanced Encryption Standard).
  • Fixed: cscResolve was returning bogus IP addresses after the first.

New in Client/Server Comm Lib for Xbase 6.2 (Mar 1, 2012)

  • Fixed cscCreateUDP function
  • Fixed vSock slot not being freed
  • Changed cscResponse function
  • Added cscReadSize function
  • Added support to connect to a device by sending commands to its TCP IP address

New in Client/Server Comm Lib for Xbase 6.1 (Oct 15, 2010)

  • Fixed: cscCreateUDP not saving socket so not closed later.
  • Changed: default connect timeout from 60 seconds to 10 seconds.
  • Changed: Pass RotateCount < 0 to cscResponse to return rightmost 31 bits of encrypted binary value.
  • Fixed: vSock slot freed when connect fails.
  • Added: cscReadSize() returns # bytes ready to be read.
  • Added: cscMakeDotted4() function (constructs dotted IP address from components).
  • Added: Control.prg example program (direct TCP control of external relay).

New in Client/Server Comm Lib for Xbase 6.0 (Oct 15, 2010)

  • Added cscPutPacket and cscGetPacket.
  • Added cscCryptoPutPacket and cscCryptoGetPacket.
  • Added CSC_SET_MAX_PACKET_SIZE and CSC_GET_MAX_PACKET_SIZE.
  • Changed: NBR_DATA_SOCKS to 1000, NBR_LISTEN_SOCKS to 50.
  • Changed: MAX_FILE_BUFFER_SIZE to 30000.
  • Changed: DEFAULT_FILE_BUFFER_SIZE to 10000.
  • Added CSC_SET_PAD_TX_INDEX and CSC_SET_PAD_RX_INDEX.
  • Added cscDataCRC and cscFileCRC.
  • cscGetInteger(Chan, CSC_GET_SOCKET) returns actual socket.
  • Added cscCreateUDP, cscGetUDP, cscCreateUDP.

New in Client/Server Comm Lib for Xbase 5.0 (Oct 15, 2010)

  • Several new functions were added for encyption:
  • cscCryptoGetData : Receives encrypted data.
  • cscCryptoPutData : Sends encrypted data.
  • cscCryptoGetFile : Receives encrypted file.
  • cscCryptoPutFile : Sends encrypted file.
  • cscFillRandom : Populate buffer with random numbers.

New in Client/Server Comm Lib for Xbase 4.0 (Oct 15, 2010)

  • In order to add the capabilty of one program being able to accept clients on more than one port, several changes were necessary to the existing CSC functions as follows:
  • 1. cscAttach:
  • Servers: Change cscAttach(CONNECTS + 1, KeyCode)
  • To cscAttach(CONNECTS, 1, KeyCode)
  • Clients: Change cscAttach(CONNECTS, KeyCode)
  • To cscAttach(CONNECTS, 0, KeyCode)
  • 2. cscServer:
  • Retain the return value (virtual "listen" socket) from cscServer that will be used when calling cscAwaitConnect, cscAcceptConnect, and cscConnectMessage.
  • 3. cscAwaitConnect:
  • Servers: Change cscAwaitConnect(Timeout)
  • To cscAwaitConnect(Sock, Timeout) where Sock is the value returned from cscServer.
  • Clients: Client programs don't call cscAwaitConnect.
  • 4. cscAcceptConnect:
  • Servers: Change cscAcceptConnect()
  • To cscAcceptConnect(Sock) where Sock is the value returned from cscServer.
  • Clients: Client programs don't call cscAcceptConnect.
  • 5. cscSendMessage:
  • Servers: Change cscSendMessage(Wnd, -1, MsgID)
  • To cscConnectMessage(Wnd, Sock, MsgID) where Sock is the value returned from cscServer.
  • Clients: Change cscSendMessage(Wnd, Sock, MsgID)
  • To cscDataMessage(Wnd, Sock, MsgID)

New in Client/Server Comm Lib for Xbase 3.0 (Oct 15, 2010)

  • cscGetFile and cscPutFile now allow files up to 953MB to be transfered. All application programs must be relinked with the new CSC32.LIB and use the new CSC32.DLL.
  • cscShortToByte and cscByteToShort were added to facilitate working with 16-bit Unicode ASCII text.