api: comment, simplify and fix api socket read 47/22547/4
authorVratko Polak <vrpolak@cisco.com>
Mon, 7 Oct 2019 12:52:53 +0000 (14:52 +0200)
committerOle Trøan <otroan@employees.org>
Wed, 9 Oct 2019 09:23:50 +0000 (09:23 +0000)
commit6a6af6ea1a77b5818e717047b5d01251ef6d024a
tree0c6ffcd373601626dae4c0144467a9fb38f09f40
parent0938547eaaf5440de28877fa4f873c21bcb8cfbf
api: comment, simplify and fix api socket read

The function vl_socket_read_ready did contain some comments already,
but as they stated, the logic has to be tricky to cover multiple cases.

Comment:
+ Add function-level comment
+ Add comments to describe some of local variables
+ Add many comments to describe internal state at particular lines.

Simplify:
+ Remov mbp_set as it is never needed.
+ Replace msg_len with msgbuf_len to save "+ sizeof (msgbuf_t)".

Improve:
+ Early exit on EAGAIN.

Fix:
+ "n" now only tracks input_buffer.
  Previously, it was entering the detection of additional messages
  even for unprocessed_input.
+ Set up msg_buffer (including appending to unprocessed_input)
  outside full-message-detection loop now,
  so it cannot be executed multiple times as before.

Type: fix
Ticket: VPP-1785

Change-Id: I256e34b435be06844458744a13ea37a0e86a96f9
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
src/vlibmemory/socket_api.c