C with a better message exchange