There's more than one "Open Source" license. If I were you I would start by reading the "GNU General Public License" (GPL):
http://www.gnu.org/copyleft/gpl.html
Read this descriptive page as well:
http://en.wikipedia.org/wiki/GNU_General_Public_License
In discussions of this license, it becomes clear that an open source project based on it must be entirely open-source (all source code readily available on demand, and freely usable by others in their own projects), and if another project decides to use some of its code, all that project's code must also become open-source, even code not originally intended to be open-source.
Some object that this places a burden on projects containing code that isn't intended to be (or cannot be) published in the open, so there's another license called the "GNU Lesser General Public License" (LGPL):
http://www.gnu.org/licenses/lgpl.html
The LGPL lifts the requirement that all source code be published in a project that uses some open-source licensed code.
Here's a discussion of the difference between the GPL and LGPL licenses:
http://en.wikipedia.org/wiki/GNU_Lesser_General_Public_Licen...
(The details of these licenses can't really be accurately compressed as I seem to be doing, but the above is a reasonable summary.)
Debates about these and many other open-source licenses are long and sometimes heated. But these two licenses, and the philosophy behind them, represent a good starting point.