1. 18 Mar, 2010 1 commit
  2. 26 Feb, 2010 2 commits
    • Michael Hanselmann's avatar
      Fix two potentially endless loops in http library · 40a09ee1
      Michael Hanselmann authored
      
      
      The first can be problematic if poll(2) returns POLLHUP|POLLERR on a
      socket. Before it would be only be respected for SOCKOP_RECV, but since
      they can also occur on other socket operations, esp. in combination with
      OpenSSL, letting the socket functions handle POLLHUP|POLLERR seems to be
      the right thing.
      
      The second is a typo leading to an endless loop if the first line of an
      HTTP connection is empty (simply "\r\n"). Instead of removing the empty
      line, it would remove anything after it.
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      40a09ee1
    • Michael Hanselmann's avatar
      Fix two potentially endless loops in http library · 0be13136
      Michael Hanselmann authored
      
      
      The first can be problematic if poll(2) returns POLLHUP|POLLERR on a
      socket. Before it would be only be respected for SOCKOP_RECV, but since
      they can also occur on other socket operations, esp. in combination with
      OpenSSL, letting the socket functions handle POLLHUP|POLLERR seems to be
      the right thing.
      
      The second is a typo leading to an endless loop if the first line of an
      HTTP connection is empty (simply "\r\n"). Instead of removing the empty
      line, it would remove anything after it.
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      0be13136
  3. 25 Jan, 2010 1 commit
  4. 04 Jan, 2010 4 commits
  5. 25 Nov, 2009 1 commit
  6. 07 Jul, 2009 2 commits
  7. 13 Feb, 2009 1 commit
    • Iustin Pop's avatar
      Make RAPI return 502/504 errors for luxi errors · 77e1d753
      Iustin Pop authored
      This changes the RAPI error codes for luxi errors; a timeout error is
      now reported properly as 504, while any other luxi error is reported as
      502.
      
      It would be good to convert even more errors into proper return codes in
      the future.
      
      Reviewed-by: imsnah
      77e1d753
  8. 15 Jan, 2009 1 commit
    • Iustin Pop's avatar
      Some docstring updates · 25e7b43f
      Iustin Pop authored
      This patch rewraps some comments to shorter lengths, changes
      double-quotes to single-quotes inside triple-quoted docstrings for
      better editor handling.
      
      It also fixes some epydoc errors, namely invalid crossreferences (after
      method rename), documentation for inexistent (removed) parameters, etc.
      
      Reviewed-by: ultrotter
      25e7b43f
  9. 18 Dec, 2008 5 commits
  10. 15 Dec, 2008 3 commits
  11. 12 Dec, 2008 2 commits
  12. 10 Dec, 2008 1 commit
  13. 09 Dec, 2008 1 commit
  14. 05 Dec, 2008 1 commit
    • Iustin Pop's avatar
      http: use slicing instead of string modification · b18dd019
      Iustin Pop authored
      The combination of the current buffer splitting method and (4KB) buffer
      size is very inefficient when writing big amounts of data. Just walking
      over a 16 megabyte string using a 4K buffer takes (on a random computer)
      1m06s, whereas using slices will decrease this to 0.080s, and slicing
      with 32 KB size decreases this to 0.073s.
      
      This means that uploading a big config file (it nears 1MB for big
      clusters) will take more and more time per the number of nodes, since it
      needs lots of slicing.
      
      I happened upon this by accidentally setting all nodes as master
      candidates, at which point just uploading the config file to all nodes
      took 40s. Applying the patch decreases this to 15s (this probably can
      still be optimized).
      
      The patch also removes a duplicate constant (the one actually used is in
      http/client.py), and changes the receive buffer size to use the same
      constant.
      
      Reviewed-by: imsnah
      b18dd019
  15. 04 Dec, 2008 6 commits
  16. 03 Dec, 2008 6 commits
  17. 25 Nov, 2008 1 commit
    • Michael Hanselmann's avatar
      ganeti.http: Don't reuse key and cert objects · 65c6b8e0
      Michael Hanselmann authored
      Reusing the private key and certificate objects gave us problems. This
      patch changes the code to only cache the PEM data, but the objects
      themselves. For every socket, the private key and certificate objects
      are created again.
      
      Reviewed-by: iustinp
      65c6b8e0
  18. 21 Nov, 2008 1 commit