Comparing DFHack:master...procitec:master · DFHack/clsocket · GitHub
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: DFHack/clsocket
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: procitec/clsocket
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 19 commits
  • 17 files changed
  • 2 contributors

Commits on Aug 12, 2020

  1. made mingw platform compile statically without dependency to libwinpt…

    …hread, libstdc++, ..
    
    build examples also on mingw
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen authored and ayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    322c952 View commit details
    Browse the repository at this point in the history
  2. reduced to 2 classes: PassiveSocket and SimpleSocket

    moved Open() and ConnectXX methods from ActiveSocket into SimpleSocket
    PassiveSocket now returns SimpleSocket at Accept()
    ActiveSocket got unnecessary .. but kept file for compatibility
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen authored and ayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    a319476 View commit details
    Browse the repository at this point in the history
  3. added examples, added inlines/aliases and a few fixes

    * added example DelayedEchoServer - sends back received data after some delay
    * added console/log output to EchoServer example
    * added example TxToServer -  sends tcp data to echo server
      utilizes SetSendWindowSize() and fixed Select()/WaitUntilReadable()
    * added example UdpServer - prints received data to stderr
    * added example TxToUdpServer - sends udp data to udp server
    
    * added alias (inline) CPassiveSocket::Bind()
      for BindMulticast() without multicast group
    * fixed BindMulticast() for NULL ptr to mulicast group
    
    * added alias (inline) CSimpleSocket::ConnectTo() for Open()
    * added aliases CloseForXX() for Shutdown() variants
    * fixed SetReceiveTimeout() and SetSendTimeout() for Windows:
      Windows does not expect/support struct timeval - only milliseconds
    * added aliases SetReceiveTimeoutMillis() and SetSendTimeoutMillis()
    * added extra options bAwakeWhenReadable and bAwakeWhenWritable for Select(),
      both defaulting to true - as before, but usually not making much sense!
    * added aliases WaitUntilReadable() and WaitUntilWritable() with milliseconds
    * added aliases GetSocketErrorText() for DescribeError)
    * added alias Reveive() with 'char*'
    * added alias Send() with  'const char*'
    * added aliases Transmit() with 'const uint8*' and 'const char*'
    * renamed SetOptionLinger()'s nTime parameter to nTimeInSeconds
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen authored and ayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    2c2edeb View commit details
    Browse the repository at this point in the history
  4. silence compiler warnings for switch cases

    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen authored and ayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    e71b003 View commit details
    Browse the repository at this point in the history
  5. added extra interface functions and extended the examples

    added GetNumReceivableBytes()
    added IsServerSide()
    added Get(Peer/Local)(Addr/Port)
    allow examples to connect from remote computers
      this is for testing examples (server/client) on different OS/machines
    rebase amended bugfix patch from lethosor for DARWIN/OS X
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    56ddebb View commit details
    Browse the repository at this point in the history
  6. bugfix in SetConnectTimeoutMillis(), optimization and minor enhancements

    * SetConnectTimeoutMillis() was setting the receive timeout
    * optimization: CPassiveSocket::Accept() does now waits for result of accept()
      before creating CSimpleSocket()
      - that's interesting for a NonBlocking CPassiveSocket
    * added bool CSimpleSocket::IsSocketPeerClosed()
      returning if remote side closed the socket
    * made IsBlocking() const
    * added inlines for IsSocketPeerOpen(), IsSocketInvalid() and IsNonblocking()
      simplifying logic in if expressions
    * added internal PRINT_CLOSE macro for debugging
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    3fa3ff2 View commit details
    Browse the repository at this point in the history
  7. fixed error handling

    problem scenario: when there's already an error outside the clsocket lib,
      then TranslateSocketError() could pick up the error,
      which was not caused by the clsocket-operation
    added ClearSystemError() and use it in some cases
    call/use TranslateSocketError() when necessary
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    ba677f5 View commit details
    Browse the repository at this point in the history
  8. added EADDRINUSE and printfs (deactivated) for debugging

    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    f8bbdea View commit details
    Browse the repository at this point in the history
  9. several bugfixes/enhancements from 'PROCITEC GmbH' company

    with kind permission of Procitec:
    * bugfixes in multicast UDP operation
    * enhancend for multithreaded use:
     - use GetAddrInfo[Static]() instead of deprecated GETHOSTBYNAME()
     - GetIPv4AddrInfoStatic() to allow address resolution without
       a connection instance
    * docs and other minor enhancements
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    3bee584 View commit details
    Browse the repository at this point in the history
  10. compiler/linker options for build with mingw and msvc

    * mingw is missing inet_pton() function.
     - added replacement implementation
     - switched on with cmake option CLSOCKET_OWN_INET_PTON
    * msvc: static build against c runtime with cmake CLSOCKET_SHARED off
    * build examples with msvc - except clsocket-example requiring pthread
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    2e20bfb View commit details
    Browse the repository at this point in the history
  11. bugfixes and enhancements on local/peer and bind()

    * fixed CSimpleSocket::GetClientPort()
    * fixed peer/local address in CPassiveSocket::Accept()
    * fixed Linux compilation in CPassiveSocket::Listen()
    * added CSimpleSocket::Bind() for tcp/udp client connections
    * enhanced all examples: all print local/peer address and port
    * fixed output of GetLocalAddr() and GetPeerAddr() in examples
    * examples txtoserver and txtoudpserver with optional local binding
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    f011324 View commit details
    Browse the repository at this point in the history
  12. fix GetIPv4AddrInfo[Static]() with no/empty address string

    * looks, some systems return random value!
      directly return 0 in this case
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    7222078 View commit details
    Browse the repository at this point in the history
  13. define export/visibility - and it's import for shared library

    * renamed EXPORT to CLSOCKET_API, it's for export and import
    * added definition CLSOCKET_NO_EXPORT for not exporting private methods
    * cmake: export symbols only for shared library: EXPORT_CLSOCKET_SYMBOLS
    * have default visibility hidden - also on linux ..
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    9cbb2e7 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2021

  1. added options to allow testing udp multicast

    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Aug 23, 2021
    Configuration menu
    Copy the full SHA
    4936c87 View commit details
    Browse the repository at this point in the history

Commits on Oct 28, 2021

  1. definition CLSOCKET_STATIC_LIB for MSVC to skip dllexport/import

    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Oct 28, 2021
    Configuration menu
    Copy the full SHA
    1929412 View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2023

  1. added TestMaxConnections example - to test file-descriptor limit of s…

    …elect()
    
    Signed-off-by: hayati ayguen <h_ayguen@web.de>
    hayguen committed Jul 22, 2023
    Configuration menu
    Copy the full SHA
    cae012d View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2023

  1. minor, typos, ..

    Signed-off-by: Hayati Ayguen <h.ayguen@procitec.de>
    ayguen committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    0ed5dff View commit details
    Browse the repository at this point in the history

Commits on Aug 17, 2023

  1. update/enhance/fix examples

    Signed-off-by: Hayati Ayguen <h.ayguen@procitec.de>
    ayguen committed Aug 17, 2023
    Configuration menu
    Copy the full SHA
    cf3def4 View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2024

  1. Configuration menu
    Copy the full SHA
    d7af35c View commit details
    Browse the repository at this point in the history
Loading