title: Why is this erlang tftpd server seemingly not accepting client requests?
body: <p>I'm attempting to use inet's tftp, but I'm doing something incorrectly. <a href="https://github.com/blt/tftp-problems" rel="nofollow">This
  simple example application</a>, while it does bind to the correct port, never
  returns data to a client.</p>
  
  <p>To reproduce, open a terminal in the project root and:</p>
  
  <pre><code>make &amp;&amp; ./bin/console
  </code></pre>
  
  <p>This should boot the tftp_hellp application, and drop you into an erlang
  shell. Confirm that inets is running:</p>
  
  <pre><code>1&gt; application:which_applications().
  [{inets,"INETS  CXC 138 49","5.9"},
   {sasl,"SASL  CXC 138 11","2.2.1"},
   {stdlib,"ERTS  CXC 138 10","1.18.1"},
   {kernel,"ERTS  CXC 138 10","2.15.1"}]
  </code></pre>
  
  <p>and that the tftp daemon is running:</p>
  
  <pre><code>2&gt; inets:services().
  [{tftpd,&lt;0.56.0&gt;},{httpc,&lt;0.50.0&gt;}]
  </code></pre>
  
  <p>Great. Now, if you look in <code>etc/inets.config</code> you'll notice we're binding tftpd
  to 6969. Open another terminal and:</p>
  
  <pre><code>&gt; tftp localhost 6969
  tftp&gt; get hello.txt
  Transfer timed out.
  </code></pre>
  
  <p>Bother. If my understanding of tftpd were correct--which clearly it's not--we'd
  get <code>&lt;&lt;"hello world"&gt;&gt;</code> back.</p>
  
  <p>What am I doing wrong?</p>