tree 5f397fcdf6faceee8d4ecc66e4987f2ec82f8cb5
parent 0ed73c376c8b2dbfe692e86b3bf4aa2310c8d9c2
author Willy Tarreau <w@1wt.eu> 1653486123 +0200
committer Willy Tarreau <w@1wt.eu> 1653672815 +0200
encoding latin1

MINOR: stconn: start to rename cs_rx_endp_{more,done}() to se_have_{no_,}more_data()

The analysis of cs_rx_endp_more() showed that the purpose is for a stream
endpoint to inform the connector that it's ready to deliver more data to
that one, and conversely cs_rx_endp_done() that it's done delivering data
so it should not be bothered again for this.

This was modified two ways:
  - the operation is no longer performed on the connector but on the
    endpoint so that there is no more doubt when reading applet code
    about what this rx refers to; it's the endpoint that has more or
    no more data.

  - an applet implementation is also provided and mostly used from
    applet code since it saves the caller from having to access the
    endpoint descriptor.

It's visible that the flag ought to be inverted because some places
have to set it by default for no reason.
