Generic C code to control a UPnP capable firewall/router to enable forwarding of specific TCP/UDP ports using the UPnP protocol. Deliverable is C source code using standard Posix library functions. Code must compile on run on Linux and/or BSD systems with GCC. Must include callable library function that when given port and router parameters will create the specified forwarding pinhole. A simple comamnd-line test application must also be provided.
## Deliverables
1) Complete and fully-functional working program in executable form as well as complete source code of all work done.
2) Deliverables must be ANSI C source code ready to compile and run on a Posix complaint system.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer.
## Platform
Source code must compile with GCC compiler on a Posix complaint system. Software must specifically operate on Suse 9.0 Linux but should be tested for compatiblity with other Linux/UNIX platforms including FreeBSD and Solaris 9. Software should have no external dependencies beyond standard Posix C libraries unless all such dependencies are explained AND AGREED TO by the buyer.
Software must support uPnP compatible routers including Linksys, D-Link, Netgear, and Microsoft.