cMsg is a publish-subscribe, interprocess messaging system developed at Jefferson Lab. At the most basic level it is an API for sending and receiving messages. This API is used to wrap a variety of communication protocols, and is most often used to access a popular and useful, full publish-subscribe messaging system. The package is supported in C, C++ and java on Linux and MacOS. All online CODA components use cMsg to communicate control information (not data) to each other.