title: Meaning of FLAG in socket send and recv
body: <p>While searching in the Linux manual page, what I have found about the format of send and recv in socket is like below:</p>
  
  <p>For send,</p>
  
  <pre><code>ssize_t send(int sockfd, const void *buf, size_t len, int flags);
  </code></pre>
  
  <p>For recv,</p>
  
  <pre><code>ssize_t recv(int sockfd, void *buf, size_t len, int flags);
  </code></pre>
  
  <p>But I am not sure what they are trying to tell about <code>int flags</code>. In one sample code I have found the value of flag as 0 (zero). What it means? Also what is the meaning of the line below in the man page?</p>
  
  <pre><code>"The flags argument is the bitwise OR of zero or more of the following flags."
  </code></pre>
  
  <p>Then the list of flags:</p>
  
  <pre><code>MSG_CONFIRM
  MSG_DONTROUTE
  .
  .
  .
  etc.
  </code></pre>