title: UPNP Advertise on Linux and discover on windows?
body: <p><strong>How to public/announce over Linux:</strong>
  GSSDP (libgssdp in most linux distros) is a small, reliable and well tested library that handles the announcement and discovery part of UPnP: it's trivial to write a small program that advertizes the device uri with GSSDP (see example <a href="https://git.gnome.org/browse/gssdp/tree/tests/test-publish.c" rel="nofollow">https://git.gnome.org/browse/gssdp/tree/tests/test-publish.c</a>).</p>
  
  <p><strong>How do discover on Linux</strong>:</p>
  
  <pre><code>gssdp-discover 
  </code></pre>
  
  <p><strong>Useful Packages:</strong></p>
  
  <pre><code>sudo apt-get install gssdp-tools 
  sudo apt-get install gupnp-tools 
  sudo apt-get install libgssdp-1.0-dev  // For developing C program
  </code></pre>
  
  <p><strong>Question:</strong>
  How do we discover on Windows what is advertised in test-publish.c (above)  on Linux? Preferred Languages are C++/C and C#. Popular Windows platforms starting from Windows XP needs to be supported.</p>
  
  <p>Once we have this answered we have a compact system to announce on Linux and discover devices both on Windows and Linux.</p>