I once interviewed at a consulting company where it came up in the conversation that they use open source products (which is great, I've used Hibernate, JBoss, etc. extensively.) One thing that did surprise me is that when I asked if they used GPL licensed OSS when writing applications for clients, they said "Sure, all the time! As long as the client gets what they want and are happy." Now, I'm no lawyer or big license buff, but I was under the impression that using GPL code (let's say some library that you include), then you are required to release the entire application under the same license. When I pointed this out, I was given a quick response of, "Well, we give the clients all the source code when we're done, so that's really not an issue."
Not wanting to press the issue further (interviews aren't the place for arguments like that), I let it slide. However, that still concerns me about that particular practice of the business. What is the official word on GPL licensed code and how "open" does it need to be? Do you have to publish it and say "My company used this library so here is the site where you can download our shopping and order fulfillment system application that we spend millions of dollars to build."? In this situation, is the company right for using GPL code without the client's knowledge? Is it enough to just "give them the source"?