Today I saw an open-source UPnP client/server project called MiniUPnP, which looks quite interesting. I like those light-weight stuff, just like my MiniWeb project.
The MiniUPnP project offers software which supports the UPnP Internet Gateway Device (IGD) specifications.
The MiniUPnP daemon (MiniUPnPd) supports OpenBSD, FreeBSD, NetBSD and (Open)Solaris in combination with pf or ipf and Linux with netfilter.
The MiniUPnP client (MiniUPnPc) and MiniSSDPd are portable and should work on any POSIX system. MiniUPnPc also works under MS Windows.
MiniUPnP Homepage: http://miniupnp.free.fr/