I was initially thinking I would have to make my program open source if I was using GPL source. GPL requires you to make your source code available only if you are distributing your program. This is a loop-hole benefitting people developing server software for their own use. This loophole is later filled by AGPL, but most software still uses GPL, including XMPP servers I am inquiring about. So I can develop our server on top of open source projects. I would gladly send them patches when I make improvements to their code. I only like not being forced to open all of my source since this might cause security flaws in my code to be detected by hackers.
There is also LGPL, which allows proprietary code to be built upon open code even if you are distributing your program to users. This licence is much less commonly used.
