1. 10 May, 2017 6 commits
  2. 09 May, 2017 7 commits
  3. 06 May, 2017 6 commits
  4. 05 May, 2017 6 commits
  5. 03 May, 2017 5 commits
  6. 02 May, 2017 7 commits
  7. 01 May, 2017 3 commits
    • Paul Sokolovsky's avatar
    • Paul Sokolovsky's avatar
      unix/main: Ignore SIGPIPE signal, instead make EPIPE arrive. · 11bc21df
      Paul Sokolovsky authored
      Do not raise SIGPIPE, instead return EPIPE. Otherwise, e.g. writing
      to peer-closed socket will lead to sudden termination of MicroPython
      process. SIGPIPE is particularly nasty, because unix shell doesn't
      print anything for it, so the above looks like completely sudden and
      silent termination for unknown reason. Ignoring SIGPIPE is also what
      CPython does. Note that this may lead to problems using MicroPython
      scripts as pipe filters, but again, that's what CPython does. So,
      scripts which want to follow unix shell pipe semantics (where SIGPIPE
      means "pipe was requested to terminate, it's not an error"), should
      catch EPIPE themselves.
    • Paul Sokolovsky's avatar
      extmod/modlwip: ioctl POLL: Fix handling of peer closed socket. · 5db55e63
      Paul Sokolovsky authored
      Peer-closed socket is both readable and writable: read will return EOF,
      write - error. Without this poll will hang on such socket.
      Note that we don't return POLLHUP, based on argumentation in
      http://www.greenend.org.uk/rjk/tech/poll.html that it should apply to
      deeper disconnects, for example for networking, that would be link layer
      disconnect (e.g. WiFi went down).