1. 01 May, 2022 1 commit
  2. 11 Feb, 2022 1 commit
  3. 22 May, 2021 1 commit
  4. 10 Apr, 2021 2 commits
  5. 05 Apr, 2021 1 commit
    • Deucе's avatar
      More closely reproduce select() behaviour when using poll() · b5b02ba5
      Deucе authored
      Specifically, have errors mean the fd is "ready".
      
      Also, fix some extra revent clearing and a spy socket issue while
      we're looking at this code.
      
      Should fix issues with CGI scripts that close stdin/stdout but do
      not terminate, and maybe deal with some other corner cases at the
      same time.
      b5b02ba5
  6. 02 Apr, 2021 1 commit
    • Deucе's avatar
      Initial work on setTimeout() · ad635a64
      Deucе authored
      This appears to work and the event handler *should* work on other
      event types already.
      
      Note, this is *nix-only due to the use of poll().  select() will
      need to be used for Windows to keep XP compatability.
      ad635a64
  7. 31 Mar, 2021 1 commit
    • Deucе's avatar
      Use new PREFER_POLL define to control poll() usage · 3de05e2d
      Deucе authored
      Rather than depending on _WIN32 which is silly, make it clear what
      exactly is being done and why.
      
      Note that the spy socket stuff and some external stuff on *nix have
      had the select() implementation removed.  To support using select()
      on !Win32 will require de-refactoring that's not really worth doing.
      Instead, just use #error and reference the commit where the old
      code can be found.
      3de05e2d
  8. 23 Mar, 2021 1 commit
  9. 21 Mar, 2021 4 commits
  10. 20 Mar, 2021 1 commit
    • Deucе's avatar
      Add three new socket status functions: · 99f25324
      Deucе authored
      socket_readable() returns TRUE if recv() will not block if called
      on the specified socket.
      
      socket_writable() returns TRUE if send() will not block if called
      on the specified socket.
      
      socket_recvdone() returns TRUE if all data has been recv()ed an
      the socket is closed.
      
      "will not block" includes "will return an error".
      
      This matches the three main use-cases for select() of a single socket
      in Synchronet.
      
      Use them in the SyncTERM RLogin stuff so they can be tested easily.
      99f25324
  11. 22 Dec, 2020 1 commit
  12. 06 Dec, 2020 1 commit
  13. 05 Dec, 2020 1 commit
    • Rob Swindell's avatar
      Use portable inet_pton() for all Win32 builds. · 7df76d2f
      Rob Swindell authored
      Rename the portable inet_pton() to xp_inet_pton() and define a wrapper macro (for all Widows builds) to use it instead of inet_pton() as not all supported Windows systems (e.g. WinXP) have an inet_pton() implementation.
      
      This allows the HAProxy mod to be re-enabled by default without preventing executing on WinXP.
      7df76d2f
  14. 21 Nov, 2020 5 commits
  15. 27 Sep, 2020 1 commit
    • Rob Swindell's avatar
      Place socket error description at the end of the logged messages. · 35435a96
      Rob Swindell authored
      Socket error descriptions on Windows can be quite long (e.g. > 128 chars) and
      include punctuation, so include at the end of logged socket error messages.
      
      If FormatMessage() fails on Windows (in socket_strerror()) return the
      GetLastError() value in the error description.
      35435a96
  16. 16 Aug, 2020 1 commit
  17. 09 Aug, 2020 1 commit
  18. 08 Aug, 2020 4 commits
  19. 25 May, 2020 1 commit
  20. 20 Apr, 2020 1 commit
  21. 19 Apr, 2020 2 commits
  22. 21 May, 2016 1 commit
  23. 26 Aug, 2015 1 commit
  24. 22 Aug, 2015 1 commit
  25. 20 Aug, 2015 1 commit
  26. 24 Apr, 2014 2 commits
  27. 07 Mar, 2014 1 commit