title: Difference between Linux errno 23 and Linux errno 24
body: <ol>
  <li><p>What is the difference between these 2 linux errors in <code>errno.h</code>? 23 and 24</p>
  
  <p>I tried 2 different sites but can't understand difference between the two.</p>
  
  <hr>
  
  <pre><code>[EMFILE]
  Too many open files.
  [ENFILE]
  Too many files open in system.
  </code></pre>
  
  <hr>
  
  <pre><code># define ENFILE      23  /* File table overflow */
  # define EMFILE      24  /* Too many open files */
  </code></pre>
  
  <hr></li>
  <li><p>Also, I am getting errno 24 and socket call failing at 974th time. (<code>AF_INET</code> UDP datagram socket)</p>
  
  <p>When I did a <code>cat /proc/sys/fs/file-max</code> I am seeing a value of 334076
  ulimit -n showing 1024</p>
  
  <p>Any idea what can be done to increase limit?</p></li>
  </ol>