Network Interfaces

Hi everybody!
Is there anyone that knows how can I detect the network hardware installed on the computer?
For instance, if the machine has a Ethernet board installed, the program can detect it; if the computer has xDSL hardware installed, the program can diagnose it; And so on for other kinds of network interfaces.
What the API that I can study to accomplish this task? Any help is useful.

Thanks a lot!


One more thing...

jepp's picture

Sorry! I forgot to mention the language that I need to use: C or C++.